@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
@@ -7,7 +7,7 @@ import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/
|
|
7
7
|
import { l as loadModules } from './loadModules.js';
|
8
8
|
import { g as getLocaleComponentStrings } from './locale.js';
|
9
9
|
import { a as getMapLayerIds, g as getLayer, b as goToSelection } from './mapViewUtils.js';
|
10
|
-
import {
|
10
|
+
import { b as queryAllIds, q as queryFeaturesByID } from './queryUtils.js';
|
11
11
|
import { d as downloadCSV } from './downloadUtils.js';
|
12
12
|
import { d as defineCustomElement$n } from './action.js';
|
13
13
|
import { d as defineCustomElement$m } from './action-bar.js';
|
@@ -22,8 +22,8 @@ import { d as defineCustomElement$e } from './dropdown.js';
|
|
22
22
|
import { d as defineCustomElement$d } from './dropdown-group.js';
|
23
23
|
import { d as defineCustomElement$c } from './dropdown-item.js';
|
24
24
|
import { d as defineCustomElement$b } from './icon.js';
|
25
|
-
import { d as defineCustomElement$a } from './
|
26
|
-
import { d as defineCustomElement$9 } from './
|
25
|
+
import { d as defineCustomElement$a } from './loader.js';
|
26
|
+
import { d as defineCustomElement$9 } from './modal.js';
|
27
27
|
import { d as defineCustomElement$8 } from './option.js';
|
28
28
|
import { d as defineCustomElement$7 } from './panel.js';
|
29
29
|
import { d as defineCustomElement$6 } from './popover.js';
|
@@ -33,7 +33,7 @@ import { d as defineCustomElement$3 } from './shell.js';
|
|
33
33
|
import { d as defineCustomElement$2 } from './tooltip.js';
|
34
34
|
import { d as defineCustomElement$1 } from './map-layer-picker2.js';
|
35
35
|
|
36
|
-
const layerTableCss = ":host{display:block}.height-full{height:100%}.width-full{width:100%}.display-flex{display:flex}.table-border{border:1px solid var(--calcite-ui-border-2)}.border-end{border-inline-end:1px solid var(--calcite-ui-border-2)}.padding-5{padding:5px}.height-51{height:51px}.bottom-left{position:absolute;left:0;bottom:0}html[dir=\"rtl\"] .bottom-left{position:absolute;right:0;bottom:0}.background{background-color:var(--calcite-ui-background)}.text-color{color:var(--calcite-ui-text-1)}";
|
36
|
+
const layerTableCss = ":host{display:block}.height-full{height:100%}.width-full{width:100%}.display-flex{display:flex}.table-border{border:1px solid var(--calcite-ui-border-2)}.border-end{border-inline-end:1px solid var(--calcite-ui-border-2)}.padding-5{padding:5px}.padding-end-1{padding-inline-end:1rem}.height-51{height:51px}.bottom-left{position:absolute;left:0;bottom:0}html[dir=\"rtl\"] .bottom-left{position:absolute;right:0;bottom:0}.background{background-color:var(--calcite-ui-background)}.text-color{color:var(--calcite-ui-text-1)}.align-center{align-items:center}.danger-color{color:var(--calcite-ui-danger)}";
|
37
37
|
|
38
38
|
const LayerTable = /*@__PURE__*/ proxyCustomElement(class LayerTable extends HTMLElement {
|
39
39
|
constructor() {
|
@@ -59,12 +59,15 @@ const LayerTable = /*@__PURE__*/ proxyCustomElement(class LayerTable extends HTM
|
|
59
59
|
this.onTableNodeCreate = (node) => {
|
60
60
|
this._tableNode = node;
|
61
61
|
};
|
62
|
+
this.enableAutoRefresh = undefined;
|
63
|
+
this.enableInlineEdit = undefined;
|
62
64
|
this.mapInfo = undefined;
|
63
65
|
this.mapView = undefined;
|
64
66
|
this.showNewestFirst = undefined;
|
65
67
|
this.zoomAndScrollToSelected = undefined;
|
66
68
|
this._alertOpen = false;
|
67
69
|
this._fetchingData = false;
|
70
|
+
this._isDeleting = false;
|
68
71
|
this._layer = undefined;
|
69
72
|
this._selectedIndexes = [];
|
70
73
|
this._showOnlySelected = false;
|
@@ -166,12 +169,11 @@ const LayerTable = /*@__PURE__*/ proxyCustomElement(class LayerTable extends HTM
|
|
166
169
|
}
|
167
170
|
const tableNodeClass = this._fetchingData ? "display-none" : "";
|
168
171
|
const loadingClass = this._fetchingData ? "" : "display-none";
|
169
|
-
const alertActionClass = this._alertShowAction ? "" : "display-none";
|
170
172
|
const total = this._allIds.length.toString();
|
171
173
|
const selected = this._selectedIndexes.length.toString();
|
172
174
|
return (h(Host, null, h("calcite-shell", null, this._getTableControlRow("header"), h("div", { class: "height-full width-full" }, h("calcite-panel", { class: "height-full width-full" }, h("calcite-loader", { class: loadingClass, label: this._translations.fetchingData, scale: "l" }), h("div", { class: tableNodeClass, ref: this.onTableNodeCreate })), h("div", { class: "bottom-left background text-color" }, this._translations.recordsSelected
|
173
175
|
.replace("{{total}}", total)
|
174
|
-
.replace("{{selected}}", selected))),
|
176
|
+
.replace("{{selected}}", selected))), this._getEditDisabledWarning()), this._deleteMessage()));
|
175
177
|
}
|
176
178
|
//--------------------------------------------------------------------------
|
177
179
|
//
|
@@ -216,9 +218,10 @@ const LayerTable = /*@__PURE__*/ proxyCustomElement(class LayerTable extends HTM
|
|
216
218
|
if (this._layer) {
|
217
219
|
await this._layer.when(async () => {
|
218
220
|
this._table = new this.FeatureTable({
|
221
|
+
autoRefreshEnabled: this.enableAutoRefresh,
|
219
222
|
layer: this._layer,
|
220
223
|
view: this.mapView,
|
221
|
-
|
224
|
+
editingEnabled: this._editEnabled && this.enableInlineEdit,
|
222
225
|
highlightEnabled: true,
|
223
226
|
multiSortEnabled: false,
|
224
227
|
visibleElements: {
|
@@ -230,6 +233,7 @@ const LayerTable = /*@__PURE__*/ proxyCustomElement(class LayerTable extends HTM
|
|
230
233
|
},
|
231
234
|
container: node
|
232
235
|
});
|
236
|
+
this._checkEditEnabled();
|
233
237
|
await this._table.when(async () => {
|
234
238
|
this._table.highlightIds.on("change", () => {
|
235
239
|
this._selectedIndexes = this._table.highlightIds.toArray();
|
@@ -265,7 +269,7 @@ const LayerTable = /*@__PURE__*/ proxyCustomElement(class LayerTable extends HTM
|
|
265
269
|
const columnTemplates = this._getColumnTemplates(this._layer.id);
|
266
270
|
this._table.layer = this._layer;
|
267
271
|
this._table.tableTemplate.columnTemplates = columnTemplates;
|
268
|
-
this.
|
272
|
+
this._checkEditEnabled();
|
269
273
|
this._table.view = this.mapView;
|
270
274
|
this._table.editingEnabled = this._editEnabled;
|
271
275
|
this._table.clearSelectionFilter();
|
@@ -274,6 +278,15 @@ const LayerTable = /*@__PURE__*/ proxyCustomElement(class LayerTable extends HTM
|
|
274
278
|
await this._sortTable();
|
275
279
|
}
|
276
280
|
}
|
281
|
+
/**
|
282
|
+
* Verify edit capabilities of the layer
|
283
|
+
*
|
284
|
+
* @returns void
|
285
|
+
*/
|
286
|
+
_checkEditEnabled() {
|
287
|
+
this._editEnabled = this._layer.editingEnabled && this._layer.capabilities.operations.supportsUpdate;
|
288
|
+
this._deleteEnabled = this._layer.editingEnabled && this._layer.capabilities.operations.supportsDelete;
|
289
|
+
}
|
277
290
|
/**
|
278
291
|
* Sort the objectid field in descending order
|
279
292
|
*
|
@@ -292,6 +305,40 @@ const LayerTable = /*@__PURE__*/ proxyCustomElement(class LayerTable extends HTM
|
|
292
305
|
}
|
293
306
|
}
|
294
307
|
}
|
308
|
+
/**
|
309
|
+
* Show warning when editing is disabled
|
310
|
+
*
|
311
|
+
* @returns node with warning message
|
312
|
+
*/
|
313
|
+
_getEditDisabledWarning() {
|
314
|
+
return (h("calcite-alert", { icon: "layer-broken", kind: "warning", label: "", onCalciteAlertClose: () => this._alertClosed(), open: this._alertOpen && !this._confirmDelete, placement: "top" }, h("div", { slot: "title" }, this._translations.deleteDisabled), h("div", { slot: "message" }, this._translations.enableEditing)));
|
315
|
+
}
|
316
|
+
/**
|
317
|
+
* Show delete confirmation message
|
318
|
+
*
|
319
|
+
* @returns node to confirm or deny the delete operation
|
320
|
+
*/
|
321
|
+
_deleteMessage() {
|
322
|
+
return (h("calcite-modal", { "aria-labelledby": "modal-title", kind: "danger", open: this._confirmDelete }, h("div", { class: "display-flex align-center", id: "modal-title", slot: "header" }, h("calcite-icon", { "aria-hidden": "true", class: "padding-end-1 danger-color", icon: "exclamation-mark-triangle", scale: "m" }), this._translations.deleteFeature), h("div", { slot: "content" }, this._translations.confirm), h("calcite-button", { appearance: "outline", kind: "danger", onClick: () => this._alertClosed(), slot: "secondary", width: "full" }, this._translations.cancel), h("calcite-button", { kind: "danger", loading: this._isDeleting, onClick: () => void this._deleteFeatures(), slot: "primary", width: "full" }, this._translations.delete)));
|
323
|
+
}
|
324
|
+
/**
|
325
|
+
* Delete the currently selected features
|
326
|
+
*
|
327
|
+
* @returns void
|
328
|
+
*/
|
329
|
+
async _deleteFeatures() {
|
330
|
+
this._isDeleting = true;
|
331
|
+
const deleteFeatures = this._table.highlightIds.toArray().map((objectId) => {
|
332
|
+
return { objectId };
|
333
|
+
});
|
334
|
+
await this._layer.applyEdits({
|
335
|
+
deleteFeatures
|
336
|
+
});
|
337
|
+
await this._table.refresh();
|
338
|
+
this._allIds = await queryAllIds(this._layer);
|
339
|
+
this._isDeleting = false;
|
340
|
+
this._alertClosed();
|
341
|
+
}
|
295
342
|
/**
|
296
343
|
* Handle map click events to keep table and map click selection in sync
|
297
344
|
*
|
@@ -327,6 +374,7 @@ const LayerTable = /*@__PURE__*/ proxyCustomElement(class LayerTable extends HTM
|
|
327
374
|
*/
|
328
375
|
_alertClosed() {
|
329
376
|
this._alertOpen = false;
|
377
|
+
this._confirmDelete = false;
|
330
378
|
}
|
331
379
|
/**
|
332
380
|
* Select or deselect all rows
|
@@ -400,7 +448,8 @@ const LayerTable = /*@__PURE__*/ proxyCustomElement(class LayerTable extends HTM
|
|
400
448
|
ids,
|
401
449
|
layer: this._layer
|
402
450
|
};
|
403
|
-
void downloadCSV(
|
451
|
+
void downloadCSV(null, //???
|
452
|
+
exportInfos, false, // formatUsingLayerPopup
|
404
453
|
false, // removeDuplicates
|
405
454
|
true);
|
406
455
|
}
|
@@ -427,25 +476,7 @@ const LayerTable = /*@__PURE__*/ proxyCustomElement(class LayerTable extends HTM
|
|
427
476
|
*/
|
428
477
|
_delete() {
|
429
478
|
if (this._editEnabled) {
|
430
|
-
this.
|
431
|
-
this._alertTitle = this._translations.deleteRows;
|
432
|
-
this._alertActionText = this._translations.delete;
|
433
|
-
this._alertShowAction = true;
|
434
|
-
this._alertMessage = this._translations.confirm;
|
435
|
-
this._alertKind = "danger";
|
436
|
-
this._alertActionFunction = () => {
|
437
|
-
void this._layer.applyEdits({
|
438
|
-
deleteFeatures: this._table.highlightIds.toArray()
|
439
|
-
});
|
440
|
-
this._alertOpen = false;
|
441
|
-
};
|
442
|
-
}
|
443
|
-
else {
|
444
|
-
this._alertIcon = "layer-broken";
|
445
|
-
this._alertTitle = this._translations.deleteDisabled;
|
446
|
-
this._alertShowAction = false;
|
447
|
-
this._alertMessage = this._translations.enableEditing;
|
448
|
-
this._alertKind = "warning";
|
479
|
+
this._confirmDelete = true;
|
449
480
|
}
|
450
481
|
this._alertOpen = true;
|
451
482
|
}
|
@@ -526,12 +557,15 @@ const LayerTable = /*@__PURE__*/ proxyCustomElement(class LayerTable extends HTM
|
|
526
557
|
}; }
|
527
558
|
static get style() { return layerTableCss; }
|
528
559
|
}, [0, "layer-table", {
|
560
|
+
"enableAutoRefresh": [4, "enable-auto-refresh"],
|
561
|
+
"enableInlineEdit": [4, "enable-inline-edit"],
|
529
562
|
"mapInfo": [16],
|
530
563
|
"mapView": [16],
|
531
564
|
"showNewestFirst": [4, "show-newest-first"],
|
532
565
|
"zoomAndScrollToSelected": [4, "zoom-and-scroll-to-selected"],
|
533
566
|
"_alertOpen": [32],
|
534
567
|
"_fetchingData": [32],
|
568
|
+
"_isDeleting": [32],
|
535
569
|
"_layer": [32],
|
536
570
|
"_selectedIndexes": [32],
|
537
571
|
"_showOnlySelected": [32],
|
@@ -543,7 +577,7 @@ function defineCustomElement() {
|
|
543
577
|
if (typeof customElements === "undefined") {
|
544
578
|
return;
|
545
579
|
}
|
546
|
-
const components = ["layer-table", "calcite-action", "calcite-action-bar", "calcite-action-group", "calcite-action-menu", "calcite-alert", "calcite-button", "calcite-chip", "calcite-combobox", "calcite-combobox-item", "calcite-dropdown", "calcite-dropdown-group", "calcite-dropdown-item", "calcite-icon", "calcite-
|
580
|
+
const components = ["layer-table", "calcite-action", "calcite-action-bar", "calcite-action-group", "calcite-action-menu", "calcite-alert", "calcite-button", "calcite-chip", "calcite-combobox", "calcite-combobox-item", "calcite-dropdown", "calcite-dropdown-group", "calcite-dropdown-item", "calcite-icon", "calcite-loader", "calcite-modal", "calcite-option", "calcite-panel", "calcite-popover", "calcite-scrim", "calcite-select", "calcite-shell", "calcite-tooltip", "map-layer-picker"];
|
547
581
|
components.forEach(tagName => { switch (tagName) {
|
548
582
|
case "layer-table":
|
549
583
|
if (!customElements.get(tagName)) {
|
@@ -615,12 +649,12 @@ function defineCustomElement() {
|
|
615
649
|
defineCustomElement$b();
|
616
650
|
}
|
617
651
|
break;
|
618
|
-
case "calcite-
|
652
|
+
case "calcite-loader":
|
619
653
|
if (!customElements.get(tagName)) {
|
620
654
|
defineCustomElement$a();
|
621
655
|
}
|
622
656
|
break;
|
623
|
-
case "calcite-
|
657
|
+
case "calcite-modal":
|
624
658
|
if (!customElements.get(tagName)) {
|
625
659
|
defineCustomElement$9();
|
626
660
|
}
|
@@ -0,0 +1,416 @@
|
|
1
|
+
/*!
|
2
|
+
* Copyright 2022 Esri
|
3
|
+
* Licensed under the Apache License, Version 2.0
|
4
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
5
|
+
*/
|
6
|
+
import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
|
7
|
+
import { c as connectConditionalSlotComponent, d as disconnectConditionalSlotComponent } from './conditionalSlot.js';
|
8
|
+
import { a as getSlotted, h as slotChangeHasAssignedElement, j as focusFirstTabbable, z as ensureId } from './dom.js';
|
9
|
+
import { d as deactivateFocusTrap, a as activateFocusTrap, c as connectFocusTrap, u as updateFocusTrapElements } from './focusTrapComponent.js';
|
10
|
+
import { s as setUpLoadableComponent, a as setComponentLoaded, c as componentFocusable } from './loadable.js';
|
11
|
+
import { c as createObserver } from './observers.js';
|
12
|
+
import { o as onToggleOpenCloseComponent } from './openCloseComponent.js';
|
13
|
+
import { c as connectLocalized, d as disconnectLocalized } from './locale2.js';
|
14
|
+
import { s as setUpMessages, c as connectMessages, d as disconnectMessages, u as updateMessages } from './t9n.js';
|
15
|
+
import { d as defineCustomElement$3 } from './icon.js';
|
16
|
+
import { d as defineCustomElement$2 } from './loader.js';
|
17
|
+
import { d as defineCustomElement$1 } from './scrim.js';
|
18
|
+
|
19
|
+
/*!
|
20
|
+
* All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
21
|
+
* See https://github.com/Esri/calcite-design-system/blob/main/LICENSE.md for details.
|
22
|
+
* v1.6.1
|
23
|
+
*/
|
24
|
+
const CSS = {
|
25
|
+
modal: "modal",
|
26
|
+
title: "title",
|
27
|
+
header: "header",
|
28
|
+
footer: "footer",
|
29
|
+
scrim: "scrim",
|
30
|
+
back: "back",
|
31
|
+
close: "close",
|
32
|
+
secondary: "secondary",
|
33
|
+
primary: "primary",
|
34
|
+
container: "container",
|
35
|
+
containerOpen: "container--open",
|
36
|
+
content: "content",
|
37
|
+
contentNoFooter: "content--no-footer",
|
38
|
+
contentBottom: "content-bottom",
|
39
|
+
contentTop: "content-top",
|
40
|
+
slottedInShell: "slotted-in-shell",
|
41
|
+
// these classes help apply the animation in phases to only set transform on open/close
|
42
|
+
// this helps avoid a positioning issue for any floating-ui-owning children
|
43
|
+
openingIdle: "modal--opening-idle",
|
44
|
+
openingActive: "modal--opening-active",
|
45
|
+
closingIdle: "modal--closing-idle",
|
46
|
+
closingActive: "modal--closing-active",
|
47
|
+
};
|
48
|
+
const ICONS = {
|
49
|
+
close: "x",
|
50
|
+
};
|
51
|
+
const SLOTS = {
|
52
|
+
content: "content",
|
53
|
+
contentBottom: "content-bottom",
|
54
|
+
contentTop: "content-top",
|
55
|
+
header: "header",
|
56
|
+
back: "back",
|
57
|
+
secondary: "secondary",
|
58
|
+
primary: "primary",
|
59
|
+
};
|
60
|
+
|
61
|
+
const modalCss = ":host{position:absolute;inset:0px;z-index:var(--calcite-app-z-index-overlay);display:flex;opacity:0;visibility:hidden !important;transition:visibility 0ms linear var(--calcite-internal-animation-timing-slow), opacity var(--calcite-internal-animation-timing-slow) cubic-bezier(0.215, 0.44, 0.42, 0.88);--calcite-modal-scrim-background-internal:rgba(0, 0, 0, 0.85)}.content-top[hidden],.content-bottom[hidden]{display:none}.container{position:fixed;inset:0px;z-index:var(--calcite-app-z-index-overlay);display:flex;align-items:center;justify-content:center;overflow-y:hidden;color:var(--calcite-ui-text-2);opacity:0;visibility:hidden !important;transition:visibility 0ms linear var(--calcite-internal-animation-timing-slow), opacity var(--calcite-internal-animation-timing-slow) cubic-bezier(0.215, 0.44, 0.42, 0.88)}:host([scale=s]){--calcite-modal-padding-internal:0.75rem;--calcite-modal-padding-large-internal:1rem;--calcite-modal-title-text-internal:var(--calcite-font-size-1);--calcite-modal-content-text-internal:var(--calcite-font-size--1)}:host([scale=m]){--calcite-modal-padding-internal:1rem;--calcite-modal-padding-large-internal:1.25rem;--calcite-modal-title-text-internal:var(--calcite-font-size-2);--calcite-modal-content-text-internal:var(--calcite-font-size-0)}:host([scale=l]){--calcite-modal-padding-internal:1.25rem;--calcite-modal-padding-large-internal:1.5rem;--calcite-modal-title-text-internal:var(--calcite-font-size-3);--calcite-modal-content-text-internal:var(--calcite-font-size-1)}.scrim{--calcite-scrim-background:var(--calcite-modal-scrim-background, var(--calcite-modal-scrim-background-internal));position:fixed;inset:0px;display:flex;overflow-y:hidden}.modal{pointer-events:none;z-index:var(--calcite-app-z-index-modal);float:none;margin:1.5rem;box-sizing:border-box;display:flex;inline-size:100%;flex-direction:column;overflow:hidden;border-radius:0.25rem;background-color:var(--calcite-ui-foreground-1);opacity:0;--tw-shadow:0 2px 12px -4px rgba(0, 0, 0, 0.2), 0 2px 4px -2px rgba(0, 0, 0, 0.16);--tw-shadow-colored:0 2px 12px -4px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);-webkit-overflow-scrolling:touch;visibility:hidden;transition:transform var(--calcite-internal-animation-timing-slow) cubic-bezier(0.215, 0.44, 0.42, 0.88), visibility 0ms linear var(--calcite-internal-animation-timing-slow), opacity var(--calcite-internal-animation-timing-slow) cubic-bezier(0.215, 0.44, 0.42, 0.88);--calcite-modal-hidden-position:translate3d(0, 20px, 0);--calcite-modal-shown-position:translate3d(0, 0, 0)}.modal--opening-idle{transform:var(--calcite-modal-hidden-position)}.modal--opening-active{transform:var(--calcite-modal-shown-position)}.modal--closing-idle{transform:var(--calcite-modal-shown-position)}.modal--closing-active{transform:var(--calcite-modal-hidden-position)}:host([open]){opacity:1;visibility:visible !important;transition-delay:0ms}.container--open{opacity:1;visibility:visible !important;transition-delay:0ms}.container--open .modal{pointer-events:auto;visibility:visible;opacity:1;transition:transform var(--calcite-internal-animation-timing-slow) cubic-bezier(0.215, 0.44, 0.42, 0.88), visibility 0ms linear, opacity var(--calcite-internal-animation-timing-slow) cubic-bezier(0.215, 0.44, 0.42, 0.88), max-inline-size var(--calcite-internal-animation-timing-slow) cubic-bezier(0.215, 0.44, 0.42, 0.88), max-block-size var(--calcite-internal-animation-timing-slow) cubic-bezier(0.215, 0.44, 0.42, 0.88);transition-delay:0ms}.header{z-index:var(--calcite-app-z-index-header);display:flex;min-inline-size:0px;max-inline-size:100%;border-start-start-radius:0.25rem;border-start-end-radius:0.25rem;border-width:0px;border-block-end-width:1px;border-style:solid;border-color:var(--calcite-ui-border-3);background-color:var(--calcite-ui-foreground-1);flex:0 0 auto}.close{order:2;margin:0px;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-style:none;background-color:transparent;color:var(--calcite-ui-text-3);outline-color:transparent;transition:all var(--calcite-animation-timing) ease-in-out 0s, outline 0s, outline-offset 0s;padding-block:var(--calcite-modal-padding-internal);padding-inline:var(--calcite-modal-padding-internal);flex:0 0 auto}.close calcite-icon{pointer-events:none;vertical-align:-2px}.close:focus{outline:2px solid var(--calcite-ui-focus-color, var(--calcite-ui-brand));outline-offset:calc(\n -2px *\n calc(\n 1 -\n 2 * clamp(\n 0,\n var(--calcite-ui-focus-offset-invert),\n 1\n )\n )\n )}.close:hover,.close:focus,.close:active{background-color:var(--calcite-ui-foreground-2);color:var(--calcite-ui-text-1)}.title{order:1;display:flex;min-inline-size:0px;align-items:center;flex:1 1 auto;padding-block:var(--calcite-modal-padding-internal);padding-inline:var(--calcite-modal-padding-large-internal)}slot[name=header]::slotted(*),*::slotted([slot=header]){margin:0px;font-weight:var(--calcite-font-weight-normal);color:var(--calcite-ui-text-1);font-size:var(--calcite-modal-title-text-internal)}.content{position:relative;box-sizing:border-box;display:block;block-size:100%;overflow:auto;padding:0px;background-color:var(--calcite-modal-content-background, var(--calcite-ui-foreground-1));max-block-size:100%;padding:var(--calcite-modal-content-padding, var(--calcite-modal-padding-internal))}.content-top,.content-bottom{z-index:var(--calcite-app-z-index-header);display:flex;border-width:0px;border-style:solid;border-color:var(--calcite-ui-border-3);background-color:var(--calcite-ui-foreground-1);flex:0 0 auto;padding:var(--calcite-modal-padding-internal)}.content-top{min-inline-size:0px;max-inline-size:100%;border-block-end-width:1px}.content-bottom{margin-block-start:auto;box-sizing:border-box;inline-size:100%;justify-content:space-between;border-block-start-width:1px}.content-top:not(.header~.content-top){border-start-start-radius:0.25rem;border-start-end-radius:0.25rem}.content-bottom:not(.content-bottom~.footer),.content--no-footer{border-end-end-radius:0.25rem;border-end-start-radius:0.25rem}slot[name=content]::slotted(*),*::slotted([slot=content]){font-size:var(--calcite-modal-context-text-internal)}.footer{z-index:var(--calcite-app-z-index-header);margin-block-start:auto;box-sizing:border-box;display:flex;inline-size:100%;justify-content:space-between;border-end-end-radius:0.25rem;border-end-start-radius:0.25rem;border-width:0px;border-block-start-width:1px;border-style:solid;border-color:var(--calcite-ui-border-3);background-color:var(--calcite-ui-foreground-1);flex:0 0 auto;padding-block:var(--calcite-modal-padding-internal);padding-inline:var(--calcite-modal-padding-large-internal)}.footer--hide-back .back,.footer--hide-secondary .secondary{display:none}.back{display:block;margin-inline-end:auto}.secondary{margin-inline:0.25rem;display:block}slot[name=primary]{display:block}:host([width=small]) .modal{inline-size:auto}:host([width=s]) .modal{max-block-size:100%;max-inline-size:100%;inline-size:var(--calcite-modal-width, 32rem);block-size:var(--calcite-modal-height, auto)}@media screen and (max-width: 35rem){:host([width=s]) .modal{margin:0px;block-size:100%;max-block-size:100%;inline-size:100%;max-inline-size:100%}:host([width=s]) .content{flex:1 1 auto;max-block-size:unset}:host([width=s][docked]) .container{align-items:flex-end}}:host([width=m]) .modal{max-block-size:100%;max-inline-size:100%;inline-size:var(--calcite-modal-width, 48rem);block-size:var(--calcite-modal-height, auto)}@media screen and (max-width: 51rem){:host([width=m]) .modal{margin:0px;block-size:100%;max-block-size:100%;inline-size:100%;max-inline-size:100%}:host([width=m]) .content{flex:1 1 auto;max-block-size:unset}:host([width=m][docked]) .container{align-items:flex-end}}:host([width=l]) .modal{max-block-size:100%;max-inline-size:100%;inline-size:var(--calcite-modal-width, 94rem);block-size:var(--calcite-modal-height, auto)}@media screen and (max-width: 97rem){:host([width=l]) .modal{margin:0px;block-size:100%;max-block-size:100%;inline-size:100%;max-inline-size:100%}:host([width=l]) .content{flex:1 1 auto;max-block-size:unset}:host([width=l][docked]) .container{align-items:flex-end}}:host([fullscreen]) .modal{margin:0px;block-size:100%;max-block-size:100%;inline-size:100%;max-inline-size:100%;border-radius:0px;--calcite-modal-hidden-position:translate3D(0, 20px, 0) scale(0.95);--calcite-modal-shown-position:translate3D(0, 0, 0) scale(1)}:host([fullscreen]) .content{max-block-size:100%;flex:1 1 auto}:host([open][fullscreen]) .header,:host([open][fullscreen]) .footer,:host([open][fullscreen]) .content-top,:host([open][fullscreen]) .content-bottom{border-radius:0}:host([docked]) .modal{block-size:var(--calcite-modal-height, auto)}:host([docked]) .content{block-size:auto;flex:1 1 auto}:host([kind=brand]) .modal{border-color:var(--calcite-ui-brand)}:host([kind=danger]) .modal{border-color:var(--calcite-ui-danger)}:host([kind=info]) .modal{border-color:var(--calcite-ui-info)}:host([kind=success]) .modal{border-color:var(--calcite-ui-success)}:host([kind=warning]) .modal{border-color:var(--calcite-ui-warning)}:host([kind=brand]) .modal,:host([kind=danger]) .modal,:host([kind=info]) .modal,:host([kind=success]) .modal,:host([kind=warning]) .modal{border-width:0px;border-block-start-width:4px;border-style:solid}:host([kind=brand]) .header,:host([kind=brand]) .content-top,:host([kind=danger]) .header,:host([kind=danger]) .content-top,:host([kind=info]) .header,:host([kind=info]) .content-top,:host([kind=success]) .header,:host([kind=success]) .content-top,:host([kind=warning]) .header,:host([kind=warning]) .content-top{border-radius:0.25rem;border-end-end-radius:0px;border-end-start-radius:0px}@media screen and (max-width: 860px){* slot[name=header]::slotted(content-top),* content-top::slotted([slot=header]){font-size:var(--calcite-font-size-1)}.footer,.content-bottom{position:sticky;inset-block-end:0px}}@media screen and (max-width: 480px){.footer,.content-bottom{flex-direction:column}.back,.secondary{margin:0px;margin-block-end:0.25rem}}.container.slotted-in-shell{position:absolute;pointer-events:auto}.container.slotted-in-shell calcite-scrim{position:absolute}:host([hidden]){display:none}[hidden]{display:none}";
|
62
|
+
|
63
|
+
const Modal = /*@__PURE__*/ proxyCustomElement(class Modal extends HTMLElement {
|
64
|
+
constructor() {
|
65
|
+
super();
|
66
|
+
this.__registerHost();
|
67
|
+
this.__attachShadow();
|
68
|
+
this.calciteModalBeforeClose = createEvent(this, "calciteModalBeforeClose", 6);
|
69
|
+
this.calciteModalClose = createEvent(this, "calciteModalClose", 6);
|
70
|
+
this.calciteModalBeforeOpen = createEvent(this, "calciteModalBeforeOpen", 6);
|
71
|
+
this.calciteModalOpen = createEvent(this, "calciteModalOpen", 6);
|
72
|
+
this.mutationObserver = createObserver("mutation", () => this.handleMutationObserver());
|
73
|
+
this.cssVarObserver = createObserver("mutation", () => {
|
74
|
+
this.updateSizeCssVars();
|
75
|
+
});
|
76
|
+
this.openTransitionProp = "opacity";
|
77
|
+
//--------------------------------------------------------------------------
|
78
|
+
//
|
79
|
+
// Private Methods
|
80
|
+
//
|
81
|
+
//--------------------------------------------------------------------------
|
82
|
+
this.setTransitionEl = (el) => {
|
83
|
+
this.transitionEl = el;
|
84
|
+
};
|
85
|
+
this.openEnd = () => {
|
86
|
+
this.setFocus();
|
87
|
+
this.el.removeEventListener("calciteModalOpen", this.openEnd);
|
88
|
+
};
|
89
|
+
this.handleOutsideClose = () => {
|
90
|
+
if (this.outsideCloseDisabled) {
|
91
|
+
return;
|
92
|
+
}
|
93
|
+
this.close();
|
94
|
+
};
|
95
|
+
/** Close the modal, first running the `beforeClose` method */
|
96
|
+
this.close = () => {
|
97
|
+
return this.beforeClose(this.el).then(() => {
|
98
|
+
this.open = false;
|
99
|
+
this.isOpen = false;
|
100
|
+
this.removeOverflowHiddenClass();
|
101
|
+
});
|
102
|
+
};
|
103
|
+
this.handleMutationObserver = () => {
|
104
|
+
this.updateFooterVisibility();
|
105
|
+
this.updateFocusTrapElements();
|
106
|
+
};
|
107
|
+
this.updateFooterVisibility = () => {
|
108
|
+
this.hasFooter = !!getSlotted(this.el, [SLOTS.back, SLOTS.primary, SLOTS.secondary]);
|
109
|
+
};
|
110
|
+
this.updateSizeCssVars = () => {
|
111
|
+
this.cssWidth = getComputedStyle(this.el).getPropertyValue("--calcite-modal-width");
|
112
|
+
this.cssHeight = getComputedStyle(this.el).getPropertyValue("--calcite-modal-height");
|
113
|
+
};
|
114
|
+
this.contentTopSlotChangeHandler = (event) => {
|
115
|
+
this.hasContentTop = slotChangeHasAssignedElement(event);
|
116
|
+
};
|
117
|
+
this.contentBottomSlotChangeHandler = (event) => {
|
118
|
+
this.hasContentBottom = slotChangeHasAssignedElement(event);
|
119
|
+
};
|
120
|
+
this.open = false;
|
121
|
+
this.beforeClose = () => Promise.resolve();
|
122
|
+
this.closeButtonDisabled = false;
|
123
|
+
this.focusTrapDisabled = false;
|
124
|
+
this.outsideCloseDisabled = false;
|
125
|
+
this.docked = undefined;
|
126
|
+
this.escapeDisabled = false;
|
127
|
+
this.scale = "m";
|
128
|
+
this.width = "m";
|
129
|
+
this.fullscreen = undefined;
|
130
|
+
this.kind = undefined;
|
131
|
+
this.messages = undefined;
|
132
|
+
this.messageOverrides = undefined;
|
133
|
+
this.slottedInShell = undefined;
|
134
|
+
this.cssWidth = undefined;
|
135
|
+
this.cssHeight = undefined;
|
136
|
+
this.hasFooter = true;
|
137
|
+
this.hasContentTop = false;
|
138
|
+
this.hasContentBottom = false;
|
139
|
+
this.isOpen = false;
|
140
|
+
this.effectiveLocale = undefined;
|
141
|
+
this.defaultMessages = undefined;
|
142
|
+
}
|
143
|
+
handleFocusTrapDisabled(focusTrapDisabled) {
|
144
|
+
if (!this.open) {
|
145
|
+
return;
|
146
|
+
}
|
147
|
+
focusTrapDisabled ? deactivateFocusTrap(this) : activateFocusTrap(this);
|
148
|
+
}
|
149
|
+
onMessagesChange() {
|
150
|
+
/* wired up by t9n util */
|
151
|
+
}
|
152
|
+
//--------------------------------------------------------------------------
|
153
|
+
//
|
154
|
+
// Lifecycle
|
155
|
+
//
|
156
|
+
//--------------------------------------------------------------------------
|
157
|
+
async componentWillLoad() {
|
158
|
+
await setUpMessages(this);
|
159
|
+
setUpLoadableComponent(this);
|
160
|
+
// when modal initially renders, if active was set we need to open as watcher doesn't fire
|
161
|
+
if (this.open) {
|
162
|
+
onToggleOpenCloseComponent(this);
|
163
|
+
requestAnimationFrame(() => this.openModal());
|
164
|
+
}
|
165
|
+
}
|
166
|
+
componentDidLoad() {
|
167
|
+
setComponentLoaded(this);
|
168
|
+
}
|
169
|
+
connectedCallback() {
|
170
|
+
var _a, _b;
|
171
|
+
(_a = this.mutationObserver) === null || _a === void 0 ? void 0 : _a.observe(this.el, { childList: true, subtree: true });
|
172
|
+
(_b = this.cssVarObserver) === null || _b === void 0 ? void 0 : _b.observe(this.el, { attributeFilter: ["style"] });
|
173
|
+
this.updateSizeCssVars();
|
174
|
+
this.updateFooterVisibility();
|
175
|
+
connectConditionalSlotComponent(this);
|
176
|
+
connectLocalized(this);
|
177
|
+
connectMessages(this);
|
178
|
+
connectFocusTrap(this);
|
179
|
+
}
|
180
|
+
disconnectedCallback() {
|
181
|
+
var _a, _b;
|
182
|
+
this.removeOverflowHiddenClass();
|
183
|
+
(_a = this.mutationObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
|
184
|
+
(_b = this.cssVarObserver) === null || _b === void 0 ? void 0 : _b.disconnect();
|
185
|
+
disconnectConditionalSlotComponent(this);
|
186
|
+
deactivateFocusTrap(this);
|
187
|
+
disconnectLocalized(this);
|
188
|
+
disconnectMessages(this);
|
189
|
+
this.slottedInShell = false;
|
190
|
+
}
|
191
|
+
render() {
|
192
|
+
return (h(Host, { "aria-describedby": this.contentId, "aria-labelledby": this.titleId, "aria-modal": "true", role: "dialog" }, h("div", { class: {
|
193
|
+
[CSS.container]: true,
|
194
|
+
[CSS.containerOpen]: this.isOpen,
|
195
|
+
[CSS.slottedInShell]: this.slottedInShell,
|
196
|
+
} }, h("calcite-scrim", { class: CSS.scrim, onClick: this.handleOutsideClose }), this.renderStyle(), h("div", { class: {
|
197
|
+
[CSS.modal]: true,
|
198
|
+
},
|
199
|
+
// eslint-disable-next-line react/jsx-sort-props
|
200
|
+
ref: this.setTransitionEl }, h("div", { class: CSS.header }, this.renderCloseButton(), h("header", { class: CSS.title }, h("slot", { name: CSS.header }))), this.renderContentTop(), h("div", { class: {
|
201
|
+
[CSS.content]: true,
|
202
|
+
[CSS.contentNoFooter]: !this.hasFooter,
|
203
|
+
},
|
204
|
+
// eslint-disable-next-line react/jsx-sort-props
|
205
|
+
ref: (el) => (this.modalContent = el) }, h("slot", { name: SLOTS.content })), this.renderContentBottom(), this.renderFooter()))));
|
206
|
+
}
|
207
|
+
renderFooter() {
|
208
|
+
return this.hasFooter ? (h("div", { class: CSS.footer, key: "footer" }, h("span", { class: CSS.back }, h("slot", { name: SLOTS.back })), h("span", { class: CSS.secondary }, h("slot", { name: SLOTS.secondary })), h("span", { class: CSS.primary }, h("slot", { name: SLOTS.primary })))) : null;
|
209
|
+
}
|
210
|
+
renderContentTop() {
|
211
|
+
return (h("div", { class: CSS.contentTop, hidden: !this.hasContentTop }, h("slot", { name: SLOTS.contentTop, onSlotchange: this.contentTopSlotChangeHandler })));
|
212
|
+
}
|
213
|
+
renderContentBottom() {
|
214
|
+
return (h("div", { class: CSS.contentBottom, hidden: !this.hasContentBottom }, h("slot", { name: SLOTS.contentBottom, onSlotchange: this.contentBottomSlotChangeHandler })));
|
215
|
+
}
|
216
|
+
renderCloseButton() {
|
217
|
+
return !this.closeButtonDisabled ? (h("button", { "aria-label": this.messages.close, class: CSS.close, key: "button", onClick: this.close, title: this.messages.close,
|
218
|
+
// eslint-disable-next-line react/jsx-sort-props
|
219
|
+
ref: (el) => (this.closeButtonEl = el) }, h("calcite-icon", { icon: ICONS.close, scale: this.scale === "s" ? "s" : this.scale === "m" ? "m" : this.scale === "l" ? "l" : null }))) : null;
|
220
|
+
}
|
221
|
+
renderStyle() {
|
222
|
+
if (!this.fullscreen && (this.cssWidth || this.cssHeight)) {
|
223
|
+
return (h("style", null, `.${CSS.container} {
|
224
|
+
${this.docked && this.cssWidth ? `align-items: center !important;` : ""}
|
225
|
+
}
|
226
|
+
.${CSS.modal} {
|
227
|
+
block-size: ${this.cssHeight ? this.cssHeight : "auto"} !important;
|
228
|
+
${this.cssWidth ? `inline-size: ${this.cssWidth} !important;` : ""}
|
229
|
+
${this.cssWidth ? `max-inline-size: ${this.cssWidth} !important;` : ""}
|
230
|
+
${this.docked ? `border-radius: var(--calcite-border-radius) !important;` : ""}
|
231
|
+
}
|
232
|
+
@media screen and (max-width: ${this.cssWidth}) {
|
233
|
+
.${CSS.container} {
|
234
|
+
${this.docked ? `align-items: flex-end !important;` : ""}
|
235
|
+
}
|
236
|
+
.${CSS.modal} {
|
237
|
+
max-block-size: 100% !important;
|
238
|
+
inline-size: 100% !important;
|
239
|
+
max-inline-size: 100% !important;
|
240
|
+
min-inline-size: 100% !important;
|
241
|
+
margin: 0 !important;
|
242
|
+
${!this.docked ? `block-size: 100% !important;` : ""}
|
243
|
+
${!this.docked ? `border-radius: 0 !important;` : ""}
|
244
|
+
${this.docked
|
245
|
+
? `border-radius: var(--calcite-border-radius) var(--calcite-border-radius) 0 0 !important;`
|
246
|
+
: ""}
|
247
|
+
}
|
248
|
+
}
|
249
|
+
`));
|
250
|
+
}
|
251
|
+
}
|
252
|
+
effectiveLocaleChange() {
|
253
|
+
updateMessages(this, this.effectiveLocale);
|
254
|
+
}
|
255
|
+
//--------------------------------------------------------------------------
|
256
|
+
//
|
257
|
+
// Event Listeners
|
258
|
+
//
|
259
|
+
//--------------------------------------------------------------------------
|
260
|
+
handleEscape(event) {
|
261
|
+
if (this.open && !this.escapeDisabled && event.key === "Escape" && !event.defaultPrevented) {
|
262
|
+
this.close();
|
263
|
+
event.preventDefault();
|
264
|
+
}
|
265
|
+
}
|
266
|
+
//--------------------------------------------------------------------------
|
267
|
+
//
|
268
|
+
// Public Methods
|
269
|
+
//
|
270
|
+
//--------------------------------------------------------------------------
|
271
|
+
/**
|
272
|
+
* Sets focus on the component's "close" button (the first focusable item).
|
273
|
+
*
|
274
|
+
*/
|
275
|
+
async setFocus() {
|
276
|
+
await componentFocusable(this);
|
277
|
+
focusFirstTabbable(this.el);
|
278
|
+
}
|
279
|
+
/**
|
280
|
+
* Updates the element(s) that are used within the focus-trap of the component.
|
281
|
+
*/
|
282
|
+
async updateFocusTrapElements() {
|
283
|
+
updateFocusTrapElements(this);
|
284
|
+
}
|
285
|
+
/**
|
286
|
+
* Sets the scroll top of the component's content.
|
287
|
+
*
|
288
|
+
* @param top
|
289
|
+
* @param left
|
290
|
+
*/
|
291
|
+
async scrollContent(top = 0, left = 0) {
|
292
|
+
if (this.modalContent) {
|
293
|
+
if (this.modalContent.scrollTo) {
|
294
|
+
this.modalContent.scrollTo({ top, left, behavior: "smooth" });
|
295
|
+
}
|
296
|
+
else {
|
297
|
+
this.modalContent.scrollTop = top;
|
298
|
+
this.modalContent.scrollLeft = left;
|
299
|
+
}
|
300
|
+
}
|
301
|
+
}
|
302
|
+
onBeforeOpen() {
|
303
|
+
this.transitionEl.classList.add(CSS.openingActive);
|
304
|
+
this.calciteModalBeforeOpen.emit();
|
305
|
+
}
|
306
|
+
onOpen() {
|
307
|
+
this.transitionEl.classList.remove(CSS.openingIdle, CSS.openingActive);
|
308
|
+
this.calciteModalOpen.emit();
|
309
|
+
activateFocusTrap(this);
|
310
|
+
}
|
311
|
+
onBeforeClose() {
|
312
|
+
this.transitionEl.classList.add(CSS.closingActive);
|
313
|
+
this.calciteModalBeforeClose.emit();
|
314
|
+
}
|
315
|
+
onClose() {
|
316
|
+
this.transitionEl.classList.remove(CSS.closingIdle, CSS.closingActive);
|
317
|
+
this.calciteModalClose.emit();
|
318
|
+
deactivateFocusTrap(this);
|
319
|
+
}
|
320
|
+
async toggleModal(value) {
|
321
|
+
var _a, _b;
|
322
|
+
onToggleOpenCloseComponent(this);
|
323
|
+
if (value) {
|
324
|
+
(_a = this.transitionEl) === null || _a === void 0 ? void 0 : _a.classList.add(CSS.openingIdle);
|
325
|
+
this.openModal();
|
326
|
+
}
|
327
|
+
else {
|
328
|
+
(_b = this.transitionEl) === null || _b === void 0 ? void 0 : _b.classList.add(CSS.closingIdle);
|
329
|
+
this.close();
|
330
|
+
}
|
331
|
+
}
|
332
|
+
/** Open the modal */
|
333
|
+
openModal() {
|
334
|
+
this.el.addEventListener("calciteModalOpen", this.openEnd);
|
335
|
+
this.open = true;
|
336
|
+
this.isOpen = true;
|
337
|
+
const titleEl = getSlotted(this.el, SLOTS.header);
|
338
|
+
const contentEl = getSlotted(this.el, SLOTS.content);
|
339
|
+
this.titleId = ensureId(titleEl);
|
340
|
+
this.contentId = ensureId(contentEl);
|
341
|
+
if (!this.slottedInShell) {
|
342
|
+
this.initialOverflowCSS = document.documentElement.style.overflow;
|
343
|
+
// use an inline style instead of a utility class to avoid global class declarations.
|
344
|
+
document.documentElement.style.setProperty("overflow", "hidden");
|
345
|
+
}
|
346
|
+
}
|
347
|
+
removeOverflowHiddenClass() {
|
348
|
+
document.documentElement.style.setProperty("overflow", this.initialOverflowCSS);
|
349
|
+
}
|
350
|
+
static get assetsDirs() { return ["assets"]; }
|
351
|
+
get el() { return this; }
|
352
|
+
static get watchers() { return {
|
353
|
+
"focusTrapDisabled": ["handleFocusTrapDisabled"],
|
354
|
+
"messageOverrides": ["onMessagesChange"],
|
355
|
+
"effectiveLocale": ["effectiveLocaleChange"],
|
356
|
+
"open": ["toggleModal"]
|
357
|
+
}; }
|
358
|
+
static get style() { return modalCss; }
|
359
|
+
}, [1, "calcite-modal", {
|
360
|
+
"open": [1540],
|
361
|
+
"beforeClose": [16],
|
362
|
+
"closeButtonDisabled": [516, "close-button-disabled"],
|
363
|
+
"focusTrapDisabled": [516, "focus-trap-disabled"],
|
364
|
+
"outsideCloseDisabled": [516, "outside-close-disabled"],
|
365
|
+
"docked": [516],
|
366
|
+
"escapeDisabled": [516, "escape-disabled"],
|
367
|
+
"scale": [513],
|
368
|
+
"width": [513],
|
369
|
+
"fullscreen": [516],
|
370
|
+
"kind": [513],
|
371
|
+
"messages": [1040],
|
372
|
+
"messageOverrides": [1040],
|
373
|
+
"slottedInShell": [1028, "slotted-in-shell"],
|
374
|
+
"cssWidth": [32],
|
375
|
+
"cssHeight": [32],
|
376
|
+
"hasFooter": [32],
|
377
|
+
"hasContentTop": [32],
|
378
|
+
"hasContentBottom": [32],
|
379
|
+
"isOpen": [32],
|
380
|
+
"effectiveLocale": [32],
|
381
|
+
"defaultMessages": [32],
|
382
|
+
"setFocus": [64],
|
383
|
+
"updateFocusTrapElements": [64],
|
384
|
+
"scrollContent": [64]
|
385
|
+
}, [[8, "keydown", "handleEscape"]]]);
|
386
|
+
function defineCustomElement() {
|
387
|
+
if (typeof customElements === "undefined") {
|
388
|
+
return;
|
389
|
+
}
|
390
|
+
const components = ["calcite-modal", "calcite-icon", "calcite-loader", "calcite-scrim"];
|
391
|
+
components.forEach(tagName => { switch (tagName) {
|
392
|
+
case "calcite-modal":
|
393
|
+
if (!customElements.get(tagName)) {
|
394
|
+
customElements.define(tagName, Modal);
|
395
|
+
}
|
396
|
+
break;
|
397
|
+
case "calcite-icon":
|
398
|
+
if (!customElements.get(tagName)) {
|
399
|
+
defineCustomElement$3();
|
400
|
+
}
|
401
|
+
break;
|
402
|
+
case "calcite-loader":
|
403
|
+
if (!customElements.get(tagName)) {
|
404
|
+
defineCustomElement$2();
|
405
|
+
}
|
406
|
+
break;
|
407
|
+
case "calcite-scrim":
|
408
|
+
if (!customElements.get(tagName)) {
|
409
|
+
defineCustomElement$1();
|
410
|
+
}
|
411
|
+
break;
|
412
|
+
} });
|
413
|
+
}
|
414
|
+
defineCustomElement();
|
415
|
+
|
416
|
+
export { Modal as M, defineCustomElement as d };
|