@esri/solutions-components 0.6.12 → 0.6.13
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/assets/t9n/layer-table/resources.json +4 -3
- package/dist/assets/t9n/layer-table/resources_en.json +4 -3
- package/dist/cjs/calcite-shell-panel_14.cjs.entry.js +2 -1
- package/dist/cjs/card-manager_3.cjs.entry.js +60 -28
- package/dist/cjs/clean-url-d5326abb.js +573 -0
- package/dist/cjs/crowdsource-manager.cjs.entry.js +5 -3
- package/dist/cjs/{downloadUtils-43f5be48.js → downloadUtils-fb4744e0.js} +296 -51
- package/dist/cjs/edit-card_2.cjs.entry.js +3 -3
- package/dist/cjs/{index.es-8da43c21.js → index.es-372e33de.js} +2 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/map-select-tools_3.cjs.entry.js +8 -5
- package/dist/cjs/public-notification.cjs.entry.js +5 -4
- package/dist/cjs/solution-configuration.cjs.entry.js +44 -43
- package/dist/cjs/solution-contents_3.cjs.entry.js +2 -1
- package/dist/cjs/{solution-store-3cd104d8.js → solution-store-c443e657.js} +7 -572
- package/dist/cjs/solutions-components.cjs.js +1 -1
- package/dist/collection/components/card-manager/card-manager.css +0 -5
- package/dist/collection/components/card-manager/card-manager.js +1 -1
- package/dist/collection/components/crowdsource-manager/crowdsource-manager.css +2 -2
- package/dist/collection/components/crowdsource-manager/crowdsource-manager.js +40 -2
- package/dist/collection/components/edit-card/edit-card.css +8 -0
- package/dist/collection/components/info-card/info-card.css +14 -14
- package/dist/collection/components/info-card/info-card.js +1 -1
- package/dist/collection/components/layer-table/layer-table.css +12 -0
- package/dist/collection/components/layer-table/layer-table.js +90 -24
- package/dist/collection/components/pdf-download/pdf-download.js +34 -6
- package/dist/collection/components/public-notification/public-notification.js +3 -3
- package/dist/collection/utils/downloadUtils.js +208 -82
- package/dist/collection/utils/downloadUtils.ts +257 -85
- package/dist/collection/utils/test/downloadUtils.spec.js +163 -134
- package/dist/collection/utils/test/downloadUtils.spec.tsx +2 -0
- package/dist/components/calcite-modal.js +1 -409
- package/dist/components/card-manager2.js +2 -2
- package/dist/components/clean-url.js +567 -0
- package/dist/components/crowdsource-manager.js +16 -12
- package/dist/components/downloadUtils.js +295 -50
- package/dist/components/edit-card2.js +1 -1
- package/dist/components/info-card2.js +2 -2
- package/dist/components/layer-table2.js +65 -31
- package/dist/components/modal.js +416 -0
- package/dist/components/pdf-download2.js +6 -4
- package/dist/components/public-notification.js +3 -3
- package/dist/components/solution-configuration.js +25 -24
- package/dist/components/solution-store.js +2 -562
- package/dist/esm/{ExpandToggle-86761b28.js → ExpandToggle-e614e3e4.js} +1 -1
- package/dist/esm/{ar-4a5375c6.js → ar-2f678abc.js} +8 -8
- package/dist/esm/{bg-b25e4b7a.js → bg-e514c4d7.js} +8 -8
- package/dist/esm/{bs-2485dfed.js → bs-81584b09.js} +8 -8
- package/dist/esm/buffer-tools_4.entry.js +4 -4
- package/dist/esm/{ca-bba36d26.js → ca-e8c40e21.js} +8 -8
- package/dist/esm/calcite-accordion-item.entry.js +1 -1
- package/dist/esm/calcite-action-bar_3.entry.js +5 -5
- package/dist/esm/calcite-action-group_2.entry.js +3 -3
- package/dist/esm/calcite-action-pad.entry.js +4 -4
- package/dist/esm/calcite-action_2.entry.js +5 -5
- package/dist/esm/calcite-alert.entry.js +3 -3
- package/dist/esm/calcite-avatar.entry.js +1 -1
- package/dist/esm/calcite-block-section.entry.js +3 -3
- package/dist/esm/calcite-block.entry.js +3 -3
- package/dist/esm/calcite-button.entry.js +5 -5
- package/dist/esm/calcite-card.entry.js +3 -3
- package/dist/esm/calcite-checkbox.entry.js +3 -3
- package/dist/esm/calcite-chip-group.entry.js +1 -1
- package/dist/esm/calcite-chip.entry.js +3 -3
- package/dist/esm/calcite-color-picker-hex-input_2.entry.js +1 -1
- package/dist/esm/calcite-color-picker.entry.js +3 -3
- package/dist/esm/calcite-combobox-item-group.entry.js +2 -2
- package/dist/esm/calcite-combobox_6.entry.js +7 -7
- package/dist/esm/calcite-date-picker-day_3.entry.js +3 -3
- package/dist/esm/calcite-date-picker.entry.js +5 -5
- package/dist/esm/calcite-fab.entry.js +1 -1
- package/dist/esm/calcite-filter_3.entry.js +3 -3
- package/dist/esm/calcite-flow-item.entry.js +3 -3
- package/dist/esm/calcite-icon.entry.js +1 -1
- package/dist/esm/calcite-inline-editable.entry.js +4 -4
- package/dist/esm/calcite-input-date-picker.entry.js +9 -9
- package/dist/esm/calcite-input-number_2.entry.js +5 -5
- package/dist/esm/{calcite-input-time-picker-7da2e80a.js → calcite-input-time-picker-fe6e499a.js} +55 -55
- package/dist/esm/calcite-input-time-picker.entry.js +8 -8
- package/dist/esm/calcite-input-time-zone.entry.js +5 -5
- package/dist/esm/calcite-input_2.entry.js +5 -5
- package/dist/esm/calcite-label.entry.js +2 -2
- package/dist/esm/calcite-link.entry.js +1 -1
- package/dist/esm/calcite-menu-item.entry.js +3 -3
- package/dist/esm/calcite-menu.entry.js +3 -3
- package/dist/esm/calcite-modal.entry.js +4 -4
- package/dist/esm/calcite-navigation.entry.js +1 -1
- package/dist/esm/calcite-notice.entry.js +3 -3
- package/dist/esm/calcite-option_2.entry.js +3 -3
- package/dist/esm/calcite-pagination.entry.js +3 -3
- package/dist/esm/calcite-panel_2.entry.js +3 -3
- package/dist/esm/calcite-pick-list-group.entry.js +1 -1
- package/dist/esm/calcite-pick-list-item.entry.js +3 -3
- package/dist/esm/calcite-pick-list.entry.js +2 -2
- package/dist/esm/calcite-radio-button.entry.js +3 -3
- package/dist/esm/calcite-rating.entry.js +5 -5
- package/dist/esm/calcite-scrim.entry.js +3 -3
- package/dist/esm/calcite-segmented-control_2.entry.js +3 -3
- package/dist/esm/calcite-shell-center-row.entry.js +1 -1
- package/dist/esm/calcite-shell-panel_14.entry.js +7 -6
- package/dist/esm/calcite-sortable-list.entry.js +2 -2
- package/dist/esm/calcite-stepper-item.entry.js +2 -2
- package/dist/esm/calcite-stepper.entry.js +1 -1
- package/dist/esm/calcite-switch.entry.js +3 -3
- package/dist/esm/calcite-text-area.entry.js +5 -5
- package/dist/esm/calcite-tile.entry.js +1 -1
- package/dist/esm/calcite-time-picker.entry.js +4 -4
- package/dist/esm/calcite-tip-manager.entry.js +3 -3
- package/dist/esm/calcite-tip.entry.js +3 -3
- package/dist/esm/calcite-tooltip.entry.js +2 -2
- package/dist/esm/calcite-tree_3.entry.js +1 -1
- package/dist/esm/card-manager_3.entry.js +60 -28
- package/dist/esm/clean-url-bce022e6.js +567 -0
- package/dist/esm/crowdsource-manager.entry.js +5 -3
- package/dist/esm/{cs-1052c5ac.js → cs-af5f115e.js} +8 -8
- package/dist/esm/{da-b7ed9204.js → da-06d9e22c.js} +8 -8
- package/dist/esm/{date-bd5b879c.js → date-641ae749.js} +1 -1
- package/dist/esm/{de-at-a993e5ae.js → de-at-f55a700a.js} +8 -8
- package/dist/esm/{de-ch-acff745d.js → de-ch-7307675f.js} +8 -8
- package/dist/esm/{de-bb68e752.js → de-dc98363f.js} +8 -8
- package/dist/esm/{dom-37f2dec9.js → dom-2b326ec3.js} +1 -1
- package/dist/esm/{downloadUtils-42156cd8.js → downloadUtils-67c7a6c8.js} +296 -51
- package/dist/esm/edit-card_2.entry.js +3 -3
- package/dist/esm/{el-9de96ff0.js → el-91c64808.js} +8 -8
- package/dist/esm/{en-au-f68b6bde.js → en-au-df08cc25.js} +8 -8
- package/dist/esm/{en-ca-5360517e.js → en-ca-175f7c0f.js} +8 -8
- package/dist/esm/{en-gb-de0b3125.js → en-gb-90a08c7f.js} +8 -8
- package/dist/esm/{es-5ecbba77.js → es-5cb54b05.js} +8 -8
- package/dist/esm/{es-mx-aa126462.js → es-mx-3a0cb804.js} +8 -8
- package/dist/esm/{et-7113eeb8.js → et-eceac6dc.js} +8 -8
- package/dist/esm/{fi-ffa60f15.js → fi-26e1c14f.js} +8 -8
- package/dist/esm/{floating-ui-7cde67cf.js → floating-ui-9f8e4ed4.js} +1 -1
- package/dist/esm/{focusTrapComponent-ec344399.js → focusTrapComponent-ad2c3a31.js} +1 -1
- package/dist/esm/{form-24e6ef1d.js → form-0871d2c6.js} +1 -1
- package/dist/esm/{fr-681c5bf6.js → fr-12a5b0f7.js} +8 -8
- package/dist/esm/{fr-ch-9af1f8b1.js → fr-ch-e3406887.js} +8 -8
- package/dist/esm/{he-5188f277.js → he-61eba811.js} +8 -8
- package/dist/esm/{hi-6a31e3a4.js → hi-a50282b5.js} +8 -8
- package/dist/esm/{hr-0598e59d.js → hr-da8bffaf.js} +8 -8
- package/dist/esm/{hu-13cb9f41.js → hu-dab932f1.js} +8 -8
- package/dist/esm/{id-7f342499.js → id-de468947.js} +8 -8
- package/dist/esm/{index.es-f47c4153.js → index.es-59a67d3d.js} +2 -1
- package/dist/esm/{it-57d790f2.js → it-375d9936.js} +8 -8
- package/dist/esm/{it-ch-081af760.js → it-ch-7e663d63.js} +8 -8
- package/dist/esm/{ja-3affb68e.js → ja-36dbe39d.js} +8 -8
- package/dist/esm/{ko-736632aa.js → ko-858bc871.js} +8 -8
- package/dist/esm/{label-b6dfb4d5.js → label-b8caf984.js} +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/{locale-146251f7.js → locale-00000ab4.js} +1 -1
- package/dist/esm/{lt-e7d9b1c3.js → lt-d6dfa7e4.js} +8 -8
- package/dist/esm/{lv-4d1a507e.js → lv-facd25c5.js} +8 -8
- package/dist/esm/map-select-tools_3.entry.js +8 -5
- package/dist/esm/{mk-f960312d.js → mk-5ed05b6a.js} +8 -8
- package/dist/esm/{nb-4556b5e9.js → nb-936fc687.js} +8 -8
- package/dist/esm/{nl-8e281c01.js → nl-a923d626.js} +8 -8
- package/dist/esm/{pl-1460fd5a.js → pl-b1426275.js} +8 -8
- package/dist/esm/{pt-660332b6.js → pt-1ac2453f.js} +8 -8
- package/dist/esm/{pt-br-dba48f49.js → pt-br-7194cc5f.js} +8 -8
- package/dist/esm/public-notification.entry.js +5 -4
- package/dist/esm/{ro-ac18f292.js → ro-518aaed1.js} +8 -8
- package/dist/esm/{ru-b914f6b7.js → ru-762127a3.js} +8 -8
- package/dist/esm/{shared-list-render-cc889757.js → shared-list-render-ec232615.js} +1 -1
- package/dist/esm/{sk-1be12963.js → sk-f367b7ba.js} +8 -8
- package/dist/esm/{sl-5d47e4e4.js → sl-052fd4d2.js} +8 -8
- package/dist/esm/solution-configuration.entry.js +25 -24
- package/dist/esm/solution-contents_3.entry.js +2 -1
- package/dist/esm/{solution-store-cf902566.js → solution-store-b29d50f7.js} +2 -562
- package/dist/esm/solutions-components.js +1 -1
- package/dist/esm/{sortableComponent-8a84709a.js → sortableComponent-ebd6bb72.js} +1 -1
- package/dist/esm/{sr-3281c92d.js → sr-4dc0fdb9.js} +8 -8
- package/dist/esm/{sv-e5169404.js → sv-bdc87a4d.js} +8 -8
- package/dist/esm/{t9n-d9c203e4.js → t9n-9791aa0c.js} +1 -1
- package/dist/esm/{th-937796b8.js → th-d9df674c.js} +8 -8
- package/dist/esm/{time-fa1151aa.js → time-73378c4a.js} +1 -1
- package/dist/esm/{tr-6d3b100b.js → tr-61e134eb.js} +8 -8
- package/dist/esm/{uk-a6edcacf.js → uk-ea3d8da7.js} +8 -8
- package/dist/esm/{utils-667cc396.js → utils-593fafd7.js} +1 -1
- package/dist/esm/{utils-24a35b5a.js → utils-bd52db7d.js} +2 -2
- package/dist/esm/{vi-bf4c179c.js → vi-ade1c25b.js} +8 -8
- package/dist/esm/{zh-cn-de1858cb.js → zh-cn-b8756118.js} +8 -8
- package/dist/esm/{zh-hk-12fa404f.js → zh-hk-d18c05d9.js} +8 -8
- package/dist/esm/{zh-tw-5c4220e5.js → zh-tw-9c98ff7c.js} +8 -8
- package/dist/solutions-components/{p-3b891cc4.entry.js → p-01fea8d5.entry.js} +1 -1
- package/dist/solutions-components/{p-d793ec96.entry.js → p-0219a1a9.entry.js} +5 -5
- package/dist/solutions-components/{p-65022e7f.entry.js → p-02ff64f4.entry.js} +1 -1
- package/dist/solutions-components/p-062254a6.entry.js +6 -0
- package/dist/solutions-components/{p-bff158ff.js → p-062d2f9a.js} +1 -1
- package/dist/solutions-components/{p-f4e5b7e5.entry.js → p-084bced1.entry.js} +1 -1
- package/dist/solutions-components/{p-c261335b.entry.js → p-088e4cfc.entry.js} +1 -1
- package/dist/solutions-components/{p-96239d0d.js → p-08e35485.js} +1 -1
- package/dist/solutions-components/{p-3d3772fb.js → p-0d14d33a.js} +1 -1
- package/dist/solutions-components/{p-7f271c31.js → p-11550b3c.js} +3 -3
- package/dist/solutions-components/{p-ad19f9b0.entry.js → p-120c4098.entry.js} +1 -1
- package/dist/solutions-components/{p-45419d93.entry.js → p-12bcd474.entry.js} +1 -1
- package/dist/solutions-components/{p-bd82849c.entry.js → p-1597ec4b.entry.js} +1 -1
- package/dist/solutions-components/{p-afb35c95.js → p-17d176b5.js} +14 -43
- package/dist/solutions-components/{p-0503c78d.js → p-1b41181b.js} +44 -29
- package/dist/solutions-components/{p-127c3866.js → p-1c5787b1.js} +1 -1
- package/dist/solutions-components/{p-b97886b3.entry.js → p-1d9a5198.entry.js} +1 -1
- package/dist/solutions-components/{p-8e3e1ce8.entry.js → p-1dd5c4e6.entry.js} +1 -1
- package/dist/solutions-components/{p-97b69f54.entry.js → p-1e62d118.entry.js} +1 -1
- package/dist/solutions-components/{p-537c34a4.entry.js → p-1fae3819.entry.js} +1 -1
- package/dist/solutions-components/{p-82f0b25b.js → p-21aa112d.js} +1 -1
- package/dist/solutions-components/{p-f8944f59.entry.js → p-252a9a7f.entry.js} +1 -1
- package/dist/solutions-components/{p-80ea5869.js → p-26b28806.js} +1 -1
- package/dist/solutions-components/{p-dac10448.js → p-280fd963.js} +3 -3
- package/dist/solutions-components/{p-79d7f324.js → p-29049359.js} +1 -1
- package/dist/solutions-components/{p-c033b8ec.entry.js → p-2b378389.entry.js} +1 -1
- package/dist/solutions-components/{p-19ec0463.js → p-2bdd1a5d.js} +1 -1
- package/dist/solutions-components/{p-cacfa6ae.js → p-2ee21e9d.js} +1 -1
- package/dist/solutions-components/{p-300f4299.js → p-2f42ae51.js} +1 -1
- package/dist/solutions-components/{p-418be467.js → p-30b3261c.js} +1 -1
- package/dist/solutions-components/{p-4d91443a.entry.js → p-32ba2223.entry.js} +1 -1
- package/dist/solutions-components/{p-702c6093.js → p-34673137.js} +1 -1
- package/dist/solutions-components/{p-61af54b9.entry.js → p-3566ee69.entry.js} +1 -1
- package/dist/solutions-components/{p-90a9126f.js → p-358b9cc8.js} +1 -1
- package/dist/solutions-components/p-3a6c8fc3.entry.js +6 -0
- package/dist/solutions-components/p-3a8d82a2.js +11 -0
- package/dist/solutions-components/{p-628c170b.entry.js → p-3ab94526.entry.js} +1 -1
- package/dist/solutions-components/p-3b1fc7a2.entry.js +6 -0
- package/dist/solutions-components/{p-b1daad7e.js → p-3f7119c1.js} +1 -1
- package/dist/solutions-components/{p-f0f5ecb2.js → p-3fcd035e.js} +1 -1
- package/dist/solutions-components/{p-3766be72.js → p-419c9d89.js} +1 -1
- package/dist/solutions-components/p-453d1b31.entry.js +6 -0
- package/dist/solutions-components/{p-337f6adf.js → p-46918548.js} +1 -1
- package/dist/solutions-components/p-49e9e4e3.js +12 -0
- package/dist/solutions-components/p-4d942b0f.entry.js +36 -0
- package/dist/solutions-components/{p-85e0d2a3.js → p-4fc92419.js} +1 -1
- package/dist/solutions-components/{p-0d08a75d.entry.js → p-52afbe07.entry.js} +1 -1
- package/dist/solutions-components/{p-9391bb74.js → p-573d0763.js} +1 -1
- package/dist/solutions-components/{p-87971116.entry.js → p-59ef9461.entry.js} +1 -1
- package/dist/solutions-components/{p-25718b9f.entry.js → p-5e5749c0.entry.js} +1 -1
- package/dist/solutions-components/{p-54064b61.entry.js → p-5ff22d2e.entry.js} +1 -1
- package/dist/solutions-components/{p-4bd793ef.entry.js → p-617f32a0.entry.js} +1 -1
- package/dist/solutions-components/{p-747a1293.js → p-6510c06c.js} +1 -1
- package/dist/solutions-components/{p-1f69762c.js → p-65ba4d10.js} +1 -1
- package/dist/solutions-components/{p-4cb7cdb7.entry.js → p-65ffe4b0.entry.js} +1 -1
- package/dist/solutions-components/{p-1b4d6511.js → p-68007503.js} +1 -1
- package/dist/solutions-components/{p-e849d2ba.entry.js → p-6ba8483c.entry.js} +2 -2
- package/dist/solutions-components/{p-9961a2f9.entry.js → p-6c8c7b98.entry.js} +2 -2
- package/dist/solutions-components/{p-ff863f3d.entry.js → p-6e5d9ae9.entry.js} +1 -1
- package/dist/solutions-components/{p-b6a1c34f.entry.js → p-6ebf870c.entry.js} +1 -1
- package/dist/solutions-components/{p-d2d3e4b5.js → p-72f34a0a.js} +1 -1
- package/dist/solutions-components/{p-981fc8e4.entry.js → p-7359a6ac.entry.js} +1 -1
- package/dist/solutions-components/{p-9791fbf1.entry.js → p-73ab9d9a.entry.js} +1 -1
- package/dist/solutions-components/{p-9abb1c4c.entry.js → p-73fe6f7e.entry.js} +1 -1
- package/dist/solutions-components/{p-62e3adbb.js → p-7452d79a.js} +1 -1
- package/dist/solutions-components/{p-34169501.js → p-76c2c379.js} +1 -1
- package/dist/solutions-components/{p-941721ba.js → p-788aa5d7.js} +1 -1
- package/dist/solutions-components/{p-557d4cc5.js → p-79cc0531.js} +2 -2
- package/dist/solutions-components/{p-a19d8147.js → p-7a0fa011.js} +1 -1
- package/dist/solutions-components/{p-019fe9fe.entry.js → p-7a55cee6.entry.js} +3 -3
- package/dist/solutions-components/{p-48329056.entry.js → p-7bc63171.entry.js} +1 -1
- package/dist/solutions-components/{p-e7304151.entry.js → p-81664d83.entry.js} +1 -1
- package/dist/solutions-components/{p-9504c1b7.js → p-8354f486.js} +1 -1
- package/dist/solutions-components/{p-f812e3ee.entry.js → p-84dff306.entry.js} +1 -1
- package/dist/solutions-components/{p-a59dba2f.js → p-8594fe6b.js} +1 -1
- package/dist/solutions-components/{p-ae3ec77d.js → p-8b2d396e.js} +1 -1
- package/dist/solutions-components/{p-38cc8a4d.js → p-8ec6ea34.js} +1 -1
- package/dist/solutions-components/{p-da760d1d.entry.js → p-8ee00658.entry.js} +1 -1
- package/dist/solutions-components/{p-38211628.js → p-905fcf73.js} +1 -1
- package/dist/solutions-components/{p-e502ccce.entry.js → p-929909bc.entry.js} +1 -1
- package/dist/solutions-components/{p-dd5f68f2.js → p-948b5722.js} +1 -1
- package/dist/solutions-components/{p-39fe9a4c.js → p-956f3207.js} +1 -1
- package/dist/solutions-components/{p-f7aa542c.js → p-96287d23.js} +1 -1
- package/dist/solutions-components/{p-68630513.entry.js → p-964c0e7d.entry.js} +1 -1
- package/dist/solutions-components/{p-b09d8c0e.entry.js → p-98051370.entry.js} +1 -1
- package/dist/solutions-components/p-9a8c51bf.entry.js +6 -0
- package/dist/solutions-components/{p-efd70bf7.entry.js → p-9a94f48c.entry.js} +2 -2
- package/dist/solutions-components/{p-318790b8.js → p-9b94501c.js} +1 -1
- package/dist/solutions-components/{p-69e26726.js → p-9d4467a3.js} +1 -1
- package/dist/solutions-components/{p-f6cf9943.js → p-9e3c9cd2.js} +1 -1
- package/dist/solutions-components/{p-30542275.js → p-9fd59203.js} +1 -1
- package/dist/solutions-components/{p-d902b790.js → p-a201bffc.js} +1 -1
- package/dist/solutions-components/{p-1552c479.entry.js → p-a3729795.entry.js} +1 -1
- package/dist/solutions-components/{p-ae4ad673.entry.js → p-a47ed290.entry.js} +2 -2
- package/dist/solutions-components/{p-ca5be55f.entry.js → p-a5ef322f.entry.js} +2 -2
- package/dist/solutions-components/p-a776b7e6.entry.js +6 -0
- package/dist/solutions-components/{p-3658ebd8.entry.js → p-a97e8d6a.entry.js} +1 -1
- package/dist/solutions-components/{p-2937523d.js → p-aaea9203.js} +1 -1
- package/dist/solutions-components/{p-b7093e6d.entry.js → p-ad1d56b1.entry.js} +1 -1
- package/dist/solutions-components/{p-0ca528ec.js → p-adeb0e8f.js} +1 -1
- package/dist/solutions-components/{p-31d2a105.entry.js → p-af63959a.entry.js} +1 -1
- package/dist/solutions-components/{p-fbd71543.entry.js → p-b1125581.entry.js} +2 -2
- package/dist/solutions-components/{p-b029c6d8.js → p-b20a31c8.js} +1 -1
- package/dist/solutions-components/{p-71400268.js → p-b81131b3.js} +1 -1
- package/dist/solutions-components/p-b892e595.entry.js +6 -0
- package/dist/solutions-components/{p-cc624b0c.entry.js → p-b89c5865.entry.js} +1 -1
- package/dist/solutions-components/{p-245d667e.js → p-b9b52743.js} +1 -1
- package/dist/solutions-components/{p-0870f436.entry.js → p-ba99e562.entry.js} +1 -1
- package/dist/solutions-components/{p-2d614afc.js → p-bc548c06.js} +1 -1
- package/dist/solutions-components/{p-29b2f046.js → p-bccbdeb5.js} +1 -1
- package/dist/solutions-components/{p-f72e0965.entry.js → p-bd318e33.entry.js} +1 -1
- package/dist/solutions-components/{p-74aa84f6.js → p-bd766e49.js} +1 -1
- package/dist/solutions-components/{p-1a47516a.entry.js → p-be36d5ed.entry.js} +1 -1
- package/dist/solutions-components/{p-9b75102b.entry.js → p-c073d2d6.entry.js} +1 -1
- package/dist/solutions-components/{p-712ea336.entry.js → p-c644edf5.entry.js} +1 -1
- package/dist/solutions-components/p-c6b7e7ff.js +11 -0
- package/dist/solutions-components/{p-dc80cb69.entry.js → p-ca0b3a2b.entry.js} +1 -1
- package/dist/solutions-components/{p-3e9fc0aa.entry.js → p-cfd88a2f.entry.js} +1 -1
- package/dist/solutions-components/{p-e9fcf408.js → p-d5228aed.js} +1 -1
- package/dist/solutions-components/{p-80b87453.js → p-d98caa4c.js} +1 -1
- package/dist/solutions-components/{p-45b829b5.js → p-dd9c065e.js} +1 -1
- package/dist/solutions-components/{p-05b2bdf9.js → p-dedc167c.js} +1 -1
- package/dist/solutions-components/{p-a16feeec.js → p-e4f9b782.js} +1 -1
- package/dist/solutions-components/{p-ac1bd870.entry.js → p-e572a692.entry.js} +1 -1
- package/dist/solutions-components/{p-74521615.entry.js → p-e5dda947.entry.js} +1 -1
- package/dist/solutions-components/{p-bbfc2724.js → p-e7fbf2fe.js} +1 -1
- package/dist/solutions-components/{p-dda325a4.entry.js → p-e9ba0c7f.entry.js} +1 -1
- package/dist/solutions-components/{p-75e707d1.js → p-eb60ec2a.js} +1 -1
- package/dist/solutions-components/p-ecc95259.js +20 -0
- package/dist/solutions-components/{p-85791b16.entry.js → p-ee144348.entry.js} +1 -1
- package/dist/solutions-components/{p-4b4559f9.js → p-f03bed0c.js} +1 -1
- package/dist/solutions-components/{p-7a11983d.js → p-f5028a8e.js} +1 -1
- package/dist/solutions-components/{p-fb23ba4a.entry.js → p-f50cf603.entry.js} +1 -1
- package/dist/solutions-components/{p-f7b520ae.js → p-f7d8b6b3.js} +1 -1
- package/dist/solutions-components/{p-89cbb86a.js → p-f9166fcb.js} +3 -3
- package/dist/solutions-components/{p-792fcd62.entry.js → p-fb0f2016.entry.js} +1 -1
- package/dist/solutions-components/solutions-components.esm.js +1 -1
- package/dist/solutions-components/utils/downloadUtils.ts +257 -85
- package/dist/solutions-components/utils/test/downloadUtils.spec.tsx +2 -0
- package/dist/types/components/crowdsource-manager/crowdsource-manager.d.ts +8 -0
- package/dist/types/components/layer-table/layer-table.d.ts +42 -26
- package/dist/types/components/pdf-download/pdf-download.d.ts +4 -2
- package/dist/types/components.d.ts +36 -2
- package/dist/types/utils/downloadUtils.d.ts +34 -16
- package/package.json +8 -9
- package/dist/solutions-components/p-06712292.js +0 -11
- package/dist/solutions-components/p-0a0c3764.js +0 -11
- package/dist/solutions-components/p-12a7c2db.entry.js +0 -6
- package/dist/solutions-components/p-3a7cd2b0.entry.js +0 -37
- package/dist/solutions-components/p-8e9d9e6a.js +0 -12
- package/dist/solutions-components/p-97088307.entry.js +0 -6
- package/dist/solutions-components/p-a16e6f5f.entry.js +0 -6
- package/dist/solutions-components/p-d118a76e.entry.js +0 -6
- package/dist/solutions-components/p-d54c2dfd.entry.js +0 -6
- package/dist/solutions-components/p-d7d466e8.entry.js +0 -6
- package/dist/solutions-components/p-ffbe89cf.entry.js +0 -6
@@ -8,567 +8,7 @@
|
|
8
8
|
const index = require('./index-feeb7b6a.js');
|
9
9
|
const interfaces = require('./interfaces-000be6de.js');
|
10
10
|
const _commonjsHelpers = require('./_commonjsHelpers-384729db.js');
|
11
|
-
|
12
|
-
/*! *****************************************************************************
|
13
|
-
Copyright (c) Microsoft Corporation.
|
14
|
-
|
15
|
-
Permission to use, copy, modify, and/or distribute this software for any
|
16
|
-
purpose with or without fee is hereby granted.
|
17
|
-
|
18
|
-
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
|
19
|
-
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
20
|
-
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
|
21
|
-
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
|
22
|
-
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
|
23
|
-
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
24
|
-
PERFORMANCE OF THIS SOFTWARE.
|
25
|
-
***************************************************************************** */
|
26
|
-
/* global Reflect, Promise */
|
27
|
-
|
28
|
-
var extendStatics = function(d, b) {
|
29
|
-
extendStatics = Object.setPrototypeOf ||
|
30
|
-
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
31
|
-
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
|
32
|
-
return extendStatics(d, b);
|
33
|
-
};
|
34
|
-
|
35
|
-
function __extends(d, b) {
|
36
|
-
extendStatics(d, b);
|
37
|
-
function __() { this.constructor = d; }
|
38
|
-
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
39
|
-
}
|
40
|
-
|
41
|
-
var __assign$1 = function() {
|
42
|
-
__assign$1 = Object.assign || function __assign(t) {
|
43
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
44
|
-
s = arguments[i];
|
45
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
|
46
|
-
}
|
47
|
-
return t;
|
48
|
-
};
|
49
|
-
return __assign$1.apply(this, arguments);
|
50
|
-
};
|
51
|
-
|
52
|
-
/* Copyright (c) 2017 Environmental Systems Research Institute, Inc.
|
53
|
-
* Apache-2.0 */
|
54
|
-
/**
|
55
|
-
* Checks parameters to see if we should use FormData to send the request
|
56
|
-
* @param params The object whose keys will be encoded.
|
57
|
-
* @return A boolean indicating if FormData will be required.
|
58
|
-
*/
|
59
|
-
function requiresFormData(params) {
|
60
|
-
return Object.keys(params).some(function (key) {
|
61
|
-
var value = params[key];
|
62
|
-
if (!value) {
|
63
|
-
return false;
|
64
|
-
}
|
65
|
-
if (value && value.toParam) {
|
66
|
-
value = value.toParam();
|
67
|
-
}
|
68
|
-
var type = value.constructor.name;
|
69
|
-
switch (type) {
|
70
|
-
case "Array":
|
71
|
-
return false;
|
72
|
-
case "Object":
|
73
|
-
return false;
|
74
|
-
case "Date":
|
75
|
-
return false;
|
76
|
-
case "Function":
|
77
|
-
return false;
|
78
|
-
case "Boolean":
|
79
|
-
return false;
|
80
|
-
case "String":
|
81
|
-
return false;
|
82
|
-
case "Number":
|
83
|
-
return false;
|
84
|
-
default:
|
85
|
-
return true;
|
86
|
-
}
|
87
|
-
});
|
88
|
-
}
|
89
|
-
/**
|
90
|
-
* Converts parameters to the proper representation to send to the ArcGIS REST API.
|
91
|
-
* @param params The object whose keys will be encoded.
|
92
|
-
* @return A new object with properly encoded values.
|
93
|
-
*/
|
94
|
-
function processParams(params) {
|
95
|
-
var newParams = {};
|
96
|
-
Object.keys(params).forEach(function (key) {
|
97
|
-
var _a, _b;
|
98
|
-
var param = params[key];
|
99
|
-
if (param && param.toParam) {
|
100
|
-
param = param.toParam();
|
101
|
-
}
|
102
|
-
if (!param &&
|
103
|
-
param !== 0 &&
|
104
|
-
typeof param !== "boolean" &&
|
105
|
-
typeof param !== "string") {
|
106
|
-
return;
|
107
|
-
}
|
108
|
-
var type = param.constructor.name;
|
109
|
-
var value;
|
110
|
-
// properly encodes objects, arrays and dates for arcgis.com and other services.
|
111
|
-
// ported from https://github.com/Esri/esri-leaflet/blob/master/src/Request.js#L22-L30
|
112
|
-
// also see https://github.com/Esri/arcgis-rest-js/issues/18:
|
113
|
-
// null, undefined, function are excluded. If you want to send an empty key you need to send an empty string "".
|
114
|
-
switch (type) {
|
115
|
-
case "Array":
|
116
|
-
// Based on the first element of the array, classify array as an array of arrays, an array of objects
|
117
|
-
// to be stringified, or an array of non-objects to be comma-separated
|
118
|
-
// eslint-disable-next-line no-case-declarations
|
119
|
-
var firstElementType = (_b = (_a = param[0]) === null || _a === void 0 ? void 0 : _a.constructor) === null || _b === void 0 ? void 0 : _b.name;
|
120
|
-
value =
|
121
|
-
firstElementType === "Array" ? param : // pass thru array of arrays
|
122
|
-
firstElementType === "Object" ? JSON.stringify(param) : // stringify array of objects
|
123
|
-
param.join(","); // join other types of array elements
|
124
|
-
break;
|
125
|
-
case "Object":
|
126
|
-
value = JSON.stringify(param);
|
127
|
-
break;
|
128
|
-
case "Date":
|
129
|
-
value = param.valueOf();
|
130
|
-
break;
|
131
|
-
case "Function":
|
132
|
-
value = null;
|
133
|
-
break;
|
134
|
-
case "Boolean":
|
135
|
-
value = param + "";
|
136
|
-
break;
|
137
|
-
default:
|
138
|
-
value = param;
|
139
|
-
break;
|
140
|
-
}
|
141
|
-
if (value || value === 0 || typeof value === "string" || Array.isArray(value)) {
|
142
|
-
newParams[key] = value;
|
143
|
-
}
|
144
|
-
});
|
145
|
-
return newParams;
|
146
|
-
}
|
147
|
-
|
148
|
-
/* Copyright (c) 2017 Environmental Systems Research Institute, Inc.
|
149
|
-
* Apache-2.0 */
|
150
|
-
/**
|
151
|
-
* Encodes keys and parameters for use in a URL's query string.
|
152
|
-
*
|
153
|
-
* @param key Parameter's key
|
154
|
-
* @param value Parameter's value
|
155
|
-
* @returns Query string with key and value pairs separated by "&"
|
156
|
-
*/
|
157
|
-
function encodeParam(key, value) {
|
158
|
-
// For array of arrays, repeat key=value for each element of containing array
|
159
|
-
if (Array.isArray(value) && value[0] && Array.isArray(value[0])) {
|
160
|
-
return value.map(function (arrayElem) { return encodeParam(key, arrayElem); }).join("&");
|
161
|
-
}
|
162
|
-
return encodeURIComponent(key) + "=" + encodeURIComponent(value);
|
163
|
-
}
|
164
|
-
/**
|
165
|
-
* Encodes the passed object as a query string.
|
166
|
-
*
|
167
|
-
* @param params An object to be encoded.
|
168
|
-
* @returns An encoded query string.
|
169
|
-
*/
|
170
|
-
function encodeQueryString(params) {
|
171
|
-
var newParams = processParams(params);
|
172
|
-
return Object.keys(newParams)
|
173
|
-
.map(function (key) {
|
174
|
-
return encodeParam(key, newParams[key]);
|
175
|
-
})
|
176
|
-
.join("&");
|
177
|
-
}
|
178
|
-
|
179
|
-
/* Copyright (c) 2017 Environmental Systems Research Institute, Inc.
|
180
|
-
* Apache-2.0 */
|
181
|
-
/**
|
182
|
-
* Encodes parameters in a [FormData](https://developer.mozilla.org/en-US/docs/Web/API/FormData) object in browsers or in a [FormData](https://github.com/form-data/form-data) in Node.js
|
183
|
-
*
|
184
|
-
* @param params An object to be encoded.
|
185
|
-
* @returns The complete [FormData](https://developer.mozilla.org/en-US/docs/Web/API/FormData) object.
|
186
|
-
*/
|
187
|
-
function encodeFormData(params, forceFormData) {
|
188
|
-
// see https://github.com/Esri/arcgis-rest-js/issues/499 for more info.
|
189
|
-
var useFormData = requiresFormData(params) || forceFormData;
|
190
|
-
var newParams = processParams(params);
|
191
|
-
if (useFormData) {
|
192
|
-
var formData_1 = new FormData();
|
193
|
-
Object.keys(newParams).forEach(function (key) {
|
194
|
-
if (typeof Blob !== "undefined" && newParams[key] instanceof Blob) {
|
195
|
-
/* To name the Blob:
|
196
|
-
1. look to an alternate request parameter called 'fileName'
|
197
|
-
2. see if 'name' has been tacked onto the Blob manually
|
198
|
-
3. if all else fails, use the request parameter
|
199
|
-
*/
|
200
|
-
var filename = newParams["fileName"] || newParams[key].name || key;
|
201
|
-
formData_1.append(key, newParams[key], filename);
|
202
|
-
}
|
203
|
-
else {
|
204
|
-
formData_1.append(key, newParams[key]);
|
205
|
-
}
|
206
|
-
});
|
207
|
-
return formData_1;
|
208
|
-
}
|
209
|
-
else {
|
210
|
-
return encodeQueryString(params);
|
211
|
-
}
|
212
|
-
}
|
213
|
-
|
214
|
-
/* Copyright (c) 2017 Environmental Systems Research Institute, Inc.
|
215
|
-
* Apache-2.0 */
|
216
|
-
// TypeScript 2.1 no longer allows you to extend built in types. See https://github.com/Microsoft/TypeScript/issues/12790#issuecomment-265981442
|
217
|
-
// and https://github.com/Microsoft/TypeScript-wiki/blob/master/Breaking-Changes.md#extending-built-ins-like-error-array-and-map-may-no-longer-work
|
218
|
-
//
|
219
|
-
// This code is from MDN https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Error#Custom_Error_Types.
|
220
|
-
var ArcGISRequestError = /** @class */ (function () {
|
221
|
-
/**
|
222
|
-
* Create a new `ArcGISRequestError` object.
|
223
|
-
*
|
224
|
-
* @param message - The error message from the API
|
225
|
-
* @param code - The error code from the API
|
226
|
-
* @param response - The original response from the API that caused the error
|
227
|
-
* @param url - The original url of the request
|
228
|
-
* @param options - The original options and parameters of the request
|
229
|
-
*/
|
230
|
-
function ArcGISRequestError(message, code, response, url, options) {
|
231
|
-
message = message || "UNKNOWN_ERROR";
|
232
|
-
code = code || "UNKNOWN_ERROR_CODE";
|
233
|
-
this.name = "ArcGISRequestError";
|
234
|
-
this.message =
|
235
|
-
code === "UNKNOWN_ERROR_CODE" ? message : code + ": " + message;
|
236
|
-
this.originalMessage = message;
|
237
|
-
this.code = code;
|
238
|
-
this.response = response;
|
239
|
-
this.url = url;
|
240
|
-
this.options = options;
|
241
|
-
}
|
242
|
-
return ArcGISRequestError;
|
243
|
-
}());
|
244
|
-
ArcGISRequestError.prototype = Object.create(Error.prototype);
|
245
|
-
ArcGISRequestError.prototype.constructor = ArcGISRequestError;
|
246
|
-
|
247
|
-
/* Copyright (c) 2017-2018 Environmental Systems Research Institute, Inc.
|
248
|
-
* Apache-2.0 */
|
249
|
-
var NODEJS_DEFAULT_REFERER_HEADER = "@esri/arcgis-rest-js";
|
250
|
-
var DEFAULT_ARCGIS_REQUEST_OPTIONS = {
|
251
|
-
httpMethod: "POST",
|
252
|
-
params: {
|
253
|
-
f: "json",
|
254
|
-
},
|
255
|
-
};
|
256
|
-
var ArcGISAuthError = /** @class */ (function (_super) {
|
257
|
-
__extends(ArcGISAuthError, _super);
|
258
|
-
/**
|
259
|
-
* Create a new `ArcGISAuthError` object.
|
260
|
-
*
|
261
|
-
* @param message - The error message from the API
|
262
|
-
* @param code - The error code from the API
|
263
|
-
* @param response - The original response from the API that caused the error
|
264
|
-
* @param url - The original url of the request
|
265
|
-
* @param options - The original options of the request
|
266
|
-
*/
|
267
|
-
function ArcGISAuthError(message, code, response, url, options) {
|
268
|
-
if (message === void 0) { message = "AUTHENTICATION_ERROR"; }
|
269
|
-
if (code === void 0) { code = "AUTHENTICATION_ERROR_CODE"; }
|
270
|
-
var _this = _super.call(this, message, code, response, url, options) || this;
|
271
|
-
_this.name = "ArcGISAuthError";
|
272
|
-
_this.message =
|
273
|
-
code === "AUTHENTICATION_ERROR_CODE" ? message : code + ": " + message;
|
274
|
-
return _this;
|
275
|
-
}
|
276
|
-
ArcGISAuthError.prototype.retry = function (getSession, retryLimit) {
|
277
|
-
var _this = this;
|
278
|
-
if (retryLimit === void 0) { retryLimit = 3; }
|
279
|
-
var tries = 0;
|
280
|
-
var retryRequest = function (resolve, reject) {
|
281
|
-
getSession(_this.url, _this.options)
|
282
|
-
.then(function (session) {
|
283
|
-
var newOptions = __assign$1(__assign$1({}, _this.options), { authentication: session });
|
284
|
-
tries = tries + 1;
|
285
|
-
return request(_this.url, newOptions);
|
286
|
-
})
|
287
|
-
.then(function (response) {
|
288
|
-
resolve(response);
|
289
|
-
})
|
290
|
-
.catch(function (e) {
|
291
|
-
if (e.name === "ArcGISAuthError" && tries < retryLimit) {
|
292
|
-
retryRequest(resolve, reject);
|
293
|
-
}
|
294
|
-
else if (e.name === "ArcGISAuthError" && tries >= retryLimit) {
|
295
|
-
reject(_this);
|
296
|
-
}
|
297
|
-
else {
|
298
|
-
reject(e);
|
299
|
-
}
|
300
|
-
});
|
301
|
-
};
|
302
|
-
return new Promise(function (resolve, reject) {
|
303
|
-
retryRequest(resolve, reject);
|
304
|
-
});
|
305
|
-
};
|
306
|
-
return ArcGISAuthError;
|
307
|
-
}(ArcGISRequestError));
|
308
|
-
/**
|
309
|
-
* Checks for errors in a JSON response from the ArcGIS REST API. If there are no errors, it will return the `data` passed in. If there is an error, it will throw an `ArcGISRequestError` or `ArcGISAuthError`.
|
310
|
-
*
|
311
|
-
* @param data The response JSON to check for errors.
|
312
|
-
* @param url The url of the original request
|
313
|
-
* @param params The parameters of the original request
|
314
|
-
* @param options The options of the original request
|
315
|
-
* @returns The data that was passed in the `data` parameter
|
316
|
-
*/
|
317
|
-
function checkForErrors(response, url, params, options, originalAuthError) {
|
318
|
-
// this is an error message from billing.arcgis.com backend
|
319
|
-
if (response.code >= 400) {
|
320
|
-
var message = response.message, code = response.code;
|
321
|
-
throw new ArcGISRequestError(message, code, response, url, options);
|
322
|
-
}
|
323
|
-
// error from ArcGIS Online or an ArcGIS Portal or server instance.
|
324
|
-
if (response.error) {
|
325
|
-
var _a = response.error, message = _a.message, code = _a.code, messageCode = _a.messageCode;
|
326
|
-
var errorCode = messageCode || code || "UNKNOWN_ERROR_CODE";
|
327
|
-
if (code === 498 ||
|
328
|
-
code === 499 ||
|
329
|
-
messageCode === "GWM_0003" ||
|
330
|
-
(code === 400 && message === "Unable to generate token.")) {
|
331
|
-
if (originalAuthError) {
|
332
|
-
throw originalAuthError;
|
333
|
-
}
|
334
|
-
else {
|
335
|
-
throw new ArcGISAuthError(message, errorCode, response, url, options);
|
336
|
-
}
|
337
|
-
}
|
338
|
-
throw new ArcGISRequestError(message, errorCode, response, url, options);
|
339
|
-
}
|
340
|
-
// error from a status check
|
341
|
-
if (response.status === "failed" || response.status === "failure") {
|
342
|
-
var message = void 0;
|
343
|
-
var code = "UNKNOWN_ERROR_CODE";
|
344
|
-
try {
|
345
|
-
message = JSON.parse(response.statusMessage).message;
|
346
|
-
code = JSON.parse(response.statusMessage).code;
|
347
|
-
}
|
348
|
-
catch (e) {
|
349
|
-
message = response.statusMessage || response.message;
|
350
|
-
}
|
351
|
-
throw new ArcGISRequestError(message, code, response, url, options);
|
352
|
-
}
|
353
|
-
return response;
|
354
|
-
}
|
355
|
-
/**
|
356
|
-
* ```js
|
357
|
-
* import { request } from '@esri/arcgis-rest-request';
|
358
|
-
* //
|
359
|
-
* request('https://www.arcgis.com/sharing/rest')
|
360
|
-
* .then(response) // response.currentVersion === 5.2
|
361
|
-
* //
|
362
|
-
* request('https://www.arcgis.com/sharing/rest', {
|
363
|
-
* httpMethod: "GET"
|
364
|
-
* })
|
365
|
-
* //
|
366
|
-
* request('https://www.arcgis.com/sharing/rest/search', {
|
367
|
-
* params: { q: 'parks' }
|
368
|
-
* })
|
369
|
-
* .then(response) // response.total => 78379
|
370
|
-
* ```
|
371
|
-
* Generic method for making HTTP requests to ArcGIS REST API endpoints.
|
372
|
-
*
|
373
|
-
* @param url - The URL of the ArcGIS REST API endpoint.
|
374
|
-
* @param requestOptions - Options for the request, including parameters relevant to the endpoint.
|
375
|
-
* @returns A Promise that will resolve with the data from the response.
|
376
|
-
*/
|
377
|
-
function request(url, requestOptions) {
|
378
|
-
if (requestOptions === void 0) { requestOptions = { params: { f: "json" } }; }
|
379
|
-
var options = __assign$1(__assign$1(__assign$1({ httpMethod: "POST" }, DEFAULT_ARCGIS_REQUEST_OPTIONS), requestOptions), {
|
380
|
-
params: __assign$1(__assign$1({}, DEFAULT_ARCGIS_REQUEST_OPTIONS.params), requestOptions.params),
|
381
|
-
headers: __assign$1(__assign$1({}, DEFAULT_ARCGIS_REQUEST_OPTIONS.headers), requestOptions.headers),
|
382
|
-
});
|
383
|
-
var missingGlobals = [];
|
384
|
-
var recommendedPackages = [];
|
385
|
-
// don't check for a global fetch if a custom implementation was passed through
|
386
|
-
if (!options.fetch && typeof fetch !== "undefined") {
|
387
|
-
options.fetch = fetch.bind(Function("return this")());
|
388
|
-
}
|
389
|
-
else {
|
390
|
-
missingGlobals.push("`fetch`");
|
391
|
-
recommendedPackages.push("`node-fetch`");
|
392
|
-
}
|
393
|
-
if (typeof Promise === "undefined") {
|
394
|
-
missingGlobals.push("`Promise`");
|
395
|
-
recommendedPackages.push("`es6-promise`");
|
396
|
-
}
|
397
|
-
if (typeof FormData === "undefined") {
|
398
|
-
missingGlobals.push("`FormData`");
|
399
|
-
recommendedPackages.push("`isomorphic-form-data`");
|
400
|
-
}
|
401
|
-
if (!options.fetch ||
|
402
|
-
typeof Promise === "undefined" ||
|
403
|
-
typeof FormData === "undefined") {
|
404
|
-
throw new Error("`arcgis-rest-request` requires a `fetch` implementation and global variables for `Promise` and `FormData` to be present in the global scope. You are missing " + missingGlobals.join(", ") + ". We recommend installing the " + recommendedPackages.join(", ") + " modules at the root of your application to add these to the global scope. See https://bit.ly/2KNwWaJ for more info.");
|
405
|
-
}
|
406
|
-
var httpMethod = options.httpMethod, authentication = options.authentication, rawResponse = options.rawResponse;
|
407
|
-
var params = __assign$1({ f: "json" }, options.params);
|
408
|
-
var originalAuthError = null;
|
409
|
-
var fetchOptions = {
|
410
|
-
method: httpMethod,
|
411
|
-
/* ensures behavior mimics XMLHttpRequest.
|
412
|
-
needed to support sending IWA cookies */
|
413
|
-
credentials: options.credentials || "same-origin",
|
414
|
-
};
|
415
|
-
// the /oauth2/platformSelf route will add X-Esri-Auth-Client-Id header
|
416
|
-
// and that request needs to send cookies cross domain
|
417
|
-
// so we need to set the credentials to "include"
|
418
|
-
if (options.headers &&
|
419
|
-
options.headers["X-Esri-Auth-Client-Id"] &&
|
420
|
-
url.indexOf("/oauth2/platformSelf") > -1) {
|
421
|
-
fetchOptions.credentials = "include";
|
422
|
-
}
|
423
|
-
return (authentication
|
424
|
-
? authentication.getToken(url, { fetch: options.fetch }).catch(function (err) {
|
425
|
-
/**
|
426
|
-
* append original request url and requestOptions
|
427
|
-
* to the error thrown by getToken()
|
428
|
-
* to assist with retrying
|
429
|
-
*/
|
430
|
-
err.url = url;
|
431
|
-
err.options = options;
|
432
|
-
/**
|
433
|
-
* if an attempt is made to talk to an unfederated server
|
434
|
-
* first try the request anonymously. if a 'token required'
|
435
|
-
* error is thrown, throw the UNFEDERATED error then.
|
436
|
-
*/
|
437
|
-
originalAuthError = err;
|
438
|
-
return Promise.resolve("");
|
439
|
-
})
|
440
|
-
: Promise.resolve(""))
|
441
|
-
.then(function (token) {
|
442
|
-
if (token.length) {
|
443
|
-
params.token = token;
|
444
|
-
}
|
445
|
-
if (authentication && authentication.getDomainCredentials) {
|
446
|
-
fetchOptions.credentials = authentication.getDomainCredentials(url);
|
447
|
-
}
|
448
|
-
// Custom headers to add to request. IRequestOptions.headers with merge over requestHeaders.
|
449
|
-
var requestHeaders = {};
|
450
|
-
if (fetchOptions.method === "GET") {
|
451
|
-
// Prevents token from being passed in query params when hideToken option is used.
|
452
|
-
/* istanbul ignore if - window is always defined in a browser. Test case is covered by Jasmine in node test */
|
453
|
-
if (params.token &&
|
454
|
-
options.hideToken &&
|
455
|
-
// Sharing API does not support preflight check required by modern browsers https://developer.mozilla.org/en-US/docs/Glossary/Preflight_request
|
456
|
-
typeof window === "undefined") {
|
457
|
-
requestHeaders["X-Esri-Authorization"] = "Bearer " + params.token;
|
458
|
-
delete params.token;
|
459
|
-
}
|
460
|
-
// encode the parameters into the query string
|
461
|
-
var queryParams = encodeQueryString(params);
|
462
|
-
// dont append a '?' unless parameters are actually present
|
463
|
-
var urlWithQueryString = queryParams === "" ? url : url + "?" + encodeQueryString(params);
|
464
|
-
if (
|
465
|
-
// This would exceed the maximum length for URLs specified by the consumer and requires POST
|
466
|
-
(options.maxUrlLength &&
|
467
|
-
urlWithQueryString.length > options.maxUrlLength) ||
|
468
|
-
// Or if the customer requires the token to be hidden and it has not already been hidden in the header (for browsers)
|
469
|
-
(params.token && options.hideToken)) {
|
470
|
-
// the consumer specified a maximum length for URLs
|
471
|
-
// and this would exceed it, so use post instead
|
472
|
-
fetchOptions.method = "POST";
|
473
|
-
// If the token was already added as a Auth header, add the token back to body with other params instead of header
|
474
|
-
if (token.length && options.hideToken) {
|
475
|
-
params.token = token;
|
476
|
-
// Remove existing header that was added before url query length was checked
|
477
|
-
delete requestHeaders["X-Esri-Authorization"];
|
478
|
-
}
|
479
|
-
}
|
480
|
-
else {
|
481
|
-
// just use GET
|
482
|
-
url = urlWithQueryString;
|
483
|
-
}
|
484
|
-
}
|
485
|
-
/* updateResources currently requires FormData even when the input parameters dont warrant it.
|
486
|
-
https://developers.arcgis.com/rest/users-groups-and-items/update-resources.htm
|
487
|
-
see https://github.com/Esri/arcgis-rest-js/pull/500 for more info. */
|
488
|
-
var forceFormData = new RegExp("/items/.+/updateResources").test(url);
|
489
|
-
if (fetchOptions.method === "POST") {
|
490
|
-
fetchOptions.body = encodeFormData(params, forceFormData);
|
491
|
-
}
|
492
|
-
// Mixin headers from request options
|
493
|
-
fetchOptions.headers = __assign$1(__assign$1({}, requestHeaders), options.headers);
|
494
|
-
/* istanbul ignore next - karma reports coverage on browser tests only */
|
495
|
-
if (typeof window === "undefined" && !fetchOptions.headers.referer) {
|
496
|
-
fetchOptions.headers.referer = NODEJS_DEFAULT_REFERER_HEADER;
|
497
|
-
}
|
498
|
-
/* istanbul ignore else blob responses are difficult to make cross platform we will just have to trust the isomorphic fetch will do its job */
|
499
|
-
if (!requiresFormData(params) && !forceFormData) {
|
500
|
-
fetchOptions.headers["Content-Type"] =
|
501
|
-
"application/x-www-form-urlencoded";
|
502
|
-
}
|
503
|
-
return options.fetch(url, fetchOptions);
|
504
|
-
})
|
505
|
-
.then(function (response) {
|
506
|
-
if (!response.ok) {
|
507
|
-
// server responded w/ an actual error (404, 500, etc)
|
508
|
-
var status_1 = response.status, statusText = response.statusText;
|
509
|
-
throw new ArcGISRequestError(statusText, "HTTP " + status_1, response, url, options);
|
510
|
-
}
|
511
|
-
if (rawResponse) {
|
512
|
-
return response;
|
513
|
-
}
|
514
|
-
switch (params.f) {
|
515
|
-
case "json":
|
516
|
-
return response.json();
|
517
|
-
case "geojson":
|
518
|
-
return response.json();
|
519
|
-
case "html":
|
520
|
-
return response.text();
|
521
|
-
case "text":
|
522
|
-
return response.text();
|
523
|
-
/* istanbul ignore next blob responses are difficult to make cross platform we will just have to trust that isomorphic fetch will do its job */
|
524
|
-
default:
|
525
|
-
return response.blob();
|
526
|
-
}
|
527
|
-
})
|
528
|
-
.then(function (data) {
|
529
|
-
if ((params.f === "json" || params.f === "geojson") && !rawResponse) {
|
530
|
-
var response = checkForErrors(data, url, params, options, originalAuthError);
|
531
|
-
if (originalAuthError) {
|
532
|
-
/* If the request was made to an unfederated service that
|
533
|
-
didn't require authentication, add the base url and a dummy token
|
534
|
-
to the list of trusted servers to avoid another federation check
|
535
|
-
in the event of a repeat request */
|
536
|
-
var truncatedUrl = url
|
537
|
-
.toLowerCase()
|
538
|
-
.split(/\/rest(\/admin)?\/services\//)[0];
|
539
|
-
options.authentication.federatedServers[truncatedUrl] = {
|
540
|
-
token: [],
|
541
|
-
// default to 24 hours
|
542
|
-
expires: new Date(Date.now() + 86400 * 1000),
|
543
|
-
};
|
544
|
-
originalAuthError = null;
|
545
|
-
}
|
546
|
-
return response;
|
547
|
-
}
|
548
|
-
else {
|
549
|
-
return data;
|
550
|
-
}
|
551
|
-
});
|
552
|
-
}
|
553
|
-
|
554
|
-
/* Copyright (c) 2018 Environmental Systems Research Institute, Inc.
|
555
|
-
* Apache-2.0 */
|
556
|
-
/**
|
557
|
-
* Helper method to ensure that user supplied urls don't include whitespace or a trailing slash.
|
558
|
-
*/
|
559
|
-
function cleanUrl(url) {
|
560
|
-
// Guard so we don't try to trim something that's not a string
|
561
|
-
if (typeof url !== "string") {
|
562
|
-
return url;
|
563
|
-
}
|
564
|
-
// trim leading and trailing spaces, but not spaces inside the url
|
565
|
-
url = url.trim();
|
566
|
-
// remove the trailing slash to the url if one was included
|
567
|
-
if (url[url.length - 1] === "/") {
|
568
|
-
url = url.slice(0, -1);
|
569
|
-
}
|
570
|
-
return url;
|
571
|
-
}
|
11
|
+
const cleanUrl = require('./clean-url-d5326abb.js');
|
572
12
|
|
573
13
|
/** @license
|
574
14
|
* Copyright 2018 Esri
|
@@ -683,7 +123,7 @@ function getPortalUrl(requestOptions) {
|
|
683
123
|
if (requestOptions === void 0) { requestOptions = {}; }
|
684
124
|
// use portal in options if specified
|
685
125
|
if (requestOptions.portal) {
|
686
|
-
return cleanUrl(requestOptions.portal);
|
126
|
+
return cleanUrl.cleanUrl(requestOptions.portal);
|
687
127
|
}
|
688
128
|
// if auth was passed, use that portal
|
689
129
|
if (requestOptions.authentication) {
|
@@ -789,7 +229,7 @@ function updateItem$1(requestOptions) {
|
|
789
229
|
if (requestOptions.params.extent && isBBox(requestOptions.params.extent)) {
|
790
230
|
requestOptions.params.extent = bboxToString(requestOptions.params.extent);
|
791
231
|
}
|
792
|
-
return request(url, requestOptions);
|
232
|
+
return cleanUrl.request(url, requestOptions);
|
793
233
|
});
|
794
234
|
}
|
795
235
|
/**
|
@@ -820,7 +260,7 @@ function updateItemResource(requestOptions) {
|
|
820
260
|
? "private"
|
821
261
|
: "inherit";
|
822
262
|
}
|
823
|
-
return request(url, requestOptions);
|
263
|
+
return cleanUrl.request(url, requestOptions);
|
824
264
|
});
|
825
265
|
}
|
826
266
|
|
@@ -857,7 +297,7 @@ function addItemResource(requestOptions) {
|
|
857
297
|
return determineOwner(requestOptions).then(function (owner) {
|
858
298
|
var url = getPortalUrl(requestOptions) + "/content/users/" + owner + "/items/" + requestOptions.id + "/addResources";
|
859
299
|
requestOptions.params = __assign({ file: requestOptions.resource, fileName: requestOptions.name, resourcesPrefix: requestOptions.prefix, text: requestOptions.content, access: requestOptions.private ? "private" : "inherit" }, requestOptions.params);
|
860
|
-
return request(url, requestOptions);
|
300
|
+
return cleanUrl.request(url, requestOptions);
|
861
301
|
});
|
862
302
|
}
|
863
303
|
|
@@ -878,7 +318,7 @@ function removeItemResource(requestOptions) {
|
|
878
318
|
if (typeof requestOptions.deleteAll !== "undefined") {
|
879
319
|
requestOptions.params.deleteAll = requestOptions.deleteAll;
|
880
320
|
}
|
881
|
-
return request(url, requestOptions);
|
321
|
+
return cleanUrl.request(url, requestOptions);
|
882
322
|
});
|
883
323
|
}
|
884
324
|
|
@@ -2778,7 +2218,7 @@ function getBlob(url, authentication, requestOptions = {}) {
|
|
2778
2218
|
rawResponse: true,
|
2779
2219
|
...requestOptions
|
2780
2220
|
};
|
2781
|
-
return request(url, blobRequestOptions).then(response => {
|
2221
|
+
return cleanUrl.request(url, blobRequestOptions).then(response => {
|
2782
2222
|
return response.blob();
|
2783
2223
|
});
|
2784
2224
|
}
|
@@ -4091,10 +3531,5 @@ class SolutionStore {
|
|
4091
3531
|
}
|
4092
3532
|
const state = SolutionStore.Store;
|
4093
3533
|
|
4094
|
-
exports.ArcGISAuthError = ArcGISAuthError;
|
4095
|
-
exports.NODEJS_DEFAULT_REFERER_HEADER = NODEJS_DEFAULT_REFERER_HEADER;
|
4096
|
-
exports.cleanUrl = cleanUrl;
|
4097
|
-
exports.encodeQueryString = encodeQueryString;
|
4098
3534
|
exports.getProp = getProp;
|
4099
|
-
exports.request = request;
|
4100
3535
|
exports.state = state;
|