@esri/solutions-components 0.6.8 → 0.6.9
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.
- package/dist/assets/t9n/info-card/resources.json +1 -1
- package/dist/assets/t9n/info-card/resources_en.json +1 -1
- package/dist/assets/t9n/map-tools/resources.json +1 -1
- package/dist/assets/t9n/map-tools/resources_en.json +1 -1
- package/dist/cjs/{ExpandToggle-e6a0d66e.js → ExpandToggle-c5690e14.js} +5 -5
- package/dist/cjs/{FloatingArrow-0119ec6e.js → FloatingArrow-675171a6.js} +1 -1
- package/dist/cjs/{Heading-521f39ac.js → Heading-3712677d.js} +1 -1
- package/dist/cjs/{app-globals-72576a1c.js → app-globals-a62ad1ad.js} +3 -3
- package/dist/cjs/{ar-1718ae57.js → ar-1dc23c0a.js} +14 -14
- package/dist/cjs/{array-46bb7df1.js → array-2db3fd4a.js} +1 -1
- package/dist/cjs/{basemap-gallery_4.cjs.entry.js → basemap-gallery_5.cjs.entry.js} +115 -6
- package/dist/cjs/{bg-190a176c.js → bg-4024b354.js} +14 -14
- package/dist/cjs/{bs-919e0de8.js → bs-3134d711.js} +14 -14
- package/dist/cjs/buffer-tools_4.cjs.entry.js +15 -15
- package/dist/cjs/{ca-94918e06.js → ca-8d6647d3.js} +14 -14
- package/dist/cjs/calcite-accordion-item.cjs.entry.js +7 -12
- package/dist/cjs/calcite-accordion.cjs.entry.js +1 -6
- package/dist/cjs/calcite-action-bar.cjs.entry.js +31 -26
- package/dist/cjs/calcite-action-group_2.cjs.entry.js +18 -20
- package/dist/cjs/calcite-action-pad.cjs.entry.js +20 -16
- package/dist/cjs/calcite-action_2.cjs.entry.js +17 -22
- package/dist/cjs/calcite-alert.cjs.entry.js +11 -11
- package/dist/cjs/calcite-avatar.cjs.entry.js +6 -6
- package/dist/cjs/calcite-block-section.cjs.entry.js +9 -9
- package/dist/cjs/calcite-block.cjs.entry.js +12 -12
- package/dist/cjs/calcite-button.cjs.entry.js +12 -12
- package/dist/cjs/calcite-card.cjs.entry.js +9 -9
- package/dist/cjs/calcite-checkbox.cjs.entry.js +8 -13
- package/dist/cjs/calcite-chip-group.cjs.entry.js +6 -11
- package/dist/cjs/calcite-chip.cjs.entry.js +11 -11
- package/dist/cjs/calcite-color-picker-hex-input_2.cjs.entry.js +8 -8
- package/dist/cjs/calcite-color-picker.cjs.entry.js +12 -12
- package/dist/cjs/calcite-combobox-item-group.cjs.entry.js +5 -5
- package/dist/cjs/calcite-combobox_6.cjs.entry.js +21 -26
- package/dist/cjs/calcite-date-picker-day_3.cjs.entry.js +10 -10
- package/dist/cjs/calcite-date-picker.cjs.entry.js +11 -11
- package/dist/cjs/calcite-fab.cjs.entry.js +6 -6
- package/dist/cjs/calcite-filter_5.cjs.entry.js +16 -16
- package/dist/cjs/calcite-flow-item.cjs.entry.js +11 -11
- package/dist/cjs/calcite-flow.cjs.entry.js +3 -3
- package/dist/cjs/calcite-graph.cjs.entry.js +5 -10
- package/dist/cjs/calcite-icon.cjs.entry.js +6 -6
- package/dist/cjs/calcite-inline-editable.cjs.entry.js +11 -11
- package/dist/cjs/calcite-input-date-picker.cjs.entry.js +17 -17
- package/dist/cjs/calcite-input-number_2.cjs.entry.js +13 -13
- package/dist/cjs/{calcite-input-time-picker-b99baf7b.js → calcite-input-time-picker-4efcd55d.js} +60 -60
- package/dist/cjs/calcite-input-time-picker.cjs.entry.js +14 -14
- package/dist/cjs/calcite-input-time-zone.cjs.entry.js +12 -12
- package/dist/cjs/calcite-input_2.cjs.entry.js +12 -12
- package/dist/cjs/calcite-label.cjs.entry.js +5 -5
- package/dist/cjs/calcite-link.cjs.entry.js +5 -5
- package/dist/cjs/calcite-list-item-group.cjs.entry.js +3 -3
- package/dist/cjs/calcite-loader.cjs.entry.js +1 -1
- package/dist/cjs/calcite-menu-item.cjs.entry.js +9 -9
- package/dist/cjs/calcite-menu.cjs.entry.js +9 -9
- package/dist/cjs/calcite-modal.cjs.entry.js +12 -12
- package/dist/cjs/calcite-navigation-logo.cjs.entry.js +2 -2
- package/dist/cjs/calcite-navigation-user.cjs.entry.js +2 -2
- package/dist/cjs/calcite-navigation.cjs.entry.js +5 -5
- package/dist/cjs/calcite-notice.cjs.entry.js +11 -11
- package/dist/cjs/calcite-option_2.cjs.entry.js +9 -9
- package/dist/cjs/calcite-pagination.cjs.entry.js +9 -9
- package/dist/cjs/calcite-panel_2.cjs.entry.js +14 -14
- package/dist/cjs/calcite-pick-list-group.cjs.entry.js +7 -7
- package/dist/cjs/calcite-pick-list-item.cjs.entry.js +12 -12
- package/dist/cjs/calcite-pick-list.cjs.entry.js +10 -10
- package/dist/cjs/calcite-radio-button-group.cjs.entry.js +2 -7
- package/dist/cjs/calcite-radio-button.cjs.entry.js +9 -9
- package/dist/cjs/calcite-rating.cjs.entry.js +12 -12
- package/dist/cjs/calcite-scrim.cjs.entry.js +8 -8
- package/dist/cjs/calcite-segmented-control_2.cjs.entry.js +8 -8
- package/dist/cjs/calcite-shell-center-row.cjs.entry.js +6 -6
- package/dist/cjs/calcite-shell-panel_14.cjs.entry.js +29 -32
- package/dist/cjs/calcite-sortable-list.cjs.entry.js +7 -7
- package/dist/cjs/calcite-split-button.cjs.entry.js +3 -3
- package/dist/cjs/calcite-stepper-item.cjs.entry.js +8 -8
- package/dist/cjs/calcite-stepper.cjs.entry.js +3 -8
- package/dist/cjs/calcite-switch.cjs.entry.js +8 -8
- package/dist/cjs/calcite-text-area.cjs.entry.js +15 -15
- package/dist/cjs/calcite-tile-select-group.cjs.entry.js +1 -1
- package/dist/cjs/calcite-tile-select.cjs.entry.js +4 -4
- package/dist/cjs/calcite-tile.cjs.entry.js +7 -7
- package/dist/cjs/calcite-time-picker.cjs.entry.js +10 -10
- package/dist/cjs/calcite-tip-manager.cjs.entry.js +9 -9
- package/dist/cjs/calcite-tip.cjs.entry.js +10 -10
- package/dist/cjs/calcite-tooltip.cjs.entry.js +9 -9
- package/dist/cjs/calcite-tree_3.cjs.entry.js +8 -8
- package/dist/cjs/{card-manager_4.cjs.entry.js → card-manager_3.cjs.entry.js} +47 -93
- package/dist/cjs/{conditionalSlot-85b3a6b3.js → conditionalSlot-126d557f.js} +2 -2
- package/dist/cjs/crowdsource-manager.cjs.entry.js +23 -11
- package/dist/cjs/{cs-fe27e732.js → cs-b24cd994.js} +14 -14
- package/dist/cjs/{da-1b7f3440.js → da-9dee3a1f.js} +14 -14
- package/dist/cjs/{date-cec32b0e.js → date-0fec6f6b.js} +2 -2
- package/dist/cjs/{de-0dc1effa.js → de-1a98b964.js} +14 -14
- package/dist/cjs/{de-at-acdc4d01.js → de-at-782e6c7f.js} +14 -14
- package/dist/cjs/{de-ch-778a0d99.js → de-ch-d5c95469.js} +14 -14
- package/dist/cjs/{dom-c1807fc1.js → dom-456f9f13.js} +3 -3
- package/dist/cjs/{downloadUtils-a8c530f7.js → downloadUtils-1f057ec0.js} +249 -262
- package/dist/cjs/edit-card_2.cjs.entry.js +6 -5
- package/dist/cjs/{el-fdbc9bc1.js → el-af28cafa.js} +14 -14
- package/dist/cjs/{en-au-0ff50cdf.js → en-au-109f3119.js} +14 -14
- package/dist/cjs/{en-ca-284e9368.js → en-ca-22890a25.js} +14 -14
- package/dist/cjs/{en-gb-0fcae8ae.js → en-gb-dc23c9dd.js} +14 -14
- package/dist/cjs/{es-cd54acba.js → es-3f353355.js} +14 -14
- package/dist/cjs/{es-mx-2078d50f.js → es-mx-ccb57857.js} +14 -14
- package/dist/cjs/{et-17f323f6.js → et-119c047b.js} +14 -14
- package/dist/cjs/{fi-82f27397.js → fi-13096d81.js} +14 -14
- package/dist/cjs/{filter-bda212b4.js → filter-8d8c453e.js} +1 -1
- package/dist/cjs/{floating-ui-8d10af88.js → floating-ui-2b0fbba0.js} +2 -2
- package/dist/cjs/{focusTrapComponent-a22fc6a8.js → focusTrapComponent-d8412ddc.js} +4 -4
- package/dist/cjs/{form-9d8ebf06.js → form-7c6054c3.js} +2 -2
- package/dist/cjs/{fr-af7e1192.js → fr-563dfcd5.js} +14 -14
- package/dist/cjs/{fr-ch-5e1f2c28.js → fr-ch-f66cfd49.js} +14 -14
- package/dist/cjs/{guid-3abe3cc6.js → guid-d1123d5e.js} +1 -1
- package/dist/cjs/{he-ea851800.js → he-d8253a1a.js} +14 -14
- package/dist/cjs/{hi-5212a21d.js → hi-58c7c3b5.js} +14 -14
- package/dist/cjs/{hr-4eecb2ed.js → hr-5aba114a.js} +14 -14
- package/dist/cjs/{hu-6b527d8e.js → hu-38c15915.js} +14 -14
- package/dist/cjs/{id-d78f12ec.js → id-3a94c080.js} +14 -14
- package/dist/cjs/{index.es-4542630e.js → index.es-a1507f1c.js} +3 -3
- package/dist/cjs/{interactive-2fe0f43a.js → interactive-48299817.js} +2 -2
- package/dist/cjs/{it-15242935.js → it-88834555.js} +14 -14
- package/dist/cjs/{it-ch-9dc21944.js → it-ch-970563cd.js} +14 -14
- package/dist/cjs/{ja-f702cfc2.js → ja-13d4b1ae.js} +14 -14
- package/dist/cjs/{key-b8b55ea3.js → key-8de93212.js} +1 -1
- package/dist/cjs/{ko-aa9bde2c.js → ko-10cbdd98.js} +14 -14
- package/dist/cjs/{label-6e33e971.js → label-166e2d81.js} +3 -3
- package/dist/cjs/layout-manager.cjs.entry.js +93 -0
- package/dist/cjs/{loadModules-31cab7ac.js → loadModules-c5490589.js} +1 -1
- package/dist/cjs/{loadable-bac9cdd6.js → loadable-6925d840.js} +1 -1
- package/dist/cjs/loader.cjs.js +3 -3
- package/dist/cjs/{locale-c63a1b57.js → locale-79c3d30e.js} +5 -5
- package/dist/cjs/{locale-d15cd743.js → locale-88c21da2.js} +15 -15
- package/dist/cjs/{lt-e741ff2f.js → lt-3fc5017a.js} +14 -14
- package/dist/cjs/{lv-92d6768e.js → lv-9d9cf999.js} +14 -14
- package/dist/cjs/map-select-tools_3.cjs.entry.js +3 -3
- package/dist/cjs/{math-5132d9bd.js → math-f28069f3.js} +1 -1
- package/dist/cjs/{mk-b209ac0d.js → mk-9f79812b.js} +14 -14
- package/dist/cjs/{nb-db13e666.js → nb-673fe3fd.js} +14 -14
- package/dist/cjs/{nl-fcd9e0c5.js → nl-4dc0504f.js} +14 -14
- package/dist/cjs/{observers-f5fa975b.js → observers-9912f013.js} +1 -1
- package/dist/cjs/{openCloseComponent-5d70fcd8.js → openCloseComponent-05cb01ff.js} +9 -4
- package/dist/cjs/{pl-87c83322.js → pl-d809a6c3.js} +14 -14
- package/dist/cjs/{pt-b0b5f472.js → pt-78eefbc7.js} +14 -14
- package/dist/cjs/{pt-br-03333e90.js → pt-br-55f1893a.js} +14 -14
- package/dist/cjs/public-notification.cjs.entry.js +3 -3
- package/dist/cjs/{resources-60c27547.js → resources-030a27ed.js} +1 -1
- package/dist/cjs/{resources-91409a5d.js → resources-10d29626.js} +1 -1
- package/dist/cjs/{resources-9f2b33ee.js → resources-24b6eee0.js} +1 -1
- package/dist/cjs/{resources-4da89742.js → resources-2b51cf4c.js} +1 -1
- package/dist/cjs/{resources-e1258e8a.js → resources-8f4e8ba8.js} +1 -1
- package/dist/cjs/{resources-77713c2e.js → resources-993f6faf.js} +1 -1
- package/dist/cjs/{resources-2901b608.js → resources-a2e2a544.js} +1 -1
- package/dist/cjs/{resources-c913200c.js → resources-acf9a7ea.js} +1 -1
- package/dist/cjs/{resources-8233a151.js → resources-caca31c2.js} +1 -1
- package/dist/cjs/{ro-c3661b73.js → ro-f0cff196.js} +14 -14
- package/dist/cjs/{ru-8dd3fd58.js → ru-5e9b37f9.js} +14 -14
- package/dist/cjs/{shared-list-render-c0adb192.js → shared-list-render-9bbcb306.js} +6 -6
- package/dist/cjs/{sk-151d9acf.js → sk-322cd349.js} +14 -14
- package/dist/cjs/{sl-9b45a152.js → sl-fd948e50.js} +14 -14
- package/dist/cjs/solution-configuration.cjs.entry.js +1 -1
- package/dist/cjs/solution-contents_3.cjs.entry.js +1 -1
- package/dist/cjs/solutions-components.cjs.js +3 -3
- package/dist/cjs/{sortableComponent-58679f07.js → sortableComponent-70bf79de.js} +2 -2
- package/dist/cjs/{sr-186bf15c.js → sr-f0058b24.js} +14 -14
- package/dist/cjs/{sv-a93fee0c.js → sv-8a8378bf.js} +14 -14
- package/dist/cjs/{t9n-1d032c30.js → t9n-62d807df.js} +2 -2
- package/dist/cjs/{th-41680352.js → th-f219fad6.js} +14 -14
- package/dist/cjs/{time-5e450ec8.js → time-24d40c60.js} +2 -2
- package/dist/cjs/{tr-0bd886d6.js → tr-03109641.js} +14 -14
- package/dist/cjs/{uk-4fade133.js → uk-dde46112.js} +14 -14
- package/dist/cjs/{utils-cd14113f.js → utils-09191c93.js} +2 -2
- package/dist/cjs/{utils-acfeed9d.js → utils-651e6663.js} +3 -3
- package/dist/cjs/{utils-ae9bdd59.js → utils-852fe124.js} +3 -3
- package/dist/cjs/{utils-bae432a9.js → utils-a194dc3d.js} +5 -2
- package/dist/cjs/{vi-1c9fe343.js → vi-60ed6e30.js} +14 -14
- package/dist/cjs/{zh-cn-28fa1fe1.js → zh-cn-a2f6f51d.js} +14 -14
- package/dist/cjs/{zh-hk-5abf8eb5.js → zh-hk-e14e2fc0.js} +14 -14
- package/dist/cjs/{zh-tw-07500357.js → zh-tw-7ea0d7e4.js} +14 -14
- package/dist/collection/collection-manifest.json +1 -0
- package/dist/collection/components/crowdsource-manager/crowdsource-manager.js +22 -28
- package/dist/collection/components/info-card/info-card.css +14 -0
- package/dist/collection/components/info-card/info-card.js +3 -2
- package/dist/collection/components/layer-table/layer-table.js +60 -9
- package/dist/collection/components/map-card/map-card.js +10 -6
- package/dist/collection/components/map-legend/map-legend.css +3 -0
- package/dist/collection/components/map-legend/map-legend.js +166 -0
- package/dist/collection/components/map-legend/test/map-legend.e2e.js +14 -0
- package/dist/collection/components/map-legend/test/map-legend.spec.js +22 -0
- package/dist/collection/components/map-tools/map-tools.js +25 -4
- package/dist/collection/demos/crowdsource-manager.html +26 -1
- package/dist/collection/utils/downloadUtils.js +250 -230
- package/dist/collection/utils/downloadUtils.ts +347 -326
- package/dist/collection/utils/interfaces.ts +11 -0
- package/dist/collection/utils/test/downloadUtils.spec.js +503 -57
- package/dist/collection/utils/test/downloadUtils.spec.tsx +587 -61
- package/dist/components/ExpandToggle.js +2 -2
- package/dist/components/FloatingArrow.js +1 -1
- package/dist/components/Heading.js +1 -1
- package/dist/components/action-bar.js +23 -15
- package/dist/components/action-group.js +9 -10
- package/dist/components/action-menu.js +1 -1
- package/dist/components/action.js +1 -1
- package/dist/components/alert.js +2 -2
- package/dist/components/array.js +1 -1
- package/dist/components/avatar.js +2 -2
- package/dist/components/button.js +1 -1
- package/dist/components/calcite-accordion-item.js +2 -7
- package/dist/components/calcite-accordion.js +0 -5
- package/dist/components/calcite-action-pad.js +10 -5
- package/dist/components/calcite-block-section.js +2 -2
- package/dist/components/calcite-block.js +2 -2
- package/dist/components/calcite-card.js +1 -1
- package/dist/components/calcite-chip-group.js +0 -5
- package/dist/components/calcite-combobox-item-group.js +1 -1
- package/dist/components/calcite-fab.js +1 -1
- package/dist/components/calcite-flow-item.js +1 -1
- package/dist/components/calcite-flow.js +1 -1
- package/dist/components/calcite-inline-editable.js +1 -1
- package/dist/components/calcite-input-date-picker.js +1 -1
- package/dist/components/calcite-input-time-picker.js +1 -1
- package/dist/components/calcite-input-time-zone.js +1 -1
- package/dist/components/calcite-list-item-group.js +1 -1
- package/dist/components/calcite-menu-item.js +1 -1
- package/dist/components/calcite-modal.js +2 -2
- package/dist/components/calcite-navigation-logo.js +1 -1
- package/dist/components/calcite-navigation-user.js +1 -1
- package/dist/components/calcite-navigation.js +2 -2
- package/dist/components/calcite-pagination.js +1 -1
- package/dist/components/calcite-radio-button-group.js +0 -5
- package/dist/components/calcite-radio-button.js +1 -1
- package/dist/components/calcite-rating.js +1 -1
- package/dist/components/calcite-shell-center-row.js +1 -1
- package/dist/components/calcite-sortable-list.js +1 -1
- package/dist/components/calcite-split-button.js +1 -1
- package/dist/components/calcite-stepper.js +0 -5
- package/dist/components/calcite-text-area.js +5 -5
- package/dist/components/calcite-tile-select.js +1 -1
- package/dist/components/calcite-tip-manager.js +1 -1
- package/dist/components/calcite-tip.js +1 -1
- package/dist/components/card-manager2.js +5 -5
- package/dist/components/checkbox.js +0 -5
- package/dist/components/chip.js +2 -2
- package/dist/components/color-picker-hex-input.js +2 -2
- package/dist/components/color-picker-swatch.js +1 -1
- package/dist/components/combobox-item.js +1 -1
- package/dist/components/combobox.js +1 -6
- package/dist/components/conditionalSlot.js +1 -1
- package/dist/components/crowdsource-manager.js +29 -18
- package/dist/components/date-picker-month-header.js +1 -1
- package/dist/components/date-picker.js +2 -2
- package/dist/components/date.js +1 -1
- package/dist/components/dom.js +2 -2
- package/dist/components/downloadUtils.js +247 -260
- package/dist/components/dropdown-group.js +1 -1
- package/dist/components/dropdown-item.js +1 -1
- package/dist/components/dropdown.js +1 -1
- package/dist/components/esri-loader.js +15 -15
- package/dist/components/filter.js +1 -1
- package/dist/components/filter2.js +1 -1
- package/dist/components/floating-ui.js +1 -1
- package/dist/components/focusTrapComponent.js +4 -4
- package/dist/components/form.js +1 -1
- package/dist/components/graph.js +3 -8
- package/dist/components/guid.js +1 -1
- package/dist/components/handle.js +1 -1
- package/dist/components/icon.js +2 -2
- package/dist/components/index.js +2 -2
- package/dist/components/info-card2.js +9 -8
- package/dist/components/input-message.js +1 -1
- package/dist/components/input-number.js +1 -1
- package/dist/components/input-text.js +1 -1
- package/dist/components/input.js +1 -1
- package/dist/components/interactive.js +2 -2
- package/dist/components/key.js +1 -1
- package/dist/components/label.js +2 -2
- package/dist/components/label2.js +1 -1
- package/dist/components/layer-table2.js +40 -9
- package/dist/components/layout-manager.js +129 -1
- package/dist/components/list-item2.js +1 -1
- package/dist/components/list.js +2 -2
- package/dist/components/loadable.js +1 -1
- package/dist/components/locale2.js +2 -2
- package/dist/components/map-card2.js +46 -37
- package/dist/components/map-legend.d.ts +11 -0
- package/dist/components/map-legend.js +11 -0
- package/dist/components/map-legend2.js +118 -0
- package/dist/components/map-tools2.js +47 -22
- package/dist/components/math.js +1 -1
- package/dist/components/menu.js +1 -1
- package/dist/components/notice.js +1 -1
- package/dist/components/observers.js +1 -1
- package/dist/components/openCloseComponent.js +9 -4
- package/dist/components/panel.js +2 -2
- package/dist/components/pick-list-item.js +1 -1
- package/dist/components/popover.js +3 -8
- package/dist/components/resources.js +1 -1
- package/dist/components/resources2.js +1 -1
- package/dist/components/resources3.js +1 -1
- package/dist/components/resources4.js +1 -1
- package/dist/components/scrim.js +1 -1
- package/dist/components/segmented-control-item.js +1 -1
- package/dist/components/select.js +1 -1
- package/dist/components/shared-list-render.js +2 -2
- package/dist/components/shell-panel.js +9 -6
- package/dist/components/shell.js +2 -2
- package/dist/components/slider.js +1 -1
- package/dist/components/sortableComponent.js +1 -1
- package/dist/components/stack.js +2 -2
- package/dist/components/t9n.js +1 -1
- package/dist/components/tab-title.js +1 -6
- package/dist/components/tabs.js +1 -1
- package/dist/components/tile.js +1 -1
- package/dist/components/time-picker.js +2 -2
- package/dist/components/tooltip.js +3 -3
- package/dist/components/tree-item.js +2 -2
- package/dist/components/tree.js +1 -1
- package/dist/components/utils.js +5 -2
- package/dist/components/utils2.js +2 -2
- package/dist/components/utils3.js +2 -2
- package/dist/components/value-list-item.js +1 -1
- package/dist/components/value-list.js +2 -2
- package/dist/esm/{ExpandToggle-3d10bd1e.js → ExpandToggle-3bfcb842.js} +5 -5
- package/dist/esm/{FloatingArrow-29db6da6.js → FloatingArrow-cf140d6b.js} +1 -1
- package/dist/esm/{Heading-cb79e5b2.js → Heading-140d10ff.js} +1 -1
- package/dist/esm/{app-globals-5cbac6b0.js → app-globals-fffe4e27.js} +3 -3
- package/dist/esm/{ar-4b751ba8.js → ar-45abeb31.js} +14 -14
- package/dist/esm/{array-751a2b87.js → array-d95985ad.js} +1 -1
- package/dist/esm/{basemap-gallery_4.entry.js → basemap-gallery_5.entry.js} +115 -7
- package/dist/esm/{bg-5d8bf5ea.js → bg-af759e86.js} +14 -14
- package/dist/esm/{bs-ff510e71.js → bs-20d012de.js} +14 -14
- package/dist/esm/buffer-tools_4.entry.js +15 -15
- package/dist/esm/{ca-b9a5e51a.js → ca-1498df65.js} +14 -14
- package/dist/esm/calcite-accordion-item.entry.js +7 -12
- package/dist/esm/calcite-accordion.entry.js +1 -6
- package/dist/esm/calcite-action-bar.entry.js +31 -26
- package/dist/esm/calcite-action-group_2.entry.js +18 -20
- package/dist/esm/calcite-action-pad.entry.js +20 -16
- package/dist/esm/calcite-action_2.entry.js +17 -22
- package/dist/esm/calcite-alert.entry.js +11 -11
- package/dist/esm/calcite-avatar.entry.js +6 -6
- package/dist/esm/calcite-block-section.entry.js +9 -9
- package/dist/esm/calcite-block.entry.js +12 -12
- package/dist/esm/calcite-button.entry.js +12 -12
- package/dist/esm/calcite-card.entry.js +9 -9
- package/dist/esm/calcite-checkbox.entry.js +8 -13
- package/dist/esm/calcite-chip-group.entry.js +6 -11
- package/dist/esm/calcite-chip.entry.js +11 -11
- package/dist/esm/calcite-color-picker-hex-input_2.entry.js +8 -8
- package/dist/esm/calcite-color-picker.entry.js +12 -12
- package/dist/esm/calcite-combobox-item-group.entry.js +5 -5
- package/dist/esm/calcite-combobox_6.entry.js +21 -26
- package/dist/esm/calcite-date-picker-day_3.entry.js +10 -10
- package/dist/esm/calcite-date-picker.entry.js +11 -11
- package/dist/esm/calcite-fab.entry.js +6 -6
- package/dist/esm/calcite-filter_5.entry.js +16 -16
- package/dist/esm/calcite-flow-item.entry.js +11 -11
- package/dist/esm/calcite-flow.entry.js +3 -3
- package/dist/esm/calcite-graph.entry.js +5 -10
- package/dist/esm/calcite-icon.entry.js +6 -6
- package/dist/esm/calcite-inline-editable.entry.js +11 -11
- package/dist/esm/calcite-input-date-picker.entry.js +17 -17
- package/dist/esm/calcite-input-number_2.entry.js +13 -13
- package/dist/esm/{calcite-input-time-picker-13448515.js → calcite-input-time-picker-227e60c3.js} +60 -60
- package/dist/esm/calcite-input-time-picker.entry.js +14 -14
- package/dist/esm/calcite-input-time-zone.entry.js +12 -12
- package/dist/esm/calcite-input_2.entry.js +12 -12
- package/dist/esm/calcite-label.entry.js +5 -5
- package/dist/esm/calcite-link.entry.js +5 -5
- package/dist/esm/calcite-list-item-group.entry.js +3 -3
- package/dist/esm/calcite-loader.entry.js +1 -1
- package/dist/esm/calcite-menu-item.entry.js +9 -9
- package/dist/esm/calcite-menu.entry.js +9 -9
- package/dist/esm/calcite-modal.entry.js +12 -12
- package/dist/esm/calcite-navigation-logo.entry.js +2 -2
- package/dist/esm/calcite-navigation-user.entry.js +2 -2
- package/dist/esm/calcite-navigation.entry.js +5 -5
- package/dist/esm/calcite-notice.entry.js +11 -11
- package/dist/esm/calcite-option_2.entry.js +9 -9
- package/dist/esm/calcite-pagination.entry.js +9 -9
- package/dist/esm/calcite-panel_2.entry.js +14 -14
- package/dist/esm/calcite-pick-list-group.entry.js +7 -7
- package/dist/esm/calcite-pick-list-item.entry.js +12 -12
- package/dist/esm/calcite-pick-list.entry.js +10 -10
- package/dist/esm/calcite-radio-button-group.entry.js +2 -7
- package/dist/esm/calcite-radio-button.entry.js +9 -9
- package/dist/esm/calcite-rating.entry.js +12 -12
- package/dist/esm/calcite-scrim.entry.js +8 -8
- package/dist/esm/calcite-segmented-control_2.entry.js +8 -8
- package/dist/esm/calcite-shell-center-row.entry.js +6 -6
- package/dist/esm/calcite-shell-panel_14.entry.js +29 -32
- package/dist/esm/calcite-sortable-list.entry.js +7 -7
- package/dist/esm/calcite-split-button.entry.js +3 -3
- package/dist/esm/calcite-stepper-item.entry.js +8 -8
- package/dist/esm/calcite-stepper.entry.js +3 -8
- package/dist/esm/calcite-switch.entry.js +8 -8
- package/dist/esm/calcite-text-area.entry.js +15 -15
- package/dist/esm/calcite-tile-select-group.entry.js +1 -1
- package/dist/esm/calcite-tile-select.entry.js +4 -4
- package/dist/esm/calcite-tile.entry.js +7 -7
- package/dist/esm/calcite-time-picker.entry.js +10 -10
- package/dist/esm/calcite-tip-manager.entry.js +9 -9
- package/dist/esm/calcite-tip.entry.js +10 -10
- package/dist/esm/calcite-tooltip.entry.js +9 -9
- package/dist/esm/calcite-tree_3.entry.js +8 -8
- package/dist/esm/{card-manager_4.entry.js → card-manager_3.entry.js} +48 -93
- package/dist/esm/{conditionalSlot-27a0fce0.js → conditionalSlot-55a14abd.js} +2 -2
- package/dist/esm/crowdsource-manager.entry.js +23 -11
- package/dist/esm/{cs-f21a0628.js → cs-3bd67855.js} +14 -14
- package/dist/esm/{da-dc48fc4c.js → da-7a76e131.js} +14 -14
- package/dist/esm/{date-0ed48e97.js → date-bd5b879c.js} +2 -2
- package/dist/esm/{de-59290071.js → de-0808a43e.js} +14 -14
- package/dist/esm/{de-at-cd6e6ab7.js → de-at-0b6874cb.js} +14 -14
- package/dist/esm/{de-ch-27c44e34.js → de-ch-c9d429dd.js} +14 -14
- package/dist/esm/{dom-843e3afd.js → dom-37f2dec9.js} +3 -3
- package/dist/esm/{downloadUtils-63661805.js → downloadUtils-64c27514.js} +249 -262
- package/dist/esm/edit-card_2.entry.js +6 -5
- package/dist/esm/{el-f09fdec6.js → el-66001281.js} +14 -14
- package/dist/esm/{en-au-90087aa5.js → en-au-6424fec0.js} +14 -14
- package/dist/esm/{en-ca-10751695.js → en-ca-f5f1659d.js} +14 -14
- package/dist/esm/{en-gb-0f8547bd.js → en-gb-796beadd.js} +14 -14
- package/dist/esm/{es-b0997cf1.js → es-cd139926.js} +14 -14
- package/dist/esm/{es-mx-226f5028.js → es-mx-854dc3e4.js} +14 -14
- package/dist/esm/{et-dc96c453.js → et-2aa6782d.js} +14 -14
- package/dist/esm/{fi-0941704d.js → fi-965727bd.js} +14 -14
- package/dist/esm/{filter-1cac3edf.js → filter-60517290.js} +1 -1
- package/dist/esm/{floating-ui-d28d0fd6.js → floating-ui-7cde67cf.js} +2 -2
- package/dist/esm/{focusTrapComponent-ff3a9f28.js → focusTrapComponent-ec344399.js} +4 -4
- package/dist/esm/{form-11c6a015.js → form-04d47b0b.js} +2 -2
- package/dist/esm/{fr-8da3458d.js → fr-c1884e89.js} +14 -14
- package/dist/esm/{fr-ch-739ceddf.js → fr-ch-1fd8dd3a.js} +14 -14
- package/dist/esm/{guid-2bbb8cd1.js → guid-70cda807.js} +1 -1
- package/dist/esm/{he-8b662dfa.js → he-0d7b78b4.js} +14 -14
- package/dist/esm/{hi-10996f89.js → hi-0376c82d.js} +14 -14
- package/dist/esm/{hr-42c2024d.js → hr-28a64903.js} +14 -14
- package/dist/esm/{hu-4768b3ff.js → hu-44a02ff7.js} +14 -14
- package/dist/esm/{id-24a08170.js → id-034fc4a5.js} +14 -14
- package/dist/esm/{index.es-3a3aa8e3.js → index.es-b7bc2db1.js} +3 -3
- package/dist/esm/{interactive-eaf4be29.js → interactive-bd6837bc.js} +2 -2
- package/dist/esm/{it-ad09649f.js → it-56e52026.js} +14 -14
- package/dist/esm/{it-ch-b05fc10d.js → it-ch-a4a0e136.js} +14 -14
- package/dist/esm/{ja-ab839b73.js → ja-f2365272.js} +14 -14
- package/dist/esm/{key-7a525416.js → key-02fa06ae.js} +1 -1
- package/dist/esm/{ko-c778539e.js → ko-e7650b4c.js} +14 -14
- package/dist/esm/{label-6a1caf64.js → label-b6dfb4d5.js} +3 -3
- package/dist/{components/layout-manager2.js → esm/layout-manager.entry.js} +11 -58
- package/dist/esm/{loadModules-2ecd1e44.js → loadModules-f5f910b6.js} +1 -1
- package/dist/esm/{loadable-6bca96ad.js → loadable-47170cb6.js} +1 -1
- package/dist/esm/loader.js +3 -3
- package/dist/esm/{locale-d8561d54.js → locale-146251f7.js} +5 -5
- package/dist/esm/{locale-aa3de591.js → locale-efad8f83.js} +15 -15
- package/dist/esm/{lt-447d9aa9.js → lt-1577a952.js} +14 -14
- package/dist/esm/{lv-4d715e11.js → lv-9ef7e4f6.js} +14 -14
- package/dist/esm/map-select-tools_3.entry.js +3 -3
- package/dist/esm/{math-5f92f517.js → math-0d6817c3.js} +1 -1
- package/dist/esm/{mk-b3d7401a.js → mk-94264e08.js} +14 -14
- package/dist/esm/{nb-2b4a8366.js → nb-fa24d5b2.js} +14 -14
- package/dist/esm/{nl-c0db1da2.js → nl-33f10900.js} +14 -14
- package/dist/esm/{observers-9d66685a.js → observers-95c50046.js} +1 -1
- package/dist/esm/{openCloseComponent-2b5c6bed.js → openCloseComponent-10efeff3.js} +9 -4
- package/dist/esm/{pl-0d322bb4.js → pl-9ed16565.js} +14 -14
- package/dist/esm/{pt-5997598c.js → pt-52731ddf.js} +14 -14
- package/dist/esm/{pt-br-6b77e7db.js → pt-br-8de51ff4.js} +14 -14
- package/dist/esm/public-notification.entry.js +3 -3
- package/dist/esm/{resources-5bce3953.js → resources-0151b0c0.js} +1 -1
- package/dist/esm/{resources-94c47e64.js → resources-1e6d76df.js} +1 -1
- package/dist/esm/{resources-40d8e06f.js → resources-24255b05.js} +1 -1
- package/dist/esm/{resources-dca3d475.js → resources-2e5aa562.js} +1 -1
- package/dist/esm/{resources-c253772f.js → resources-2edfa0af.js} +1 -1
- package/dist/esm/{resources-a9b2d33c.js → resources-41416583.js} +1 -1
- package/dist/esm/{resources-d6a4d343.js → resources-b392187d.js} +1 -1
- package/dist/esm/{resources-58d30a0f.js → resources-c676d5de.js} +1 -1
- package/dist/esm/{resources-c65f5654.js → resources-efae7280.js} +1 -1
- package/dist/esm/{ro-ac3724e0.js → ro-99f009ad.js} +14 -14
- package/dist/esm/{ru-4e75151f.js → ru-592ffaf0.js} +14 -14
- package/dist/esm/{shared-list-render-abd19c8d.js → shared-list-render-4f0f6af8.js} +6 -6
- package/dist/esm/{sk-bbfa22a3.js → sk-44f7bd19.js} +14 -14
- package/dist/esm/{sl-867cecfc.js → sl-08cad9bd.js} +14 -14
- package/dist/esm/solution-configuration.entry.js +1 -1
- package/dist/esm/solution-contents_3.entry.js +1 -1
- package/dist/esm/solutions-components.js +3 -3
- package/dist/esm/{sortableComponent-db502e97.js → sortableComponent-8a84709a.js} +2 -2
- package/dist/esm/{sr-198b5c00.js → sr-84f261fc.js} +14 -14
- package/dist/esm/{sv-02d64370.js → sv-d0d7bc1e.js} +14 -14
- package/dist/esm/{t9n-76168237.js → t9n-5f748619.js} +2 -2
- package/dist/esm/{th-1616e303.js → th-a5149d44.js} +14 -14
- package/dist/esm/{time-6721a4c2.js → time-fa1151aa.js} +2 -2
- package/dist/esm/{tr-f4619f64.js → tr-feb0cad4.js} +14 -14
- package/dist/esm/{uk-df7df34a.js → uk-c9ba62a0.js} +14 -14
- package/dist/esm/{utils-f54411df.js → utils-0a5c1a07.js} +3 -3
- package/dist/esm/{utils-ccfd94a7.js → utils-667cc396.js} +3 -3
- package/dist/esm/{utils-18db6b1d.js → utils-7af1efcc.js} +2 -2
- package/dist/esm/{utils-2c91c963.js → utils-7cf107ec.js} +5 -2
- package/dist/esm/{vi-176ca9f7.js → vi-788dcb99.js} +14 -14
- package/dist/esm/{zh-cn-e13d83d1.js → zh-cn-3ccfb820.js} +14 -14
- package/dist/esm/{zh-hk-d97365d8.js → zh-hk-b29b61e8.js} +14 -14
- package/dist/esm/{zh-tw-a2b6f0b7.js → zh-tw-2bdbc6eb.js} +14 -14
- package/dist/solutions-components/assets/icon/applySelectionToExistingView16.json +1 -0
- package/dist/solutions-components/assets/icon/applySelectionToExistingView24.json +1 -0
- package/dist/solutions-components/assets/icon/applySelectionToExistingView32.json +1 -0
- package/dist/solutions-components/assets/icon/channels16.json +1 -0
- package/dist/solutions-components/assets/icon/channels24.json +1 -0
- package/dist/solutions-components/assets/icon/channels32.json +1 -0
- package/dist/solutions-components/assets/icon/chevronDownLeft16.json +1 -0
- package/dist/solutions-components/assets/icon/chevronDownLeft24.json +1 -0
- package/dist/solutions-components/assets/icon/chevronDownLeft32.json +1 -0
- package/dist/solutions-components/assets/icon/chevronDownRight16.json +1 -0
- package/dist/solutions-components/assets/icon/chevronDownRight24.json +1 -0
- package/dist/solutions-components/assets/icon/chevronDownRight32.json +1 -0
- package/dist/solutions-components/assets/icon/chevronUpLeft16.json +1 -0
- package/dist/solutions-components/assets/icon/chevronUpLeft24.json +1 -0
- package/dist/solutions-components/assets/icon/chevronUpLeft32.json +1 -0
- package/dist/solutions-components/assets/icon/chevronUpRight16.json +1 -0
- package/dist/solutions-components/assets/icon/chevronUpRight24.json +1 -0
- package/dist/solutions-components/assets/icon/chevronUpRight32.json +1 -0
- package/dist/solutions-components/assets/icon/clearSelection16.json +1 -0
- package/dist/solutions-components/assets/icon/clearSelection24.json +1 -0
- package/dist/solutions-components/assets/icon/clearSelection32.json +1 -0
- package/dist/solutions-components/assets/icon/communityLinkChartLayout16.json +1 -0
- package/dist/solutions-components/assets/icon/communityLinkChartLayout24.json +1 -0
- package/dist/solutions-components/assets/icon/communityLinkChartLayout32.json +1 -0
- package/dist/solutions-components/assets/icon/dataCard16.json +1 -0
- package/dist/solutions-components/assets/icon/dataCard24.json +1 -0
- package/dist/solutions-components/assets/icon/dataCard32.json +1 -0
- package/dist/solutions-components/assets/icon/dateTime16.json +1 -0
- package/dist/solutions-components/assets/icon/dateTime24.json +1 -0
- package/dist/solutions-components/assets/icon/dateTime32.json +1 -0
- package/dist/solutions-components/assets/icon/expressionDefinedColor16.json +1 -0
- package/dist/solutions-components/assets/icon/expressionDefinedColor24.json +1 -0
- package/dist/solutions-components/assets/icon/expressionDefinedColor32.json +1 -0
- package/dist/solutions-components/assets/icon/forceDirectedLinkChartLayout16.json +1 -0
- package/dist/solutions-components/assets/icon/forceDirectedLinkChartLayout24.json +1 -0
- package/dist/solutions-components/assets/icon/forceDirectedLinkChartLayout32.json +1 -0
- package/dist/solutions-components/assets/icon/hierarchicalLinkChartLayout16.json +1 -0
- package/dist/solutions-components/assets/icon/hierarchicalLinkChartLayout24.json +1 -0
- package/dist/solutions-components/assets/icon/hierarchicalLinkChartLayout32.json +1 -0
- package/dist/solutions-components/assets/icon/knowledgeStudio16.json +1 -0
- package/dist/solutions-components/assets/icon/knowledgeStudio24.json +1 -0
- package/dist/solutions-components/assets/icon/knowledgeStudio32.json +1 -0
- package/dist/solutions-components/assets/icon/linkChartExpand16.json +1 -0
- package/dist/solutions-components/assets/icon/linkChartExpand24.json +1 -0
- package/dist/solutions-components/assets/icon/linkChartExpand32.json +1 -0
- package/dist/solutions-components/assets/icon/minusSquare16F.json +1 -0
- package/dist/solutions-components/assets/icon/minusSquare24F.json +1 -0
- package/dist/solutions-components/assets/icon/minusSquare32F.json +1 -0
- package/dist/solutions-components/assets/icon/newLinkChart16.json +1 -0
- package/dist/solutions-components/assets/icon/newLinkChart24.json +1 -0
- package/dist/solutions-components/assets/icon/newLinkChart32.json +1 -0
- package/dist/solutions-components/assets/icon/radialTreeLinkChartYayout16.json +1 -0
- package/dist/solutions-components/assets/icon/radialTreeLinkChartYayout24.json +1 -0
- package/dist/solutions-components/assets/icon/radialTreeLinkChartYayout32.json +1 -0
- package/dist/solutions-components/assets/icon/removeLinkchart16.json +1 -0
- package/dist/solutions-components/assets/icon/removeLinkchart24.json +1 -0
- package/dist/solutions-components/assets/icon/removeLinkchart32.json +1 -0
- package/dist/solutions-components/assets/icon/simpleLinkChartLayout16.json +1 -0
- package/dist/solutions-components/assets/icon/simpleLinkChartLayout24.json +1 -0
- package/dist/solutions-components/assets/icon/simpleLinkChartLayout32.json +1 -0
- package/dist/solutions-components/assets/icon/smartTreeLinkChartLayout16.json +1 -0
- package/dist/solutions-components/assets/icon/smartTreeLinkChartLayout24.json +1 -0
- package/dist/solutions-components/assets/icon/smartTreeLinkChartLayout32.json +1 -0
- package/dist/solutions-components/assets/icon/sortAscendingArrow16.json +1 -1
- package/dist/solutions-components/assets/icon/sortAscendingArrow24.json +1 -1
- package/dist/solutions-components/assets/icon/sortAscendingArrow32.json +1 -1
- package/dist/solutions-components/assets/icon/sortDescendingArrow16.json +1 -1
- package/dist/solutions-components/assets/icon/sortDescendingArrow24.json +1 -1
- package/dist/solutions-components/assets/icon/sortDescendingArrow32.json +1 -1
- package/dist/solutions-components/assets/icon/timeZone16.json +1 -0
- package/dist/solutions-components/assets/icon/timeZone24.json +1 -0
- package/dist/solutions-components/assets/icon/timeZone32.json +1 -0
- package/dist/solutions-components/assets/icon/updateProject16.json +1 -0
- package/dist/solutions-components/assets/icon/updateProject24.json +1 -0
- package/dist/solutions-components/assets/icon/updateProject32.json +1 -0
- package/dist/solutions-components/demos/crowdsource-manager.html +26 -1
- package/dist/solutions-components/{p-9fb16c72.entry.js → p-0109bef4.entry.js} +10 -10
- package/dist/solutions-components/{p-46d5970b.entry.js → p-01c83b8c.entry.js} +1 -1
- package/dist/solutions-components/{p-6de98c51.js → p-0266ca81.js} +1 -1
- package/dist/solutions-components/{p-8a758303.js → p-05b2bdf9.js} +3 -3
- package/dist/solutions-components/p-072155f9.js +12 -0
- package/dist/solutions-components/{p-e07b8a72.entry.js → p-082365d6.entry.js} +3 -3
- package/dist/solutions-components/{p-ea282908.js → p-0b8463d6.js} +1 -1
- package/dist/solutions-components/{p-cad5587c.entry.js → p-0c2e392e.entry.js} +6 -6
- package/dist/solutions-components/p-0dce2c3b.entry.js +6 -0
- package/dist/solutions-components/{p-c3f8b670.js → p-0ecd7346.js} +1 -1
- package/dist/solutions-components/{p-18f1772b.js → p-0ed14b4b.js} +1 -1
- package/dist/solutions-components/p-0f77e83c.entry.js +11 -0
- package/dist/solutions-components/{p-29d41c7e.js → p-0f85fa4b.js} +1 -1
- package/dist/solutions-components/{p-541697d0.js → p-0fa3d1aa.js} +2 -2
- package/dist/solutions-components/{p-a6900100.entry.js → p-10e1ebe4.entry.js} +3 -3
- package/dist/solutions-components/{p-7c33e500.entry.js → p-12f06497.entry.js} +1 -1
- package/dist/solutions-components/{p-f41105c8.js → p-138cf009.js} +1 -1
- package/dist/solutions-components/{p-2b96e551.entry.js → p-149b4d3c.entry.js} +3 -3
- package/dist/solutions-components/{p-022a9b7a.js → p-167eb73b.js} +1 -1
- package/dist/solutions-components/{p-32f9c709.js → p-168a7d63.js} +1 -1
- package/dist/solutions-components/{p-2b252afd.entry.js → p-17a29fa6.entry.js} +1 -1
- package/dist/solutions-components/p-18538cd9.entry.js +11 -0
- package/dist/solutions-components/p-1bcfca9b.entry.js +6 -0
- package/dist/solutions-components/{p-19fe7725.js → p-1cebde99.js} +1 -1
- package/dist/solutions-components/{p-b948ecd2.entry.js → p-1dbaff04.entry.js} +2 -2
- package/dist/solutions-components/{p-2656168f.entry.js → p-1e7a31c1.entry.js} +3 -3
- package/dist/solutions-components/{p-d554507d.js → p-1eda2d20.js} +1 -1
- package/dist/solutions-components/{p-ef48bd77.entry.js → p-1efcac52.entry.js} +3 -3
- package/dist/solutions-components/{p-c6d83122.entry.js → p-1fba74a5.entry.js} +3 -3
- package/dist/solutions-components/{p-3cbe5ef3.js → p-2154de6d.js} +1 -1
- package/dist/solutions-components/{p-1ea1dcac.js → p-22d06238.js} +1 -1
- package/dist/solutions-components/{p-1ede2e18.js → p-2592c0b8.js} +3 -3
- package/dist/solutions-components/{p-90bbf223.entry.js → p-261394d7.entry.js} +1 -1
- package/dist/solutions-components/{p-754e2df2.js → p-27e0f599.js} +1 -1
- package/dist/solutions-components/{p-6a820c4d.js → p-28b5a7cf.js} +1 -1
- package/dist/solutions-components/{p-804e4751.entry.js → p-29efbf76.entry.js} +3 -3
- package/dist/solutions-components/{p-421d5e7c.js → p-2bf63e2e.js} +1 -1
- package/dist/solutions-components/{p-d4c103a8.js → p-2e8a41da.js} +1 -1
- package/dist/solutions-components/{p-de59d2f5.js → p-31aaa60f.js} +1 -1
- package/dist/solutions-components/{p-a2748b38.entry.js → p-34ef43ce.entry.js} +1 -1
- package/dist/solutions-components/{p-97c47bbd.entry.js → p-35cb6eca.entry.js} +3 -3
- package/dist/solutions-components/{p-39ff5ee5.js → p-3766be72.js} +2 -2
- package/dist/solutions-components/{p-9e727488.js → p-38f906f2.js} +1 -1
- package/dist/solutions-components/{p-c5e294e4.js → p-3948a96c.js} +1 -1
- package/dist/solutions-components/{p-9bbc05ff.js → p-3a844a72.js} +1 -1
- package/dist/solutions-components/{p-825bac0e.js → p-3c15959e.js} +1 -1
- package/dist/solutions-components/{p-ffac6f88.entry.js → p-3ce89910.entry.js} +1 -1
- package/dist/solutions-components/{p-7920b5a2.entry.js → p-3cfaf52b.entry.js} +2 -2
- package/dist/solutions-components/{p-b9749e09.js → p-3d3e6e20.js} +1 -1
- package/dist/solutions-components/{p-844ee452.entry.js → p-410068d9.entry.js} +2 -2
- package/dist/solutions-components/{p-a775ba2f.entry.js → p-42f9ab43.entry.js} +3 -3
- package/dist/solutions-components/{p-2291b598.js → p-43ba7a04.js} +1 -1
- package/dist/solutions-components/{p-f28d69ac.entry.js → p-446ab7f8.entry.js} +3 -3
- package/dist/solutions-components/{p-4bc7b875.entry.js → p-452850b4.entry.js} +2 -2
- package/dist/solutions-components/{p-0fbc27fd.entry.js → p-456f5afe.entry.js} +2 -2
- package/dist/solutions-components/{p-b86b4512.entry.js → p-46e0ce0c.entry.js} +2 -2
- package/dist/solutions-components/p-470a9ec4.entry.js +6 -0
- package/dist/solutions-components/{p-d62784a4.js → p-476e5302.js} +1 -1
- package/dist/solutions-components/{p-7b90c18e.entry.js → p-476eb52c.entry.js} +1 -1
- package/dist/solutions-components/{p-5961c4e0.js → p-4a75b3dc.js} +1 -1
- package/dist/solutions-components/{p-42c7a5fa.entry.js → p-4d76eaf6.entry.js} +2 -2
- package/dist/solutions-components/{p-4e4b55b9.entry.js → p-4f9f97b2.entry.js} +3 -3
- package/dist/solutions-components/{p-67ce3c0c.entry.js → p-56f1d66b.entry.js} +3 -3
- package/dist/solutions-components/{p-5b9b1cbb.entry.js → p-58167087.entry.js} +3 -3
- package/dist/solutions-components/{p-ad72a379.entry.js → p-586f0e3d.entry.js} +3 -3
- package/dist/solutions-components/{p-6f2edf5b.js → p-588bc0c0.js} +1 -1
- package/dist/solutions-components/{p-a040efff.js → p-5958dad9.js} +1 -1
- package/dist/solutions-components/{p-4d17943f.js → p-5c9fa0e7.js} +1 -1
- package/dist/solutions-components/{p-b4157e6a.js → p-5ceef49b.js} +1 -1
- package/dist/solutions-components/{p-c9858d8f.entry.js → p-5d62566c.entry.js} +2 -2
- package/dist/solutions-components/{p-5f5c371e.js → p-5e08d4de.js} +1 -1
- package/dist/solutions-components/{p-b684bbc7.entry.js → p-5eaaf6ea.entry.js} +1 -1
- package/dist/solutions-components/{p-10248e04.js → p-60c15592.js} +1 -1
- package/dist/solutions-components/{p-7601988d.entry.js → p-6295e168.entry.js} +2 -2
- package/dist/solutions-components/{p-4f0c3fc1.js → p-635bbbd4.js} +1 -1
- package/dist/solutions-components/{p-aeebdb15.js → p-636f4631.js} +1 -1
- package/dist/solutions-components/{p-fb7e0054.js → p-643a0325.js} +1 -1
- package/dist/solutions-components/{p-606ca126.js → p-64e2c099.js} +1 -1
- package/dist/solutions-components/{p-ad4d6d02.entry.js → p-651459e2.entry.js} +4 -4
- package/dist/solutions-components/{p-b0c4138f.entry.js → p-667e7134.entry.js} +2 -2
- package/dist/solutions-components/{p-4b95d05e.entry.js → p-66b5211f.entry.js} +1 -1
- package/dist/solutions-components/{p-216801d5.js → p-688f6a0a.js} +1 -1
- package/dist/solutions-components/{p-3e139360.js → p-6be3c411.js} +1 -1
- package/dist/solutions-components/{p-6a524392.entry.js → p-6ce7b446.entry.js} +2 -2
- package/dist/solutions-components/{p-0e7914e6.entry.js → p-6ddc9567.entry.js} +3 -3
- package/dist/solutions-components/{p-7b9adfff.js → p-7060caf6.js} +1 -1
- package/dist/solutions-components/{p-bd3a3afe.js → p-7262469a.js} +1 -1
- package/dist/solutions-components/{p-3f0193e9.js → p-73220ff1.js} +1 -1
- package/dist/solutions-components/{p-31ff3452.entry.js → p-78a40191.entry.js} +2 -2
- package/dist/solutions-components/{p-82199b7b.entry.js → p-7a027758.entry.js} +1 -1
- package/dist/solutions-components/{p-a843af2a.js → p-7b2314ac.js} +1 -1
- package/dist/solutions-components/p-7bb12deb.js +11 -0
- package/dist/solutions-components/{p-56300653.js → p-7f271c31.js} +5 -5
- package/dist/solutions-components/p-7f9642d5.js +21 -0
- package/dist/solutions-components/{p-5c097e25.entry.js → p-80cb42e4.entry.js} +3 -3
- package/dist/solutions-components/{p-5383607a.js → p-80ea5869.js} +3 -3
- package/dist/solutions-components/{p-ab8f5c6b.entry.js → p-81814234.entry.js} +2 -2
- package/dist/solutions-components/{p-abda8ca2.entry.js → p-8544d557.entry.js} +2 -2
- package/dist/solutions-components/{p-680d193d.entry.js → p-864c190b.entry.js} +3 -3
- package/dist/solutions-components/p-869d4521.entry.js +6 -0
- package/dist/solutions-components/{p-d3a22725.js → p-872036a8.js} +1 -1
- package/dist/solutions-components/{p-22d580b0.entry.js → p-879d6377.entry.js} +3 -3
- package/dist/solutions-components/{p-4805ff13.js → p-87d66120.js} +1 -1
- package/dist/solutions-components/{p-9cb94ea0.js → p-8927339d.js} +1 -1
- package/dist/solutions-components/{p-7aa949a3.entry.js → p-89504313.entry.js} +2 -2
- package/dist/solutions-components/{p-cf43278c.entry.js → p-8af52074.entry.js} +3 -3
- package/dist/solutions-components/{p-3fc17d72.js → p-8b448a5b.js} +1 -1
- package/dist/solutions-components/{p-03fccde6.entry.js → p-8b74f5bb.entry.js} +3 -3
- package/dist/solutions-components/p-8b8a6c1f.entry.js +6 -0
- package/dist/solutions-components/{p-2ae17fa2.js → p-8c61431d.js} +1 -1
- package/dist/solutions-components/{p-634e1240.js → p-8d00a17e.js} +1 -1
- package/dist/solutions-components/{p-c07af9c2.entry.js → p-8f68f1d3.entry.js} +2 -2
- package/dist/solutions-components/{p-e6bee82f.js → p-8f8d2861.js} +1 -1
- package/dist/solutions-components/{p-108fbf59.entry.js → p-90cef98d.entry.js} +1 -1
- package/dist/solutions-components/{p-9603c3ff.entry.js → p-9370bb48.entry.js} +2 -2
- package/dist/solutions-components/{p-a777b18c.js → p-96239d0d.js} +2 -2
- package/dist/solutions-components/p-97a4001d.entry.js +6 -0
- package/dist/solutions-components/{p-215d3505.js → p-99402001.js} +1 -1
- package/dist/solutions-components/p-99891e57.js +11 -0
- package/dist/solutions-components/{p-15ef7894.js → p-9a35ef8e.js} +1 -1
- package/dist/solutions-components/{p-35123c90.js → p-9b76bf3d.js} +1 -1
- package/dist/solutions-components/{p-6b2f2b85.js → p-a16feeec.js} +4 -4
- package/dist/solutions-components/{p-e645edf2.entry.js → p-a1c6db13.entry.js} +1 -1
- package/dist/solutions-components/{p-75f26870.js → p-a26dc184.js} +13 -13
- package/dist/solutions-components/{p-0cc32f06.js → p-a287be8b.js} +1 -1
- package/dist/solutions-components/{p-052ff2c7.js → p-a46f1b45.js} +1 -1
- package/dist/solutions-components/{p-1f468797.js → p-ab072027.js} +1 -1
- package/dist/solutions-components/{p-31316d61.entry.js → p-ac0abf04.entry.js} +3 -3
- package/dist/solutions-components/{p-38ef0684.js → p-ad75b9bb.js} +2 -2
- package/dist/solutions-components/{p-a08bd8c1.entry.js → p-ae6a7b3b.entry.js} +1 -1
- package/dist/solutions-components/{p-05db4340.js → p-aea37c90.js} +1 -1
- package/dist/solutions-components/{p-164be8ef.entry.js → p-b25005cf.entry.js} +1 -1
- package/dist/solutions-components/{p-b2e6c578.js → p-b28b6d40.js} +1 -1
- package/dist/solutions-components/{p-639cca97.js → p-b28ff52c.js} +1 -1
- package/dist/solutions-components/{p-5e59219b.entry.js → p-b2a52acb.entry.js} +1 -1
- package/dist/solutions-components/{p-21f00df6.js → p-bde323ec.js} +1 -1
- package/dist/solutions-components/{p-a0edbb27.js → p-be146646.js} +1 -1
- package/dist/solutions-components/{p-a258f5e7.js → p-c1dcc1e7.js} +1 -1
- package/dist/solutions-components/p-c3ab7439.js +11 -0
- package/dist/solutions-components/{p-283e3a2d.js → p-c6e55b32.js} +1 -1
- package/dist/solutions-components/{p-e10a62f4.entry.js → p-c79c7978.entry.js} +3 -3
- package/dist/solutions-components/{p-647a4130.js → p-c9633864.js} +3 -3
- package/dist/solutions-components/{p-916f90ec.entry.js → p-c968f9aa.entry.js} +1 -1
- package/dist/solutions-components/{p-cf1af08f.entry.js → p-c9df539a.entry.js} +1 -1
- package/dist/solutions-components/{p-93074bd4.entry.js → p-ca3d7edd.entry.js} +2 -2
- package/dist/solutions-components/{p-2005280f.js → p-cacfa6ae.js} +2 -2
- package/dist/solutions-components/{p-27a1ac1f.entry.js → p-cc2393c3.entry.js} +3 -3
- package/dist/solutions-components/p-cd673260.js +6 -0
- package/dist/solutions-components/{p-761a033a.entry.js → p-cec47579.entry.js} +2 -2
- package/dist/solutions-components/{p-32ef065d.entry.js → p-ced11bea.entry.js} +2 -2
- package/dist/solutions-components/{p-ee066c67.js → p-cee23126.js} +5 -5
- package/dist/solutions-components/p-d2d3e4b5.js +11 -0
- package/dist/solutions-components/{p-0ece6df1.entry.js → p-d6f68a4e.entry.js} +2 -2
- package/dist/solutions-components/{p-326fa270.js → p-d864b7e3.js} +1 -1
- package/dist/solutions-components/{p-5adf37ea.entry.js → p-da6acb22.entry.js} +2 -2
- package/dist/solutions-components/{p-de58bd49.js → p-e0c011b8.js} +1 -1
- package/dist/solutions-components/{p-58ce5639.js → p-e0fb0920.js} +1 -1
- package/dist/solutions-components/{p-b1f84ae5.js → p-e2637fe6.js} +1 -1
- package/dist/solutions-components/{p-ef96894d.entry.js → p-e2eb4fd3.entry.js} +4 -4
- package/dist/solutions-components/{p-18869c0f.js → p-e3525c00.js} +1 -1
- package/dist/solutions-components/{p-1add4e39.entry.js → p-e3d72832.entry.js} +2 -2
- package/dist/solutions-components/{p-6431fd69.js → p-e4d2fcc5.js} +3 -3
- package/dist/solutions-components/{p-f055a840.js → p-e761b7cd.js} +1 -1
- package/dist/solutions-components/{p-4daae757.js → p-ea285144.js} +1 -1
- package/dist/solutions-components/p-ebbff02e.js +6 -0
- package/dist/solutions-components/{p-07bc4f07.entry.js → p-ec378ea0.entry.js} +3 -3
- package/dist/solutions-components/{p-12a4fa84.js → p-ec889511.js} +1 -1
- package/dist/solutions-components/{p-e02fcfa9.entry.js → p-f153f1c9.entry.js} +2 -2
- package/dist/solutions-components/{p-b49bdc72.entry.js → p-f596eabd.entry.js} +1 -1
- package/dist/solutions-components/{p-3aba40e8.js → p-f7b520ae.js} +2 -2
- package/dist/solutions-components/{p-4c43820f.entry.js → p-f815b5ef.entry.js} +1 -1
- package/dist/solutions-components/{p-955a956a.entry.js → p-fe96e0d9.entry.js} +4 -4
- package/dist/solutions-components/{p-b5d67495.entry.js → p-feff224c.entry.js} +2 -2
- package/dist/solutions-components/solutions-components.esm.js +1 -1
- package/dist/solutions-components/utils/downloadUtils.ts +347 -326
- package/dist/solutions-components/utils/interfaces.ts +11 -0
- package/dist/solutions-components/utils/test/downloadUtils.spec.tsx +587 -61
- package/dist/types/components/crowdsource-manager/crowdsource-manager.d.ts +11 -4
- package/dist/types/components/layer-table/layer-table.d.ts +14 -2
- package/dist/types/components/map-card/map-card.d.ts +2 -2
- package/dist/types/components/map-legend/map-legend.d.ts +64 -0
- package/dist/types/components/map-tools/map-tools.d.ts +13 -1
- package/dist/types/components.d.ts +40 -11
- package/dist/types/preact.d.ts +2 -0
- package/dist/types/utils/downloadUtils.d.ts +122 -15
- package/dist/types/utils/interfaces.d.ts +9 -0
- package/package.json +4 -10
- package/dist/solutions-components/p-2d70d3fd.js +0 -12
- package/dist/solutions-components/p-361f1fe1.js +0 -11
- package/dist/solutions-components/p-3bd99fc9.js +0 -11
- package/dist/solutions-components/p-418d0b60.entry.js +0 -6
- package/dist/solutions-components/p-525f1188.js +0 -11
- package/dist/solutions-components/p-55aefaa8.entry.js +0 -6
- package/dist/solutions-components/p-5b5a6ac8.entry.js +0 -6
- package/dist/solutions-components/p-91caf655.entry.js +0 -11
- package/dist/solutions-components/p-a0a2c53d.js +0 -21
- package/dist/solutions-components/p-a6c85bd7.entry.js +0 -6
- package/dist/solutions-components/p-b6578a32.js +0 -6
- package/dist/solutions-components/p-baccfd70.entry.js +0 -6
- package/dist/solutions-components/p-bba3fa4e.entry.js +0 -11
- package/dist/solutions-components/p-c1ee0d69.js +0 -11
- package/dist/solutions-components/p-d6322e4b.js +0 -6
@@ -19,7 +19,66 @@
|
|
19
19
|
* limitations under the License.
|
20
20
|
*/
|
21
21
|
import * as downloadUtils from "../downloadUtils";
|
22
|
+
import * as esriLoader from "esri-loader";
|
22
23
|
describe("downloadUtils", () => {
|
24
|
+
describe('removeDuplicateLabels', () => {
|
25
|
+
it('should remove duplicate labels', () => {
|
26
|
+
const labels = [
|
27
|
+
['Label 1', 'Value 1'],
|
28
|
+
['Label 2', 'Value 2'],
|
29
|
+
['Label 1', 'Value 1']
|
30
|
+
];
|
31
|
+
const result = downloadUtils.removeDuplicateLabels(labels);
|
32
|
+
expect(result).toEqual([
|
33
|
+
['Label 1', 'Value 1'],
|
34
|
+
['Label 2', 'Value 2']
|
35
|
+
]);
|
36
|
+
});
|
37
|
+
});
|
38
|
+
describe("_cleanupLabel", () => {
|
39
|
+
it("handles <br> variants", () => {
|
40
|
+
const labelText = "<div style='text-align: left;'>{NAME}<br />{STREET}<br/>{CITY}, {STATE} {ZIP} <br></div>";
|
41
|
+
const expectedCleanedText = "{NAME}|{STREET}|{CITY}, {STATE} {ZIP}";
|
42
|
+
const result = downloadUtils._cleanupLabel(labelText);
|
43
|
+
expect(result).toEqual(expectedCleanedText);
|
44
|
+
});
|
45
|
+
it("handles <p>", () => {
|
46
|
+
const labelText = "<p>{NAME}</p><p>{STREET}</p><p>{CITY}, {STATE} {ZIP}</p>";
|
47
|
+
const expectedCleanedText = "{NAME}|{STREET}|{CITY}, {STATE} {ZIP}";
|
48
|
+
const result = downloadUtils._cleanupLabel(labelText);
|
49
|
+
expect(result).toEqual(expectedCleanedText);
|
50
|
+
});
|
51
|
+
it("handles popup's use of \xA0", () => {
|
52
|
+
const labelText = "<div style='text-align: left;'>{NAME}<br />{STREET}<br />{CITY},\xA0{STATE}\xA0{ZIP}\xA0<br /></div>";
|
53
|
+
const expectedCleanedText = "{NAME}|{STREET}|{CITY}, {STATE} {ZIP}";
|
54
|
+
const result = downloadUtils._cleanupLabel(labelText);
|
55
|
+
expect(result).toEqual(expectedCleanedText);
|
56
|
+
});
|
57
|
+
it("removes newlines and blank lines, and trims each line", () => {
|
58
|
+
const labelText = " \n\n {NAME} \n \n\n {STREET}\n{CITY}, {STATE} {ZIP}\n\n \n ";
|
59
|
+
const expectedCleanedText = "{NAME}|{STREET}|{CITY}, {STATE} {ZIP}";
|
60
|
+
const result = downloadUtils._cleanupLabel(labelText);
|
61
|
+
expect(result).toEqual(expectedCleanedText);
|
62
|
+
});
|
63
|
+
it("handles tabs", () => {
|
64
|
+
const labelText = " \t\t {NAME} \n \n\n {STREET}\n{CITY}, {STATE} {ZIP}";
|
65
|
+
const expectedCleanedText = "{NAME}|{STREET}|{CITY}, {STATE} {ZIP}";
|
66
|
+
const result = downloadUtils._cleanupLabel(labelText);
|
67
|
+
expect(result).toEqual(expectedCleanedText);
|
68
|
+
});
|
69
|
+
it("removes extra HTML", () => {
|
70
|
+
const labelText = "\n<div style='text-align: left;'><span style='font-weight:bold'>{NAME}</span><br />{STREET}<br />{CITY},\xA0{STATE}\xA0{ZIP}\xA0<br /></div>\n";
|
71
|
+
const expectedCleanedText = "{NAME}|{STREET}|{CITY}, {STATE} {ZIP}";
|
72
|
+
const result = downloadUtils._cleanupLabel(labelText);
|
73
|
+
expect(result).toEqual(expectedCleanedText);
|
74
|
+
});
|
75
|
+
it("handles some special characters", () => {
|
76
|
+
const labelText = "<div style='text-align: left;'><{NAME}><br />{STREET}<br/>{CITY}, {STATE} {ZIP}<br></div>";
|
77
|
+
const expectedCleanedText = "<{NAME}>|{STREET}|{CITY}, {STATE} {ZIP}";
|
78
|
+
const result = downloadUtils._cleanupLabel(labelText);
|
79
|
+
expect(result).toEqual(expectedCleanedText);
|
80
|
+
});
|
81
|
+
});
|
23
82
|
describe("_convertPopupFieldsToLabelSpec", () => {
|
24
83
|
it("handles fieldname visibility", () => {
|
25
84
|
const fieldInfos = [
|
@@ -30,8 +89,9 @@ describe("downloadUtils", () => {
|
|
30
89
|
];
|
31
90
|
const bypassFieldVisiblity = false;
|
32
91
|
const expectedLabelSpec = "{A}|{B}|{D}";
|
33
|
-
const
|
34
|
-
expect(
|
92
|
+
const result = downloadUtils._convertPopupFieldsToLabelSpec(fieldInfos, bypassFieldVisiblity);
|
93
|
+
expect(result.type).toEqual("pattern");
|
94
|
+
expect(result.format).toEqual(expectedLabelSpec);
|
35
95
|
});
|
36
96
|
it("handles fieldname ignoring visibility", () => {
|
37
97
|
const fieldInfos = [
|
@@ -42,46 +102,70 @@ describe("downloadUtils", () => {
|
|
42
102
|
];
|
43
103
|
const bypassFieldVisiblity = true;
|
44
104
|
const expectedLabelSpec = "{A}|{B}|{C}|{D}";
|
45
|
-
const
|
46
|
-
expect(
|
105
|
+
const result = downloadUtils._convertPopupFieldsToLabelSpec(fieldInfos, bypassFieldVisiblity);
|
106
|
+
expect(result.type).toEqual("pattern");
|
107
|
+
expect(result.format).toEqual(expectedLabelSpec);
|
47
108
|
});
|
48
109
|
});
|
49
110
|
describe("_convertPopupTextToLabelSpec", () => {
|
50
111
|
it("handles <br> variants", () => {
|
51
112
|
const popupInfo = "<div style='text-align: left;'>{NAME}<br />{STREET}<br/>{CITY}, {STATE} {ZIP} <br></div>";
|
52
113
|
const expectedLabelSpec = "{NAME}|{STREET}|{CITY}, {STATE} {ZIP}";
|
53
|
-
const
|
54
|
-
expect(
|
114
|
+
const result = downloadUtils._convertPopupTextToLabelSpec(popupInfo);
|
115
|
+
expect(result.type).toEqual("pattern");
|
116
|
+
expect(result.format).toEqual(expectedLabelSpec);
|
55
117
|
});
|
56
118
|
it("handles <p>", () => {
|
57
119
|
const popupInfo = "<p>{NAME}</p><p>{STREET}</p><p>{CITY}, {STATE} {ZIP}</p>";
|
58
120
|
const expectedLabelSpec = "{NAME}|{STREET}|{CITY}, {STATE} {ZIP}";
|
59
|
-
const
|
60
|
-
expect(
|
121
|
+
const result = downloadUtils._convertPopupTextToLabelSpec(popupInfo);
|
122
|
+
expect(result.type).toEqual("pattern");
|
123
|
+
expect(result.format).toEqual(expectedLabelSpec);
|
61
124
|
});
|
62
125
|
it("handles popup's use of \xA0", () => {
|
63
126
|
const popupInfo = "<div style='text-align: left;'>{NAME}<br />{STREET}<br />{CITY},\xA0{STATE}\xA0{ZIP}\xA0<br /></div>";
|
64
127
|
const expectedLabelSpec = "{NAME}|{STREET}|{CITY}, {STATE} {ZIP}";
|
65
|
-
const
|
66
|
-
expect(
|
128
|
+
const result = downloadUtils._convertPopupTextToLabelSpec(popupInfo);
|
129
|
+
expect(result.type).toEqual("pattern");
|
130
|
+
expect(result.format).toEqual(expectedLabelSpec);
|
67
131
|
});
|
68
132
|
it("removes newlines and blank lines, and trims each line", () => {
|
69
133
|
const popupInfo = " \n\n {NAME} \n \n\n {STREET}\n{CITY}, {STATE} {ZIP}\n\n \n ";
|
70
134
|
const expectedLabelSpec = "{NAME}|{STREET}|{CITY}, {STATE} {ZIP}";
|
71
|
-
const
|
72
|
-
expect(
|
135
|
+
const result = downloadUtils._convertPopupTextToLabelSpec(popupInfo);
|
136
|
+
expect(result.type).toEqual("pattern");
|
137
|
+
expect(result.format).toEqual(expectedLabelSpec);
|
73
138
|
});
|
74
139
|
it("removes extra HTML", () => {
|
75
140
|
const popupInfo = "\n<div style='text-align: left;'><span style='font-weight:bold'>{NAME}</span><br />{STREET}<br />{CITY},\xA0{STATE}\xA0{ZIP}\xA0<br /></div>\n";
|
76
141
|
const expectedLabelSpec = "{NAME}|{STREET}|{CITY}, {STATE} {ZIP}";
|
77
|
-
const
|
78
|
-
expect(
|
142
|
+
const result = downloadUtils._convertPopupTextToLabelSpec(popupInfo);
|
143
|
+
expect(result.type).toEqual("pattern");
|
144
|
+
expect(result.format).toEqual(expectedLabelSpec);
|
79
145
|
});
|
80
146
|
it("handles some special characters", () => {
|
81
147
|
const popupInfo = "<div style='text-align: left;'><{NAME}><br />{STREET}<br/>{CITY}, {STATE} {ZIP}<br></div>";
|
82
148
|
const expectedLabelSpec = "<{NAME}>|{STREET}|{CITY}, {STATE} {ZIP}";
|
83
|
-
const
|
84
|
-
expect(
|
149
|
+
const result = downloadUtils._convertPopupTextToLabelSpec(popupInfo);
|
150
|
+
expect(result.type).toEqual("pattern");
|
151
|
+
expect(result.format).toEqual(expectedLabelSpec);
|
152
|
+
});
|
153
|
+
});
|
154
|
+
describe("_convertPopupArcadeToLabelSpec", () => {
|
155
|
+
it("handles <br> variants", async () => {
|
156
|
+
const Arcade = {
|
157
|
+
createArcadeExecutor: () => {
|
158
|
+
const executor = {};
|
159
|
+
return Promise.resolve(executor);
|
160
|
+
}
|
161
|
+
};
|
162
|
+
const loadModulesSpy = jest.spyOn(esriLoader, 'loadModules').mockResolvedValue([Arcade]);
|
163
|
+
const expressionInfo = {
|
164
|
+
expression: 'var feat = $feature\nvar label = `\n\t${feat["name"]} ${feat["age"]} years <br>\n\tstarted: ${feat["start"]}\n`\n\nreturn { \n type : \'text\', \n text : label\n}'
|
165
|
+
};
|
166
|
+
const result = await downloadUtils._convertPopupArcadeToLabelSpec(expressionInfo);
|
167
|
+
expect(result.type).toEqual("executor");
|
168
|
+
loadModulesSpy.mockRestore();
|
85
169
|
});
|
86
170
|
});
|
87
171
|
describe("_createFilename", () => {
|
@@ -112,246 +196,608 @@ describe("downloadUtils", () => {
|
|
112
196
|
expect(expressions).toEqual(expectedExpressions);
|
113
197
|
});
|
114
198
|
});
|
115
|
-
describe("
|
199
|
+
describe("_getFieldExpressionsFromLabel", () => {
|
116
200
|
it("handles a label with ASCII field names", () => {
|
117
201
|
const labelSpec = "{expression/expr0}\n{OWNERNM1}\n{PSTLADDRESS}\n{PSTLCITY}, {PSTLSTATE} {PSTLZIP5}";
|
118
202
|
const expectedFields = ["{OWNERNM1}", "{PSTLADDRESS}", "{PSTLCITY}", "{PSTLSTATE}", "{PSTLZIP5}"];
|
119
|
-
const fields = downloadUtils.
|
203
|
+
const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec);
|
120
204
|
expect(fields).toEqual(expectedFields);
|
121
205
|
});
|
122
206
|
it("handles a label with Arabic (ar) field name", () => {
|
123
207
|
const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{بحث}|{time}";
|
124
208
|
const expectedFields = ["{latitude}", "{longitude}", "{بحث}", "{time}"];
|
125
|
-
const fields = downloadUtils.
|
209
|
+
const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec);
|
126
210
|
expect(fields).toEqual(expectedFields);
|
127
211
|
});
|
128
212
|
it("handles a label with Bosnian (bs) field name", () => {
|
129
213
|
const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{računa}|{time}";
|
130
214
|
const expectedFields = ["{latitude}", "{longitude}", "{računa}", "{time}"];
|
131
|
-
const fields = downloadUtils.
|
215
|
+
const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec);
|
132
216
|
expect(fields).toEqual(expectedFields);
|
133
217
|
});
|
134
218
|
it("handles a label with Bulgarian (bg) field name", () => {
|
135
219
|
const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Търсене}|{time}";
|
136
220
|
const expectedFields = ["{latitude}", "{longitude}", "{Търсене}", "{time}"];
|
137
|
-
const fields = downloadUtils.
|
221
|
+
const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec);
|
138
222
|
expect(fields).toEqual(expectedFields);
|
139
223
|
});
|
140
224
|
it("handles a label with Catalan (ca) field name", () => {
|
141
225
|
const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Descripció}|{time}";
|
142
226
|
const expectedFields = ["{latitude}", "{longitude}", "{Descripció}", "{time}"];
|
143
|
-
const fields = downloadUtils.
|
227
|
+
const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec);
|
144
228
|
expect(fields).toEqual(expectedFields);
|
145
229
|
});
|
146
230
|
it("handles a label with Simplified Chinese (zh-cn) field name", () => {
|
147
231
|
const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{帐户个人资料}|{time}";
|
148
232
|
const expectedFields = ["{latitude}", "{longitude}", "{帐户个人资料}", "{time}"];
|
149
|
-
const fields = downloadUtils.
|
233
|
+
const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec);
|
150
234
|
expect(fields).toEqual(expectedFields);
|
151
235
|
});
|
152
236
|
it("handles a label with Traditional Chinese (Hong Kong) (zh-hk) field name", () => {
|
153
237
|
const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{帳號設定檔}|{time}";
|
154
238
|
const expectedFields = ["{latitude}", "{longitude}", "{帳號設定檔}", "{time}"];
|
155
|
-
const fields = downloadUtils.
|
239
|
+
const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec);
|
156
240
|
expect(fields).toEqual(expectedFields);
|
157
241
|
});
|
158
242
|
it("handles a label with Traditional Chinese (Taiwan) (zh-tw) field name", () => {
|
159
243
|
const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{搜尋}|{time}";
|
160
244
|
const expectedFields = ["{latitude}", "{longitude}", "{搜尋}", "{time}"];
|
161
|
-
const fields = downloadUtils.
|
245
|
+
const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec);
|
162
246
|
expect(fields).toEqual(expectedFields);
|
163
247
|
});
|
164
248
|
it("handles a label with Croatian (hr) field name", () => {
|
165
249
|
const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Pretraživanje}|{time}";
|
166
250
|
const expectedFields = ["{latitude}", "{longitude}", "{Pretraživanje}", "{time}"];
|
167
|
-
const fields = downloadUtils.
|
251
|
+
const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec);
|
168
252
|
expect(fields).toEqual(expectedFields);
|
169
253
|
});
|
170
254
|
it("handles a label with Czech (cs) field name", () => {
|
171
255
|
const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Přihlásit}|{time}";
|
172
256
|
const expectedFields = ["{latitude}", "{longitude}", "{Přihlásit}", "{time}"];
|
173
|
-
const fields = downloadUtils.
|
257
|
+
const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec);
|
174
258
|
expect(fields).toEqual(expectedFields);
|
175
259
|
});
|
176
260
|
it("handles a label with Danish (da) field name", () => {
|
177
261
|
const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Vælg}|{time}";
|
178
262
|
const expectedFields = ["{latitude}", "{longitude}", "{Vælg}", "{time}"];
|
179
|
-
const fields = downloadUtils.
|
263
|
+
const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec);
|
180
264
|
expect(fields).toEqual(expectedFields);
|
181
265
|
});
|
182
266
|
it("handles a label with Dutch (nl) field name", () => {
|
183
267
|
const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{geïmplementeerd}|{time}";
|
184
268
|
const expectedFields = ["{latitude}", "{longitude}", "{geïmplementeerd}", "{time}"];
|
185
|
-
const fields = downloadUtils.
|
269
|
+
const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec);
|
186
270
|
expect(fields).toEqual(expectedFields);
|
187
271
|
});
|
188
272
|
it("handles a label with Estonian (et) field name", () => {
|
189
273
|
const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Valdkonnapõhised}|{time}";
|
190
274
|
const expectedFields = ["{latitude}", "{longitude}", "{Valdkonnapõhised}", "{time}"];
|
191
|
-
const fields = downloadUtils.
|
275
|
+
const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec);
|
192
276
|
expect(fields).toEqual(expectedFields);
|
193
277
|
});
|
194
278
|
it("handles a label with Finnish (fi) field name", () => {
|
195
279
|
const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Näytä}|{time}";
|
196
280
|
const expectedFields = ["{latitude}", "{longitude}", "{Näytä}", "{time}"];
|
197
|
-
const fields = downloadUtils.
|
281
|
+
const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec);
|
198
282
|
expect(fields).toEqual(expectedFields);
|
199
283
|
});
|
200
284
|
it("handles a label with French (fr) field name", () => {
|
201
285
|
const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{accès}|{time}";
|
202
286
|
const expectedFields = ["{latitude}", "{longitude}", "{accès}", "{time}"];
|
203
|
-
const fields = downloadUtils.
|
287
|
+
const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec);
|
204
288
|
expect(fields).toEqual(expectedFields);
|
205
289
|
});
|
206
290
|
it("handles a label with German (de) field name", () => {
|
207
291
|
const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Öffentliche}|{time}";
|
208
292
|
const expectedFields = ["{latitude}", "{longitude}", "{Öffentliche}", "{time}"];
|
209
|
-
const fields = downloadUtils.
|
293
|
+
const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec);
|
210
294
|
expect(fields).toEqual(expectedFields);
|
211
295
|
});
|
212
296
|
it("handles a label with Greek (el) field name", () => {
|
213
297
|
const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Αναζήτηση}|{time}";
|
214
298
|
const expectedFields = ["{latitude}", "{longitude}", "{Αναζήτηση}", "{time}"];
|
215
|
-
const fields = downloadUtils.
|
299
|
+
const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec);
|
216
300
|
expect(fields).toEqual(expectedFields);
|
217
301
|
});
|
218
302
|
it("handles a label with Hebrew (he) field name", () => {
|
219
303
|
const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{עוֹמֶק}|{time}";
|
220
304
|
const expectedFields = ["{latitude}", "{longitude}", "{עוֹמֶק}", "{time}"];
|
221
|
-
const fields = downloadUtils.
|
305
|
+
const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec);
|
222
306
|
expect(fields).toEqual(expectedFields);
|
223
307
|
});
|
224
308
|
it("handles a label with Hungarian (hu) field name", () => {
|
225
309
|
const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Nyelvváltás}|{time}";
|
226
310
|
const expectedFields = ["{latitude}", "{longitude}", "{Nyelvváltás}", "{time}"];
|
227
|
-
const fields = downloadUtils.
|
311
|
+
const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec);
|
228
312
|
expect(fields).toEqual(expectedFields);
|
229
313
|
});
|
230
314
|
it("handles a label with Indonesian (id) field name", () => {
|
231
315
|
const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Bahasa}|{time}";
|
232
316
|
const expectedFields = ["{latitude}", "{longitude}", "{Bahasa}", "{time}"];
|
233
|
-
const fields = downloadUtils.
|
317
|
+
const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec);
|
234
318
|
expect(fields).toEqual(expectedFields);
|
235
319
|
});
|
236
320
|
it("handles a label with Italian (it) field name", () => {
|
237
321
|
const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Elettricità}|{time}";
|
238
322
|
const expectedFields = ["{latitude}", "{longitude}", "{Elettricità}", "{time}"];
|
239
|
-
const fields = downloadUtils.
|
323
|
+
const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec);
|
240
324
|
expect(fields).toEqual(expectedFields);
|
241
325
|
});
|
242
326
|
it("handles a label with Japanese (ja) field name", () => {
|
243
327
|
const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{深さ}|{time}";
|
244
328
|
const expectedFields = ["{latitude}", "{longitude}", "{深さ}", "{time}"];
|
245
|
-
const fields = downloadUtils.
|
329
|
+
const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec);
|
246
330
|
expect(fields).toEqual(expectedFields);
|
247
331
|
});
|
248
332
|
it("handles a label with Korean (ko) field name", () => {
|
249
333
|
const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{계정 프로필}|{time}";
|
250
334
|
const expectedFields = ["{latitude}", "{longitude}", "{계정 프로필}", "{time}"];
|
251
|
-
const fields = downloadUtils.
|
335
|
+
const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec);
|
252
336
|
expect(fields).toEqual(expectedFields);
|
253
337
|
});
|
254
338
|
it("handles a label with Latvian (lv) field name", () => {
|
255
339
|
const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Meklēt}|{time}";
|
256
340
|
const expectedFields = ["{latitude}", "{longitude}", "{Meklēt}", "{time}"];
|
257
|
-
const fields = downloadUtils.
|
341
|
+
const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec);
|
258
342
|
expect(fields).toEqual(expectedFields);
|
259
343
|
});
|
260
344
|
it("handles a label with Lithuanian (lt) field name", () => {
|
261
345
|
const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{sričių}|{time}";
|
262
346
|
const expectedFields = ["{latitude}", "{longitude}", "{sričių}", "{time}"];
|
263
|
-
const fields = downloadUtils.
|
347
|
+
const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec);
|
264
348
|
expect(fields).toEqual(expectedFields);
|
265
349
|
});
|
266
350
|
it("handles a label with Norwegian (nb) field name", () => {
|
267
351
|
const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{språk}|{time}";
|
268
352
|
const expectedFields = ["{latitude}", "{longitude}", "{språk}", "{time}"];
|
269
|
-
const fields = downloadUtils.
|
353
|
+
const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec);
|
270
354
|
expect(fields).toEqual(expectedFields);
|
271
355
|
});
|
272
356
|
it("handles a label with Polish (pl) field name", () => {
|
273
357
|
const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Przełącz}|{time}";
|
274
358
|
const expectedFields = ["{latitude}", "{longitude}", "{Przełącz}", "{time}"];
|
275
|
-
const fields = downloadUtils.
|
359
|
+
const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec);
|
276
360
|
expect(fields).toEqual(expectedFields);
|
277
361
|
});
|
278
362
|
it("handles a label with Portuguese (Brazil) (pt-br) field name", () => {
|
279
363
|
const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Configurações}|{time}";
|
280
364
|
const expectedFields = ["{latitude}", "{longitude}", "{Configurações}", "{time}"];
|
281
|
-
const fields = downloadUtils.
|
365
|
+
const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec);
|
282
366
|
expect(fields).toEqual(expectedFields);
|
283
367
|
});
|
284
368
|
it("handles a label with Portuguese (Portugal) (pt-pt) field name", () => {
|
285
369
|
const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{sessão}|{time}";
|
286
370
|
const expectedFields = ["{latitude}", "{longitude}", "{sessão}", "{time}"];
|
287
|
-
const fields = downloadUtils.
|
371
|
+
const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec);
|
288
372
|
expect(fields).toEqual(expectedFields);
|
289
373
|
});
|
290
374
|
it("handles a label with Romanian (ro) field name", () => {
|
291
375
|
const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Copiați}|{time}";
|
292
376
|
const expectedFields = ["{latitude}", "{longitude}", "{Copiați}", "{time}"];
|
293
|
-
const fields = downloadUtils.
|
377
|
+
const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec);
|
294
378
|
expect(fields).toEqual(expectedFields);
|
295
379
|
});
|
296
380
|
it("handles a label with Russian (ru) field name", () => {
|
297
381
|
const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Вход}|{time}";
|
298
382
|
const expectedFields = ["{latitude}", "{longitude}", "{Вход}", "{time}"];
|
299
|
-
const fields = downloadUtils.
|
383
|
+
const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec);
|
300
384
|
expect(fields).toEqual(expectedFields);
|
301
385
|
});
|
302
386
|
it("handles a label with Serbian (sr) field name", () => {
|
303
387
|
const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{pregledač}|{time}";
|
304
388
|
const expectedFields = ["{latitude}", "{longitude}", "{pregledač}", "{time}"];
|
305
|
-
const fields = downloadUtils.
|
389
|
+
const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec);
|
306
390
|
expect(fields).toEqual(expectedFields);
|
307
391
|
});
|
308
392
|
it("handles a label with Slovak (sk) field name", () => {
|
309
393
|
const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Prihlásiť}|{time}";
|
310
394
|
const expectedFields = ["{latitude}", "{longitude}", "{Prihlásiť}", "{time}"];
|
311
|
-
const fields = downloadUtils.
|
395
|
+
const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec);
|
312
396
|
expect(fields).toEqual(expectedFields);
|
313
397
|
});
|
314
398
|
it("handles a label with Slovenian (sl) field name", () => {
|
315
399
|
const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{računa}|{time}";
|
316
400
|
const expectedFields = ["{latitude}", "{longitude}", "{računa}", "{time}"];
|
317
|
-
const fields = downloadUtils.
|
401
|
+
const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec);
|
318
402
|
expect(fields).toEqual(expectedFields);
|
319
403
|
});
|
320
404
|
it("handles a label with Spanish (es) field name", () => {
|
321
405
|
const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{través}|{time}";
|
322
406
|
const expectedFields = ["{latitude}", "{longitude}", "{través}", "{time}"];
|
323
|
-
const fields = downloadUtils.
|
407
|
+
const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec);
|
324
408
|
expect(fields).toEqual(expectedFields);
|
325
409
|
});
|
326
410
|
it("handles a label with Swedish (sv) field name", () => {
|
327
411
|
const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{språk}|{time}";
|
328
412
|
const expectedFields = ["{latitude}", "{longitude}", "{språk}", "{time}"];
|
329
|
-
const fields = downloadUtils.
|
413
|
+
const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec);
|
330
414
|
expect(fields).toEqual(expectedFields);
|
331
415
|
});
|
332
416
|
it("handles a label with Thai (th) field name", () => {
|
333
417
|
const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{โปรไฟล์บัญ}|{time}";
|
334
418
|
const expectedFields = ["{latitude}", "{longitude}", "{โปรไฟล์บัญ}", "{time}"];
|
335
|
-
const fields = downloadUtils.
|
419
|
+
const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec);
|
336
420
|
expect(fields).toEqual(expectedFields);
|
337
421
|
});
|
338
422
|
it("handles a label with Turkish (tr) field name", () => {
|
339
423
|
const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Değiştir}|{time}";
|
340
424
|
const expectedFields = ["{latitude}", "{longitude}", "{Değiştir}", "{time}"];
|
341
|
-
const fields = downloadUtils.
|
425
|
+
const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec);
|
342
426
|
expect(fields).toEqual(expectedFields);
|
343
427
|
});
|
344
428
|
it("handles a label with Ukrainian (uk) field name", () => {
|
345
429
|
const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Пошук}|{time}";
|
346
430
|
const expectedFields = ["{latitude}", "{longitude}", "{Пошук}", "{time}"];
|
347
|
-
const fields = downloadUtils.
|
431
|
+
const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec);
|
348
432
|
expect(fields).toEqual(expectedFields);
|
349
433
|
});
|
350
434
|
it("handles a label with Vietnamese (vi) field name", () => {
|
351
435
|
const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Chuyển}|{time}";
|
352
436
|
const expectedFields = ["{latitude}", "{longitude}", "{Chuyển}", "{time}"];
|
353
|
-
const fields = downloadUtils.
|
437
|
+
const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec);
|
354
438
|
expect(fields).toEqual(expectedFields);
|
355
439
|
});
|
356
440
|
});
|
441
|
+
describe('_getFieldNamesFromFieldExpressions', () => {
|
442
|
+
it("extracts field names from field name expressions", () => {
|
443
|
+
const expressions = ["{NAME}", "{STREET}", "{CITY}", "{STATE}", "{ZIP}"];
|
444
|
+
const names = ["NAME", "STREET", "CITY", "STATE", "ZIP"];
|
445
|
+
expect(downloadUtils._getFieldNamesFromFieldExpressions(expressions)).toEqual(names);
|
446
|
+
});
|
447
|
+
});
|
448
|
+
describe('_getLabelFormat', () => {
|
449
|
+
it('should prepare labels from visible popup fields', async () => {
|
450
|
+
const popupTemplate = {
|
451
|
+
title: '{name}',
|
452
|
+
content: [{
|
453
|
+
type: 'fields'
|
454
|
+
}],
|
455
|
+
fieldInfos: [{
|
456
|
+
fieldName: 'name',
|
457
|
+
visible: true
|
458
|
+
}, {
|
459
|
+
fieldName: 'age',
|
460
|
+
format: {
|
461
|
+
places: 0,
|
462
|
+
digitSeparator: true
|
463
|
+
},
|
464
|
+
visible: true
|
465
|
+
}, {
|
466
|
+
fieldName: 'start',
|
467
|
+
format: {
|
468
|
+
dateFormat: 'short-date'
|
469
|
+
},
|
470
|
+
visible: true
|
471
|
+
}]
|
472
|
+
};
|
473
|
+
const layer = {
|
474
|
+
popupEnabled: true,
|
475
|
+
popupTemplate
|
476
|
+
};
|
477
|
+
const formatUsingLayerPopup = true;
|
478
|
+
const attributeFormats = {};
|
479
|
+
const result = await downloadUtils._getLabelFormat(layer, formatUsingLayerPopup, attributeFormats);
|
480
|
+
expect(result.type).toEqual('pattern');
|
481
|
+
expect(result.format).toEqual('{name}|{age}|{start}');
|
482
|
+
});
|
483
|
+
it('should prepare labels from a partial set of visible popup fields', async () => {
|
484
|
+
const popupTemplate = {
|
485
|
+
title: '{name}',
|
486
|
+
content: [{
|
487
|
+
type: 'fields'
|
488
|
+
}],
|
489
|
+
fieldInfos: [{
|
490
|
+
fieldName: 'name',
|
491
|
+
visible: false
|
492
|
+
}, {
|
493
|
+
fieldName: 'age',
|
494
|
+
format: {
|
495
|
+
places: 0,
|
496
|
+
digitSeparator: true
|
497
|
+
},
|
498
|
+
visible: false
|
499
|
+
}, {
|
500
|
+
fieldName: 'start',
|
501
|
+
format: {
|
502
|
+
dateFormat: 'short-date'
|
503
|
+
},
|
504
|
+
visible: true
|
505
|
+
}]
|
506
|
+
};
|
507
|
+
const layer = {
|
508
|
+
popupEnabled: true,
|
509
|
+
popupTemplate
|
510
|
+
};
|
511
|
+
const formatUsingLayerPopup = true;
|
512
|
+
const attributeFormats = {};
|
513
|
+
const result = await downloadUtils._getLabelFormat(layer, formatUsingLayerPopup, attributeFormats);
|
514
|
+
expect(result.type).toEqual('pattern');
|
515
|
+
expect(result.format).toEqual('{start}');
|
516
|
+
});
|
517
|
+
it('should prepare labels from invisible popup fields, but title is present', async () => {
|
518
|
+
const popupTemplate = {
|
519
|
+
title: '{name}',
|
520
|
+
content: [{
|
521
|
+
type: 'fields'
|
522
|
+
}],
|
523
|
+
fieldInfos: [{
|
524
|
+
fieldName: 'name',
|
525
|
+
visible: false
|
526
|
+
}, {
|
527
|
+
fieldName: 'age',
|
528
|
+
format: {
|
529
|
+
places: 0,
|
530
|
+
digitSeparator: true
|
531
|
+
},
|
532
|
+
visible: false
|
533
|
+
}, {
|
534
|
+
fieldName: 'start',
|
535
|
+
format: {
|
536
|
+
dateFormat: 'short-date'
|
537
|
+
},
|
538
|
+
visible: false
|
539
|
+
}]
|
540
|
+
};
|
541
|
+
const layer = {
|
542
|
+
popupEnabled: true,
|
543
|
+
popupTemplate
|
544
|
+
};
|
545
|
+
const formatUsingLayerPopup = true;
|
546
|
+
const attributeFormats = {};
|
547
|
+
const result = await downloadUtils._getLabelFormat(layer, formatUsingLayerPopup, attributeFormats);
|
548
|
+
expect(result.type).toEqual('pattern');
|
549
|
+
expect(result.format).toEqual('{name}');
|
550
|
+
});
|
551
|
+
it('should prepare labels from invisible popup fields with no title present', async () => {
|
552
|
+
const popupTemplate = {
|
553
|
+
title: '',
|
554
|
+
content: [{
|
555
|
+
type: 'fields'
|
556
|
+
}],
|
557
|
+
fieldInfos: [{
|
558
|
+
fieldName: 'name',
|
559
|
+
visible: false
|
560
|
+
}, {
|
561
|
+
fieldName: 'age',
|
562
|
+
format: {
|
563
|
+
places: 0,
|
564
|
+
digitSeparator: true
|
565
|
+
},
|
566
|
+
visible: false
|
567
|
+
}, {
|
568
|
+
fieldName: 'start',
|
569
|
+
format: {
|
570
|
+
dateFormat: 'short-date'
|
571
|
+
},
|
572
|
+
visible: false
|
573
|
+
}]
|
574
|
+
};
|
575
|
+
const layer = {
|
576
|
+
popupEnabled: true,
|
577
|
+
popupTemplate
|
578
|
+
};
|
579
|
+
const formatUsingLayerPopup = true;
|
580
|
+
const attributeFormats = {};
|
581
|
+
const result = await downloadUtils._getLabelFormat(layer, formatUsingLayerPopup, attributeFormats);
|
582
|
+
expect(result.type).toEqual('pattern');
|
583
|
+
expect(result.format).toEqual('{name}|{age}|{start}');
|
584
|
+
});
|
585
|
+
it('should prepare labels from popup text', async () => {
|
586
|
+
const popupTemplate = {
|
587
|
+
title: '{name}',
|
588
|
+
content: [{
|
589
|
+
type: 'text',
|
590
|
+
text: '<p>{name} {age} years </p><p>started: {start}</p>'
|
591
|
+
}],
|
592
|
+
fieldInfos: [{
|
593
|
+
fieldName: 'name',
|
594
|
+
visible: true
|
595
|
+
}, {
|
596
|
+
fieldName: 'age',
|
597
|
+
format: {
|
598
|
+
places: 0,
|
599
|
+
digitSeparator: true
|
600
|
+
},
|
601
|
+
visible: true
|
602
|
+
}, {
|
603
|
+
fieldName: 'start',
|
604
|
+
format: {
|
605
|
+
dateFormat: 'short-date'
|
606
|
+
},
|
607
|
+
visible: true
|
608
|
+
}]
|
609
|
+
};
|
610
|
+
const layer = {
|
611
|
+
popupEnabled: true,
|
612
|
+
popupTemplate
|
613
|
+
};
|
614
|
+
const formatUsingLayerPopup = true;
|
615
|
+
const attributeFormats = {};
|
616
|
+
const result = await downloadUtils._getLabelFormat(layer, formatUsingLayerPopup, attributeFormats);
|
617
|
+
expect(result.type).toEqual('pattern');
|
618
|
+
expect(result.format).toEqual('{name} {age} years|started: {start}');
|
619
|
+
});
|
620
|
+
it('should prepare labels from popup Arcade', async () => {
|
621
|
+
const Arcade = {
|
622
|
+
createArcadeExecutor: () => {
|
623
|
+
const executor = {};
|
624
|
+
return Promise.resolve(executor);
|
625
|
+
}
|
626
|
+
};
|
627
|
+
const loadModulesSpy = jest.spyOn(esriLoader, 'loadModules').mockResolvedValue([Arcade]);
|
628
|
+
const popupTemplate = {
|
629
|
+
title: '{name}',
|
630
|
+
content: [{
|
631
|
+
type: 'expression',
|
632
|
+
expressionInfo: {
|
633
|
+
title: 'New expression',
|
634
|
+
expression: 'var feat = $feature\nvar label = `\n\t${feat["name"]} ${feat["age"]} years <br>\n\tstarted: ${feat["start"]}\n`\n\nreturn { \n type : \'text\', \n text : label\n}',
|
635
|
+
returnType: 'dictionary'
|
636
|
+
}
|
637
|
+
}],
|
638
|
+
fieldInfos: [{
|
639
|
+
fieldName: 'name',
|
640
|
+
visible: true
|
641
|
+
}, {
|
642
|
+
fieldName: 'age',
|
643
|
+
format: {
|
644
|
+
places: 0,
|
645
|
+
digitSeparator: true
|
646
|
+
},
|
647
|
+
visible: true
|
648
|
+
}, {
|
649
|
+
fieldName: 'start',
|
650
|
+
format: {
|
651
|
+
dateFormat: 'short-date'
|
652
|
+
},
|
653
|
+
visible: true
|
654
|
+
}]
|
655
|
+
};
|
656
|
+
const layer = {
|
657
|
+
popupEnabled: true,
|
658
|
+
popupTemplate
|
659
|
+
};
|
660
|
+
const formatUsingLayerPopup = true;
|
661
|
+
const attributeFormats = {};
|
662
|
+
const result = await downloadUtils._getLabelFormat(layer, formatUsingLayerPopup, attributeFormats);
|
663
|
+
expect(result.type).toEqual('executor');
|
664
|
+
loadModulesSpy.mockRestore();
|
665
|
+
});
|
666
|
+
it('should prepare labels without popup; formatUsingLayerPopup is true', async () => {
|
667
|
+
const layer = {
|
668
|
+
popupEnabled: false,
|
669
|
+
fields: [
|
670
|
+
{
|
671
|
+
name: 'name',
|
672
|
+
type: 'string'
|
673
|
+
},
|
674
|
+
{
|
675
|
+
name: 'age',
|
676
|
+
type: 'integer'
|
677
|
+
}
|
678
|
+
]
|
679
|
+
};
|
680
|
+
const formatUsingLayerPopup = true;
|
681
|
+
const attributeFormats = {};
|
682
|
+
const result = await downloadUtils._getLabelFormat(layer, formatUsingLayerPopup, attributeFormats);
|
683
|
+
expect(result.type).toEqual('unsupported');
|
684
|
+
expect(result.format).toBeUndefined();
|
685
|
+
});
|
686
|
+
it('should prepare labels without popup; formatUsingLayerPopup is false', async () => {
|
687
|
+
const layer = {
|
688
|
+
popupEnabled: false,
|
689
|
+
fields: [
|
690
|
+
{
|
691
|
+
name: 'name',
|
692
|
+
type: 'string'
|
693
|
+
},
|
694
|
+
{
|
695
|
+
name: 'age',
|
696
|
+
type: 'integer'
|
697
|
+
}
|
698
|
+
]
|
699
|
+
};
|
700
|
+
const formatUsingLayerPopup = false;
|
701
|
+
const attributeFormats = {};
|
702
|
+
const result = await downloadUtils._getLabelFormat(layer, formatUsingLayerPopup, attributeFormats);
|
703
|
+
expect(result.type).toEqual('unsupported');
|
704
|
+
expect(result.format).toBeUndefined();
|
705
|
+
});
|
706
|
+
});
|
707
|
+
describe('_getSelectionSetNames', () => {
|
708
|
+
it('should return selection set names for matching IDs', () => {
|
709
|
+
const exportInfos = {
|
710
|
+
'layer1': {
|
711
|
+
selectionSetNames: ['Selection Set 1', 'Selection Set 2']
|
712
|
+
},
|
713
|
+
'layer2': {
|
714
|
+
selectionSetNames: ['Selection Set 3']
|
715
|
+
}
|
716
|
+
};
|
717
|
+
const result = downloadUtils._getSelectionSetNames(exportInfos, /^layer/);
|
718
|
+
expect(result).toEqual(['Selection Set 1', 'Selection Set 2', 'Selection Set 3']);
|
719
|
+
});
|
720
|
+
it('should return an empty array if no matching IDs are found', () => {
|
721
|
+
const exportInfos = {
|
722
|
+
'layer1': {
|
723
|
+
selectionSetNames: ['Selection Set 1', 'Selection Set 2']
|
724
|
+
},
|
725
|
+
'layer2': {
|
726
|
+
selectionSetNames: ['Selection Set 3']
|
727
|
+
}
|
728
|
+
};
|
729
|
+
const result = downloadUtils._getSelectionSetNames(exportInfos, /^foo/);
|
730
|
+
expect(result).toEqual([]);
|
731
|
+
});
|
732
|
+
});
|
733
|
+
describe('_prepareAttributeValue', () => {
|
734
|
+
it('should format date attributes using the specified date format', () => {
|
735
|
+
const attributeValue = new Date('2022-01-01T00:00:00.000Z');
|
736
|
+
const attributeType = 'date';
|
737
|
+
const attributeDomain = null;
|
738
|
+
const attributeFormat = {
|
739
|
+
dateFormat: 'short-date'
|
740
|
+
};
|
741
|
+
const intl = {
|
742
|
+
formatDate: jest.fn().mockReturnValue('01/01/2022'),
|
743
|
+
convertDateFormatToIntlOptions: jest.fn().mockReturnValue({})
|
744
|
+
};
|
745
|
+
const result = downloadUtils._prepareAttributeValue(attributeValue, attributeType, attributeDomain, attributeFormat, intl);
|
746
|
+
expect(result).toEqual('01/01/2022');
|
747
|
+
expect(intl.formatDate).toHaveBeenCalledWith(attributeValue, {});
|
748
|
+
expect(intl.convertDateFormatToIntlOptions).toHaveBeenCalledWith('short-date');
|
749
|
+
});
|
750
|
+
it('should format number attributes using the specified number format', () => {
|
751
|
+
const attributeValue = 1234.5678;
|
752
|
+
const attributeType = 'double';
|
753
|
+
const attributeDomain = null;
|
754
|
+
const attributeFormat = {
|
755
|
+
places: 2,
|
756
|
+
digitSeparator: true
|
757
|
+
};
|
758
|
+
const intl = {
|
759
|
+
formatNumber: jest.fn().mockReturnValue('1,234.57'),
|
760
|
+
convertNumberFormatToIntlOptions: jest.fn().mockReturnValue({})
|
761
|
+
};
|
762
|
+
const result = downloadUtils._prepareAttributeValue(attributeValue, attributeType, attributeDomain, attributeFormat, intl);
|
763
|
+
expect(result).toEqual('1,234.57');
|
764
|
+
expect(intl.formatNumber).toHaveBeenCalledWith(attributeValue, {});
|
765
|
+
expect(intl.convertNumberFormatToIntlOptions).toHaveBeenCalledWith(attributeFormat);
|
766
|
+
});
|
767
|
+
it('should return the attribute value if no format is specified', () => {
|
768
|
+
const attributeValue = 'Value';
|
769
|
+
const attributeType = 'string';
|
770
|
+
const attributeDomain = null;
|
771
|
+
const attributeFormat = null;
|
772
|
+
const intl = {};
|
773
|
+
const result = downloadUtils._prepareAttributeValue(attributeValue, attributeType, attributeDomain, attributeFormat, intl);
|
774
|
+
expect(result).toEqual('Value');
|
775
|
+
});
|
776
|
+
it('should return the domain name for coded-value domain fields', () => {
|
777
|
+
const attributeValue = '1';
|
778
|
+
const attributeType = 'string';
|
779
|
+
const attributeDomain = {
|
780
|
+
type: 'coded-value',
|
781
|
+
name: 'Domain',
|
782
|
+
codedValues: [
|
783
|
+
{
|
784
|
+
name: 'Value 1',
|
785
|
+
code: '1'
|
786
|
+
},
|
787
|
+
{
|
788
|
+
name: 'Value 2',
|
789
|
+
code: '2'
|
790
|
+
}
|
791
|
+
],
|
792
|
+
getName: function (code) {
|
793
|
+
var _a;
|
794
|
+
return (_a = this.codedValues.find((codedValue) => codedValue.code === code)) === null || _a === void 0 ? void 0 : _a.name;
|
795
|
+
}
|
796
|
+
};
|
797
|
+
const attributeFormat = null;
|
798
|
+
const intl = {};
|
799
|
+
const result = downloadUtils._prepareAttributeValue(attributeValue, attributeType, attributeDomain, attributeFormat, intl);
|
800
|
+
expect(result).toEqual('Value 1');
|
801
|
+
});
|
802
|
+
});
|
357
803
|
});
|