@esri/solutions-components 0.6.6 → 0.6.7

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 (943) hide show
  1. package/dist/cjs/{ExpandToggle-e6a0d66e.js → ExpandToggle-70890ae0.js} +4 -4
  2. package/dist/cjs/{FloatingArrow-0119ec6e.js → FloatingArrow-4ca06439.js} +1 -1
  3. package/dist/cjs/{Heading-521f39ac.js → Heading-c5c71fc5.js} +1 -1
  4. package/dist/cjs/{app-globals-72576a1c.js → app-globals-a34c0991.js} +20 -25
  5. package/dist/cjs/{ar-1718ae57.js → ar-fa16156d.js} +15 -15
  6. package/dist/cjs/{bg-190a176c.js → bg-b39e773e.js} +15 -15
  7. package/dist/cjs/{bs-919e0de8.js → bs-4579ea2a.js} +15 -15
  8. package/dist/cjs/buffer-tools_4.cjs.entry.js +1437 -1437
  9. package/dist/cjs/{ca-94918e06.js → ca-f3f64686.js} +15 -15
  10. package/dist/cjs/calcite-accordion-item.cjs.entry.js +140 -140
  11. package/dist/cjs/calcite-accordion.cjs.entry.js +75 -75
  12. package/dist/cjs/calcite-action-bar.cjs.entry.js +216 -216
  13. package/dist/cjs/calcite-action-group_2.cjs.entry.js +365 -365
  14. package/dist/cjs/calcite-action-pad.cjs.entry.js +135 -135
  15. package/dist/cjs/calcite-action_2.cjs.entry.js +445 -445
  16. package/dist/cjs/calcite-alert.cjs.entry.js +247 -247
  17. package/dist/cjs/calcite-avatar.cjs.entry.js +73 -73
  18. package/dist/cjs/calcite-block-section.cjs.entry.js +122 -122
  19. package/dist/cjs/calcite-block.cjs.entry.js +131 -131
  20. package/dist/cjs/calcite-button.cjs.entry.js +182 -182
  21. package/dist/cjs/calcite-card.cjs.entry.js +99 -99
  22. package/dist/cjs/calcite-checkbox.cjs.entry.js +125 -125
  23. package/dist/cjs/calcite-chip-group.cjs.entry.js +164 -164
  24. package/dist/cjs/calcite-chip.cjs.entry.js +213 -213
  25. package/dist/cjs/calcite-color-picker-hex-input_2.cjs.entry.js +303 -303
  26. package/dist/cjs/calcite-color-picker.cjs.entry.js +886 -886
  27. package/dist/cjs/calcite-combobox-item-group.cjs.entry.js +35 -35
  28. package/dist/cjs/calcite-combobox_6.cjs.entry.js +1786 -1786
  29. package/dist/cjs/calcite-date-picker-day_3.cjs.entry.js +589 -589
  30. package/dist/cjs/calcite-date-picker.cjs.entry.js +434 -434
  31. package/dist/cjs/calcite-fab.cjs.entry.js +66 -66
  32. package/dist/cjs/calcite-filter_5.cjs.entry.js +1131 -1131
  33. package/dist/cjs/calcite-flow-item.cjs.entry.js +146 -146
  34. package/dist/cjs/calcite-flow.cjs.entry.js +117 -117
  35. package/dist/cjs/calcite-graph.cjs.entry.js +66 -66
  36. package/dist/cjs/calcite-icon.cjs.entry.js +80 -80
  37. package/dist/cjs/calcite-inline-editable.cjs.entry.js +225 -225
  38. package/dist/cjs/calcite-input-date-picker.cjs.entry.js +632 -632
  39. package/dist/cjs/calcite-input-number_2.cjs.entry.js +846 -846
  40. package/dist/cjs/{calcite-input-time-picker-b99baf7b.js → calcite-input-time-picker-6f38ef8c.js} +534 -534
  41. package/dist/cjs/calcite-input-time-picker.cjs.entry.js +15 -15
  42. package/dist/cjs/calcite-input-time-zone.cjs.entry.js +150 -150
  43. package/dist/cjs/calcite-input_2.cjs.entry.js +645 -645
  44. package/dist/cjs/calcite-label.cjs.entry.js +40 -40
  45. package/dist/cjs/calcite-link.cjs.entry.js +96 -96
  46. package/dist/cjs/calcite-list-item-group.cjs.entry.js +46 -46
  47. package/dist/cjs/calcite-loader.cjs.entry.js +65 -65
  48. package/dist/cjs/calcite-menu-item.cjs.entry.js +246 -246
  49. package/dist/cjs/calcite-menu.cjs.entry.js +161 -161
  50. package/dist/cjs/calcite-modal.cjs.entry.js +282 -282
  51. package/dist/cjs/calcite-navigation-logo.cjs.entry.js +52 -52
  52. package/dist/cjs/calcite-navigation-user.cjs.entry.js +45 -45
  53. package/dist/cjs/calcite-navigation.cjs.entry.js +126 -126
  54. package/dist/cjs/calcite-notice.cjs.entry.js +105 -105
  55. package/dist/cjs/calcite-option-group.cjs.entry.js +24 -24
  56. package/dist/cjs/calcite-option_2.cjs.entry.js +271 -271
  57. package/dist/cjs/calcite-pagination.cjs.entry.js +191 -191
  58. package/dist/cjs/calcite-panel_2.cjs.entry.js +346 -346
  59. package/dist/cjs/calcite-pick-list-group.cjs.entry.js +46 -46
  60. package/dist/cjs/calcite-pick-list-item.cjs.entry.js +181 -181
  61. package/dist/cjs/calcite-pick-list.cjs.entry.js +130 -130
  62. package/dist/cjs/calcite-radio-button-group.cjs.entry.js +118 -118
  63. package/dist/cjs/calcite-radio-button.cjs.entry.js +292 -292
  64. package/dist/cjs/calcite-rating.cjs.entry.js +245 -245
  65. package/dist/cjs/calcite-scrim.cjs.entry.js +93 -93
  66. package/dist/cjs/calcite-segmented-control_2.cjs.entry.js +225 -225
  67. package/dist/cjs/calcite-shell-center-row.cjs.entry.js +42 -42
  68. package/dist/cjs/calcite-shell-panel_14.cjs.entry.js +2604 -2604
  69. package/dist/cjs/calcite-sortable-list.cjs.entry.js +134 -134
  70. package/dist/cjs/calcite-split-button.cjs.entry.js +92 -92
  71. package/dist/cjs/calcite-stepper-item.cjs.entry.js +197 -197
  72. package/dist/cjs/calcite-stepper.cjs.entry.js +187 -187
  73. package/dist/cjs/calcite-switch.cjs.entry.js +100 -100
  74. package/dist/cjs/calcite-text-area.cjs.entry.js +235 -235
  75. package/dist/cjs/calcite-tile-select-group.cjs.entry.js +27 -27
  76. package/dist/cjs/calcite-tile-select.cjs.entry.js +180 -180
  77. package/dist/cjs/calcite-tile.cjs.entry.js +58 -58
  78. package/dist/cjs/calcite-time-picker.cjs.entry.js +619 -619
  79. package/dist/cjs/calcite-tip-group.cjs.entry.js +10 -10
  80. package/dist/cjs/calcite-tip-manager.cjs.entry.js +185 -185
  81. package/dist/cjs/calcite-tip.cjs.entry.js +94 -94
  82. package/dist/cjs/calcite-tooltip.cjs.entry.js +185 -185
  83. package/dist/cjs/calcite-tree_3.cjs.entry.js +821 -821
  84. package/dist/cjs/card-manager_4.cjs.entry.js +652 -652
  85. package/dist/cjs/{conditionalSlot-85b3a6b3.js → conditionalSlot-a51326e7.js} +2 -2
  86. package/dist/cjs/crowdsource-manager.cjs.entry.js +256 -256
  87. package/dist/cjs/crowdsource-reporter.cjs.entry.js +60 -60
  88. package/dist/cjs/{cs-fe27e732.js → cs-1bcd5b46.js} +15 -15
  89. package/dist/cjs/{da-1b7f3440.js → da-30ee21db.js} +15 -15
  90. package/dist/cjs/{date-cec32b0e.js → date-f6611a19.js} +1 -1
  91. package/dist/cjs/{de-0dc1effa.js → de-42aae5ad.js} +15 -15
  92. package/dist/cjs/{de-at-acdc4d01.js → de-at-a3a6f020.js} +15 -15
  93. package/dist/cjs/{de-ch-778a0d99.js → de-ch-36c13310.js} +15 -15
  94. package/dist/cjs/deduct-calculator.cjs.entry.js +90 -90
  95. package/dist/cjs/{dom-c1807fc1.js → dom-d529bae8.js} +2 -2
  96. package/dist/cjs/{downloadUtils-a8c530f7.js → downloadUtils-6eb59363.js} +660 -660
  97. package/dist/cjs/edit-card_2.cjs.entry.js +345 -345
  98. package/dist/cjs/{el-fdbc9bc1.js → el-90d066ae.js} +15 -15
  99. package/dist/cjs/{en-au-0ff50cdf.js → en-au-685b882b.js} +15 -15
  100. package/dist/cjs/{en-ca-284e9368.js → en-ca-ff4bc403.js} +15 -15
  101. package/dist/cjs/{en-gb-0fcae8ae.js → en-gb-2f5587ad.js} +15 -15
  102. package/dist/cjs/{es-cd54acba.js → es-e9183ca0.js} +15 -15
  103. package/dist/cjs/{es-mx-2078d50f.js → es-mx-dcc9afb2.js} +15 -15
  104. package/dist/cjs/{et-17f323f6.js → et-a18949ea.js} +15 -15
  105. package/dist/cjs/{fi-82f27397.js → fi-1ce00d38.js} +15 -15
  106. package/dist/cjs/{filter-bda212b4.js → filter-494bf35e.js} +1 -1
  107. package/dist/cjs/{floating-ui-8d10af88.js → floating-ui-7d6e57d3.js} +2 -2
  108. package/dist/cjs/{focusTrapComponent-a22fc6a8.js → focusTrapComponent-0c4d7671.js} +1 -1
  109. package/dist/cjs/{form-9d8ebf06.js → form-bcf49eae.js} +2 -2
  110. package/dist/cjs/{fr-af7e1192.js → fr-a9435a19.js} +15 -15
  111. package/dist/cjs/{fr-ch-5e1f2c28.js → fr-ch-51efa9bf.js} +15 -15
  112. package/dist/cjs/{he-ea851800.js → he-c5dccfa2.js} +15 -15
  113. package/dist/cjs/{hi-5212a21d.js → hi-0898e7f2.js} +15 -15
  114. package/dist/cjs/{hr-4eecb2ed.js → hr-68f7d8da.js} +15 -15
  115. package/dist/cjs/{hu-6b527d8e.js → hu-e494037d.js} +15 -15
  116. package/dist/cjs/{id-d78f12ec.js → id-bef40c1c.js} +15 -15
  117. package/dist/cjs/{index-0e50040c.js → index-6654298b.js} +38 -180
  118. package/dist/cjs/{index-2b60e135.js → index-e1b1954f.js} +1 -1
  119. package/dist/cjs/{index.es-4542630e.js → index.es-d9b5d3a5.js} +6 -6
  120. package/dist/cjs/{interfaces-d539e30c.js → interfaces-ad03ec39.js} +77 -77
  121. package/dist/cjs/{it-15242935.js → it-1144ca67.js} +15 -15
  122. package/dist/cjs/{it-ch-9dc21944.js → it-ch-2c14dca7.js} +15 -15
  123. package/dist/cjs/{ja-f702cfc2.js → ja-caad9809.js} +15 -15
  124. package/dist/cjs/{ko-aa9bde2c.js → ko-ddec9054.js} +15 -15
  125. package/dist/cjs/{label-6e33e971.js → label-215c4af3.js} +1 -1
  126. package/dist/cjs/list-item.cjs.entry.js +60 -60
  127. package/dist/cjs/{loadModules-31cab7ac.js → loadModules-ae7715f2.js} +19 -19
  128. package/dist/cjs/{loadable-bac9cdd6.js → loadable-6da743c6.js} +1 -1
  129. package/dist/cjs/loader.cjs.js +13 -4
  130. package/dist/cjs/{locale-c63a1b57.js → locale-477d8d51.js} +3 -3
  131. package/dist/cjs/{locale-d15cd743.js → locale-b113c6b2.js} +107 -107
  132. package/dist/cjs/{lt-e741ff2f.js → lt-205a1aa6.js} +15 -15
  133. package/dist/cjs/{lv-92d6768e.js → lv-3ba82f9b.js} +15 -15
  134. package/dist/cjs/map-picker_2.cjs.entry.js +243 -243
  135. package/dist/cjs/map-select-tools_3.cjs.entry.js +1285 -1285
  136. package/dist/cjs/{mapViewUtils-9da2dddd.js → mapViewUtils-77a1ff88.js} +384 -384
  137. package/dist/cjs/{mk-b209ac0d.js → mk-069ea86a.js} +15 -15
  138. package/dist/cjs/{nb-db13e666.js → nb-9e9c934f.js} +15 -15
  139. package/dist/cjs/{nl-fcd9e0c5.js → nl-5dd0116f.js} +15 -15
  140. package/dist/cjs/{openCloseComponent-5d70fcd8.js → openCloseComponent-3fa18210.js} +1 -1
  141. package/dist/cjs/pci-calculator.cjs.entry.js +102 -102
  142. package/dist/cjs/{pciUtils-e0ddeb7c.js → pciUtils-423cfc68.js} +836 -836
  143. package/dist/cjs/{pl-87c83322.js → pl-74e70b37.js} +15 -15
  144. package/dist/cjs/{pt-br-03333e90.js → pt-br-0f76e430.js} +15 -15
  145. package/dist/cjs/{pt-b0b5f472.js → pt-cc737fcc.js} +15 -15
  146. package/dist/cjs/public-notification.cjs.entry.js +844 -844
  147. package/dist/cjs/{publicNotificationStore-55edd658.js → publicNotificationStore-ec1bdd2d.js} +40 -40
  148. package/dist/cjs/{ro-c3661b73.js → ro-5e396753.js} +15 -15
  149. package/dist/cjs/{ru-8dd3fd58.js → ru-f7371aca.js} +15 -15
  150. package/dist/cjs/{shared-list-render-c0adb192.js → shared-list-render-76c5dc25.js} +6 -6
  151. package/dist/cjs/{sk-151d9acf.js → sk-ec02498f.js} +15 -15
  152. package/dist/cjs/{sl-9b45a152.js → sl-8363f4d7.js} +15 -15
  153. package/dist/cjs/solution-configuration.cjs.entry.js +888 -888
  154. package/dist/cjs/solution-contents_3.cjs.entry.js +21506 -21506
  155. package/dist/cjs/{solution-store-0004e4e6.js → solution-store-bd956f06.js} +577 -577
  156. package/dist/cjs/solutions-components.cjs.js +4 -4
  157. package/dist/cjs/{sortableComponent-58679f07.js → sortableComponent-8135ea87.js} +1 -1
  158. package/dist/cjs/{sr-186bf15c.js → sr-b0f92cb1.js} +15 -15
  159. package/dist/cjs/store-manager.cjs.entry.js +52 -52
  160. package/dist/cjs/{sv-a93fee0c.js → sv-e2c27fff.js} +15 -15
  161. package/dist/cjs/{t9n-1d032c30.js → t9n-8be30efb.js} +2 -2
  162. package/dist/cjs/{th-41680352.js → th-8a6dc2cc.js} +15 -15
  163. package/dist/cjs/{throttle-aeeb1b4d.js → throttle-8ee74c77.js} +1 -1
  164. package/dist/cjs/{time-5e450ec8.js → time-9004df7e.js} +1 -1
  165. package/dist/cjs/{tr-0bd886d6.js → tr-09137435.js} +15 -15
  166. package/dist/cjs/{uk-4fade133.js → uk-c30401f4.js} +15 -15
  167. package/dist/cjs/{utils-ae9bdd59.js → utils-ed4e5028.js} +1 -1
  168. package/dist/cjs/{utils-acfeed9d.js → utils-fb81c6b3.js} +3 -3
  169. package/dist/cjs/{vi-1c9fe343.js → vi-e069c9e4.js} +15 -15
  170. package/dist/cjs/{zh-cn-28fa1fe1.js → zh-cn-50f223a8.js} +15 -15
  171. package/dist/cjs/{zh-hk-5abf8eb5.js → zh-hk-5498073d.js} +15 -15
  172. package/dist/cjs/{zh-tw-07500357.js → zh-tw-dfdb0ae8.js} +15 -15
  173. package/dist/collection/collection-manifest.json +35 -35
  174. package/dist/collection/components/buffer-tools/buffer-tools.js +476 -481
  175. package/dist/collection/components/card-manager/card-manager.js +197 -199
  176. package/dist/collection/components/crowdsource-manager/crowdsource-manager.js +406 -407
  177. package/dist/collection/components/crowdsource-reporter/crowdsource-reporter.js +89 -89
  178. package/dist/collection/components/deduct-calculator/deduct-calculator.js +143 -143
  179. package/dist/collection/components/edit-card/edit-card.js +300 -302
  180. package/dist/collection/components/info-card/info-card.js +357 -361
  181. package/dist/collection/components/json-editor/json-editor.js +614 -618
  182. package/dist/collection/components/layer-table/layer-table.js +548 -551
  183. package/dist/collection/components/layout-manager/layout-manager.js +135 -136
  184. package/dist/collection/components/list-item/list-item.js +89 -89
  185. package/dist/collection/components/map-card/map-card.js +203 -206
  186. package/dist/collection/components/map-draw-tools/map-draw-tools.js +683 -692
  187. package/dist/collection/components/map-layer-picker/map-layer-picker.js +423 -424
  188. package/dist/collection/components/map-picker/map-picker.js +224 -226
  189. package/dist/collection/components/map-select-tools/map-select-tools.js +1229 -1242
  190. package/dist/collection/components/map-tools/map-tools.js +210 -212
  191. package/dist/collection/components/pci-calculator/pci-calculator.js +143 -143
  192. package/dist/collection/components/pdf-download/pdf-download.js +333 -338
  193. package/dist/collection/components/public-notification/public-notification.js +1287 -1295
  194. package/dist/collection/components/refine-selection/refine-selection.js +601 -608
  195. package/dist/collection/components/solution-configuration/solution-configuration.js +735 -739
  196. package/dist/collection/components/solution-contents/solution-contents.js +162 -163
  197. package/dist/collection/components/solution-item/solution-item.js +202 -203
  198. package/dist/collection/components/solution-item-details/solution-item-details.js +248 -248
  199. package/dist/collection/components/solution-item-icon/solution-item-icon.js +398 -398
  200. package/dist/collection/components/solution-item-sharing/solution-item-sharing.js +199 -200
  201. package/dist/collection/components/solution-organization-variables/solution-organization-variables.js +156 -156
  202. package/dist/collection/components/solution-resource-item/solution-resource-item.js +347 -348
  203. package/dist/collection/components/solution-spatial-ref/solution-spatial-ref.js +510 -515
  204. package/dist/collection/components/solution-spatial-ref/spatialreferences.js +21046 -21046
  205. package/dist/collection/components/solution-template-data/solution-template-data.js +230 -230
  206. package/dist/collection/components/solution-variables/solution-variables.js +168 -168
  207. package/dist/collection/components/store-manager/store-manager.js +127 -128
  208. package/dist/collection/index.js +1 -1
  209. package/dist/collection/utils/common.js +296 -296
  210. package/dist/collection/utils/csvDownload.js +41 -41
  211. package/dist/collection/utils/csvUtils.js +37 -37
  212. package/dist/collection/utils/downloadUtils.js +530 -530
  213. package/dist/collection/utils/interfaces.js +83 -83
  214. package/dist/collection/utils/languageUtil.js +90 -90
  215. package/dist/collection/utils/loadModules.js +25 -25
  216. package/dist/collection/utils/locale.js +61 -61
  217. package/dist/collection/utils/mapViewUtils.js +240 -240
  218. package/dist/collection/utils/pciUtils.js +842 -842
  219. package/dist/collection/utils/pdfUtils.js +87 -87
  220. package/dist/collection/utils/publicNotificationStore.js +47 -47
  221. package/dist/collection/utils/queryUtils.js +200 -200
  222. package/dist/collection/utils/solution-store.js +584 -584
  223. package/dist/collection/utils/templates.js +346 -346
  224. package/dist/collection/utils/test/mocks/jsApi.js +79 -79
  225. package/dist/collection/utils/test/testUtils.js +123 -123
  226. package/dist/collection/utils/types.js +1 -1
  227. package/dist/components/ExpandToggle.js +1 -1
  228. package/dist/components/action-bar.js +263 -262
  229. package/dist/components/action-group.js +145 -144
  230. package/dist/components/action-menu.js +311 -310
  231. package/dist/components/action.js +186 -185
  232. package/dist/components/alert.js +287 -286
  233. package/dist/components/avatar.js +100 -99
  234. package/dist/components/buffer-tools2.js +264 -263
  235. package/dist/components/button.js +226 -225
  236. package/dist/components/calcite-accordion-item.js +168 -168
  237. package/dist/components/calcite-accordion.js +96 -95
  238. package/dist/components/calcite-action-pad.js +181 -180
  239. package/dist/components/calcite-block-section.js +151 -150
  240. package/dist/components/calcite-block.js +187 -186
  241. package/dist/components/calcite-card.js +133 -132
  242. package/dist/components/calcite-chip-group.js +182 -181
  243. package/dist/components/calcite-color-picker.js +980 -979
  244. package/dist/components/calcite-combobox-item-group.js +53 -52
  245. package/dist/components/calcite-fab.js +105 -104
  246. package/dist/components/calcite-filter.js +1 -1
  247. package/dist/components/calcite-flow-item.js +205 -204
  248. package/dist/components/calcite-flow.js +137 -136
  249. package/dist/components/calcite-inline-editable.js +260 -259
  250. package/dist/components/calcite-input-date-picker.js +704 -703
  251. package/dist/components/calcite-input-time-picker.js +596 -595
  252. package/dist/components/calcite-input-time-zone.js +190 -189
  253. package/dist/components/calcite-label.js +1 -1
  254. package/dist/components/calcite-list-item-group.js +65 -64
  255. package/dist/components/calcite-menu-item.js +297 -297
  256. package/dist/components/calcite-modal.js +329 -328
  257. package/dist/components/calcite-navigation-logo.js +77 -76
  258. package/dist/components/calcite-navigation-user.js +79 -78
  259. package/dist/components/calcite-navigation.js +167 -166
  260. package/dist/components/calcite-option-group.js +43 -42
  261. package/dist/components/calcite-pagination.js +218 -217
  262. package/dist/components/calcite-pick-list-group.js +60 -59
  263. package/dist/components/calcite-pick-list.js +151 -150
  264. package/dist/components/calcite-radio-button-group.js +142 -141
  265. package/dist/components/calcite-radio-button.js +317 -316
  266. package/dist/components/calcite-rating.js +280 -279
  267. package/dist/components/calcite-shell-center-row.js +58 -57
  268. package/dist/components/calcite-sortable-list.js +154 -153
  269. package/dist/components/calcite-split-button.js +143 -142
  270. package/dist/components/calcite-stack.js +1 -1
  271. package/dist/components/calcite-stepper-item.js +226 -225
  272. package/dist/components/calcite-stepper.js +213 -212
  273. package/dist/components/calcite-text-area.js +267 -266
  274. package/dist/components/calcite-tile-select-group.js +45 -44
  275. package/dist/components/calcite-tile-select.js +224 -223
  276. package/dist/components/calcite-tip-group.js +28 -27
  277. package/dist/components/calcite-tip-manager.js +223 -222
  278. package/dist/components/calcite-tip.js +127 -126
  279. package/dist/components/card-manager2.js +156 -155
  280. package/dist/components/checkbox.js +147 -146
  281. package/dist/components/chip.js +246 -245
  282. package/dist/components/color-picker-hex-input.js +288 -287
  283. package/dist/components/color-picker-swatch.js +80 -79
  284. package/dist/components/combobox-item.js +136 -135
  285. package/dist/components/combobox.js +922 -921
  286. package/dist/components/crowdsource-manager.js +476 -475
  287. package/dist/components/crowdsource-reporter.js +76 -75
  288. package/dist/components/date-picker-day.js +110 -110
  289. package/dist/components/date-picker-month-header.js +198 -197
  290. package/dist/components/date-picker-month.js +373 -372
  291. package/dist/components/date-picker.js +493 -492
  292. package/dist/components/date.js +1 -1
  293. package/dist/components/deduct-calculator2.js +982 -981
  294. package/dist/components/dom.js +23 -2
  295. package/dist/components/downloadUtils.js +655 -655
  296. package/dist/components/dropdown-group.js +73 -72
  297. package/dist/components/dropdown-item.js +196 -195
  298. package/dist/components/dropdown.js +421 -420
  299. package/dist/components/edit-card2.js +192 -191
  300. package/dist/components/filter.js +202 -751
  301. package/dist/components/filter2.js +740 -190
  302. package/dist/components/floating-ui.js +2 -2
  303. package/dist/components/focusTrapComponent.js +1 -1
  304. package/dist/components/graph.js +87 -86
  305. package/dist/components/handle.js +166 -165
  306. package/dist/components/icon.js +100 -99
  307. package/dist/components/index.d.ts +36 -0
  308. package/dist/components/index.js +153 -25
  309. package/dist/components/info-card2.js +252 -251
  310. package/dist/components/input-message.js +67 -66
  311. package/dist/components/input-number.js +600 -600
  312. package/dist/components/input-text.js +368 -368
  313. package/dist/components/input.js +687 -687
  314. package/dist/components/interfaces.js +78 -78
  315. package/dist/components/json-editor2.js +426 -425
  316. package/dist/components/label.js +65 -117
  317. package/dist/components/label2.js +110 -57
  318. package/dist/components/layer-table2.js +548 -547
  319. package/dist/components/layout-manager2.js +119 -118
  320. package/dist/components/link.js +123 -123
  321. package/dist/components/list-item.js +76 -75
  322. package/dist/components/list-item2.js +432 -431
  323. package/dist/components/list.js +511 -510
  324. package/dist/components/loadModules.js +18 -18
  325. package/dist/components/loader.js +87 -86
  326. package/dist/components/locale.js +106 -106
  327. package/dist/components/locale2.js +2 -2
  328. package/dist/components/map-card2.js +201 -200
  329. package/dist/components/map-draw-tools2.js +384 -383
  330. package/dist/components/map-layer-picker2.js +292 -291
  331. package/dist/components/map-picker2.js +236 -235
  332. package/dist/components/map-select-tools2.js +917 -916
  333. package/dist/components/map-tools2.js +170 -169
  334. package/dist/components/mapViewUtils.js +235 -235
  335. package/dist/components/menu.js +179 -178
  336. package/dist/components/notice.js +131 -130
  337. package/dist/components/option.js +92 -91
  338. package/dist/components/panel.js +308 -307
  339. package/dist/components/pci-calculator.js +170 -169
  340. package/dist/components/pdf-download2.js +174 -173
  341. package/dist/components/pick-list-item.js +220 -219
  342. package/dist/components/popover.js +350 -349
  343. package/dist/components/progress.js +46 -46
  344. package/dist/components/public-notification.js +1102 -1101
  345. package/dist/components/publicNotificationStore.js +39 -39
  346. package/dist/components/queryUtils.js +152 -152
  347. package/dist/components/refine-selection2.js +547 -546
  348. package/dist/components/resources.js +9 -17
  349. package/dist/components/resources2.js +13 -9
  350. package/dist/components/resources3.js +5 -9
  351. package/dist/components/scrim.js +116 -115
  352. package/dist/components/segmented-control-item.js +63 -62
  353. package/dist/components/segmented-control.js +214 -213
  354. package/dist/components/select.js +227 -226
  355. package/dist/components/shared-list-render.js +3 -3
  356. package/dist/components/shell-panel.js +398 -398
  357. package/dist/components/shell.js +120 -119
  358. package/dist/components/slider.js +899 -898
  359. package/dist/components/solution-configuration.js +1096 -1095
  360. package/dist/components/solution-contents2.js +112 -111
  361. package/dist/components/solution-item-details2.js +218 -217
  362. package/dist/components/solution-item-icon2.js +331 -330
  363. package/dist/components/solution-item-sharing2.js +152 -151
  364. package/dist/components/solution-item2.js +270 -269
  365. package/dist/components/solution-organization-variables2.js +116 -115
  366. package/dist/components/solution-resource-item2.js +332 -331
  367. package/dist/components/solution-spatial-ref2.js +21421 -21420
  368. package/dist/components/solution-store.js +575 -575
  369. package/dist/components/solution-template-data2.js +203 -202
  370. package/dist/components/solution-variables2.js +133 -132
  371. package/dist/components/sortableComponent.js +1 -1
  372. package/dist/components/stack.js +79 -78
  373. package/dist/components/store-manager.js +71 -70
  374. package/dist/components/switch.js +119 -118
  375. package/dist/components/tab-nav.js +255 -254
  376. package/dist/components/tab-title.js +301 -300
  377. package/dist/components/tab.js +112 -111
  378. package/dist/components/tabs.js +131 -130
  379. package/dist/components/tile.js +90 -89
  380. package/dist/components/time-picker.js +655 -654
  381. package/dist/components/tooltip.js +208 -207
  382. package/dist/components/tree-item.js +288 -288
  383. package/dist/components/tree.js +282 -281
  384. package/dist/components/utils.js +1 -1
  385. package/dist/components/utils2.js +2 -2
  386. package/dist/components/utils3.js +1 -1
  387. package/dist/components/value-list-item.js +170 -169
  388. package/dist/components/value-list.js +276 -275
  389. package/dist/esm/{ExpandToggle-3d10bd1e.js → ExpandToggle-3420fa39.js} +4 -4
  390. package/dist/esm/{FloatingArrow-29db6da6.js → FloatingArrow-cd8eafa4.js} +1 -1
  391. package/dist/esm/{Heading-cb79e5b2.js → Heading-1763134e.js} +1 -1
  392. package/dist/esm/{app-globals-5cbac6b0.js → app-globals-580889bd.js} +20 -25
  393. package/dist/esm/{ar-4b751ba8.js → ar-ceb1b389.js} +15 -15
  394. package/dist/esm/{bg-5d8bf5ea.js → bg-a8824832.js} +15 -15
  395. package/dist/esm/{bs-ff510e71.js → bs-5c2ca44f.js} +15 -15
  396. package/dist/esm/buffer-tools_4.entry.js +1437 -1437
  397. package/dist/esm/{ca-b9a5e51a.js → ca-47f86073.js} +15 -15
  398. package/dist/esm/calcite-accordion-item.entry.js +140 -140
  399. package/dist/esm/calcite-accordion.entry.js +75 -75
  400. package/dist/esm/calcite-action-bar.entry.js +216 -216
  401. package/dist/esm/calcite-action-group_2.entry.js +365 -365
  402. package/dist/esm/calcite-action-pad.entry.js +135 -135
  403. package/dist/esm/calcite-action_2.entry.js +445 -445
  404. package/dist/esm/calcite-alert.entry.js +247 -247
  405. package/dist/esm/calcite-avatar.entry.js +73 -73
  406. package/dist/esm/calcite-block-section.entry.js +122 -122
  407. package/dist/esm/calcite-block.entry.js +131 -131
  408. package/dist/esm/calcite-button.entry.js +182 -182
  409. package/dist/esm/calcite-card.entry.js +99 -99
  410. package/dist/esm/calcite-checkbox.entry.js +125 -125
  411. package/dist/esm/calcite-chip-group.entry.js +164 -164
  412. package/dist/esm/calcite-chip.entry.js +213 -213
  413. package/dist/esm/calcite-color-picker-hex-input_2.entry.js +303 -303
  414. package/dist/esm/calcite-color-picker.entry.js +886 -886
  415. package/dist/esm/calcite-combobox-item-group.entry.js +35 -35
  416. package/dist/esm/calcite-combobox_6.entry.js +1786 -1786
  417. package/dist/esm/calcite-date-picker-day_3.entry.js +589 -589
  418. package/dist/esm/calcite-date-picker.entry.js +434 -434
  419. package/dist/esm/calcite-fab.entry.js +66 -66
  420. package/dist/esm/calcite-filter_5.entry.js +1131 -1131
  421. package/dist/esm/calcite-flow-item.entry.js +146 -146
  422. package/dist/esm/calcite-flow.entry.js +117 -117
  423. package/dist/esm/calcite-graph.entry.js +66 -66
  424. package/dist/esm/calcite-icon.entry.js +80 -80
  425. package/dist/esm/calcite-inline-editable.entry.js +225 -225
  426. package/dist/esm/calcite-input-date-picker.entry.js +632 -632
  427. package/dist/esm/calcite-input-number_2.entry.js +846 -846
  428. package/dist/esm/{calcite-input-time-picker-13448515.js → calcite-input-time-picker-59a3ed66.js} +534 -534
  429. package/dist/esm/calcite-input-time-picker.entry.js +15 -15
  430. package/dist/esm/calcite-input-time-zone.entry.js +150 -150
  431. package/dist/esm/calcite-input_2.entry.js +645 -645
  432. package/dist/esm/calcite-label.entry.js +40 -40
  433. package/dist/esm/calcite-link.entry.js +96 -96
  434. package/dist/esm/calcite-list-item-group.entry.js +46 -46
  435. package/dist/esm/calcite-loader.entry.js +65 -65
  436. package/dist/esm/calcite-menu-item.entry.js +246 -246
  437. package/dist/esm/calcite-menu.entry.js +161 -161
  438. package/dist/esm/calcite-modal.entry.js +282 -282
  439. package/dist/esm/calcite-navigation-logo.entry.js +52 -52
  440. package/dist/esm/calcite-navigation-user.entry.js +45 -45
  441. package/dist/esm/calcite-navigation.entry.js +126 -126
  442. package/dist/esm/calcite-notice.entry.js +105 -105
  443. package/dist/esm/calcite-option-group.entry.js +24 -24
  444. package/dist/esm/calcite-option_2.entry.js +271 -271
  445. package/dist/esm/calcite-pagination.entry.js +191 -191
  446. package/dist/esm/calcite-panel_2.entry.js +346 -346
  447. package/dist/esm/calcite-pick-list-group.entry.js +46 -46
  448. package/dist/esm/calcite-pick-list-item.entry.js +181 -181
  449. package/dist/esm/calcite-pick-list.entry.js +130 -130
  450. package/dist/esm/calcite-radio-button-group.entry.js +118 -118
  451. package/dist/esm/calcite-radio-button.entry.js +292 -292
  452. package/dist/esm/calcite-rating.entry.js +245 -245
  453. package/dist/esm/calcite-scrim.entry.js +93 -93
  454. package/dist/esm/calcite-segmented-control_2.entry.js +225 -225
  455. package/dist/esm/calcite-shell-center-row.entry.js +42 -42
  456. package/dist/esm/calcite-shell-panel_14.entry.js +2604 -2604
  457. package/dist/esm/calcite-sortable-list.entry.js +134 -134
  458. package/dist/esm/calcite-split-button.entry.js +92 -92
  459. package/dist/esm/calcite-stepper-item.entry.js +197 -197
  460. package/dist/esm/calcite-stepper.entry.js +187 -187
  461. package/dist/esm/calcite-switch.entry.js +100 -100
  462. package/dist/esm/calcite-text-area.entry.js +235 -235
  463. package/dist/esm/calcite-tile-select-group.entry.js +27 -27
  464. package/dist/esm/calcite-tile-select.entry.js +180 -180
  465. package/dist/esm/calcite-tile.entry.js +58 -58
  466. package/dist/esm/calcite-time-picker.entry.js +619 -619
  467. package/dist/esm/calcite-tip-group.entry.js +10 -10
  468. package/dist/esm/calcite-tip-manager.entry.js +185 -185
  469. package/dist/esm/calcite-tip.entry.js +94 -94
  470. package/dist/esm/calcite-tooltip.entry.js +185 -185
  471. package/dist/esm/calcite-tree_3.entry.js +821 -821
  472. package/dist/esm/card-manager_4.entry.js +652 -652
  473. package/dist/esm/{conditionalSlot-27a0fce0.js → conditionalSlot-91396dd5.js} +2 -2
  474. package/dist/esm/crowdsource-manager.entry.js +256 -256
  475. package/dist/esm/crowdsource-reporter.entry.js +60 -60
  476. package/dist/esm/{cs-f21a0628.js → cs-f651c3cd.js} +15 -15
  477. package/dist/esm/{da-dc48fc4c.js → da-e32ccc0a.js} +15 -15
  478. package/dist/esm/{date-0ed48e97.js → date-51fa981b.js} +1 -1
  479. package/dist/esm/{de-59290071.js → de-9b417aed.js} +15 -15
  480. package/dist/esm/{de-at-cd6e6ab7.js → de-at-f73447e2.js} +15 -15
  481. package/dist/esm/{de-ch-27c44e34.js → de-ch-7ec8c31e.js} +15 -15
  482. package/dist/esm/deduct-calculator.entry.js +90 -90
  483. package/dist/esm/{dom-843e3afd.js → dom-8a9e4ee8.js} +2 -2
  484. package/dist/esm/{downloadUtils-63661805.js → downloadUtils-43b53f5a.js} +660 -660
  485. package/dist/esm/edit-card_2.entry.js +345 -345
  486. package/dist/esm/{el-f09fdec6.js → el-9a3189a2.js} +15 -15
  487. package/dist/esm/{en-au-90087aa5.js → en-au-5aea3b73.js} +15 -15
  488. package/dist/esm/{en-ca-10751695.js → en-ca-fe3e706b.js} +15 -15
  489. package/dist/esm/{en-gb-0f8547bd.js → en-gb-a4278000.js} +15 -15
  490. package/dist/esm/{es-b0997cf1.js → es-383f9c9e.js} +15 -15
  491. package/dist/esm/{es-mx-226f5028.js → es-mx-7845b382.js} +15 -15
  492. package/dist/esm/{et-dc96c453.js → et-d8f8df06.js} +15 -15
  493. package/dist/esm/{fi-0941704d.js → fi-14894338.js} +15 -15
  494. package/dist/esm/{filter-1cac3edf.js → filter-bf34614b.js} +1 -1
  495. package/dist/esm/{floating-ui-d28d0fd6.js → floating-ui-9870f74c.js} +2 -2
  496. package/dist/esm/{focusTrapComponent-ff3a9f28.js → focusTrapComponent-34010d00.js} +1 -1
  497. package/dist/esm/{form-11c6a015.js → form-6669a774.js} +2 -2
  498. package/dist/esm/{fr-8da3458d.js → fr-6f570086.js} +15 -15
  499. package/dist/esm/{fr-ch-739ceddf.js → fr-ch-b9f89159.js} +15 -15
  500. package/dist/esm/{he-8b662dfa.js → he-174aca6e.js} +15 -15
  501. package/dist/esm/{hi-10996f89.js → hi-7e469aab.js} +15 -15
  502. package/dist/esm/{hr-42c2024d.js → hr-a4ac455a.js} +15 -15
  503. package/dist/esm/{hu-4768b3ff.js → hu-207da291.js} +15 -15
  504. package/dist/esm/{id-24a08170.js → id-8e4d57bf.js} +15 -15
  505. package/dist/esm/{index-b91c174c.js → index-4c4a4f3d.js} +1 -1
  506. package/dist/esm/{index-b5d9d795.js → index-d298aca9.js} +38 -180
  507. package/dist/esm/{index.es-3a3aa8e3.js → index.es-a185f2b1.js} +6 -6
  508. package/dist/esm/{interfaces-5a2fe8b4.js → interfaces-bf20e69c.js} +77 -77
  509. package/dist/esm/{it-ad09649f.js → it-7ade952c.js} +15 -15
  510. package/dist/esm/{it-ch-b05fc10d.js → it-ch-181d76ab.js} +15 -15
  511. package/dist/esm/{ja-ab839b73.js → ja-42013dd3.js} +15 -15
  512. package/dist/esm/{ko-c778539e.js → ko-8de07550.js} +15 -15
  513. package/dist/esm/{label-6a1caf64.js → label-661d8e10.js} +1 -1
  514. package/dist/esm/list-item.entry.js +60 -60
  515. package/dist/esm/{loadModules-2ecd1e44.js → loadModules-cd3569de.js} +19 -19
  516. package/dist/esm/{loadable-6bca96ad.js → loadable-08376d90.js} +1 -1
  517. package/dist/esm/loader.js +14 -5
  518. package/dist/esm/{locale-aa3de591.js → locale-54cac39a.js} +107 -107
  519. package/dist/esm/{locale-d8561d54.js → locale-73d0926a.js} +3 -3
  520. package/dist/esm/{lt-447d9aa9.js → lt-1ef29b5b.js} +15 -15
  521. package/dist/esm/{lv-4d715e11.js → lv-263a2f78.js} +15 -15
  522. package/dist/esm/map-picker_2.entry.js +243 -243
  523. package/dist/esm/map-select-tools_3.entry.js +1285 -1285
  524. package/dist/esm/{mapViewUtils-f0c04325.js → mapViewUtils-1e68cede.js} +384 -384
  525. package/dist/esm/{mk-b3d7401a.js → mk-d8bae136.js} +15 -15
  526. package/dist/esm/{nb-2b4a8366.js → nb-494542b3.js} +15 -15
  527. package/dist/esm/{nl-c0db1da2.js → nl-cd882d7f.js} +15 -15
  528. package/dist/esm/{openCloseComponent-2b5c6bed.js → openCloseComponent-a40fd6fd.js} +1 -1
  529. package/dist/esm/pci-calculator.entry.js +102 -102
  530. package/dist/esm/{pciUtils-59c29b42.js → pciUtils-ecda46e5.js} +836 -836
  531. package/dist/esm/{pl-0d322bb4.js → pl-b79095d5.js} +15 -15
  532. package/dist/esm/polyfills/core-js.js +11 -0
  533. package/dist/esm/polyfills/css-shim.js +1 -0
  534. package/dist/esm/polyfills/dom.js +79 -0
  535. package/dist/esm/polyfills/es5-html-element.js +1 -0
  536. package/dist/esm/polyfills/index.js +34 -0
  537. package/dist/esm/polyfills/system.js +6 -0
  538. package/dist/esm/{pt-5997598c.js → pt-5ca0b751.js} +15 -15
  539. package/dist/esm/{pt-br-6b77e7db.js → pt-br-e1a1ce60.js} +15 -15
  540. package/dist/esm/public-notification.entry.js +844 -844
  541. package/dist/esm/{publicNotificationStore-ade82148.js → publicNotificationStore-6ef555f3.js} +40 -40
  542. package/dist/esm/{ro-ac3724e0.js → ro-5cbc0f2a.js} +15 -15
  543. package/dist/esm/{ru-4e75151f.js → ru-e66f5b84.js} +15 -15
  544. package/dist/esm/{shared-list-render-abd19c8d.js → shared-list-render-5b788e63.js} +6 -6
  545. package/dist/esm/{sk-bbfa22a3.js → sk-be2b5cec.js} +15 -15
  546. package/dist/esm/{sl-867cecfc.js → sl-74600272.js} +15 -15
  547. package/dist/esm/solution-configuration.entry.js +888 -888
  548. package/dist/esm/solution-contents_3.entry.js +21506 -21506
  549. package/dist/esm/{solution-store-46bc46a5.js → solution-store-c107ca4d.js} +577 -577
  550. package/dist/esm/solutions-components.js +5 -5
  551. package/dist/esm/{sortableComponent-db502e97.js → sortableComponent-1dd8a4ae.js} +1 -1
  552. package/dist/esm/{sr-198b5c00.js → sr-58280ce5.js} +15 -15
  553. package/dist/esm/store-manager.entry.js +52 -52
  554. package/dist/esm/{sv-02d64370.js → sv-f0e2171a.js} +15 -15
  555. package/dist/esm/{t9n-76168237.js → t9n-745553e0.js} +2 -2
  556. package/dist/esm/{th-1616e303.js → th-6c3eac31.js} +15 -15
  557. package/dist/esm/{throttle-9ab70933.js → throttle-26fa347b.js} +1 -1
  558. package/dist/esm/{time-6721a4c2.js → time-7e3ba7c6.js} +1 -1
  559. package/dist/esm/{tr-f4619f64.js → tr-092713ca.js} +15 -15
  560. package/dist/esm/{uk-df7df34a.js → uk-95df0f95.js} +15 -15
  561. package/dist/esm/{utils-ccfd94a7.js → utils-4f695ec2.js} +1 -1
  562. package/dist/esm/{utils-f54411df.js → utils-ddff4ef3.js} +3 -3
  563. package/dist/esm/{vi-176ca9f7.js → vi-70a9857c.js} +15 -15
  564. package/dist/esm/{zh-cn-e13d83d1.js → zh-cn-e024ef2d.js} +15 -15
  565. package/dist/esm/{zh-hk-d97365d8.js → zh-hk-36ff9e8f.js} +15 -15
  566. package/dist/esm/{zh-tw-a2b6f0b7.js → zh-tw-96ddb74c.js} +15 -15
  567. package/dist/loader/index.d.ts +2 -2
  568. package/dist/solutions-components/{p-15ef7894.js → p-0056655c.js} +1 -1
  569. package/dist/solutions-components/{p-955a956a.entry.js → p-017265ef.entry.js} +1 -1
  570. package/dist/solutions-components/{p-844ee452.entry.js → p-017543d5.entry.js} +1 -1
  571. package/dist/solutions-components/{p-b2e6c578.js → p-0209ed2e.js} +1 -1
  572. package/dist/solutions-components/{p-5e59219b.entry.js → p-0245bb56.entry.js} +1 -1
  573. package/dist/solutions-components/{p-916f90ec.entry.js → p-043ead99.entry.js} +1 -1
  574. package/dist/solutions-components/p-048a2a6d.js +6 -0
  575. package/dist/solutions-components/{p-e02fcfa9.entry.js → p-050e12eb.entry.js} +1 -1
  576. package/dist/solutions-components/{p-b0c4138f.entry.js → p-06916de9.entry.js} +1 -1
  577. package/dist/solutions-components/{p-67ce3c0c.entry.js → p-08320fb9.entry.js} +2 -2
  578. package/dist/solutions-components/{p-21f00df6.js → p-08e12eb0.js} +1 -1
  579. package/dist/solutions-components/p-0a2c02fd.js +6 -0
  580. package/dist/solutions-components/{p-de58bd49.js → p-0a4bc416.js} +1 -1
  581. package/dist/solutions-components/{p-ef96894d.entry.js → p-0afa17dc.entry.js} +1 -1
  582. package/dist/solutions-components/{p-4bc7b875.entry.js → p-0b4eb6e4.entry.js} +1 -1
  583. package/dist/solutions-components/{p-7b9adfff.js → p-0d900572.js} +1 -1
  584. package/dist/solutions-components/{p-0fbc27fd.entry.js → p-0f4d3009.entry.js} +1 -1
  585. package/dist/solutions-components/{p-b921aa1a.entry.js → p-10181f33.entry.js} +1 -1
  586. package/dist/solutions-components/{p-804e4751.entry.js → p-105ef63c.entry.js} +1 -1
  587. package/dist/solutions-components/{p-35123c90.js → p-11983a08.js} +1 -1
  588. package/dist/solutions-components/p-1260db08.js +61 -0
  589. package/dist/solutions-components/{p-a0edbb27.js → p-129fcd0a.js} +1 -1
  590. package/dist/solutions-components/{p-c1ee0d69.js → p-13f7e487.js} +1 -1
  591. package/dist/solutions-components/p-14769a01.js +11 -0
  592. package/dist/solutions-components/{p-c6d83122.entry.js → p-14a4ad77.entry.js} +2 -2
  593. package/dist/solutions-components/{p-e07b8a72.entry.js → p-15e67907.entry.js} +1 -1
  594. package/dist/solutions-components/{p-32ef065d.entry.js → p-17799448.entry.js} +1 -1
  595. package/dist/solutions-components/{p-8a758303.js → p-185a82e0.js} +1 -1
  596. package/dist/solutions-components/p-191c59e9.js +6 -0
  597. package/dist/solutions-components/{p-7601988d.entry.js → p-1b63bec9.entry.js} +1 -1
  598. package/dist/solutions-components/{p-28d2670f.entry.js → p-1c810f4c.entry.js} +1 -1
  599. package/dist/solutions-components/{p-9603c3ff.entry.js → p-1d28ff09.entry.js} +1 -1
  600. package/dist/solutions-components/{p-4b95d05e.entry.js → p-1e30069a.entry.js} +1 -1
  601. package/dist/solutions-components/p-1e63db11.entry.js +6 -0
  602. package/dist/solutions-components/{p-a08bd8c1.entry.js → p-20274226.entry.js} +1 -1
  603. package/dist/solutions-components/{p-a843af2a.js → p-2411f1f6.js} +1 -1
  604. package/dist/solutions-components/{p-ad4d6d02.entry.js → p-2509b65f.entry.js} +2 -2
  605. package/dist/solutions-components/{p-216801d5.js → p-25faeab6.js} +1 -1
  606. package/dist/solutions-components/{p-f8dd2784.js → p-27f5bb4f.js} +2 -2
  607. package/dist/solutions-components/{p-b948ecd2.entry.js → p-2a0d8a46.entry.js} +1 -1
  608. package/dist/solutions-components/{p-27a1ac1f.entry.js → p-2dea68b6.entry.js} +2 -2
  609. package/dist/solutions-components/{p-de59d2f5.js → p-2ecd5cb7.js} +1 -1
  610. package/dist/solutions-components/{p-7aa949a3.entry.js → p-30dbc43d.entry.js} +2 -2
  611. package/dist/solutions-components/{p-46d5970b.entry.js → p-32d821d1.entry.js} +1 -1
  612. package/dist/solutions-components/{p-82199b7b.entry.js → p-3479d873.entry.js} +1 -1
  613. package/dist/solutions-components/{p-9fb16c72.entry.js → p-36d09c0c.entry.js} +1 -1
  614. package/dist/solutions-components/{p-75f26870.js → p-375f0b74.js} +6 -6
  615. package/dist/solutions-components/{p-cf1af08f.entry.js → p-38b4873b.entry.js} +1 -1
  616. package/dist/solutions-components/p-38d61356.js +18 -0
  617. package/dist/solutions-components/{p-a2748b38.entry.js → p-3a7156b8.entry.js} +1 -1
  618. package/dist/solutions-components/{p-022a9b7a.js → p-3b041268.js} +1 -1
  619. package/dist/solutions-components/{p-6a820c4d.js → p-3ca9bb95.js} +1 -1
  620. package/dist/solutions-components/{p-326fa270.js → p-3e5c8b2f.js} +1 -1
  621. package/dist/solutions-components/{p-1ede2e18.js → p-3ee6af74.js} +2 -2
  622. package/dist/solutions-components/{p-97c47bbd.entry.js → p-3eecbcf0.entry.js} +1 -1
  623. package/dist/solutions-components/{p-5c097e25.entry.js → p-40432de5.entry.js} +1 -1
  624. package/dist/solutions-components/{p-c9858d8f.entry.js → p-4058733e.entry.js} +1 -1
  625. package/dist/solutions-components/{p-9e727488.js → p-4152fae0.js} +1 -1
  626. package/dist/solutions-components/{p-12a4fa84.js → p-4321edfc.js} +1 -1
  627. package/dist/solutions-components/{p-761a033a.entry.js → p-4344b6ca.entry.js} +1 -1
  628. package/dist/solutions-components/{p-aeebdb15.js → p-44e26e37.js} +1 -1
  629. package/dist/solutions-components/{p-3445a8c6.js → p-477ae127.js} +1 -1
  630. package/dist/solutions-components/{p-9cb94ea0.js → p-4c8b1179.js} +1 -1
  631. package/dist/solutions-components/p-4e32bf8c.js +6 -0
  632. package/dist/solutions-components/{p-4c43820f.entry.js → p-4e93132b.entry.js} +1 -1
  633. package/dist/solutions-components/{p-1add4e39.entry.js → p-4ea79dc4.entry.js} +2 -2
  634. package/dist/solutions-components/{p-05db4340.js → p-4f51db32.js} +1 -1
  635. package/dist/solutions-components/{p-4d17943f.js → p-4f64d786.js} +1 -1
  636. package/dist/solutions-components/{p-2c0dc7b1.js → p-4ff653eb.js} +1 -1
  637. package/dist/solutions-components/{p-b1f84ae5.js → p-53347add.js} +1 -1
  638. package/dist/solutions-components/p-54fce798.js +11 -0
  639. package/dist/solutions-components/{p-abda8ca2.entry.js → p-573d282b.entry.js} +1 -1
  640. package/dist/solutions-components/{p-a258f5e7.js → p-58340eba.js} +1 -1
  641. package/dist/solutions-components/p-5930cd6d.entry.js +6 -0
  642. package/dist/solutions-components/p-5fc99541.js +257 -0
  643. package/dist/solutions-components/{p-ffac6f88.entry.js → p-6071078a.entry.js} +1 -1
  644. package/dist/solutions-components/{p-dc9dad31.entry.js → p-69863a28.entry.js} +1 -1
  645. package/dist/solutions-components/{p-a6900100.entry.js → p-699031c9.entry.js} +2 -2
  646. package/dist/solutions-components/{p-ab8f5c6b.entry.js → p-6998e886.entry.js} +1 -1
  647. package/dist/solutions-components/{p-bbb0d957.entry.js → p-6a813a31.entry.js} +1 -1
  648. package/dist/solutions-components/{p-ad72a379.entry.js → p-6b12b5eb.entry.js} +1 -1
  649. package/dist/solutions-components/{p-639cca97.js → p-6e89e9dd.js} +1 -1
  650. package/dist/solutions-components/{p-5adf37ea.entry.js → p-705b7f81.entry.js} +1 -1
  651. package/dist/solutions-components/p-75578ebf.entry.js +6 -0
  652. package/dist/solutions-components/{p-5383607a.js → p-7c72df3c.js} +3 -3
  653. package/dist/solutions-components/{p-03fccde6.entry.js → p-7ca47589.entry.js} +2 -2
  654. package/dist/solutions-components/{p-a040efff.js → p-7cb8a4db.js} +1 -1
  655. package/dist/solutions-components/p-7cc13b24.js +8 -0
  656. package/dist/solutions-components/{p-e4253e1b.entry.js → p-8008b2fe.entry.js} +1 -1
  657. package/dist/solutions-components/{p-22d580b0.entry.js → p-81531fbe.entry.js} +1 -1
  658. package/dist/solutions-components/{p-e10a62f4.entry.js → p-81627211.entry.js} +1 -1
  659. package/dist/solutions-components/{p-2d70d3fd.js → p-8aa806fe.js} +1 -1
  660. package/dist/solutions-components/{p-052ff2c7.js → p-8ae8b789.js} +1 -1
  661. package/dist/solutions-components/{p-4daae757.js → p-8b1236bf.js} +1 -1
  662. package/dist/solutions-components/{p-ee066c67.js → p-8b14f9aa.js} +3 -3
  663. package/dist/solutions-components/{p-56300653.js → p-8b4e79fd.js} +1 -1
  664. package/dist/solutions-components/{p-bba3fa4e.entry.js → p-8bc91d5b.entry.js} +2 -2
  665. package/dist/solutions-components/{p-cad5587c.entry.js → p-8df0c98c.entry.js} +1 -1
  666. package/dist/solutions-components/p-953cf07a.entry.js +6 -0
  667. package/dist/solutions-components/{p-5b9b1cbb.entry.js → p-95cf8aa0.entry.js} +1 -1
  668. package/dist/solutions-components/{p-29d41c7e.js → p-99ece5e1.js} +2 -2
  669. package/dist/solutions-components/{p-b4157e6a.js → p-9a2a551d.js} +1 -1
  670. package/dist/solutions-components/{p-541697d0.js → p-9b43b4cf.js} +1 -1
  671. package/dist/solutions-components/{p-647a4130.js → p-9f922d49.js} +2 -7
  672. package/dist/solutions-components/p-9fb09c2c.js +11 -0
  673. package/dist/solutions-components/{p-e645edf2.entry.js → p-a0e50ea6.entry.js} +1 -1
  674. package/dist/solutions-components/{p-31316d61.entry.js → p-a1154bb5.entry.js} +2 -2
  675. package/dist/solutions-components/{p-d62784a4.js → p-a709a84a.js} +1 -1
  676. package/dist/solutions-components/p-a99832c1.js +27 -0
  677. package/dist/solutions-components/{p-0f8440bb.entry.js → p-ad41cd27.entry.js} +1 -1
  678. package/dist/solutions-components/{p-bd3a3afe.js → p-ad962e25.js} +1 -1
  679. package/dist/solutions-components/{p-2b252afd.entry.js → p-ae1459ed.entry.js} +1 -1
  680. package/dist/solutions-components/{p-90bbf223.entry.js → p-af9510a4.entry.js} +1 -1
  681. package/dist/solutions-components/{p-4f0c3fc1.js → p-afc462f0.js} +1 -1
  682. package/dist/solutions-components/{p-6431fd69.js → p-b02a2b2f.js} +2 -2
  683. package/dist/solutions-components/{p-421d5e7c.js → p-b0eb13a1.js} +1 -1
  684. package/dist/solutions-components/{p-2656168f.entry.js → p-b1228e6c.entry.js} +1 -1
  685. package/dist/solutions-components/{p-0e7914e6.entry.js → p-b1ff9f2e.entry.js} +1 -1
  686. package/dist/solutions-components/p-b20bf7b7.entry.js +6 -0
  687. package/dist/solutions-components/{p-7920b5a2.entry.js → p-b361af64.entry.js} +1 -1
  688. package/dist/solutions-components/{p-a777b18c.js → p-b4a6abe2.js} +2 -2
  689. package/dist/solutions-components/{p-4e4b55b9.entry.js → p-b68b17b6.entry.js} +3 -3
  690. package/dist/solutions-components/{p-f41105c8.js → p-b73e9c4d.js} +1 -1
  691. package/dist/solutions-components/{p-19fe7725.js → p-b9111e12.js} +1 -1
  692. package/dist/solutions-components/{p-3cbe5ef3.js → p-b9653a1e.js} +1 -1
  693. package/dist/solutions-components/{p-5f5c371e.js → p-b9fa9ca9.js} +1 -1
  694. package/dist/solutions-components/{p-c07af9c2.entry.js → p-ba9bb2ba.entry.js} +2 -2
  695. package/dist/solutions-components/{p-b49bdc72.entry.js → p-bc35e445.entry.js} +1 -1
  696. package/dist/solutions-components/{p-c3f8b670.js → p-bccc74a8.js} +1 -1
  697. package/dist/solutions-components/{p-1990d9c8.entry.js → p-bd213033.entry.js} +1 -1
  698. package/dist/solutions-components/{p-a775ba2f.entry.js → p-c0dc792a.entry.js} +1 -1
  699. package/dist/solutions-components/{p-606ca126.js → p-c16e540d.js} +1 -1
  700. package/dist/solutions-components/{p-42c7a5fa.entry.js → p-c35b219b.entry.js} +1 -1
  701. package/dist/solutions-components/{p-b86b4512.entry.js → p-c38c0612.entry.js} +2 -2
  702. package/dist/solutions-components/{p-6b2f2b85.js → p-c8c3554b.js} +3 -3
  703. package/dist/solutions-components/{p-634e1240.js → p-cbebdffa.js} +1 -1
  704. package/dist/solutions-components/{p-91caf655.entry.js → p-cbf52aa2.entry.js} +2 -2
  705. package/dist/solutions-components/{p-825bac0e.js → p-ce21ee76.js} +1 -1
  706. package/dist/solutions-components/{p-57c08531.entry.js → p-ce3e73ae.entry.js} +1 -1
  707. package/dist/solutions-components/{p-d3a22725.js → p-cf14e2f3.js} +1 -1
  708. package/dist/solutions-components/{p-f28d69ac.entry.js → p-cfebc45c.entry.js} +1 -1
  709. package/dist/solutions-components/{p-6a524392.entry.js → p-d15a4f36.entry.js} +1 -1
  710. package/dist/solutions-components/{p-754e2df2.js → p-d3550542.js} +1 -1
  711. package/dist/solutions-components/{p-b5d67495.entry.js → p-d3dceabd.entry.js} +1 -1
  712. package/dist/solutions-components/{p-07bc4f07.entry.js → p-d43c1fc8.entry.js} +2 -2
  713. package/dist/solutions-components/{p-6de98c51.js → p-d7ddd3a2.js} +1 -1
  714. package/dist/solutions-components/{p-3e139360.js → p-d841cb8b.js} +1 -1
  715. package/dist/solutions-components/{p-2ae17fa2.js → p-d9868bac.js} +1 -1
  716. package/dist/solutions-components/{p-32f9c709.js → p-dc94bec2.js} +1 -1
  717. package/dist/solutions-components/{p-e6bee82f.js → p-dd0f8875.js} +1 -1
  718. package/dist/solutions-components/p-dec7b660.js +11 -0
  719. package/dist/solutions-components/{p-3f0193e9.js → p-deca8a07.js} +1 -1
  720. package/dist/solutions-components/{p-31ff3452.entry.js → p-df5ec082.entry.js} +1 -1
  721. package/dist/solutions-components/{p-ea282908.js → p-e046f728.js} +1 -1
  722. package/dist/solutions-components/{p-cf43278c.entry.js → p-e27ce6d2.entry.js} +1 -1
  723. package/dist/solutions-components/p-e2abc969.js +6 -0
  724. package/dist/solutions-components/{p-c5e294e4.js → p-e3f9e213.js} +1 -1
  725. package/dist/solutions-components/{p-2b96e551.entry.js → p-e43839a8.entry.js} +2 -2
  726. package/dist/solutions-components/{p-418d0b60.entry.js → p-e4d5188b.entry.js} +1 -1
  727. package/dist/solutions-components/{p-7b90c18e.entry.js → p-e666c0d6.entry.js} +1 -1
  728. package/dist/solutions-components/{p-39ff5ee5.js → p-e6c20791.js} +1 -1
  729. package/dist/solutions-components/{p-2005280f.js → p-ec4c8dc3.js} +1 -1
  730. package/dist/solutions-components/{p-93074bd4.entry.js → p-ef34c9e2.entry.js} +1 -1
  731. package/dist/solutions-components/{p-361f1fe1.js → p-f346f8ab.js} +2 -2
  732. package/dist/solutions-components/{p-680d193d.entry.js → p-f780ecc1.entry.js} +2 -2
  733. package/dist/solutions-components/p-f8be5d5f.js +7 -0
  734. package/dist/solutions-components/{p-c70392c4.entry.js → p-f9a56d6b.entry.js} +1 -1
  735. package/dist/solutions-components/{p-0ece6df1.entry.js → p-f9b9b211.entry.js} +1 -1
  736. package/dist/solutions-components/{p-a0a2c53d.js → p-fc2277fe.js} +1 -1
  737. package/dist/solutions-components/{p-40bde8b2.entry.js → p-fd65b14d.entry.js} +1 -1
  738. package/dist/solutions-components/{p-ef48bd77.entry.js → p-fe0e8542.entry.js} +1 -1
  739. package/dist/solutions-components/solutions-components.esm.js +1 -1
  740. package/dist/types/components/buffer-tools/buffer-tools.d.ts +170 -170
  741. package/dist/types/components/card-manager/card-manager.d.ts +70 -70
  742. package/dist/types/components/crowdsource-manager/crowdsource-manager.d.ts +174 -174
  743. package/dist/types/components/crowdsource-reporter/crowdsource-reporter.d.ts +26 -26
  744. package/dist/types/components/deduct-calculator/deduct-calculator.d.ts +90 -90
  745. package/dist/types/components/edit-card/edit-card.d.ts +140 -140
  746. package/dist/types/components/info-card/info-card.d.ts +143 -143
  747. package/dist/types/components/json-editor/json-editor.d.ts +229 -229
  748. package/dist/types/components/layer-table/layer-table.d.ts +276 -276
  749. package/dist/types/components/layout-manager/layout-manager.d.ts +69 -69
  750. package/dist/types/components/list-item/list-item.d.ts +26 -26
  751. package/dist/types/components/map-card/map-card.d.ts +83 -83
  752. package/dist/types/components/map-draw-tools/map-draw-tools.d.ts +231 -231
  753. package/dist/types/components/map-layer-picker/map-layer-picker.d.ts +160 -160
  754. package/dist/types/components/map-picker/map-picker.d.ts +109 -109
  755. package/dist/types/components/map-select-tools/map-select-tools.d.ts +469 -469
  756. package/dist/types/components/map-tools/map-tools.d.ts +104 -104
  757. package/dist/types/components/pci-calculator/pci-calculator.d.ts +71 -71
  758. package/dist/types/components/pdf-download/pdf-download.d.ts +101 -101
  759. package/dist/types/components/public-notification/public-notification.d.ts +610 -610
  760. package/dist/types/components/refine-selection/refine-selection.d.ts +234 -234
  761. package/dist/types/components/solution-configuration/solution-configuration.d.ts +205 -205
  762. package/dist/types/components/solution-contents/solution-contents.d.ts +46 -46
  763. package/dist/types/components/solution-item/solution-item.d.ts +71 -71
  764. package/dist/types/components/solution-item-details/solution-item-details.d.ts +100 -100
  765. package/dist/types/components/solution-item-icon/solution-item-icon.d.ts +44 -44
  766. package/dist/types/components/solution-item-sharing/solution-item-sharing.d.ts +62 -62
  767. package/dist/types/components/solution-organization-variables/solution-organization-variables.d.ts +63 -63
  768. package/dist/types/components/solution-resource-item/solution-resource-item.d.ts +144 -144
  769. package/dist/types/components/solution-spatial-ref/solution-spatial-ref.d.ts +180 -180
  770. package/dist/types/components/solution-spatial-ref/spatialreferences.d.ts +17 -17
  771. package/dist/types/components/solution-template-data/solution-template-data.d.ts +72 -72
  772. package/dist/types/components/solution-variables/solution-variables.d.ts +69 -69
  773. package/dist/types/components/store-manager/store-manager.d.ts +55 -55
  774. package/dist/types/components.d.ts +0 -2
  775. package/dist/types/index.d.ts +16 -16
  776. package/dist/types/stencil-public-runtime.d.ts +14 -27
  777. package/dist/types/utils/common.d.ts +49 -49
  778. package/dist/types/utils/csvDownload.d.ts +24 -24
  779. package/dist/types/utils/csvUtils.d.ts +22 -22
  780. package/dist/types/utils/downloadUtils.d.ts +118 -118
  781. package/dist/types/utils/interfaces.d.ts +398 -398
  782. package/dist/types/utils/languageUtil.d.ts +11 -11
  783. package/dist/types/utils/loadModules.d.ts +17 -17
  784. package/dist/types/utils/locale.d.ts +22 -22
  785. package/dist/types/utils/mapViewUtils.d.ts +124 -124
  786. package/dist/types/utils/pciUtils.d.ts +97 -97
  787. package/dist/types/utils/pdfUtils.d.ts +27 -27
  788. package/dist/types/utils/publicNotificationStore.d.ts +24 -24
  789. package/dist/types/utils/queryUtils.d.ts +95 -95
  790. package/dist/types/utils/solution-store.d.ts +234 -234
  791. package/dist/types/utils/templates.d.ts +50 -50
  792. package/dist/types/utils/test/mocks/jsApi.d.ts +59 -59
  793. package/dist/types/utils/test/testUtils.d.ts +36 -36
  794. package/dist/types/utils/types.d.ts +1 -1
  795. package/package.json +2 -2
  796. package/dist/collection/components/buffer-tools/test/buffer-tools.e2e.js +0 -29
  797. package/dist/collection/components/buffer-tools/test/buffer-tools.spec.js +0 -160
  798. package/dist/collection/components/card-manager/test/card-manager.e2e.js +0 -29
  799. package/dist/collection/components/card-manager/test/card-manager.spec.js +0 -37
  800. package/dist/collection/components/crowdsource-manager/test/crowdsource-manager.e2e.js +0 -29
  801. package/dist/collection/components/crowdsource-manager/test/crowdsource-manager.spec.js +0 -37
  802. package/dist/collection/components/crowdsource-reporter/test/crowdsource-reporter.e2e.js +0 -29
  803. package/dist/collection/components/crowdsource-reporter/test/crowdsource-reporter.spec.js +0 -37
  804. package/dist/collection/components/deduct-calculator/test/deduct-calculator.e2e.js +0 -29
  805. package/dist/collection/components/deduct-calculator/test/deduct-calculator.spec.js +0 -37
  806. package/dist/collection/components/edit-card/test/edit-card.e2e.js +0 -14
  807. package/dist/collection/components/edit-card/test/edit-card.spec.js +0 -22
  808. package/dist/collection/components/info-card/test/info-card.e2e.js +0 -29
  809. package/dist/collection/components/info-card/test/info-card.spec.js +0 -37
  810. package/dist/collection/components/json-editor/test/json-editor.e2e.js +0 -36
  811. package/dist/collection/components/json-editor/test/json-editor.spec.js +0 -65
  812. package/dist/collection/components/layer-table/test/layer-table.e2e.js +0 -29
  813. package/dist/collection/components/layer-table/test/layer-table.spec.js +0 -37
  814. package/dist/collection/components/layout-manager/test/layout-manager.e2e.js +0 -29
  815. package/dist/collection/components/layout-manager/test/layout-manager.spec.js +0 -37
  816. package/dist/collection/components/list-item/test/list-item.e2e.js +0 -29
  817. package/dist/collection/components/list-item/test/list-item.spec.js +0 -37
  818. package/dist/collection/components/map-card/test/map-card.e2e.js +0 -29
  819. package/dist/collection/components/map-card/test/map-card.spec.js +0 -37
  820. package/dist/collection/components/map-draw-tools/test/map-draw-tools.e2e.js +0 -29
  821. package/dist/collection/components/map-draw-tools/test/map-draw-tools.spec.js +0 -37
  822. package/dist/collection/components/map-layer-picker/test/map-layer-picker.e2e.js +0 -29
  823. package/dist/collection/components/map-layer-picker/test/map-layer-picker.spec.js +0 -114
  824. package/dist/collection/components/map-picker/test/map-picker.e2e.js +0 -29
  825. package/dist/collection/components/map-picker/test/map-picker.spec.js +0 -37
  826. package/dist/collection/components/map-select-tools/test/map-select-tools.e2e.js +0 -29
  827. package/dist/collection/components/map-select-tools/test/map-select-tools.spec.js +0 -366
  828. package/dist/collection/components/map-tools/test/map-tools.e2e.js +0 -29
  829. package/dist/collection/components/map-tools/test/map-tools.spec.js +0 -37
  830. package/dist/collection/components/pci-calculator/test/pci-calculator.e2e.js +0 -29
  831. package/dist/collection/components/pci-calculator/test/pci-calculator.spec.js +0 -37
  832. package/dist/collection/components/pdf-download/test/pdf-download.e2e.js +0 -76
  833. package/dist/collection/components/pdf-download/test/pdf-download.spec.js +0 -107
  834. package/dist/collection/components/public-notification/test/public-notification.spec.js +0 -161
  835. package/dist/collection/components/refine-selection/test/refine-selection.e2e.js +0 -14
  836. package/dist/collection/components/refine-selection/test/refine-selection.spec.js +0 -22
  837. package/dist/collection/components/solution-configuration/test/solution-configuration.e2e.js +0 -36
  838. package/dist/collection/components/solution-configuration/test/solution-configuration.spec.js +0 -119
  839. package/dist/collection/components/solution-contents/test/solution-contents.e2e.js +0 -94
  840. package/dist/collection/components/solution-contents/test/solution-contents.spec.js +0 -143
  841. package/dist/collection/components/solution-item/test/solution-item.e2e.js +0 -36
  842. package/dist/collection/components/solution-item/test/solution-item.spec.js +0 -77
  843. package/dist/collection/components/solution-item-details/test/solution-item-details.e2e.js +0 -36
  844. package/dist/collection/components/solution-item-details/test/solution-item-details.spec.js +0 -142
  845. package/dist/collection/components/solution-item-icon/test/solution-item-icon.e2e.js +0 -29
  846. package/dist/collection/components/solution-item-icon/test/solution-item-icon.spec.js +0 -39
  847. package/dist/collection/components/solution-item-sharing/test/solution-item-sharing.e2e.js +0 -36
  848. package/dist/collection/components/solution-item-sharing/test/solution-item-sharing.spec.js +0 -54
  849. package/dist/collection/components/solution-organization-variables/test/solution-organization-variables.e2e.js +0 -36
  850. package/dist/collection/components/solution-organization-variables/test/solution-organization-variables.spec.js +0 -65
  851. package/dist/collection/components/solution-resource-item/test/solution-resource-item.e2e.js +0 -36
  852. package/dist/collection/components/solution-resource-item/test/solution-resource-item.spec.js +0 -55
  853. package/dist/collection/components/solution-spatial-ref/test/solution-spatial-ref.e2e.js +0 -36
  854. package/dist/collection/components/solution-spatial-ref/test/solution-spatial-ref.spec.js +0 -175
  855. package/dist/collection/components/solution-template-data/test/solution-template-data.e2e.js +0 -36
  856. package/dist/collection/components/solution-template-data/test/solution-template-data.spec.js +0 -60
  857. package/dist/collection/components/solution-variables/test/solution-variables.e2e.js +0 -36
  858. package/dist/collection/components/solution-variables/test/solution-variables.spec.js +0 -131
  859. package/dist/collection/utils/templates.e2e.js +0 -30
  860. package/dist/collection/utils/test/csvUtils.spec.js +0 -51
  861. package/dist/collection/utils/test/downloadUtils.spec.js +0 -357
  862. package/dist/collection/utils/test/pciUtils.spec.js +0 -302
  863. package/dist/collection/utils/test/solution-store.spec.js +0 -444
  864. package/dist/esm/resources-40d8e06f.js +0 -20
  865. package/dist/solutions-components/p-0cc32f06.js +0 -6
  866. package/dist/solutions-components/p-10248e04.js +0 -11
  867. package/dist/solutions-components/p-108fbf59.entry.js +0 -6
  868. package/dist/solutions-components/p-13290851.js +0 -259
  869. package/dist/solutions-components/p-164be8ef.entry.js +0 -6
  870. package/dist/solutions-components/p-1ea1dcac.js +0 -61
  871. package/dist/solutions-components/p-3aba40e8.js +0 -18
  872. package/dist/solutions-components/p-3bd99fc9.js +0 -11
  873. package/dist/solutions-components/p-3cce003d.js +0 -27
  874. package/dist/solutions-components/p-525f1188.js +0 -11
  875. package/dist/solutions-components/p-6665fa1f.js +0 -6
  876. package/dist/solutions-components/p-7c33e500.entry.js +0 -6
  877. package/dist/solutions-components/p-9310b882.js +0 -7
  878. package/dist/solutions-components/p-9bbc05ff.js +0 -11
  879. package/dist/solutions-components/p-a82f35c9.js +0 -6
  880. package/dist/solutions-components/p-b6578a32.js +0 -6
  881. package/dist/solutions-components/p-b684bbc7.entry.js +0 -6
  882. package/dist/solutions-components/p-baccfd70.entry.js +0 -6
  883. package/dist/solutions-components/p-bf9e18d4.js +0 -8
  884. package/dist/solutions-components/p-d6322e4b.js +0 -6
  885. /package/dist/cjs/{array-46bb7df1.js → array-51e7da8f.js} +0 -0
  886. /package/dist/cjs/{debounce-30afab47.js → debounce-69c3bada.js} +0 -0
  887. /package/dist/cjs/{guid-3abe3cc6.js → guid-ca85ade0.js} +0 -0
  888. /package/dist/cjs/{html2canvas-34208bbf.js → html2canvas-770c1171.js} +0 -0
  889. /package/dist/cjs/{interactive-2fe0f43a.js → interactive-4e212b36.js} +0 -0
  890. /package/dist/cjs/{key-b8b55ea3.js → key-b32a6438.js} +0 -0
  891. /package/dist/cjs/{math-5132d9bd.js → math-ef14a84a.js} +0 -0
  892. /package/dist/cjs/{observers-f5fa975b.js → observers-20fe6f01.js} +0 -0
  893. /package/dist/cjs/{purify-f8c3e427.js → purify-5389d8d6.js} +0 -0
  894. /package/dist/cjs/{resources-2901b608.js → resources-1d2258a1.js} +0 -0
  895. /package/dist/cjs/{resources-60c27547.js → resources-7c9bff85.js} +0 -0
  896. /package/dist/cjs/{resources-9f2b33ee.js → resources-9dcbf30f.js} +0 -0
  897. /package/dist/cjs/{resources-4da89742.js → resources-a7e3371d.js} +0 -0
  898. /package/dist/cjs/{resources-8233a151.js → resources-b176fc52.js} +0 -0
  899. /package/dist/cjs/{resources-77713c2e.js → resources-b4b4b4fe.js} +0 -0
  900. /package/dist/cjs/{resources-e1258e8a.js → resources-c6f066a4.js} +0 -0
  901. /package/dist/cjs/{resources-91409a5d.js → resources-f13e2605.js} +0 -0
  902. /package/dist/cjs/{resources-c913200c.js → resources-f3e30b7b.js} +0 -0
  903. /package/dist/cjs/{utils-bae432a9.js → utils-662561ad.js} +0 -0
  904. /package/dist/cjs/{utils-cd14113f.js → utils-8a0f3e68.js} +0 -0
  905. /package/dist/esm/{array-751a2b87.js → array-4a653f59.js} +0 -0
  906. /package/dist/esm/{debounce-229b1a22.js → debounce-4c884e5c.js} +0 -0
  907. /package/dist/esm/{guid-2bbb8cd1.js → guid-1608fd71.js} +0 -0
  908. /package/dist/esm/{html2canvas-a0a4df55.js → html2canvas-12c862c8.js} +0 -0
  909. /package/dist/esm/{interactive-eaf4be29.js → interactive-0733ee76.js} +0 -0
  910. /package/dist/esm/{key-7a525416.js → key-97b504af.js} +0 -0
  911. /package/dist/esm/{math-5f92f517.js → math-e006358c.js} +0 -0
  912. /package/dist/esm/{observers-9d66685a.js → observers-67bdf9e5.js} +0 -0
  913. /package/dist/esm/{purify-c99d2ace.js → purify-75c61cf7.js} +0 -0
  914. /package/dist/esm/{resources-d6a4d343.js → resources-01034dfa.js} +0 -0
  915. /package/dist/esm/{resources-c253772f.js → resources-34b761fa.js} +0 -0
  916. /package/dist/esm/{resources-a9b2d33c.js → resources-43d63050.js} +0 -0
  917. /package/dist/esm/{resources-dca3d475.js → resources-5490ccf4.js} +0 -0
  918. /package/dist/esm/{resources-c65f5654.js → resources-6b7800e6.js} +0 -0
  919. /package/dist/esm/{resources-5bce3953.js → resources-6be20fcc.js} +0 -0
  920. /package/dist/esm/{resources-58d30a0f.js → resources-913009ae.js} +0 -0
  921. /package/dist/{components/resources4.js → esm/resources-b5267429.js} +0 -0
  922. /package/dist/esm/{resources-94c47e64.js → resources-f97db74e.js} +0 -0
  923. /package/dist/esm/{utils-2c91c963.js → utils-649c76ab.js} +0 -0
  924. /package/dist/esm/{utils-18db6b1d.js → utils-dcd05f69.js} +0 -0
  925. /package/dist/solutions-components/{p-f055a840.js → p-0506e06f.js} +0 -0
  926. /package/dist/solutions-components/{p-283e3a2d.js → p-0630e686.js} +0 -0
  927. /package/dist/solutions-components/{p-fb7e0054.js → p-08ab045a.js} +0 -0
  928. /package/dist/solutions-components/{p-2291b598.js → p-0b32d4fe.js} +0 -0
  929. /package/dist/solutions-components/{p-5961c4e0.js → p-203b16df.js} +0 -0
  930. /package/dist/solutions-components/{p-3fc17d72.js → p-3adf63ca.js} +0 -0
  931. /package/dist/solutions-components/{p-d4c103a8.js → p-3b72043f.js} +0 -0
  932. /package/dist/solutions-components/{p-18f1772b.js → p-43ebe36a.js} +0 -0
  933. /package/dist/solutions-components/{p-58ce5639.js → p-5242a652.js} +0 -0
  934. /package/dist/solutions-components/{p-18869c0f.js → p-5d25ba99.js} +0 -0
  935. /package/dist/solutions-components/{p-1f468797.js → p-76b83a13.js} +0 -0
  936. /package/dist/solutions-components/{p-d554507d.js → p-7ac7b1a1.js} +0 -0
  937. /package/dist/solutions-components/{p-868df4a0.js → p-9ab03591.js} +0 -0
  938. /package/dist/solutions-components/{p-38ef0684.js → p-a963dd48.js} +0 -0
  939. /package/dist/solutions-components/{p-63a0e9bf.js → p-cc815aca.js} +0 -0
  940. /package/dist/solutions-components/{p-6f2edf5b.js → p-d556b5c4.js} +0 -0
  941. /package/dist/solutions-components/{p-215d3505.js → p-f93e6931.js} +0 -0
  942. /package/dist/solutions-components/{p-4805ff13.js → p-fb3ba11a.js} +0 -0
  943. /package/dist/solutions-components/{p-b9749e09.js → p-ff4afb7d.js} +0 -0
@@ -1,842 +1,842 @@
1
- /*!
2
- * Copyright 2022 Esri
3
- * Licensed under the Apache License, Version 2.0
4
- * http://www.apache.org/licenses/LICENSE-2.0
5
- */
6
- /** @license
7
- * Copyright 2022 Esri
8
- *
9
- * Licensed under the Apache License, Version 2.0 (the "License");
10
- * you may not use this file except in compliance with the License.
11
- * You may obtain a copy of the License at
12
- *
13
- * http://www.apache.org/licenses/LICENSE-2.0
14
- *
15
- * Unless required by applicable law or agreed to in writing, software
16
- * distributed under the License is distributed on an "AS IS" BASIS,
17
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18
- * See the License for the specific language governing permissions and
19
- * limitations under the License.
20
- */
21
- /**
22
- * Effect of the distresses on ride quality.
23
- *
24
- * L - Low. Individual bumps or settlements, or both, cause the vehicle to bounce slightly,
25
- * but create little discomfort.
26
- *
27
- * M - Medium. Individual bumps or settlements, or both, cause the vehicle to bounce significantly,
28
- * creating some discomfort.
29
- *
30
- * H - High. Individual bumps or settlements, or both, cause the vehicle to bounce excessively,
31
- * creating substantial discomfort, safety hazard, or high potential vehicle damage.
32
- *
33
- * @returns Promise resolving when function is done
34
- *
35
- */
36
- export var ESeverity;
37
- (function (ESeverity) {
38
- ESeverity["H"] = "H";
39
- ESeverity["M"] = "M";
40
- ESeverity["L"] = "L";
41
- })(ESeverity || (ESeverity = {}));
42
- /**
43
- * Type of distress as defined by ASTM standard
44
- *
45
- */
46
- export var EDistressType;
47
- (function (EDistressType) {
48
- EDistressType[EDistressType["ALLIGATOR_CRACKING"] = 1] = "ALLIGATOR_CRACKING";
49
- EDistressType[EDistressType["BLEEDING"] = 2] = "BLEEDING";
50
- EDistressType[EDistressType["BLOCK_CRACKING"] = 3] = "BLOCK_CRACKING";
51
- EDistressType[EDistressType["BUMPS_SAGS"] = 4] = "BUMPS_SAGS";
52
- EDistressType[EDistressType["CORRUGATION"] = 5] = "CORRUGATION";
53
- EDistressType[EDistressType["DEPRESSION"] = 6] = "DEPRESSION";
54
- EDistressType[EDistressType["EDGE_CRACKING"] = 7] = "EDGE_CRACKING";
55
- EDistressType[EDistressType["REFLECTION_CRACKING"] = 8] = "REFLECTION_CRACKING";
56
- EDistressType[EDistressType["LANE_SHOULDER_DROP_OFF"] = 9] = "LANE_SHOULDER_DROP_OFF";
57
- EDistressType[EDistressType["LONG_TRANS_CRACKING"] = 10] = "LONG_TRANS_CRACKING";
58
- EDistressType[EDistressType["PATCHING_UTIL_CUT_PATCHING"] = 11] = "PATCHING_UTIL_CUT_PATCHING";
59
- EDistressType[EDistressType["POLISHED_AGGREGATE"] = 12] = "POLISHED_AGGREGATE";
60
- EDistressType[EDistressType["POTHOLES"] = 13] = "POTHOLES";
61
- EDistressType[EDistressType["RAILROAD_CROSSING"] = 14] = "RAILROAD_CROSSING";
62
- EDistressType[EDistressType["RUTTING"] = 15] = "RUTTING";
63
- EDistressType[EDistressType["SHOVING"] = 16] = "SHOVING";
64
- EDistressType[EDistressType["SLIPPAGE_CRACKING"] = 17] = "SLIPPAGE_CRACKING";
65
- EDistressType[EDistressType["SWELL"] = 18] = "SWELL";
66
- EDistressType[EDistressType["RAVELING"] = 19] = "RAVELING";
67
- EDistressType[EDistressType["WEATHERING"] = 20] = "WEATHERING";
68
- })(EDistressType || (EDistressType = {}));
69
- /**
70
- * Calculate the deduct value for the given distress.
71
- *
72
- * @param type expects 1-19 as a string
73
- * @param severity expects "H" | "M" | "L"
74
- * @param density the calculated percent density ralative to the total sample area
75
- * @param showDebugging used to control debugging messages to show the various
76
- * calculations a required steps along the way.
77
- * The main reason this is optional is that it provides no value when used within
78
- * Survey123 as we have nowhere to see the messages and I wasn't sure if writing to a
79
- * console in that context could have any negative side effects.
80
- *
81
- * @returns pipe delimited string: type|severity|roundedDeductValue|density
82
- */
83
- export function calculateDeductValue(type, severity, density, showDebugging = false) {
84
- // When called from survey123 we will get the args as strings
85
- // not sure if they could be numbers so a little extra conversion to make sure with the density
86
- const _type = parseInt(type);
87
- const _severity = ESeverity[severity];
88
- const _density = parseFloat(density.toString());
89
- // When called from survey123 all distress types and severities will be passed in
90
- // We only need to calculate the deduct value if we have a valid density
91
- if (Number.isNaN(_density) || _density === 0) {
92
- return "";
93
- }
94
- const _showDebugging = showDebugging === true || showDebugging.toString().toLowerCase() === "true";
95
- let calc;
96
- switch (_type) {
97
- case EDistressType.ALLIGATOR_CRACKING:
98
- calc = _calcAlligator;
99
- break;
100
- case EDistressType.BLEEDING:
101
- calc = _calcBleeding;
102
- break;
103
- case EDistressType.BLOCK_CRACKING:
104
- calc = _calcBlockCracking;
105
- break;
106
- case EDistressType.BUMPS_SAGS:
107
- calc = _calcBumpsSags;
108
- break;
109
- case EDistressType.CORRUGATION:
110
- calc = _calcCorrugation;
111
- break;
112
- case EDistressType.DEPRESSION:
113
- calc = _calcDepression;
114
- break;
115
- case EDistressType.EDGE_CRACKING:
116
- calc = _calcEdgeCracking;
117
- break;
118
- case EDistressType.REFLECTION_CRACKING:
119
- calc = _calcReflectionCracking;
120
- break;
121
- case EDistressType.LANE_SHOULDER_DROP_OFF:
122
- calc = _calcLaneShoulderDropOff;
123
- break;
124
- case EDistressType.LONG_TRANS_CRACKING:
125
- calc = _calcLongTransCracking;
126
- break;
127
- case EDistressType.PATCHING_UTIL_CUT_PATCHING:
128
- calc = _calcPatchingUtilCutPatching;
129
- break;
130
- case EDistressType.POLISHED_AGGREGATE:
131
- calc = _calcPolishedAggregate;
132
- break;
133
- case EDistressType.POTHOLES:
134
- calc = _calcPotholes;
135
- break;
136
- case EDistressType.RAILROAD_CROSSING:
137
- calc = _calcRailroadCrossing;
138
- break;
139
- case EDistressType.RUTTING:
140
- calc = _calcRutting;
141
- break;
142
- case EDistressType.SHOVING:
143
- calc = _calcShoving;
144
- break;
145
- case EDistressType.SLIPPAGE_CRACKING:
146
- calc = _calcSlippageCracking;
147
- break;
148
- case EDistressType.SWELL:
149
- calc = _calcSwell;
150
- break;
151
- case EDistressType.RAVELING:
152
- calc = _calcRaveling;
153
- break;
154
- case EDistressType.WEATHERING:
155
- calc = _calcWeathering;
156
- break;
157
- }
158
- const dv = calc(_severity, Math.log10(_density));
159
- const roundedDV = _round(dv);
160
- const formattedDV = `${type}|${severity}|${roundedDV}|${_density}`;
161
- if (_showDebugging) {
162
- console.log(`Deduct value: ${dv}`);
163
- console.log(`Rounded deduct value: ${roundedDV}`);
164
- console.log(`Formatted devduct value (type|severity|roundedDV|density): ${formattedDV}`);
165
- }
166
- return formattedDV;
167
- }
168
- /**
169
- * Calculate the pavement condition index (PCI)
170
- *
171
- * @param deductValues string of comma delimited values
172
- * @param showDebugging used to control debugging messages to show the various
173
- * calculations a required steps along the way.
174
- * The main reason this is optional is that it provides no value when used within
175
- * Survey123 as we have nowhere to see the messages and I wasn't sure if writing to a
176
- * console in that context could have any negative side effects.
177
- *
178
- * @returns the calculated PCI
179
- */
180
- export function calculatePCI(deductValues, showDebugging = false) {
181
- // When called from survey123 we will get the args as strings
182
- // When comparing multi-severities calculatePCI will be called multiple times
183
- // When called from _evaluateMultiSeverity we will just recieve a comma delimited string
184
- // When its just comma delimited we don't need to re-evaluate the multiple severities
185
- let _deductValues = deductValues.indexOf("|") > -1 ?
186
- _evaluateMultiSeverity(deductValues, showDebugging) :
187
- deductValues.split(",").map(dv => parseFloat(dv));
188
- const _showDebugging = showDebugging === true || showDebugging.toString().toLowerCase() === "true";
189
- let pci = 0;
190
- // filter out non-numbers
191
- _deductValues = _deductValues.filter(dv => Math.abs(dv) > 0);
192
- if (_deductValues.length > 0) {
193
- const maxCDV = _getMaxCDV(_deductValues, _showDebugging);
194
- pci = 100 - _round(maxCDV);
195
- }
196
- return pci;
197
- }
198
- /**
199
- * Determine if corrections are required when we have multiple severities of a single distress type.
200
- *
201
- * @param deductValues string of comma delimited values e.g. "1|L|10|0.52,1|H|7|0.58"
202
- * @param showDebugging used to control debugging messages to show the various
203
- * calculations a required steps along the way.
204
- *
205
- * @returns an object that will contain any corrections for the current distress type
206
- */
207
- function _evaluateMultiSeverity(deductValues, showDebugging) {
208
- const updates = {};
209
- const _dvObject = _parseDeductValues(deductValues);
210
- const multiSeverityKeys = Object.keys(_dvObject).filter(k => Object.keys(_dvObject[k]).length > 1);
211
- if (multiSeverityKeys.length > 0) {
212
- multiSeverityKeys.forEach(k => {
213
- let hDeductValue;
214
- let mDeductValue;
215
- let lDeductValue;
216
- let hDensity;
217
- let mDensity;
218
- let lDensity;
219
- // need to know if 2 or 3 severity case
220
- Object.keys(_dvObject[k]).forEach(_k => {
221
- if (_k === "H") {
222
- hDeductValue = _dvObject[k][_k].deductValue;
223
- hDensity = _dvObject[k][_k].density;
224
- }
225
- else if (_k === "M") {
226
- mDeductValue = _dvObject[k][_k].deductValue;
227
- mDensity = _dvObject[k][_k].density;
228
- }
229
- else {
230
- lDeductValue = _dvObject[k][_k].deductValue;
231
- lDensity = _dvObject[k][_k].density;
232
- }
233
- });
234
- const func = (hDensity && mDensity && lDensity) ?
235
- _getThreeSeverityCaseUpdates : _getTwoSeverityCaseUpdates;
236
- const update = func(k, hDeductValue, mDeductValue, lDeductValue, hDensity, mDensity, lDensity, showDebugging);
237
- if (update) {
238
- updates[k] = update;
239
- if (showDebugging) {
240
- console.log("updates");
241
- console.log(updates);
242
- }
243
- }
244
- });
245
- }
246
- return _getFinalDeductValues(deductValues, updates);
247
- }
248
- /**
249
- * Determine if corrections are required when we have 3 severities of a single distress type.
250
- *
251
- * @param type the distress type 1-19 as a string
252
- * @param hDeductValue high severity deduct value
253
- * @param mDeductValue med severity deduct value
254
- * @param lDeductValue low severity deduct value
255
- * @param hDensity high severity density
256
- * @param mDensity med severity density
257
- * @param lDensity low severity density
258
- * @param showDebugging used to control debugging messages to show the various
259
- * calculations a required steps along the way.
260
- *
261
- * @returns undefined or an object that will contain any corrections for the current distress type
262
- */
263
- function _getThreeSeverityCaseUpdates(type, hDeductValue, mDeductValue, lDeductValue, hDensity, mDensity, lDensity, showDebugging) {
264
- const pci1 = calculatePCI(`${hDeductValue},${mDeductValue},${lDeductValue}`, true);
265
- if (showDebugging) {
266
- console.log("pci1");
267
- console.log(pci1);
268
- }
269
- const lm = lDensity + mDensity;
270
- const lmPCI2 = _getPCI2(type, "M", lm.toString(), hDeductValue, showDebugging);
271
- const mh = mDensity + hDensity;
272
- const mhPCI2 = _getPCI2(type, "H", mh.toString(), lDeductValue, showDebugging);
273
- const lh = lDensity + hDensity;
274
- const lhPCI2 = _getPCI2(type, "H", lh.toString(), mDeductValue, showDebugging);
275
- const lmh = lDensity + mDensity + hDensity;
276
- const lmhPCI2 = _getPCI2(type, "H", lmh.toString(), 0, showDebugging);
277
- if (showDebugging) {
278
- console.log("low med pci2");
279
- console.log(lmPCI2.pci);
280
- console.log("med high pci2");
281
- console.log(mhPCI2.pci);
282
- console.log("low high pci2");
283
- console.log(lhPCI2.pci);
284
- console.log("low med high pci2");
285
- console.log(lmhPCI2.pci);
286
- }
287
- const pcis = [lmPCI2, mhPCI2, lhPCI2, lmhPCI2];
288
- const highest = pcis.reduce((prev, cur) => {
289
- return cur.pci > pci1 && (!prev || cur.pci > prev.pci) ? cur : prev;
290
- }, undefined);
291
- return highest ? highest.dv : undefined;
292
- }
293
- /**
294
- * Determine if corrections are required when we have 2 severities of a single distress type.
295
- *
296
- * @param type the distress type 1-19 as a string
297
- * @param hDeductValue high severity deduct value
298
- * @param mDeductValue med severity deduct value
299
- * @param lDeductValue low severity deduct value
300
- * @param hDensity high severity density
301
- * @param mDensity med severity density
302
- * @param lDensity low severity density
303
- * @param showDebugging used to control debugging messages to show the various
304
- * calculations a required steps along the way.
305
- *
306
- * @returns undefined or an object that will contain any corrections for the current distress type
307
- */
308
- function _getTwoSeverityCaseUpdates(type, hDeductValue, mDeductValue, lDeductValue, hDensity, mDensity, lDensity, showDebugging) {
309
- const hDV = hDeductValue || mDeductValue;
310
- const lDV = lDeductValue || mDeductValue;
311
- const pci1 = calculatePCI(`${hDV},${lDV}`, true);
312
- if (showDebugging) {
313
- console.log("pci1");
314
- console.log(pci1);
315
- }
316
- const hDen = hDensity || mDensity;
317
- const lDen = lDensity || mDensity;
318
- const sumDen = hDen + lDen;
319
- const highestSeverity = hDen === hDensity ? "H" : "M";
320
- const pci2 = _getPCI2(type, highestSeverity, sumDen.toString(), 0, showDebugging);
321
- if (showDebugging) {
322
- console.log("pci2");
323
- console.log(pci2.pci);
324
- }
325
- return pci2.pci > pci1 ? pci2.dv : undefined;
326
- }
327
- /**
328
- * Used to test for highest PCI when we have multiple severity cases for a single distress type.
329
- *
330
- * @param type the distress type 1-19 as a string
331
- * @param severity expects "H" | "M" | "L"
332
- * @param density the calculated percent density ralative to the total sample area
333
- * @param secondDeductValue optional deduct value will be 0 for all 2 severity cases and will be a non 0 number for 3 severity cases
334
- * @param showDebugging used to control debugging messages to show the various
335
- * calculations a required steps along the way.
336
- *
337
- * @returns ICorrection that contains the new PCI as well as the deduct values that should be used for corrections
338
- */
339
- function _getPCI2(type, severity, density, secondDeductValue, showDebugging) {
340
- const deductValue = calculateDeductValue(type, severity, density);
341
- const splitVal = deductValue.split("|");
342
- const newDV = parseFloat(splitVal[2]);
343
- return {
344
- pci: calculatePCI(`${splitVal[2]},${secondDeductValue}`, showDebugging),
345
- dv: secondDeductValue ? [newDV, secondDeductValue] : [newDV]
346
- };
347
- }
348
- /**
349
- * Parse the deduct value string into individual values for type, severity, deduct value, and density
350
- *
351
- * @param deductValues string of comma delimited values for type, severity, deduct value, and density
352
- *
353
- * @returns an object with the parsed values
354
- */
355
- function _parseDeductValues(deductValues) {
356
- return deductValues.split(",").reduce((prev, cur) => {
357
- const splitVal = cur.split("|");
358
- const type = splitVal[0];
359
- const severity = splitVal[1];
360
- const deductValue = parseFloat(splitVal[2]);
361
- const density = parseFloat(splitVal[3]);
362
- if (!prev[type]) {
363
- prev[type] = {};
364
- }
365
- prev[type][severity] = {
366
- deductValue,
367
- density
368
- };
369
- return prev;
370
- }, {});
371
- }
372
- /**
373
- * Replace any deduct values for the given distress types when it is determined that corrections
374
- * are required for a multi-severity case
375
- *
376
- * @param deductValues string of comma delimited values for type, severity, deduct value, and density
377
- * @param updates will contain the new corrected deduct value(s) that should be substituted for the original deduct value
378
- *
379
- * @returns an object with the parsed and updated deduct values to use for final PCI calculation
380
- */
381
- function _getFinalDeductValues(deductValues, updates) {
382
- const skipAdditionalTypes = [];
383
- return deductValues.split(",").reduce((prev, cur) => {
384
- //0: type, 1: severity, 2: deductValue, 3: density
385
- const splitVal = cur.split("|");
386
- const type = splitVal[0];
387
- const deductValue = parseFloat(splitVal[2]);
388
- if (Object.keys(updates).length > 0 && updates[type]) {
389
- skipAdditionalTypes.push(type);
390
- prev.push(...updates[type]);
391
- delete (updates[type]);
392
- }
393
- else if (skipAdditionalTypes.indexOf(type) < 0) {
394
- prev.push(deductValue);
395
- }
396
- return prev;
397
- }, []);
398
- }
399
- /**
400
- * Executes the polynomial equation using the provided values and density.
401
- * In the ASTM standard this is the step represented by finding the values
402
- * on the plotted graphs.
403
- *
404
- * @returns the calculated deduct value
405
- */
406
- function _calc(density, vals) {
407
- return vals.reduce((prev, cur, i) => {
408
- return prev += i === 0 ? cur :
409
- i === 1 ? (cur * density) :
410
- (cur * Math.pow(density, i));
411
- }, 0);
412
- }
413
- /**
414
- * Round to the nerest decimal in the 10ths place
415
- */
416
- function _round(v) {
417
- return Math.round(v * 10) / 10;
418
- }
419
- /**
420
- * Execute the deduct value calculation for the distress type
421
- *
422
- * @param severity The severity of the distress type
423
- * @param density percent density of the distress type
424
- *
425
- * @returns the calculated deduct value
426
- */
427
- function _calcAlligator(severity, density) {
428
- const vals = severity === ESeverity.H ? [30.71, 29.22, 9.407, -6.981, -2.158, 3.047, -0.6578] :
429
- severity === ESeverity.M ? [21.62, 21.32, 5.194, -1.343, 0.2341] :
430
- [11.31, 16.05, 7.572, -1.471];
431
- return _calc(density, vals);
432
- }
433
- /**
434
- * Execute the deduct value calculation for the distress type
435
- *
436
- * @param severity The severity of the distress type
437
- * @param density percent density of the distress type
438
- *
439
- * @returns the calculated deduct value
440
- */
441
- function _calcBleeding(severity, density) {
442
- const vals = severity === ESeverity.H ? [5.343, 6.927, 7.926, 4.265, -0.7582] :
443
- severity === ESeverity.M ? [2.38, 5.483, 4.128, 0.8366, 0.03659, 0.1052] :
444
- [0.01391, 0.5079, 1.576, 1.191, 0.1329, 0.03823];
445
- return _calc(density, vals);
446
- }
447
- /**
448
- * Execute the deduct value calculation for the distress type
449
- *
450
- * @param severity The severity of the distress type
451
- * @param density percent density of the distress type
452
- *
453
- * @returns the calculated deduct value
454
- */
455
- function _calcBlockCracking(severity, density) {
456
- const vals = severity === ESeverity.H ? [7.926, 11.93, 8.826, 3.432, -1.382] :
457
- severity === ESeverity.M ? [2.587, 9.142, 6.647, -0.455, -0.2439, 0.1107] :
458
- [0.646, 4.002, 4.2, 0.4987, -0.06269];
459
- return _calc(density, vals);
460
- }
461
- /**
462
- * Execute the deduct value calculation for the distress type
463
- *
464
- * @param severity The severity of the distress type
465
- * @param density percent density of the distress type
466
- *
467
- * @returns the calculated deduct value
468
- */
469
- function _calcBumpsSags(severity, density) {
470
- const vals = severity === ESeverity.H ? [52.77, 38.07, 8.964, -0.4148, -1.589, 2.478] :
471
- severity === ESeverity.M ? [24.66, 27.86, 15.73, 3.295, -5.27, 5.921, 7.959] :
472
- [8.768, 13.79, 7.064, 7.455, 6.041, -1.739, -1.371];
473
- return _calc(density, vals);
474
- }
475
- /**
476
- * Execute the deduct value calculation for the distress type
477
- *
478
- * @param severity The severity of the distress type
479
- * @param density percent density of the distress type
480
- *
481
- * @returns the calculated deduct value
482
- */
483
- function _calcCorrugation(severity, density) {
484
- const vals = severity === ESeverity.H ? [34.21, 21.59, 1.863, 6.1410, -0.687, -1.885, 0.4916] :
485
- severity === ESeverity.M ? [15.78, 19.69, 6.276, -2.124, 0.5868, 0.06045] :
486
- [2.173, 5.609, 5.976, -0.7348, -0.2172, 1.494, -0.5659];
487
- return _calc(density, vals);
488
- }
489
- /**
490
- * Execute the deduct value calculation for the distress type
491
- *
492
- * @param severity The severity of the distress type
493
- * @param density percent density of the distress type
494
- *
495
- * @returns the calculated deduct value
496
- */
497
- function _calcDepression(severity, density) {
498
- const vals = severity === ESeverity.H ? [17.84, 5.904, 9.406, 18.28, -2.753, -7.798, 2.402] :
499
- severity === ESeverity.M ? [8.471, 3.171, 10.25, 12.2, -0.9687, -4.601, 1.079] :
500
- [4.836, -0.7572, 4.786, 12.39, 1.233, -4.871, 0.9749];
501
- return _calc(density, vals);
502
- }
503
- /**
504
- * Execute the deduct value calculation for the distress type
505
- *
506
- * @param severity The severity of the distress type
507
- * @param density percent density of the distress type
508
- *
509
- * @returns the calculated deduct value
510
- */
511
- function _calcEdgeCracking(severity, density) {
512
- const vals = severity === ESeverity.H ? [14.99, 13.5, 10.62, 5.15, -1.792, -2.826] :
513
- severity === ESeverity.M ? [9.177, 10.26, 5.704, -0.6812, -0.8588, 0.2123] :
514
- [3.049, 4.802, 4.058, -0.3556, -1.55, 1.02];
515
- return _calc(density, vals);
516
- }
517
- /**
518
- * Execute the deduct value calculation for the distress type
519
- *
520
- * @param severity The severity of the distress type
521
- * @param density percent density of the distress type
522
- *
523
- * @returns the calculated deduct value
524
- */
525
- function _calcReflectionCracking(severity, density) {
526
- const vals = severity === ESeverity.H ? [14.99, 17.21, 27.63, 31.13, -20.94, -18.82, 9.985] :
527
- severity === ESeverity.M ? [9.9193, 10.88, 8.073, 14.8, -3.792, -9.583, 3.651] :
528
- [2.356, 6.664, 3.717, -1.393, 1.94, 1.785, -0.9707];
529
- return _calc(density, vals);
530
- }
531
- /**
532
- * Execute the deduct value calculation for the distress type
533
- *
534
- * @param severity The severity of the distress type
535
- * @param density percent density of the distress type
536
- *
537
- * @returns the calculated deduct value
538
- */
539
- function _calcLaneShoulderDropOff(severity, density) {
540
- const vals = severity === ESeverity.H ? [7.549, 6.907, 7.284, 9.304, 2.064] :
541
- severity === ESeverity.M ? [4.02, 1.744, 14.36, 15.92, -40.22, 23.6] :
542
- [2.004, 1.065, 9.706, 11.75, -27.52, 15.04];
543
- return _calc(density, vals);
544
- }
545
- /**
546
- * Execute the deduct value calculation for the distress type
547
- *
548
- * @param severity The severity of the distress type
549
- * @param density percent density of the distress type
550
- *
551
- * @returns the calculated deduct value
552
- */
553
- function _calcLongTransCracking(severity, density) {
554
- const vals = severity === ESeverity.H ? [19.56, 24.06, 12.12, 9.336, 1.532, -4.396] :
555
- severity === ESeverity.M ? [9.751, 15.53, 4.719, 1.369, 1.206, -1.164] :
556
- [2.347, 9.074, 8.424, -1.338, -1.873, 1.144];
557
- return _calc(density, vals);
558
- }
559
- /**
560
- * Execute the deduct value calculation for the distress type
561
- *
562
- * @param severity The severity of the distress type
563
- * @param density percent density of the distress type
564
- *
565
- * @returns the calculated deduct value
566
- */
567
- function _calcPatchingUtilCutPatching(severity, density) {
568
- const vals = severity === ESeverity.H ? [20.15, 16.55, 5.415, 10.77, 3.257, -4.502] :
569
- severity === ESeverity.M ? [10.28, 12.71, 6.174, 1.928, 0.6923, -0.4673] :
570
- [2.523, 6.892, 5.702, 2.407, 0.2185, -0.8722];
571
- return _calc(density, vals);
572
- }
573
- /**
574
- * Execute the deduct value calculation for the distress type
575
- *
576
- * @param severity The severity of the distress type
577
- * @param density percent density of the distress type
578
- *
579
- * @returns the calculated deduct value
580
- */
581
- function _calcPolishedAggregate(severity, density) {
582
- const vals = severity === "H" || severity === "M" || severity === "L" ?
583
- [3.417, -26.82, 71.15, -76.22, 38.52, -6.904] : [];
584
- return _calc(density, vals);
585
- }
586
- /**
587
- * Execute the deduct value calculation for the distress type
588
- *
589
- * @param severity The severity of the distress type
590
- * @param density percent density of the distress type
591
- *
592
- * @returns the calculated deduct value
593
- */
594
- function _calcPotholes(severity, density) {
595
- const vals = severity === ESeverity.H ? [110.7, 60.66, 2.378, -2.664] :
596
- severity === ESeverity.M ? [90.47, 60.41, -0.1123, -4.746] :
597
- [58.19, 40.53, 2.884, -1.443, 0.1195];
598
- return _calc(density, vals);
599
- }
600
- /**
601
- * Execute the deduct value calculation for the distress type
602
- *
603
- * @param severity The severity of the distress type
604
- * @param density percent density of the distress type
605
- *
606
- * @returns the calculated deduct value
607
- */
608
- function _calcRailroadCrossing(severity, density) {
609
- const vals = severity === ESeverity.H ? [20, 38.64, -62.82, 193.6, -162.7, 41.22] :
610
- severity === ESeverity.M ? [6.994, 23.47, -52.3, 167.3, -143.6, 37.64] :
611
- [1.998, -0.7488, 13.8, -0.7917, -1.981];
612
- return _calc(density, vals);
613
- }
614
- /**
615
- * Execute the deduct value calculation for the distress type
616
- *
617
- * @param severity The severity of the distress type
618
- * @param density percent density of the distress type
619
- *
620
- * @returns the calculated deduct value
621
- */
622
- function _calcRutting(severity, density) {
623
- const vals = severity === ESeverity.H ? [27.61, 25.19, 8.557, 1.65, -2.2030] :
624
- severity === ESeverity.M ? [18.47, 20.77, 6.617, -1.13, -2.286] :
625
- [8.833, 14.84, 3.129, 0.1451, 2.438, -1.279];
626
- return _calc(density, vals);
627
- }
628
- /**
629
- * Execute the deduct value calculation for the distress type
630
- *
631
- * @param severity The severity of the distress type
632
- * @param density percent density of the distress type
633
- *
634
- * @returns the calculated deduct value
635
- */
636
- function _calcShoving(severity, density) {
637
- const vals = severity === ESeverity.H ? [18.7, 20.17, 10.3, 4.694, 1.331, -2.61] :
638
- severity === ESeverity.M ? [10.39, 14.78, 5.488, 4.001, 3.23, -2.387] :
639
- [4.002, 10.66, 6.332, -0.5226, -0.1923];
640
- return _calc(density, vals);
641
- }
642
- /**
643
- * Execute the deduct value calculation for the distress type
644
- *
645
- * @param severity The severity of the distress type
646
- * @param density percent density of the distress type
647
- *
648
- * @returns the calculated deduct value
649
- */
650
- function _calcSlippageCracking(severity, density) {
651
- const vals = severity === ESeverity.H ? [19.73, 32.21, 25.87, -2.871, -10.55, 1.496, 0.7393] :
652
- severity === ESeverity.M ? [11.38, 18.55, 18.38, 1.628, -7.596, 0.5841, 0.5946] :
653
- [5.144, 12.95, 11.95, -0.833, -2.995, 1.325, -0.2113];
654
- return _calc(density, vals);
655
- }
656
- /**
657
- * Execute the deduct value calculation for the distress type
658
- *
659
- * @param severity The severity of the distress type
660
- * @param density percent density of the distress type
661
- *
662
- * @returns the calculated deduct value
663
- */
664
- function _calcSwell(severity, density) {
665
- const vals = severity === ESeverity.H ? [34, 16.84, -23.09, 41.17, -14.84] :
666
- severity === ESeverity.M ? [12, 15.67, 20.59, -28.33, 21, -5.508] :
667
- [1.995, 11.9, -12.83, 16.74, -5.361];
668
- return _calc(density, vals);
669
- }
670
- /**
671
- * Execute the deduct value calculation for the distress type
672
- *
673
- * @param severity The severity of the distress type
674
- * @param density percent density of the distress type
675
- *
676
- * @returns the calculated deduct value
677
- */
678
- function _calcRaveling(severity, density) {
679
- const vals = severity === ESeverity.H ? [16.77, 10.67, 5.758, 12.9, -0.0633, -5.659, 1.48] :
680
- severity === ESeverity.M ? [8.512, 5.106, 1.63, 3.469, 1.028, -1.211, 0.1938] :
681
- [];
682
- return _calc(density, vals);
683
- }
684
- /**
685
- * Execute the deduct value calculation for the distress type
686
- *
687
- * @param severity The severity of the distress type
688
- * @param density percent density of the distress type
689
- *
690
- * @returns the calculated deduct value
691
- */
692
- function _calcWeathering(severity, density) {
693
- const vals = severity === ESeverity.H ? [3.673, 3.349, 2.598, -1.233, 2.754, 2.434, -1.485] :
694
- severity === ESeverity.M ? [1.12, 0.9769, 0.93, -0.5955, 1.041, 1.111, -0.614] :
695
- [-0.0386, -0.0736, 0.834, 1.63, -0.0287, -0.639, 0.1515];
696
- return _calc(density, vals);
697
- }
698
- /**
699
- * Determine maximum Corrected Deduct Value (CDV) iteratively
700
- *
701
- * @param deductValues The calculated deduct values that will be used to determine max CDV
702
- * @param showDebugging used to optionally show debugging messages
703
- *
704
- * @returns the max CDV value
705
- */
706
- function _getMaxCDV(deductValues, showDebugging) {
707
- let maxCDV;
708
- // If none or only one individual deduct value is greater
709
- // than two, the total value is used in place of the maximum CD
710
- const valuesGreaterThan2 = deductValues.filter(deductValue => deductValue > 2);
711
- if (valuesGreaterThan2.length <= 1) {
712
- maxCDV = valuesGreaterThan2.reduce((prev, cur) => {
713
- prev += cur;
714
- return prev;
715
- }, 0);
716
- if (showDebugging) {
717
- console.log("If none or only one individual deduct value is greater");
718
- console.log("than two, the total value is used in place of the maximum CD");
719
- console.log(`Max CDV: ${maxCDV}`);
720
- }
721
- }
722
- else {
723
- // sort in descending order (section 9.5.2 in ASTM doc)
724
- const sortedDVs = deductValues.sort((a, b) => b - a);
725
- // Determine the allowable number of deducts, m (section 9.5.3 in ASTM doc)
726
- const highestDV = sortedDVs[0];
727
- // m = allowable number of deducts including fractions (must be less than or equal to ten)
728
- const m = 1 + (9 / 98) * (100 - highestDV);
729
- if (showDebugging) {
730
- console.log(`Deduct values sorted in descending order: ${sortedDVs}`);
731
- console.log(`Highest deduct value: ${highestDV}`);
732
- console.log(`Allowable number of deducts including fractions: ${m}`);
733
- }
734
- // TODO they mention (must be less than or equal to ten) but don't say what happens if its over
735
- if (m <= 10) {
736
- const vals = _reduceDeductValues(sortedDVs, m);
737
- if (showDebugging) {
738
- console.log(`Reduce deduct values to the m largest including the fractional part: ${vals}`);
739
- }
740
- // iteratively determined cdv values
741
- const cdvs = _getCDVs(vals, showDebugging);
742
- maxCDV = Math.max(...cdvs);
743
- if (showDebugging) {
744
- console.log(`Max CDV: ${maxCDV}`);
745
- }
746
- }
747
- else {
748
- if (showDebugging) {
749
- console.log("Allowable number of deducts including fractions (must be less than or equal to ten)");
750
- }
751
- }
752
- }
753
- return maxCDV;
754
- }
755
- /**
756
- * Reduce deduct values to the m largest including the fractional part
757
- *
758
- * @param sortedDVs individual deduct values in descending order
759
- * @param m allowable number of deducts (9.5.3 in ASTM standard)
760
- *
761
- * @returns updated deduct values
762
- */
763
- function _reduceDeductValues(sortedDVs, m) {
764
- const fractionalPart = m - Math.floor(m);
765
- // If less than m deduct values are available, all of the deduct values are used
766
- return sortedDVs.length < m ? sortedDVs :
767
- sortedDVs.reduce((prev, cur, i) => {
768
- if (i + 1 < m) {
769
- prev.push(cur);
770
- }
771
- else if (fractionalPart > 0) {
772
- prev.push(_round(cur * fractionalPart));
773
- }
774
- return prev;
775
- }, []);
776
- }
777
- /**
778
- * Reduce the smallest individual deduct value greater to 2.0 and repeat
779
- *
780
- * @param vals the list of deduct values
781
- * @param showDebugging optionally show debugging messages
782
- *
783
- * @returns array of CDV values
784
- */
785
- function _getCDVs(vals, showDebugging) {
786
- let len = vals.length;
787
- const cdvs = [];
788
- while (len >= 1) {
789
- if (showDebugging) {
790
- console.log(`vals: ${vals}`);
791
- }
792
- cdvs.push(_getCDV(vals, showDebugging));
793
- len -= 1;
794
- vals.splice(len, 1, 2);
795
- }
796
- return cdvs;
797
- }
798
- /**
799
- * Determine the total and max number deducts higher than two and calculate the CDV
800
- *
801
- * @param vals the list of deduct values
802
- * @param showDebugging optionally show debugging messages
803
- *
804
- * @returns the calculated CDV
805
- */
806
- function _getCDV(vals, showDebugging) {
807
- // section 9.5.5.1 in ASTM doc
808
- const totalDV = vals.reduce((prev, cur) => prev += cur, 0);
809
- // section 9.5.5.2 in ASTM doc
810
- // the number of deducts with a value greater than 2.0
811
- const q = vals.reduce((prev, cur) => cur > 2 ? prev + 1 : prev, 0);
812
- // section 9.5.5.3 in ASTM doc
813
- return _calcCDV(totalDV, q, showDebugging);
814
- }
815
- /**
816
- * Determine the total and max number deducts higher than two and calculate the CDV
817
- *
818
- * @param total the sum of all deduct values
819
- * @param q the number of deducts with a value greater than 2.0
820
- * @param showDebugging optionally show debugging messages
821
- *
822
- * @returns the calculated CDV
823
- */
824
- function _calcCDV(total, q, showDebugging) {
825
- // Determine the CDV from total deduct value and q
826
- const vals2 = {
827
- 7: [-9.482, 0.6045, 0.0003563, -5.448e-06],
828
- 6: [-8.165, 0.5724, 0.0004266, -4.254e-06],
829
- 5: [-7.932, 0.6091, 0.0003464, -4.265e-06],
830
- 4: [-6.78, 0.6301, 0.0007376, -6.357e-06],
831
- 3: [-5.015, 0.7546, -0.00043, -3.075e-06],
832
- 2: [-1.668, 0.7992, -0.0003013, -5.214e-06],
833
- 1: [1.651e-15, 1, -4.249e-18, 1.149e-19]
834
- };
835
- const cdv = _calc(total, vals2[q >= 7 ? 7 : q]);
836
- if (showDebugging) {
837
- console.log(`totalDV: ${total}`);
838
- console.log(`q: ${q}`);
839
- console.log(`CDV: ${cdv}`);
840
- }
841
- return cdv;
842
- }
1
+ /*!
2
+ * Copyright 2022 Esri
3
+ * Licensed under the Apache License, Version 2.0
4
+ * http://www.apache.org/licenses/LICENSE-2.0
5
+ */
6
+ /** @license
7
+ * Copyright 2022 Esri
8
+ *
9
+ * Licensed under the Apache License, Version 2.0 (the "License");
10
+ * you may not use this file except in compliance with the License.
11
+ * You may obtain a copy of the License at
12
+ *
13
+ * http://www.apache.org/licenses/LICENSE-2.0
14
+ *
15
+ * Unless required by applicable law or agreed to in writing, software
16
+ * distributed under the License is distributed on an "AS IS" BASIS,
17
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18
+ * See the License for the specific language governing permissions and
19
+ * limitations under the License.
20
+ */
21
+ /**
22
+ * Effect of the distresses on ride quality.
23
+ *
24
+ * L - Low. Individual bumps or settlements, or both, cause the vehicle to bounce slightly,
25
+ * but create little discomfort.
26
+ *
27
+ * M - Medium. Individual bumps or settlements, or both, cause the vehicle to bounce significantly,
28
+ * creating some discomfort.
29
+ *
30
+ * H - High. Individual bumps or settlements, or both, cause the vehicle to bounce excessively,
31
+ * creating substantial discomfort, safety hazard, or high potential vehicle damage.
32
+ *
33
+ * @returns Promise resolving when function is done
34
+ *
35
+ */
36
+ export var ESeverity;
37
+ (function (ESeverity) {
38
+ ESeverity["H"] = "H";
39
+ ESeverity["M"] = "M";
40
+ ESeverity["L"] = "L";
41
+ })(ESeverity || (ESeverity = {}));
42
+ /**
43
+ * Type of distress as defined by ASTM standard
44
+ *
45
+ */
46
+ export var EDistressType;
47
+ (function (EDistressType) {
48
+ EDistressType[EDistressType["ALLIGATOR_CRACKING"] = 1] = "ALLIGATOR_CRACKING";
49
+ EDistressType[EDistressType["BLEEDING"] = 2] = "BLEEDING";
50
+ EDistressType[EDistressType["BLOCK_CRACKING"] = 3] = "BLOCK_CRACKING";
51
+ EDistressType[EDistressType["BUMPS_SAGS"] = 4] = "BUMPS_SAGS";
52
+ EDistressType[EDistressType["CORRUGATION"] = 5] = "CORRUGATION";
53
+ EDistressType[EDistressType["DEPRESSION"] = 6] = "DEPRESSION";
54
+ EDistressType[EDistressType["EDGE_CRACKING"] = 7] = "EDGE_CRACKING";
55
+ EDistressType[EDistressType["REFLECTION_CRACKING"] = 8] = "REFLECTION_CRACKING";
56
+ EDistressType[EDistressType["LANE_SHOULDER_DROP_OFF"] = 9] = "LANE_SHOULDER_DROP_OFF";
57
+ EDistressType[EDistressType["LONG_TRANS_CRACKING"] = 10] = "LONG_TRANS_CRACKING";
58
+ EDistressType[EDistressType["PATCHING_UTIL_CUT_PATCHING"] = 11] = "PATCHING_UTIL_CUT_PATCHING";
59
+ EDistressType[EDistressType["POLISHED_AGGREGATE"] = 12] = "POLISHED_AGGREGATE";
60
+ EDistressType[EDistressType["POTHOLES"] = 13] = "POTHOLES";
61
+ EDistressType[EDistressType["RAILROAD_CROSSING"] = 14] = "RAILROAD_CROSSING";
62
+ EDistressType[EDistressType["RUTTING"] = 15] = "RUTTING";
63
+ EDistressType[EDistressType["SHOVING"] = 16] = "SHOVING";
64
+ EDistressType[EDistressType["SLIPPAGE_CRACKING"] = 17] = "SLIPPAGE_CRACKING";
65
+ EDistressType[EDistressType["SWELL"] = 18] = "SWELL";
66
+ EDistressType[EDistressType["RAVELING"] = 19] = "RAVELING";
67
+ EDistressType[EDistressType["WEATHERING"] = 20] = "WEATHERING";
68
+ })(EDistressType || (EDistressType = {}));
69
+ /**
70
+ * Calculate the deduct value for the given distress.
71
+ *
72
+ * @param type expects 1-19 as a string
73
+ * @param severity expects "H" | "M" | "L"
74
+ * @param density the calculated percent density ralative to the total sample area
75
+ * @param showDebugging used to control debugging messages to show the various
76
+ * calculations a required steps along the way.
77
+ * The main reason this is optional is that it provides no value when used within
78
+ * Survey123 as we have nowhere to see the messages and I wasn't sure if writing to a
79
+ * console in that context could have any negative side effects.
80
+ *
81
+ * @returns pipe delimited string: type|severity|roundedDeductValue|density
82
+ */
83
+ export function calculateDeductValue(type, severity, density, showDebugging = false) {
84
+ // When called from survey123 we will get the args as strings
85
+ // not sure if they could be numbers so a little extra conversion to make sure with the density
86
+ const _type = parseInt(type);
87
+ const _severity = ESeverity[severity];
88
+ const _density = parseFloat(density.toString());
89
+ // When called from survey123 all distress types and severities will be passed in
90
+ // We only need to calculate the deduct value if we have a valid density
91
+ if (Number.isNaN(_density) || _density === 0) {
92
+ return "";
93
+ }
94
+ const _showDebugging = showDebugging === true || showDebugging.toString().toLowerCase() === "true";
95
+ let calc;
96
+ switch (_type) {
97
+ case EDistressType.ALLIGATOR_CRACKING:
98
+ calc = _calcAlligator;
99
+ break;
100
+ case EDistressType.BLEEDING:
101
+ calc = _calcBleeding;
102
+ break;
103
+ case EDistressType.BLOCK_CRACKING:
104
+ calc = _calcBlockCracking;
105
+ break;
106
+ case EDistressType.BUMPS_SAGS:
107
+ calc = _calcBumpsSags;
108
+ break;
109
+ case EDistressType.CORRUGATION:
110
+ calc = _calcCorrugation;
111
+ break;
112
+ case EDistressType.DEPRESSION:
113
+ calc = _calcDepression;
114
+ break;
115
+ case EDistressType.EDGE_CRACKING:
116
+ calc = _calcEdgeCracking;
117
+ break;
118
+ case EDistressType.REFLECTION_CRACKING:
119
+ calc = _calcReflectionCracking;
120
+ break;
121
+ case EDistressType.LANE_SHOULDER_DROP_OFF:
122
+ calc = _calcLaneShoulderDropOff;
123
+ break;
124
+ case EDistressType.LONG_TRANS_CRACKING:
125
+ calc = _calcLongTransCracking;
126
+ break;
127
+ case EDistressType.PATCHING_UTIL_CUT_PATCHING:
128
+ calc = _calcPatchingUtilCutPatching;
129
+ break;
130
+ case EDistressType.POLISHED_AGGREGATE:
131
+ calc = _calcPolishedAggregate;
132
+ break;
133
+ case EDistressType.POTHOLES:
134
+ calc = _calcPotholes;
135
+ break;
136
+ case EDistressType.RAILROAD_CROSSING:
137
+ calc = _calcRailroadCrossing;
138
+ break;
139
+ case EDistressType.RUTTING:
140
+ calc = _calcRutting;
141
+ break;
142
+ case EDistressType.SHOVING:
143
+ calc = _calcShoving;
144
+ break;
145
+ case EDistressType.SLIPPAGE_CRACKING:
146
+ calc = _calcSlippageCracking;
147
+ break;
148
+ case EDistressType.SWELL:
149
+ calc = _calcSwell;
150
+ break;
151
+ case EDistressType.RAVELING:
152
+ calc = _calcRaveling;
153
+ break;
154
+ case EDistressType.WEATHERING:
155
+ calc = _calcWeathering;
156
+ break;
157
+ }
158
+ const dv = calc(_severity, Math.log10(_density));
159
+ const roundedDV = _round(dv);
160
+ const formattedDV = `${type}|${severity}|${roundedDV}|${_density}`;
161
+ if (_showDebugging) {
162
+ console.log(`Deduct value: ${dv}`);
163
+ console.log(`Rounded deduct value: ${roundedDV}`);
164
+ console.log(`Formatted devduct value (type|severity|roundedDV|density): ${formattedDV}`);
165
+ }
166
+ return formattedDV;
167
+ }
168
+ /**
169
+ * Calculate the pavement condition index (PCI)
170
+ *
171
+ * @param deductValues string of comma delimited values
172
+ * @param showDebugging used to control debugging messages to show the various
173
+ * calculations a required steps along the way.
174
+ * The main reason this is optional is that it provides no value when used within
175
+ * Survey123 as we have nowhere to see the messages and I wasn't sure if writing to a
176
+ * console in that context could have any negative side effects.
177
+ *
178
+ * @returns the calculated PCI
179
+ */
180
+ export function calculatePCI(deductValues, showDebugging = false) {
181
+ // When called from survey123 we will get the args as strings
182
+ // When comparing multi-severities calculatePCI will be called multiple times
183
+ // When called from _evaluateMultiSeverity we will just recieve a comma delimited string
184
+ // When its just comma delimited we don't need to re-evaluate the multiple severities
185
+ let _deductValues = deductValues.indexOf("|") > -1 ?
186
+ _evaluateMultiSeverity(deductValues, showDebugging) :
187
+ deductValues.split(",").map(dv => parseFloat(dv));
188
+ const _showDebugging = showDebugging === true || showDebugging.toString().toLowerCase() === "true";
189
+ let pci = 0;
190
+ // filter out non-numbers
191
+ _deductValues = _deductValues.filter(dv => Math.abs(dv) > 0);
192
+ if (_deductValues.length > 0) {
193
+ const maxCDV = _getMaxCDV(_deductValues, _showDebugging);
194
+ pci = 100 - _round(maxCDV);
195
+ }
196
+ return pci;
197
+ }
198
+ /**
199
+ * Determine if corrections are required when we have multiple severities of a single distress type.
200
+ *
201
+ * @param deductValues string of comma delimited values e.g. "1|L|10|0.52,1|H|7|0.58"
202
+ * @param showDebugging used to control debugging messages to show the various
203
+ * calculations a required steps along the way.
204
+ *
205
+ * @returns an object that will contain any corrections for the current distress type
206
+ */
207
+ function _evaluateMultiSeverity(deductValues, showDebugging) {
208
+ const updates = {};
209
+ const _dvObject = _parseDeductValues(deductValues);
210
+ const multiSeverityKeys = Object.keys(_dvObject).filter(k => Object.keys(_dvObject[k]).length > 1);
211
+ if (multiSeverityKeys.length > 0) {
212
+ multiSeverityKeys.forEach(k => {
213
+ let hDeductValue;
214
+ let mDeductValue;
215
+ let lDeductValue;
216
+ let hDensity;
217
+ let mDensity;
218
+ let lDensity;
219
+ // need to know if 2 or 3 severity case
220
+ Object.keys(_dvObject[k]).forEach(_k => {
221
+ if (_k === "H") {
222
+ hDeductValue = _dvObject[k][_k].deductValue;
223
+ hDensity = _dvObject[k][_k].density;
224
+ }
225
+ else if (_k === "M") {
226
+ mDeductValue = _dvObject[k][_k].deductValue;
227
+ mDensity = _dvObject[k][_k].density;
228
+ }
229
+ else {
230
+ lDeductValue = _dvObject[k][_k].deductValue;
231
+ lDensity = _dvObject[k][_k].density;
232
+ }
233
+ });
234
+ const func = (hDensity && mDensity && lDensity) ?
235
+ _getThreeSeverityCaseUpdates : _getTwoSeverityCaseUpdates;
236
+ const update = func(k, hDeductValue, mDeductValue, lDeductValue, hDensity, mDensity, lDensity, showDebugging);
237
+ if (update) {
238
+ updates[k] = update;
239
+ if (showDebugging) {
240
+ console.log("updates");
241
+ console.log(updates);
242
+ }
243
+ }
244
+ });
245
+ }
246
+ return _getFinalDeductValues(deductValues, updates);
247
+ }
248
+ /**
249
+ * Determine if corrections are required when we have 3 severities of a single distress type.
250
+ *
251
+ * @param type the distress type 1-19 as a string
252
+ * @param hDeductValue high severity deduct value
253
+ * @param mDeductValue med severity deduct value
254
+ * @param lDeductValue low severity deduct value
255
+ * @param hDensity high severity density
256
+ * @param mDensity med severity density
257
+ * @param lDensity low severity density
258
+ * @param showDebugging used to control debugging messages to show the various
259
+ * calculations a required steps along the way.
260
+ *
261
+ * @returns undefined or an object that will contain any corrections for the current distress type
262
+ */
263
+ function _getThreeSeverityCaseUpdates(type, hDeductValue, mDeductValue, lDeductValue, hDensity, mDensity, lDensity, showDebugging) {
264
+ const pci1 = calculatePCI(`${hDeductValue},${mDeductValue},${lDeductValue}`, true);
265
+ if (showDebugging) {
266
+ console.log("pci1");
267
+ console.log(pci1);
268
+ }
269
+ const lm = lDensity + mDensity;
270
+ const lmPCI2 = _getPCI2(type, "M", lm.toString(), hDeductValue, showDebugging);
271
+ const mh = mDensity + hDensity;
272
+ const mhPCI2 = _getPCI2(type, "H", mh.toString(), lDeductValue, showDebugging);
273
+ const lh = lDensity + hDensity;
274
+ const lhPCI2 = _getPCI2(type, "H", lh.toString(), mDeductValue, showDebugging);
275
+ const lmh = lDensity + mDensity + hDensity;
276
+ const lmhPCI2 = _getPCI2(type, "H", lmh.toString(), 0, showDebugging);
277
+ if (showDebugging) {
278
+ console.log("low med pci2");
279
+ console.log(lmPCI2.pci);
280
+ console.log("med high pci2");
281
+ console.log(mhPCI2.pci);
282
+ console.log("low high pci2");
283
+ console.log(lhPCI2.pci);
284
+ console.log("low med high pci2");
285
+ console.log(lmhPCI2.pci);
286
+ }
287
+ const pcis = [lmPCI2, mhPCI2, lhPCI2, lmhPCI2];
288
+ const highest = pcis.reduce((prev, cur) => {
289
+ return cur.pci > pci1 && (!prev || cur.pci > prev.pci) ? cur : prev;
290
+ }, undefined);
291
+ return highest ? highest.dv : undefined;
292
+ }
293
+ /**
294
+ * Determine if corrections are required when we have 2 severities of a single distress type.
295
+ *
296
+ * @param type the distress type 1-19 as a string
297
+ * @param hDeductValue high severity deduct value
298
+ * @param mDeductValue med severity deduct value
299
+ * @param lDeductValue low severity deduct value
300
+ * @param hDensity high severity density
301
+ * @param mDensity med severity density
302
+ * @param lDensity low severity density
303
+ * @param showDebugging used to control debugging messages to show the various
304
+ * calculations a required steps along the way.
305
+ *
306
+ * @returns undefined or an object that will contain any corrections for the current distress type
307
+ */
308
+ function _getTwoSeverityCaseUpdates(type, hDeductValue, mDeductValue, lDeductValue, hDensity, mDensity, lDensity, showDebugging) {
309
+ const hDV = hDeductValue || mDeductValue;
310
+ const lDV = lDeductValue || mDeductValue;
311
+ const pci1 = calculatePCI(`${hDV},${lDV}`, true);
312
+ if (showDebugging) {
313
+ console.log("pci1");
314
+ console.log(pci1);
315
+ }
316
+ const hDen = hDensity || mDensity;
317
+ const lDen = lDensity || mDensity;
318
+ const sumDen = hDen + lDen;
319
+ const highestSeverity = hDen === hDensity ? "H" : "M";
320
+ const pci2 = _getPCI2(type, highestSeverity, sumDen.toString(), 0, showDebugging);
321
+ if (showDebugging) {
322
+ console.log("pci2");
323
+ console.log(pci2.pci);
324
+ }
325
+ return pci2.pci > pci1 ? pci2.dv : undefined;
326
+ }
327
+ /**
328
+ * Used to test for highest PCI when we have multiple severity cases for a single distress type.
329
+ *
330
+ * @param type the distress type 1-19 as a string
331
+ * @param severity expects "H" | "M" | "L"
332
+ * @param density the calculated percent density ralative to the total sample area
333
+ * @param secondDeductValue optional deduct value will be 0 for all 2 severity cases and will be a non 0 number for 3 severity cases
334
+ * @param showDebugging used to control debugging messages to show the various
335
+ * calculations a required steps along the way.
336
+ *
337
+ * @returns ICorrection that contains the new PCI as well as the deduct values that should be used for corrections
338
+ */
339
+ function _getPCI2(type, severity, density, secondDeductValue, showDebugging) {
340
+ const deductValue = calculateDeductValue(type, severity, density);
341
+ const splitVal = deductValue.split("|");
342
+ const newDV = parseFloat(splitVal[2]);
343
+ return {
344
+ pci: calculatePCI(`${splitVal[2]},${secondDeductValue}`, showDebugging),
345
+ dv: secondDeductValue ? [newDV, secondDeductValue] : [newDV]
346
+ };
347
+ }
348
+ /**
349
+ * Parse the deduct value string into individual values for type, severity, deduct value, and density
350
+ *
351
+ * @param deductValues string of comma delimited values for type, severity, deduct value, and density
352
+ *
353
+ * @returns an object with the parsed values
354
+ */
355
+ function _parseDeductValues(deductValues) {
356
+ return deductValues.split(",").reduce((prev, cur) => {
357
+ const splitVal = cur.split("|");
358
+ const type = splitVal[0];
359
+ const severity = splitVal[1];
360
+ const deductValue = parseFloat(splitVal[2]);
361
+ const density = parseFloat(splitVal[3]);
362
+ if (!prev[type]) {
363
+ prev[type] = {};
364
+ }
365
+ prev[type][severity] = {
366
+ deductValue,
367
+ density
368
+ };
369
+ return prev;
370
+ }, {});
371
+ }
372
+ /**
373
+ * Replace any deduct values for the given distress types when it is determined that corrections
374
+ * are required for a multi-severity case
375
+ *
376
+ * @param deductValues string of comma delimited values for type, severity, deduct value, and density
377
+ * @param updates will contain the new corrected deduct value(s) that should be substituted for the original deduct value
378
+ *
379
+ * @returns an object with the parsed and updated deduct values to use for final PCI calculation
380
+ */
381
+ function _getFinalDeductValues(deductValues, updates) {
382
+ const skipAdditionalTypes = [];
383
+ return deductValues.split(",").reduce((prev, cur) => {
384
+ //0: type, 1: severity, 2: deductValue, 3: density
385
+ const splitVal = cur.split("|");
386
+ const type = splitVal[0];
387
+ const deductValue = parseFloat(splitVal[2]);
388
+ if (Object.keys(updates).length > 0 && updates[type]) {
389
+ skipAdditionalTypes.push(type);
390
+ prev.push(...updates[type]);
391
+ delete (updates[type]);
392
+ }
393
+ else if (skipAdditionalTypes.indexOf(type) < 0) {
394
+ prev.push(deductValue);
395
+ }
396
+ return prev;
397
+ }, []);
398
+ }
399
+ /**
400
+ * Executes the polynomial equation using the provided values and density.
401
+ * In the ASTM standard this is the step represented by finding the values
402
+ * on the plotted graphs.
403
+ *
404
+ * @returns the calculated deduct value
405
+ */
406
+ function _calc(density, vals) {
407
+ return vals.reduce((prev, cur, i) => {
408
+ return prev += i === 0 ? cur :
409
+ i === 1 ? (cur * density) :
410
+ (cur * Math.pow(density, i));
411
+ }, 0);
412
+ }
413
+ /**
414
+ * Round to the nerest decimal in the 10ths place
415
+ */
416
+ function _round(v) {
417
+ return Math.round(v * 10) / 10;
418
+ }
419
+ /**
420
+ * Execute the deduct value calculation for the distress type
421
+ *
422
+ * @param severity The severity of the distress type
423
+ * @param density percent density of the distress type
424
+ *
425
+ * @returns the calculated deduct value
426
+ */
427
+ function _calcAlligator(severity, density) {
428
+ const vals = severity === ESeverity.H ? [30.71, 29.22, 9.407, -6.981, -2.158, 3.047, -0.6578] :
429
+ severity === ESeverity.M ? [21.62, 21.32, 5.194, -1.343, 0.2341] :
430
+ [11.31, 16.05, 7.572, -1.471];
431
+ return _calc(density, vals);
432
+ }
433
+ /**
434
+ * Execute the deduct value calculation for the distress type
435
+ *
436
+ * @param severity The severity of the distress type
437
+ * @param density percent density of the distress type
438
+ *
439
+ * @returns the calculated deduct value
440
+ */
441
+ function _calcBleeding(severity, density) {
442
+ const vals = severity === ESeverity.H ? [5.343, 6.927, 7.926, 4.265, -0.7582] :
443
+ severity === ESeverity.M ? [2.38, 5.483, 4.128, 0.8366, 0.03659, 0.1052] :
444
+ [0.01391, 0.5079, 1.576, 1.191, 0.1329, 0.03823];
445
+ return _calc(density, vals);
446
+ }
447
+ /**
448
+ * Execute the deduct value calculation for the distress type
449
+ *
450
+ * @param severity The severity of the distress type
451
+ * @param density percent density of the distress type
452
+ *
453
+ * @returns the calculated deduct value
454
+ */
455
+ function _calcBlockCracking(severity, density) {
456
+ const vals = severity === ESeverity.H ? [7.926, 11.93, 8.826, 3.432, -1.382] :
457
+ severity === ESeverity.M ? [2.587, 9.142, 6.647, -0.455, -0.2439, 0.1107] :
458
+ [0.646, 4.002, 4.2, 0.4987, -0.06269];
459
+ return _calc(density, vals);
460
+ }
461
+ /**
462
+ * Execute the deduct value calculation for the distress type
463
+ *
464
+ * @param severity The severity of the distress type
465
+ * @param density percent density of the distress type
466
+ *
467
+ * @returns the calculated deduct value
468
+ */
469
+ function _calcBumpsSags(severity, density) {
470
+ const vals = severity === ESeverity.H ? [52.77, 38.07, 8.964, -0.4148, -1.589, 2.478] :
471
+ severity === ESeverity.M ? [24.66, 27.86, 15.73, 3.295, -5.27, 5.921, 7.959] :
472
+ [8.768, 13.79, 7.064, 7.455, 6.041, -1.739, -1.371];
473
+ return _calc(density, vals);
474
+ }
475
+ /**
476
+ * Execute the deduct value calculation for the distress type
477
+ *
478
+ * @param severity The severity of the distress type
479
+ * @param density percent density of the distress type
480
+ *
481
+ * @returns the calculated deduct value
482
+ */
483
+ function _calcCorrugation(severity, density) {
484
+ const vals = severity === ESeverity.H ? [34.21, 21.59, 1.863, 6.1410, -0.687, -1.885, 0.4916] :
485
+ severity === ESeverity.M ? [15.78, 19.69, 6.276, -2.124, 0.5868, 0.06045] :
486
+ [2.173, 5.609, 5.976, -0.7348, -0.2172, 1.494, -0.5659];
487
+ return _calc(density, vals);
488
+ }
489
+ /**
490
+ * Execute the deduct value calculation for the distress type
491
+ *
492
+ * @param severity The severity of the distress type
493
+ * @param density percent density of the distress type
494
+ *
495
+ * @returns the calculated deduct value
496
+ */
497
+ function _calcDepression(severity, density) {
498
+ const vals = severity === ESeverity.H ? [17.84, 5.904, 9.406, 18.28, -2.753, -7.798, 2.402] :
499
+ severity === ESeverity.M ? [8.471, 3.171, 10.25, 12.2, -0.9687, -4.601, 1.079] :
500
+ [4.836, -0.7572, 4.786, 12.39, 1.233, -4.871, 0.9749];
501
+ return _calc(density, vals);
502
+ }
503
+ /**
504
+ * Execute the deduct value calculation for the distress type
505
+ *
506
+ * @param severity The severity of the distress type
507
+ * @param density percent density of the distress type
508
+ *
509
+ * @returns the calculated deduct value
510
+ */
511
+ function _calcEdgeCracking(severity, density) {
512
+ const vals = severity === ESeverity.H ? [14.99, 13.5, 10.62, 5.15, -1.792, -2.826] :
513
+ severity === ESeverity.M ? [9.177, 10.26, 5.704, -0.6812, -0.8588, 0.2123] :
514
+ [3.049, 4.802, 4.058, -0.3556, -1.55, 1.02];
515
+ return _calc(density, vals);
516
+ }
517
+ /**
518
+ * Execute the deduct value calculation for the distress type
519
+ *
520
+ * @param severity The severity of the distress type
521
+ * @param density percent density of the distress type
522
+ *
523
+ * @returns the calculated deduct value
524
+ */
525
+ function _calcReflectionCracking(severity, density) {
526
+ const vals = severity === ESeverity.H ? [14.99, 17.21, 27.63, 31.13, -20.94, -18.82, 9.985] :
527
+ severity === ESeverity.M ? [9.9193, 10.88, 8.073, 14.8, -3.792, -9.583, 3.651] :
528
+ [2.356, 6.664, 3.717, -1.393, 1.94, 1.785, -0.9707];
529
+ return _calc(density, vals);
530
+ }
531
+ /**
532
+ * Execute the deduct value calculation for the distress type
533
+ *
534
+ * @param severity The severity of the distress type
535
+ * @param density percent density of the distress type
536
+ *
537
+ * @returns the calculated deduct value
538
+ */
539
+ function _calcLaneShoulderDropOff(severity, density) {
540
+ const vals = severity === ESeverity.H ? [7.549, 6.907, 7.284, 9.304, 2.064] :
541
+ severity === ESeverity.M ? [4.02, 1.744, 14.36, 15.92, -40.22, 23.6] :
542
+ [2.004, 1.065, 9.706, 11.75, -27.52, 15.04];
543
+ return _calc(density, vals);
544
+ }
545
+ /**
546
+ * Execute the deduct value calculation for the distress type
547
+ *
548
+ * @param severity The severity of the distress type
549
+ * @param density percent density of the distress type
550
+ *
551
+ * @returns the calculated deduct value
552
+ */
553
+ function _calcLongTransCracking(severity, density) {
554
+ const vals = severity === ESeverity.H ? [19.56, 24.06, 12.12, 9.336, 1.532, -4.396] :
555
+ severity === ESeverity.M ? [9.751, 15.53, 4.719, 1.369, 1.206, -1.164] :
556
+ [2.347, 9.074, 8.424, -1.338, -1.873, 1.144];
557
+ return _calc(density, vals);
558
+ }
559
+ /**
560
+ * Execute the deduct value calculation for the distress type
561
+ *
562
+ * @param severity The severity of the distress type
563
+ * @param density percent density of the distress type
564
+ *
565
+ * @returns the calculated deduct value
566
+ */
567
+ function _calcPatchingUtilCutPatching(severity, density) {
568
+ const vals = severity === ESeverity.H ? [20.15, 16.55, 5.415, 10.77, 3.257, -4.502] :
569
+ severity === ESeverity.M ? [10.28, 12.71, 6.174, 1.928, 0.6923, -0.4673] :
570
+ [2.523, 6.892, 5.702, 2.407, 0.2185, -0.8722];
571
+ return _calc(density, vals);
572
+ }
573
+ /**
574
+ * Execute the deduct value calculation for the distress type
575
+ *
576
+ * @param severity The severity of the distress type
577
+ * @param density percent density of the distress type
578
+ *
579
+ * @returns the calculated deduct value
580
+ */
581
+ function _calcPolishedAggregate(severity, density) {
582
+ const vals = severity === "H" || severity === "M" || severity === "L" ?
583
+ [3.417, -26.82, 71.15, -76.22, 38.52, -6.904] : [];
584
+ return _calc(density, vals);
585
+ }
586
+ /**
587
+ * Execute the deduct value calculation for the distress type
588
+ *
589
+ * @param severity The severity of the distress type
590
+ * @param density percent density of the distress type
591
+ *
592
+ * @returns the calculated deduct value
593
+ */
594
+ function _calcPotholes(severity, density) {
595
+ const vals = severity === ESeverity.H ? [110.7, 60.66, 2.378, -2.664] :
596
+ severity === ESeverity.M ? [90.47, 60.41, -0.1123, -4.746] :
597
+ [58.19, 40.53, 2.884, -1.443, 0.1195];
598
+ return _calc(density, vals);
599
+ }
600
+ /**
601
+ * Execute the deduct value calculation for the distress type
602
+ *
603
+ * @param severity The severity of the distress type
604
+ * @param density percent density of the distress type
605
+ *
606
+ * @returns the calculated deduct value
607
+ */
608
+ function _calcRailroadCrossing(severity, density) {
609
+ const vals = severity === ESeverity.H ? [20, 38.64, -62.82, 193.6, -162.7, 41.22] :
610
+ severity === ESeverity.M ? [6.994, 23.47, -52.3, 167.3, -143.6, 37.64] :
611
+ [1.998, -0.7488, 13.8, -0.7917, -1.981];
612
+ return _calc(density, vals);
613
+ }
614
+ /**
615
+ * Execute the deduct value calculation for the distress type
616
+ *
617
+ * @param severity The severity of the distress type
618
+ * @param density percent density of the distress type
619
+ *
620
+ * @returns the calculated deduct value
621
+ */
622
+ function _calcRutting(severity, density) {
623
+ const vals = severity === ESeverity.H ? [27.61, 25.19, 8.557, 1.65, -2.2030] :
624
+ severity === ESeverity.M ? [18.47, 20.77, 6.617, -1.13, -2.286] :
625
+ [8.833, 14.84, 3.129, 0.1451, 2.438, -1.279];
626
+ return _calc(density, vals);
627
+ }
628
+ /**
629
+ * Execute the deduct value calculation for the distress type
630
+ *
631
+ * @param severity The severity of the distress type
632
+ * @param density percent density of the distress type
633
+ *
634
+ * @returns the calculated deduct value
635
+ */
636
+ function _calcShoving(severity, density) {
637
+ const vals = severity === ESeverity.H ? [18.7, 20.17, 10.3, 4.694, 1.331, -2.61] :
638
+ severity === ESeverity.M ? [10.39, 14.78, 5.488, 4.001, 3.23, -2.387] :
639
+ [4.002, 10.66, 6.332, -0.5226, -0.1923];
640
+ return _calc(density, vals);
641
+ }
642
+ /**
643
+ * Execute the deduct value calculation for the distress type
644
+ *
645
+ * @param severity The severity of the distress type
646
+ * @param density percent density of the distress type
647
+ *
648
+ * @returns the calculated deduct value
649
+ */
650
+ function _calcSlippageCracking(severity, density) {
651
+ const vals = severity === ESeverity.H ? [19.73, 32.21, 25.87, -2.871, -10.55, 1.496, 0.7393] :
652
+ severity === ESeverity.M ? [11.38, 18.55, 18.38, 1.628, -7.596, 0.5841, 0.5946] :
653
+ [5.144, 12.95, 11.95, -0.833, -2.995, 1.325, -0.2113];
654
+ return _calc(density, vals);
655
+ }
656
+ /**
657
+ * Execute the deduct value calculation for the distress type
658
+ *
659
+ * @param severity The severity of the distress type
660
+ * @param density percent density of the distress type
661
+ *
662
+ * @returns the calculated deduct value
663
+ */
664
+ function _calcSwell(severity, density) {
665
+ const vals = severity === ESeverity.H ? [34, 16.84, -23.09, 41.17, -14.84] :
666
+ severity === ESeverity.M ? [12, 15.67, 20.59, -28.33, 21, -5.508] :
667
+ [1.995, 11.9, -12.83, 16.74, -5.361];
668
+ return _calc(density, vals);
669
+ }
670
+ /**
671
+ * Execute the deduct value calculation for the distress type
672
+ *
673
+ * @param severity The severity of the distress type
674
+ * @param density percent density of the distress type
675
+ *
676
+ * @returns the calculated deduct value
677
+ */
678
+ function _calcRaveling(severity, density) {
679
+ const vals = severity === ESeverity.H ? [16.77, 10.67, 5.758, 12.9, -0.0633, -5.659, 1.48] :
680
+ severity === ESeverity.M ? [8.512, 5.106, 1.63, 3.469, 1.028, -1.211, 0.1938] :
681
+ [];
682
+ return _calc(density, vals);
683
+ }
684
+ /**
685
+ * Execute the deduct value calculation for the distress type
686
+ *
687
+ * @param severity The severity of the distress type
688
+ * @param density percent density of the distress type
689
+ *
690
+ * @returns the calculated deduct value
691
+ */
692
+ function _calcWeathering(severity, density) {
693
+ const vals = severity === ESeverity.H ? [3.673, 3.349, 2.598, -1.233, 2.754, 2.434, -1.485] :
694
+ severity === ESeverity.M ? [1.12, 0.9769, 0.93, -0.5955, 1.041, 1.111, -0.614] :
695
+ [-0.0386, -0.0736, 0.834, 1.63, -0.0287, -0.639, 0.1515];
696
+ return _calc(density, vals);
697
+ }
698
+ /**
699
+ * Determine maximum Corrected Deduct Value (CDV) iteratively
700
+ *
701
+ * @param deductValues The calculated deduct values that will be used to determine max CDV
702
+ * @param showDebugging used to optionally show debugging messages
703
+ *
704
+ * @returns the max CDV value
705
+ */
706
+ function _getMaxCDV(deductValues, showDebugging) {
707
+ let maxCDV;
708
+ // If none or only one individual deduct value is greater
709
+ // than two, the total value is used in place of the maximum CD
710
+ const valuesGreaterThan2 = deductValues.filter(deductValue => deductValue > 2);
711
+ if (valuesGreaterThan2.length <= 1) {
712
+ maxCDV = valuesGreaterThan2.reduce((prev, cur) => {
713
+ prev += cur;
714
+ return prev;
715
+ }, 0);
716
+ if (showDebugging) {
717
+ console.log("If none or only one individual deduct value is greater");
718
+ console.log("than two, the total value is used in place of the maximum CD");
719
+ console.log(`Max CDV: ${maxCDV}`);
720
+ }
721
+ }
722
+ else {
723
+ // sort in descending order (section 9.5.2 in ASTM doc)
724
+ const sortedDVs = deductValues.sort((a, b) => b - a);
725
+ // Determine the allowable number of deducts, m (section 9.5.3 in ASTM doc)
726
+ const highestDV = sortedDVs[0];
727
+ // m = allowable number of deducts including fractions (must be less than or equal to ten)
728
+ const m = 1 + (9 / 98) * (100 - highestDV);
729
+ if (showDebugging) {
730
+ console.log(`Deduct values sorted in descending order: ${sortedDVs}`);
731
+ console.log(`Highest deduct value: ${highestDV}`);
732
+ console.log(`Allowable number of deducts including fractions: ${m}`);
733
+ }
734
+ // TODO they mention (must be less than or equal to ten) but don't say what happens if its over
735
+ if (m <= 10) {
736
+ const vals = _reduceDeductValues(sortedDVs, m);
737
+ if (showDebugging) {
738
+ console.log(`Reduce deduct values to the m largest including the fractional part: ${vals}`);
739
+ }
740
+ // iteratively determined cdv values
741
+ const cdvs = _getCDVs(vals, showDebugging);
742
+ maxCDV = Math.max(...cdvs);
743
+ if (showDebugging) {
744
+ console.log(`Max CDV: ${maxCDV}`);
745
+ }
746
+ }
747
+ else {
748
+ if (showDebugging) {
749
+ console.log("Allowable number of deducts including fractions (must be less than or equal to ten)");
750
+ }
751
+ }
752
+ }
753
+ return maxCDV;
754
+ }
755
+ /**
756
+ * Reduce deduct values to the m largest including the fractional part
757
+ *
758
+ * @param sortedDVs individual deduct values in descending order
759
+ * @param m allowable number of deducts (9.5.3 in ASTM standard)
760
+ *
761
+ * @returns updated deduct values
762
+ */
763
+ function _reduceDeductValues(sortedDVs, m) {
764
+ const fractionalPart = m - Math.floor(m);
765
+ // If less than m deduct values are available, all of the deduct values are used
766
+ return sortedDVs.length < m ? sortedDVs :
767
+ sortedDVs.reduce((prev, cur, i) => {
768
+ if (i + 1 < m) {
769
+ prev.push(cur);
770
+ }
771
+ else if (fractionalPart > 0) {
772
+ prev.push(_round(cur * fractionalPart));
773
+ }
774
+ return prev;
775
+ }, []);
776
+ }
777
+ /**
778
+ * Reduce the smallest individual deduct value greater to 2.0 and repeat
779
+ *
780
+ * @param vals the list of deduct values
781
+ * @param showDebugging optionally show debugging messages
782
+ *
783
+ * @returns array of CDV values
784
+ */
785
+ function _getCDVs(vals, showDebugging) {
786
+ let len = vals.length;
787
+ const cdvs = [];
788
+ while (len >= 1) {
789
+ if (showDebugging) {
790
+ console.log(`vals: ${vals}`);
791
+ }
792
+ cdvs.push(_getCDV(vals, showDebugging));
793
+ len -= 1;
794
+ vals.splice(len, 1, 2);
795
+ }
796
+ return cdvs;
797
+ }
798
+ /**
799
+ * Determine the total and max number deducts higher than two and calculate the CDV
800
+ *
801
+ * @param vals the list of deduct values
802
+ * @param showDebugging optionally show debugging messages
803
+ *
804
+ * @returns the calculated CDV
805
+ */
806
+ function _getCDV(vals, showDebugging) {
807
+ // section 9.5.5.1 in ASTM doc
808
+ const totalDV = vals.reduce((prev, cur) => prev += cur, 0);
809
+ // section 9.5.5.2 in ASTM doc
810
+ // the number of deducts with a value greater than 2.0
811
+ const q = vals.reduce((prev, cur) => cur > 2 ? prev + 1 : prev, 0);
812
+ // section 9.5.5.3 in ASTM doc
813
+ return _calcCDV(totalDV, q, showDebugging);
814
+ }
815
+ /**
816
+ * Determine the total and max number deducts higher than two and calculate the CDV
817
+ *
818
+ * @param total the sum of all deduct values
819
+ * @param q the number of deducts with a value greater than 2.0
820
+ * @param showDebugging optionally show debugging messages
821
+ *
822
+ * @returns the calculated CDV
823
+ */
824
+ function _calcCDV(total, q, showDebugging) {
825
+ // Determine the CDV from total deduct value and q
826
+ const vals2 = {
827
+ 7: [-9.482, 0.6045, 0.0003563, -5.448e-06],
828
+ 6: [-8.165, 0.5724, 0.0004266, -4.254e-06],
829
+ 5: [-7.932, 0.6091, 0.0003464, -4.265e-06],
830
+ 4: [-6.78, 0.6301, 0.0007376, -6.357e-06],
831
+ 3: [-5.015, 0.7546, -0.00043, -3.075e-06],
832
+ 2: [-1.668, 0.7992, -0.0003013, -5.214e-06],
833
+ 1: [1.651e-15, 1, -4.249e-18, 1.149e-19]
834
+ };
835
+ const cdv = _calc(total, vals2[q >= 7 ? 7 : q]);
836
+ if (showDebugging) {
837
+ console.log(`totalDV: ${total}`);
838
+ console.log(`q: ${q}`);
839
+ console.log(`CDV: ${cdv}`);
840
+ }
841
+ return cdv;
842
+ }