@ionic/core 8.7.19-dev.11772655618.1af0949f → 8.7.19-dev.11773072221.15efeed0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/index.d.ts +0 -2
- package/components/index.js +114 -1
- package/components/ion-accordion-group.js +268 -1
- package/components/ion-accordion.js +456 -1
- package/components/ion-action-sheet.js +6 -1
- package/components/ion-alert.js +6 -1
- package/components/ion-app.js +132 -1
- package/components/ion-avatar.js +41 -1
- package/components/ion-back-button.js +130 -1
- package/components/ion-backdrop.js +6 -1
- package/components/ion-badge.js +47 -1
- package/components/ion-breadcrumb.js +137 -1
- package/components/ion-breadcrumbs.js +164 -1
- package/components/ion-button.js +6 -1
- package/components/ion-buttons.js +6 -1
- package/components/ion-card-content.js +45 -1
- package/components/ion-card-header.js +56 -1
- package/components/ion-card-subtitle.js +48 -1
- package/components/ion-card-title.js +48 -1
- package/components/ion-card.js +107 -1
- package/components/ion-checkbox.js +6 -1
- package/components/ion-chip.js +66 -1
- package/components/ion-col.js +163 -1
- package/components/ion-content.js +6 -1
- package/components/ion-datetime-button.js +383 -1
- package/components/ion-datetime.js +2047 -1
- package/components/ion-fab-button.js +151 -1
- package/components/ion-fab-list.js +73 -1
- package/components/ion-fab.js +101 -1
- package/components/ion-footer.js +179 -1
- package/components/ion-grid.js +46 -1
- package/components/ion-header.js +6 -1
- package/components/ion-icon.js +6 -1
- package/components/ion-img.js +133 -1
- package/components/ion-infinite-scroll-content.js +69 -1
- package/components/ion-infinite-scroll.js +236 -1
- package/components/ion-input-otp.js +682 -1
- package/components/ion-input-password-toggle.js +128 -1
- package/components/ion-input.js +646 -1
- package/components/ion-item-divider.js +59 -1
- package/components/ion-item-group.js +46 -1
- package/components/ion-item-option.js +91 -1
- package/components/ion-item-options.js +73 -1
- package/components/ion-item-sliding.js +457 -1
- package/components/ion-item.js +6 -1
- package/components/ion-label.js +6 -1
- package/components/ion-list-header.js +6 -1
- package/components/ion-list.js +6 -1
- package/components/ion-loading.js +343 -1
- package/components/ion-menu-button.js +109 -1
- package/components/ion-menu-toggle.js +64 -1
- package/components/ion-menu.js +741 -1
- package/components/ion-modal.js +6 -1
- package/components/ion-nav-link.js +64 -1
- package/components/ion-nav.js +951 -1
- package/components/ion-note.js +47 -1
- package/components/ion-picker-column-option.js +6 -1
- package/components/ion-picker-column.js +6 -1
- package/components/ion-picker-legacy-column.js +6 -1
- package/components/ion-picker-legacy.js +342 -1
- package/components/ion-picker.js +6 -1
- package/components/ion-popover.js +6 -1
- package/components/ion-progress-bar.js +100 -1
- package/components/ion-radio-group.js +6 -1
- package/components/ion-radio.js +6 -1
- package/components/ion-range.js +844 -1
- package/components/ion-refresher-content.js +88 -1
- package/components/ion-refresher.js +750 -1
- package/components/ion-reorder-group.js +322 -1
- package/components/ion-reorder.js +60 -1
- package/components/ion-ripple-effect.js +6 -1
- package/components/ion-route-redirect.js +45 -1
- package/components/ion-route.js +74 -1
- package/components/ion-router-link.js +61 -1
- package/components/ion-router-outlet.js +226 -1
- package/components/ion-router.js +840 -1
- package/components/ion-row.js +36 -1
- package/components/ion-searchbar.js +540 -1
- package/components/ion-segment-button.js +173 -1
- package/components/ion-segment-content.js +35 -1
- package/components/ion-segment-view.js +142 -1
- package/components/ion-segment.js +602 -1
- package/components/ion-select-modal.js +6 -1
- package/components/ion-select-option.js +46 -1
- package/components/ion-select-popover.js +6 -1
- package/components/ion-select.js +1035 -1
- package/components/ion-skeleton-text.js +64 -1
- package/components/ion-spinner.js +6 -1
- package/components/ion-split-pane.js +190 -1
- package/components/ion-tab-bar.js +135 -1
- package/components/ion-tab-button.js +127 -1
- package/components/ion-tab.js +82 -1
- package/components/ion-tabs.js +204 -1
- package/components/ion-text.js +42 -1
- package/components/ion-textarea.js +554 -1
- package/components/ion-thumbnail.js +36 -1
- package/components/ion-title.js +6 -1
- package/components/ion-toast.js +938 -1
- package/components/ion-toggle.js +360 -1
- package/components/ion-toolbar.js +6 -1
- package/components/p-B-hirT0v.js +35 -1
- package/components/p-B25GjpND.js +71 -0
- package/components/p-BANeLH_G.js +290 -0
- package/components/p-BBFQmhcD.js +59 -0
- package/components/p-BC-awmYt.js +306 -0
- package/components/p-BHbOsu99.js +501 -0
- package/components/p-BTEOs1at.js +192 -1
- package/components/p-BTlwXR9e.js +73 -0
- package/components/p-BcazQttQ.js +612 -0
- package/components/p-BdGshsIJ.js +226 -0
- package/components/p-BfS7vSpC.js +147 -0
- package/components/p-BhRFCLuX.js +675 -0
- package/components/p-Bhnhnzjz.js +75 -0
- package/components/p-BmVRXR1y.js +72 -1
- package/components/p-BmcqD0EN.js +153 -0
- package/components/p-Boi6hecl.js +115 -0
- package/components/p-Bt_moUyl.js +232 -0
- package/components/p-Bxl5etF4.js +146 -0
- package/components/p-ByjmWt3s.js +139 -0
- package/components/p-C04oPyjT.js +54 -0
- package/components/p-C53feagD.js +15 -1
- package/components/p-C6dkQWq2.js +1626 -0
- package/components/p-CFZWrvIQ.js +194 -0
- package/components/p-CIGNaXM1.js +10 -1
- package/{dist/esm/config-TO1rZH52.js → components/p-CIJwkzL6.js} +1 -1
- package/components/p-CL12ApCQ.js +820 -0
- package/components/p-CO7fmmxt.js +29 -1
- package/components/p-CXJR56Oq.js +564 -0
- package/components/p-Cdm3dKWf.js +108 -0
- package/components/p-Cl0B-RWe.js +452 -1
- package/components/p-CslsoGzv.js +192 -0
- package/components/p-CtWGkNnJ.js +162 -1
- package/components/p-Cyd00tgZ.js +167 -0
- package/components/p-CzAJ3ArC.js +380 -0
- package/components/p-CzW34QBh.js +12 -0
- package/components/p-D0zXRwcr.js +196 -0
- package/components/p-D13Eaw-8.js +76 -1
- package/components/p-D5hF6rwn.js +339 -0
- package/components/p-D6Ynv7Xh.js +141 -1
- package/components/p-D8eD2iBA.js +67 -0
- package/components/p-DGOrLIyS.js +481 -0
- package/components/p-DJztqcrH.js +14 -1
- package/components/p-DK2Bn1Mc.js +305 -0
- package/components/p-DKRQWlK2.js +598 -0
- package/components/p-DNDUsygf.js +128 -0
- package/components/p-DTWZF6wg.js +418 -0
- package/components/p-DWoUQeZ3.js +3012 -0
- package/components/p-DX0w75a9.js +420 -0
- package/components/p-DiVJyqlX.js +40 -1
- package/components/p-Dt8zaCLQ.js +92 -0
- package/components/p-Dtdm8lKC.js +44 -1
- package/components/p-DyFBFrV7.js +264 -0
- package/components/p-DyHPCMyn.js +39 -0
- package/components/p-LgLeKTkH.js +112 -0
- package/components/p-NhiRFRn9.js +50 -0
- package/components/p-OuiHmXO5.js +646 -0
- package/components/p-Wro9IPHE.js +459 -0
- package/components/p-ZjP4CjeZ.js +4 -1
- package/components/p-aIWC4ZEV.js +305 -0
- package/components/p-c-XJ9XhZ.js +915 -0
- package/components/p-cyNmxje6.js +155 -1
- package/components/p-fVuFT3Wd.js +78 -0
- package/components/p-hHmYLOfE.js +87 -1
- package/components/p-iyo0Toaz.js +2822 -0
- package/{dist/esm/framework-delegate-CyxE1S_P.js → components/p-l_lso3Zl.js} +1 -1
- package/components/p-mQp4lwQD.js +1638 -0
- package/dist/cjs/{animation-Dg4yiuR2.js → animation-Bt3H9L1C.js} +1 -1
- package/dist/cjs/app-globals-Ciccnk9_.js +10 -0
- package/dist/cjs/{button-active-FscMI17-.js → button-active-CMc8cD90.js} +1 -1
- package/dist/cjs/{config-BukYi_pW.js → config-C5fsO43a.js} +1 -1
- package/dist/cjs/{data-BYlBjkMU.js → data-JwZKaIQB.js} +1 -1
- package/dist/cjs/{framework-delegate-CRgp8o_p.js → framework-delegate-DMJRBuDi.js} +1 -1
- package/dist/cjs/{hardware-back-button-C4rMJ5uI.js → hardware-back-button-VCK4V3mG.js} +1 -1
- package/dist/cjs/{helpers-CxTYJdbT.js → helpers-DrTqNghc.js} +1 -1
- package/dist/cjs/{index-C845Ti6K.js → index-094mMFB-.js} +4 -4
- package/dist/cjs/{index-YcSftOMz.js → index-C534ULug.js} +2 -2
- package/dist/cjs/{index-MbaBbWXk.js → index-CO6eryBo.js} +2 -2
- package/dist/cjs/{index-CqT-2gKy.js → index-D6Wc6v08.js} +382 -503
- package/dist/cjs/{index-CFUwM5x_.js → index-DrMUZJj6.js} +5 -5
- package/dist/cjs/index.cjs.js +12 -12
- package/dist/cjs/{input-shims-Dl5cnc_e.js → input-shims-CuMghsQ-.js} +3 -3
- package/dist/cjs/{input.utils-DmeJ8dmo.js → input.utils-B_QROI2g.js} +2 -2
- package/dist/cjs/ion-accordion_2.cjs.entry.js +15 -23
- package/dist/cjs/ion-action-sheet.cjs.entry.js +15 -21
- package/dist/cjs/ion-alert.cjs.entry.js +17 -25
- package/dist/cjs/ion-app_8.cjs.entry.js +43 -48
- package/dist/cjs/ion-avatar_3.cjs.entry.js +12 -12
- package/dist/cjs/ion-back-button.cjs.entry.js +7 -7
- package/dist/cjs/ion-backdrop.cjs.entry.js +6 -6
- package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +14 -20
- package/dist/cjs/ion-button_2.cjs.entry.js +18 -36
- package/dist/cjs/ion-card_5.cjs.entry.js +23 -23
- package/dist/cjs/ion-checkbox.cjs.entry.js +7 -7
- package/dist/cjs/ion-chip.cjs.entry.js +6 -6
- package/dist/cjs/ion-col_3.cjs.entry.js +8 -8
- package/dist/cjs/ion-datetime-button.cjs.entry.js +8 -8
- package/dist/cjs/ion-datetime_3.cjs.entry.js +46 -75
- package/dist/cjs/ion-fab_3.cjs.entry.js +13 -17
- package/dist/cjs/ion-img.cjs.entry.js +6 -8
- package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +13 -17
- package/dist/cjs/ion-input-otp.cjs.entry.js +10 -16
- package/dist/cjs/ion-input-password-toggle.cjs.entry.js +7 -9
- package/dist/cjs/ion-input.cjs.entry.js +13 -21
- package/dist/cjs/ion-item-option_3.cjs.entry.js +17 -19
- package/dist/cjs/ion-item_8.cjs.entry.js +42 -48
- package/dist/cjs/ion-loading.cjs.entry.js +14 -18
- package/dist/cjs/ion-menu_3.cjs.entry.js +22 -30
- package/dist/cjs/ion-modal.cjs.entry.js +59 -237
- package/dist/cjs/ion-nav_2.cjs.entry.js +10 -14
- package/dist/cjs/ion-picker-column-option.cjs.entry.js +8 -10
- package/dist/cjs/ion-picker-column.cjs.entry.js +7 -11
- package/dist/cjs/ion-picker.cjs.entry.js +6 -6
- package/dist/cjs/ion-popover.cjs.entry.js +15 -21
- package/dist/cjs/ion-progress-bar.cjs.entry.js +7 -7
- package/dist/cjs/ion-radio_2.cjs.entry.js +13 -17
- package/dist/cjs/ion-range.cjs.entry.js +57 -205
- package/dist/cjs/ion-refresher_2.cjs.entry.js +14 -45
- package/dist/cjs/ion-reorder_2.cjs.entry.js +11 -13
- package/dist/cjs/ion-ripple-effect.cjs.entry.js +4 -4
- package/dist/cjs/ion-route_4.cjs.entry.js +10 -20
- package/dist/cjs/ion-searchbar.cjs.entry.js +12 -22
- package/dist/cjs/ion-segment-content.cjs.entry.js +3 -3
- package/dist/cjs/ion-segment-view.cjs.entry.js +8 -13
- package/dist/cjs/ion-segment_2.cjs.entry.js +16 -26
- package/dist/cjs/ion-select-modal.cjs.entry.js +13 -17
- package/dist/cjs/ion-select_3.cjs.entry.js +24 -33
- package/dist/cjs/ion-spinner.cjs.entry.js +4 -4
- package/dist/cjs/ion-split-pane.cjs.entry.js +9 -15
- package/dist/cjs/ion-tab-bar_2.cjs.entry.js +12 -14
- package/dist/cjs/ion-tab_2.cjs.entry.js +8 -10
- package/dist/cjs/ion-text.cjs.entry.js +4 -4
- package/dist/cjs/ion-textarea.cjs.entry.js +14 -20
- package/dist/cjs/ion-toast.cjs.entry.js +15 -21
- package/dist/cjs/ion-toggle.cjs.entry.js +8 -10
- package/dist/cjs/{ionic-global-Bc3kJi1Z.js → ionic-global-HMVqOFGO.js} +1 -1
- package/dist/cjs/ionic.cjs.js +5 -5
- package/dist/cjs/{ios.transition-trBiC95R.js → ios.transition-BOt_uW73.js} +4 -4
- package/dist/cjs/loader.cjs.js +4 -4
- package/dist/cjs/{md.transition-CUQECuvD.js → md.transition-Dt968VXB.js} +4 -4
- package/dist/cjs/{notch-controller-sD-lTpdc.js → notch-controller-Bzqhjm4f.js} +1 -1
- package/dist/cjs/{overlays-C2jiBSNQ.js → overlays-B2b-TTbl.js} +5 -5
- package/dist/cjs/{status-tap-CCJk5VgT.js → status-tap-g0sWWkXk.js} +3 -3
- package/dist/cjs/{swipe-back-BGhTQ1CU.js → swipe-back-BIayeNOD.js} +2 -2
- package/dist/collection/collection-manifest.json +2 -2
- package/dist/collection/components/accordion-group/accordion-group.js +2 -4
- package/dist/collection/components/action-sheet/action-sheet.js +10 -20
- package/dist/collection/components/alert/alert.js +12 -24
- package/dist/collection/components/back-button/back-button.js +2 -4
- package/dist/collection/components/badge/badge.js +1 -2
- package/dist/collection/components/breadcrumb/breadcrumb.js +4 -8
- package/dist/collection/components/breadcrumbs/breadcrumbs.js +2 -4
- package/dist/collection/components/button/button.js +3 -6
- package/dist/collection/components/card/card.js +3 -6
- package/dist/collection/components/card-header/card-header.js +1 -2
- package/dist/collection/components/card-subtitle/card-subtitle.js +1 -2
- package/dist/collection/components/card-title/card-title.js +1 -2
- package/dist/collection/components/checkbox/checkbox.js +2 -4
- package/dist/collection/components/chip/chip.js +1 -2
- package/dist/collection/components/content/content.js +7 -12
- package/dist/collection/components/datetime/datetime.js +22 -43
- package/dist/collection/components/datetime-button/datetime-button.js +1 -2
- package/dist/collection/components/fab-button/fab-button.js +3 -6
- package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +2 -4
- package/dist/collection/components/input/input.js +6 -11
- package/dist/collection/components/input-otp/input-otp.js +4 -8
- package/dist/collection/components/input-password-toggle/input-password-toggle.js +2 -4
- package/dist/collection/components/item/item.js +5 -10
- package/dist/collection/components/item-divider/item-divider.js +3 -7
- package/dist/collection/components/item-option/item-option.js +3 -6
- package/dist/collection/components/item-options/item-options.js +1 -2
- package/dist/collection/components/item-sliding/item-sliding.js +1 -2
- package/dist/collection/components/label/label.js +3 -6
- package/dist/collection/components/list-header/list-header.js +3 -6
- package/dist/collection/components/loading/loading.js +11 -22
- package/dist/collection/components/menu/menu.js +5 -10
- package/dist/collection/components/menu-button/menu-button.js +1 -2
- package/dist/collection/components/modal/gestures/sheet.js +12 -120
- package/dist/collection/components/modal/gestures/swipe-to-close.js +1 -54
- package/dist/collection/components/modal/modal.js +45 -127
- package/dist/collection/components/nav/nav.js +45 -89
- package/dist/collection/components/nav-link/nav-link.js +5 -9
- package/dist/collection/components/note/note.js +1 -2
- package/dist/collection/components/picker/picker.js +1 -2
- package/dist/collection/components/picker-column/picker-column.js +3 -6
- package/dist/collection/components/picker-column-option/picker-column-option.js +1 -2
- package/dist/collection/components/picker-legacy/picker.js +12 -24
- package/dist/collection/components/picker-legacy-column/picker-column.js +2 -4
- package/dist/collection/components/popover/popover.js +17 -33
- package/dist/collection/components/progress-bar/progress-bar.js +1 -2
- package/dist/collection/components/radio/radio.js +1 -2
- package/dist/collection/components/radio-group/radio-group.js +3 -6
- package/dist/collection/components/range/range.js +53 -214
- package/dist/collection/components/refresher/refresher.js +5 -73
- package/dist/collection/components/refresher-content/refresher-content.js +4 -8
- package/dist/collection/components/reorder-group/reorder-group.js +3 -6
- package/dist/collection/components/route/route.js +2 -4
- package/dist/collection/components/router/router.js +5 -10
- package/dist/collection/components/router-link/router-link.js +3 -6
- package/dist/collection/components/router-outlet/router-outlet.js +9 -18
- package/dist/collection/components/searchbar/searchbar.js +6 -11
- package/dist/collection/components/segment/segment.js +5 -10
- package/dist/collection/components/segment-button/segment-button.js +2 -4
- package/dist/collection/components/segment-view/segment-view.ios.css +1 -2
- package/dist/collection/components/segment-view/segment-view.js +4 -30
- package/dist/collection/components/segment-view/segment-view.md.css +1 -2
- package/dist/collection/components/select/select.js +8 -17
- package/dist/collection/components/select-modal/select-modal.js +2 -27
- package/dist/collection/components/select-popover/select-popover.js +1 -2
- package/dist/collection/components/skeleton-text/skeleton-text.js +1 -2
- package/dist/collection/components/spinner/spinner.js +2 -4
- package/dist/collection/components/tab/tab.js +2 -4
- package/dist/collection/components/tab-bar/tab-bar.js +2 -4
- package/dist/collection/components/tab-button/tab-button.js +2 -4
- package/dist/collection/components/tabs/tabs.js +2 -4
- package/dist/collection/components/text/text.js +1 -2
- package/dist/collection/components/textarea/textarea.js +7 -10
- package/dist/collection/components/title/title.js +2 -4
- package/dist/collection/components/toast/toast.js +17 -34
- package/dist/collection/components/toggle/toggle.js +2 -4
- package/dist/collection/components/toolbar/toolbar.js +1 -2
- package/dist/docs.d.ts +0 -37
- package/dist/docs.json +389 -1186
- package/dist/esm/{animation-CnGMT4ji.js → animation-Dt8bGnA-.js} +1 -1
- package/dist/esm/app-globals-BDSf8fOA.js +8 -0
- package/dist/esm/{button-active-BBx21brx.js → button-active-L570Swow.js} +1 -1
- package/dist/esm/config-mCdtaoPe.js +195 -0
- package/dist/esm/{data-B9iGR5YO.js → data-DCORV9FH.js} +1 -1
- package/dist/esm/framework-delegate-BYawdMXj.js +140 -0
- package/dist/esm/{hardware-back-button-CTe4XmL7.js → hardware-back-button-CPLxO-Ev.js} +1 -1
- package/dist/esm/{helpers-Tl8jw6S2.js → helpers-DEn3pfjm.js} +1 -1
- package/dist/esm/{index-hW6eNZ3o.js → index-Bs3kT4bc.js} +2 -2
- package/dist/esm/{index-IGIE5vDm.js → index-C8IsBmNU.js} +382 -503
- package/dist/esm/{index-B2KwgBLx.js → index-CvDIirVx.js} +5 -5
- package/dist/esm/{index-BtUdxPjv.js → index-ceb5RaMT.js} +2 -2
- package/dist/esm/{index-B-hkiOUh.js → index-r2D9DEro.js} +4 -4
- package/dist/esm/index.js +12 -12
- package/dist/esm/{input-shims-AaDhOpKN.js → input-shims-D6H3ZaWt.js} +3 -3
- package/dist/esm/{input.utils-Bxa_DQ7-.js → input.utils-DrvTa8gz.js} +2 -2
- package/dist/esm/ion-accordion_2.entry.js +15 -23
- package/dist/esm/ion-action-sheet.entry.js +15 -21
- package/dist/esm/ion-alert.entry.js +17 -25
- package/dist/esm/ion-app_8.entry.js +43 -48
- package/dist/esm/ion-avatar_3.entry.js +12 -12
- package/dist/esm/ion-back-button.entry.js +7 -7
- package/dist/esm/ion-backdrop.entry.js +6 -6
- package/dist/esm/ion-breadcrumb_2.entry.js +14 -20
- package/dist/esm/ion-button_2.entry.js +18 -36
- package/dist/esm/ion-card_5.entry.js +23 -23
- package/dist/esm/ion-checkbox.entry.js +7 -7
- package/dist/esm/ion-chip.entry.js +6 -6
- package/dist/esm/ion-col_3.entry.js +8 -8
- package/dist/esm/ion-datetime-button.entry.js +8 -8
- package/dist/esm/ion-datetime_3.entry.js +46 -75
- package/dist/esm/ion-fab_3.entry.js +13 -17
- package/dist/esm/ion-img.entry.js +6 -8
- package/dist/esm/ion-infinite-scroll_2.entry.js +13 -17
- package/dist/esm/ion-input-otp.entry.js +10 -16
- package/dist/esm/ion-input-password-toggle.entry.js +7 -9
- package/dist/esm/ion-input.entry.js +13 -21
- package/dist/esm/ion-item-option_3.entry.js +17 -19
- package/dist/esm/ion-item_8.entry.js +42 -48
- package/dist/esm/ion-loading.entry.js +14 -18
- package/dist/esm/ion-menu_3.entry.js +22 -30
- package/dist/esm/ion-modal.entry.js +59 -237
- package/dist/esm/ion-nav_2.entry.js +10 -14
- package/dist/esm/ion-picker-column-option.entry.js +8 -10
- package/dist/esm/ion-picker-column.entry.js +7 -11
- package/dist/esm/ion-picker.entry.js +6 -6
- package/dist/esm/ion-popover.entry.js +15 -21
- package/dist/esm/ion-progress-bar.entry.js +7 -7
- package/dist/esm/ion-radio_2.entry.js +13 -17
- package/dist/esm/ion-range.entry.js +57 -205
- package/dist/esm/ion-refresher_2.entry.js +14 -45
- package/dist/esm/ion-reorder_2.entry.js +11 -13
- package/dist/esm/ion-ripple-effect.entry.js +4 -4
- package/dist/esm/ion-route_4.entry.js +10 -20
- package/dist/esm/ion-searchbar.entry.js +12 -22
- package/dist/esm/ion-segment-content.entry.js +3 -3
- package/dist/esm/ion-segment-view.entry.js +8 -13
- package/dist/esm/ion-segment_2.entry.js +16 -26
- package/dist/esm/ion-select-modal.entry.js +13 -17
- package/dist/esm/ion-select_3.entry.js +24 -33
- package/dist/esm/ion-spinner.entry.js +4 -4
- package/dist/esm/ion-split-pane.entry.js +9 -15
- package/dist/esm/ion-tab-bar_2.entry.js +12 -14
- package/dist/esm/ion-tab_2.entry.js +8 -10
- package/dist/esm/ion-text.entry.js +4 -4
- package/dist/esm/ion-textarea.entry.js +14 -20
- package/dist/esm/ion-toast.entry.js +15 -21
- package/dist/esm/ion-toggle.entry.js +8 -10
- package/dist/esm/{ionic-global-DfbeLwcV.js → ionic-global-CDrldh-5.js} +1 -1
- package/dist/esm/ionic.js +6 -6
- package/dist/esm/{ios.transition--aMF-pDH.js → ios.transition-BDzw0_Hm.js} +4 -4
- package/dist/esm/loader.js +5 -5
- package/dist/esm/{md.transition-BEVbfm8j.js → md.transition-BzDYi3qq.js} +4 -4
- package/dist/esm/{notch-controller-DAcvKU57.js → notch-controller-BwelN_JM.js} +1 -1
- package/dist/esm/{overlays-F8GHPo-e.js → overlays-D5YkFThA.js} +5 -5
- package/dist/esm/{status-tap-BfJqFSLF.js → status-tap-5DQ7Fc4V.js} +3 -3
- package/dist/esm/{swipe-back-BZBFwTQV.js → swipe-back-BKw2CAHc.js} +2 -2
- package/dist/html.html-data.json +109 -117
- package/dist/ionic/index.esm.js +1 -1
- package/dist/ionic/ionic.esm.js +1 -1
- package/dist/ionic/{p-f2deaceb.entry.js → p-0ca0fe9c.entry.js} +1 -1
- package/dist/ionic/p-11518b31.entry.js +4 -0
- package/dist/ionic/{p-80cac7a2.entry.js → p-11aa58d6.entry.js} +1 -1
- package/dist/ionic/p-221a3d8c.entry.js +4 -0
- package/dist/ionic/{p-b325a113.entry.js → p-2668188b.entry.js} +1 -1
- package/dist/ionic/p-2ac254dc.entry.js +4 -0
- package/dist/ionic/p-2bd1ea35.entry.js +4 -0
- package/dist/ionic/p-30333874.entry.js +4 -0
- package/dist/ionic/p-31db96da.entry.js +4 -0
- package/dist/ionic/p-34642fa1.entry.js +4 -0
- package/dist/ionic/p-35696017.entry.js +4 -0
- package/dist/ionic/p-363d1209.entry.js +4 -0
- package/dist/ionic/p-46a38cfd.entry.js +4 -0
- package/dist/ionic/{p-301c43f8.entry.js → p-49d06882.entry.js} +1 -1
- package/dist/ionic/p-4eec1a5e.entry.js +4 -0
- package/dist/ionic/p-530fcd71.entry.js +4 -0
- package/dist/ionic/{p-9833cf63.entry.js → p-582824c5.entry.js} +1 -1
- package/dist/ionic/{p-1b169fb6.entry.js → p-5c8f7253.entry.js} +1 -1
- package/dist/ionic/p-5d6fb6e3.entry.js +4 -0
- package/dist/ionic/{p-e6cedcd7.entry.js → p-652318c3.entry.js} +1 -1
- package/dist/ionic/p-66fbe052.entry.js +4 -0
- package/dist/ionic/{p-9fae83d8.entry.js → p-675b1a31.entry.js} +1 -1
- package/dist/ionic/{p-bcaa827e.entry.js → p-6f37536a.entry.js} +1 -1
- package/dist/ionic/{p-370a60ee.entry.js → p-79bd78f9.entry.js} +1 -1
- package/dist/ionic/p-7babec72.entry.js +4 -0
- package/dist/ionic/{p-6af16209.entry.js → p-7cad388a.entry.js} +1 -1
- package/dist/ionic/{p-6b701daa.entry.js → p-7f98e710.entry.js} +1 -1
- package/dist/ionic/p-82d5bb3d.entry.js +4 -0
- package/dist/ionic/{p-7ca71c83.entry.js → p-906bb44d.entry.js} +1 -1
- package/dist/ionic/{p-23fac490.entry.js → p-915b3e3d.entry.js} +1 -1
- package/dist/ionic/{p-e663bc5a.entry.js → p-9575b654.entry.js} +1 -1
- package/dist/ionic/p-97eb0812.entry.js +4 -0
- package/dist/ionic/p-9b6d46f2.entry.js +4 -0
- package/dist/ionic/{p-DB_iPQC-.js → p-B0q1YL7N.js} +1 -1
- package/dist/ionic/{p-NFFyoJ4Q.js → p-BFvmZNyx.js} +1 -1
- package/dist/ionic/p-BKc55Xev.js +4 -0
- package/dist/ionic/{p-CYbRmDdy.js → p-BOVrCkpJ.js} +1 -1
- package/{components/p-Cy5XSfIk.js → dist/ionic/p-BYEqWnSg.js} +1 -1
- package/dist/ionic/p-Bmgaetn_.js +4 -0
- package/dist/ionic/{p-BAt5H1ac.js → p-C7hRNDhM.js} +1 -1
- package/dist/ionic/p-C8IsBmNU.js +5 -0
- package/dist/ionic/p-CJxh_yLS.js +4 -0
- package/dist/ionic/{p-CGmVTdWh.js → p-CTfR9YZG.js} +1 -1
- package/{components/p-C59ryAuS.js → dist/ionic/p-CwgG81ZD.js} +1 -1
- package/{components/p-BR3tZJmu.js → dist/ionic/p-D-eFFUkA.js} +1 -1
- package/{components/p-BS1TtEiJ.js → dist/ionic/p-D0dMcSkw.js} +1 -1
- package/dist/ionic/{p-DjriolRs.js → p-DCv9sLH2.js} +1 -1
- package/dist/ionic/{p-Bum7H1fw.js → p-DDb5r57F.js} +1 -1
- package/dist/ionic/{p-DLbbmF9h.js → p-DNcfiJwE.js} +1 -1
- package/{components/p-9VcRUwdB.js → dist/ionic/p-DUt5fQmA.js} +1 -1
- package/dist/ionic/p-DZRJwG4S.js +4 -0
- package/{components/p-BUbsoBOV.js → dist/ionic/p-DbQ5QkTP.js} +1 -1
- package/dist/ionic/{p-BxIcPWoV.js → p-Dc45iWE4.js} +1 -1
- package/{components/p-Cq8cQ0NL.js → dist/ionic/p-DdR6rpbR.js} +1 -1
- package/dist/ionic/{p-CYvM5g3q.js → p-MUoJJJwd.js} +1 -1
- package/dist/ionic/p-a4a9f5ae.entry.js +4 -0
- package/dist/ionic/{p-f5dfb9a3.entry.js → p-ac4eb91d.entry.js} +1 -1
- package/dist/ionic/{p-ca31010f.entry.js → p-b0a7585c.entry.js} +1 -1
- package/dist/ionic/p-b0ebf9f8.entry.js +4 -0
- package/dist/ionic/{p-294f4bb5.entry.js → p-b8551510.entry.js} +1 -1
- package/dist/ionic/{p-f8186550.entry.js → p-bce86e56.entry.js} +1 -1
- package/dist/ionic/p-be263062.entry.js +4 -0
- package/dist/ionic/p-c175d792.entry.js +4 -0
- package/dist/ionic/p-cc2a9936.entry.js +4 -0
- package/dist/ionic/p-cc45bcbc.entry.js +4 -0
- package/dist/ionic/p-d0a2a1ab.entry.js +4 -0
- package/dist/ionic/{p-b440381f.entry.js → p-d1f54e28.entry.js} +1 -1
- package/dist/ionic/{p-a84f2d21.entry.js → p-da7d04cc.entry.js} +1 -1
- package/dist/ionic/p-e4c57008.entry.js +4 -0
- package/dist/ionic/p-e5d6d0f0.entry.js +4 -0
- package/dist/ionic/p-f1dfee25.entry.js +4 -0
- package/dist/ionic/p-f9f7b9db.entry.js +4 -0
- package/dist/ionic/{p-c3cce9d8.entry.js → p-fb0271ae.entry.js} +1 -1
- package/dist/ionic/{p-e863ffe8.entry.js → p-fbb00634.entry.js} +1 -1
- package/dist/types/components/datetime/datetime.d.ts +0 -10
- package/dist/types/components/header/header.utils.d.ts +1 -2
- package/dist/types/components/item/item.d.ts +0 -2
- package/dist/types/components/item-divider/item-divider.d.ts +0 -3
- package/dist/types/components/item-option/item-option.d.ts +0 -2
- package/dist/types/components/list-header/list-header.d.ts +0 -2
- package/dist/types/components/modal/gestures/sheet.d.ts +2 -2
- package/dist/types/components/modal/gestures/swipe-to-close.d.ts +2 -2
- package/dist/types/components/modal/modal-interface.d.ts +0 -25
- package/dist/types/components/modal/modal.d.ts +1 -22
- package/dist/types/components/range/range-interface.d.ts +0 -1
- package/dist/types/components/range/range.d.ts +4 -44
- package/dist/types/components/refresher/refresher-interface.d.ts +0 -7
- package/dist/types/components/refresher/refresher.d.ts +3 -16
- package/dist/types/components/segment-view/segment-view.d.ts +0 -4
- package/dist/types/components/select/select.d.ts +0 -3
- package/dist/types/components/select-modal/select-modal.d.ts +0 -4
- package/dist/types/components.d.ts +191 -964
- package/dist/types/interface.d.ts +2 -2
- package/dist/types/stencil-public-runtime.d.ts +14 -126
- package/dist/types/utils/gesture/listener.d.ts +1 -2
- package/hydrate/index.d.ts +0 -12
- package/hydrate/index.js +1421 -5632
- package/hydrate/index.mjs +1422 -5631
- package/package.json +2 -2
- package/components/p-1KVKSLu5.js +0 -4
- package/components/p-ApmKVjaE.js +0 -4
- package/components/p-B6FQ0cKR.js +0 -4
- package/components/p-B6HaBl3o.js +0 -4
- package/components/p-B8b1Ukl9.js +0 -4
- package/components/p-BFxT89Wl.js +0 -4
- package/components/p-BJoMtgfR.js +0 -4
- package/components/p-BNAG-aVv.js +0 -4
- package/components/p-BSB38Tek.js +0 -4
- package/components/p-BTeL5HCK.js +0 -4
- package/components/p-BVnB3eEn.js +0 -4
- package/components/p-BYDc3hSE.js +0 -4
- package/components/p-BagjAGC0.js +0 -4
- package/components/p-BegtE7nr.js +0 -4
- package/components/p-BgwEQWW6.js +0 -4
- package/components/p-Bk2zuNWT.js +0 -4
- package/components/p-Bum_LjMh.js +0 -4
- package/components/p-BxwWvu-b.js +0 -4
- package/components/p-C4jPsTQa.js +0 -4
- package/components/p-C7AoMl7c.js +0 -4
- package/components/p-CBzELu-H.js +0 -4
- package/components/p-CDfQnFrd.js +0 -4
- package/components/p-CH0NYjKq.js +0 -4
- package/components/p-CU1SSH8_.js +0 -4
- package/components/p-CVF7ukTk.js +0 -4
- package/components/p-CgfaEEem.js +0 -4
- package/components/p-CgqKJg96.js +0 -4
- package/components/p-CneGxKsZ.js +0 -4
- package/components/p-CoA-aqGF.js +0 -4
- package/components/p-Csw8xuz4.js +0 -4
- package/components/p-Cwv-vmkN.js +0 -4
- package/components/p-Cyxa_4PV.js +0 -4
- package/components/p-Cz5nLPGT.js +0 -4
- package/components/p-D6NJwNJN.js +0 -4
- package/components/p-DHsZWn1l.js +0 -4
- package/components/p-DJMZehmW.js +0 -4
- package/components/p-DYdpXONG.js +0 -4
- package/components/p-DgbT0exM.js +0 -4
- package/components/p-YLXPWgVj.js +0 -4
- package/components/p-ak_d-z48.js +0 -4
- package/components/p-fpbh6w3f.js +0 -4
- package/components/p-kvaDs24J.js +0 -4
- package/components/p-vEbVo2hO.js +0 -4
- package/dist/cjs/app-globals-CLI8xCmk.js +0 -11
- package/dist/esm/app-globals-DhZjtldk.js +0 -9
- package/dist/ionic/p-031b76f7.entry.js +0 -4
- package/dist/ionic/p-045a6a42.entry.js +0 -4
- package/dist/ionic/p-07506134.entry.js +0 -4
- package/dist/ionic/p-084c25b2.entry.js +0 -4
- package/dist/ionic/p-0d8b5c38.entry.js +0 -4
- package/dist/ionic/p-16813ce7.entry.js +0 -4
- package/dist/ionic/p-16b65553.entry.js +0 -4
- package/dist/ionic/p-1b02923f.entry.js +0 -4
- package/dist/ionic/p-2a68388b.entry.js +0 -4
- package/dist/ionic/p-2f5a8140.entry.js +0 -4
- package/dist/ionic/p-3e143d1d.entry.js +0 -4
- package/dist/ionic/p-4819b469.entry.js +0 -4
- package/dist/ionic/p-4dd5e8e0.entry.js +0 -4
- package/dist/ionic/p-51c11c47.entry.js +0 -4
- package/dist/ionic/p-53f750a5.entry.js +0 -4
- package/dist/ionic/p-6b97f2a3.entry.js +0 -4
- package/dist/ionic/p-71e322f7.entry.js +0 -4
- package/dist/ionic/p-7620be24.entry.js +0 -4
- package/dist/ionic/p-771b27a5.entry.js +0 -4
- package/dist/ionic/p-96a2e768.entry.js +0 -4
- package/dist/ionic/p-9cbc6f1f.entry.js +0 -4
- package/dist/ionic/p-9cdbabbb.entry.js +0 -4
- package/dist/ionic/p-9eac4eb1.entry.js +0 -4
- package/dist/ionic/p-B8xlpH8p.js +0 -4
- package/dist/ionic/p-BW_TRJm8.js +0 -4
- package/dist/ionic/p-BvFYtOdE.js +0 -4
- package/dist/ionic/p-C0JvVFMv.js +0 -4
- package/dist/ionic/p-CmFz1Mjc.js +0 -4
- package/dist/ionic/p-CtA-yJYy.js +0 -4
- package/dist/ionic/p-D8HJQ1qq.js +0 -4
- package/dist/ionic/p-DTPR1Wpn.js +0 -4
- package/dist/ionic/p-DtVZDHlS.js +0 -4
- package/dist/ionic/p-IGIE5vDm.js +0 -5
- package/dist/ionic/p-a805674e.entry.js +0 -4
- package/dist/ionic/p-aa47f46e.entry.js +0 -4
- package/dist/ionic/p-b6e0ff03.entry.js +0 -4
- package/dist/ionic/p-d4e8b473.entry.js +0 -4
- package/dist/ionic/p-e6c5f060.entry.js +0 -4
- package/dist/ionic/p-fdbc90d4.entry.js +0 -4
- package/dist/ionic/p-gbVXD275.js +0 -4
- package/dist/ionic/p-hNN3VvaC.js +0 -4
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* (C) Ionic http://ionicframework.com - MIT License
|
|
3
3
|
*/
|
|
4
|
-
import {
|
|
4
|
+
import { Host, h } from "@stencil/core";
|
|
5
5
|
import { findClosestIonContent, disableContentScrollY, resetContentScrollY } from "../../utils/content/index";
|
|
6
6
|
import { inheritAriaAttributes, clamp, debounceEvent, renderHiddenInput, isSafeNumber } from "../../utils/helpers";
|
|
7
7
|
import { printIonWarning } from "../../utils/logging/index";
|
|
@@ -17,30 +17,13 @@ import { roundToMaxDecimalPlaces } from "../../utils/floating-point";
|
|
|
17
17
|
* @slot start - Content is placed to the left of the range slider in LTR, and to the right in RTL.
|
|
18
18
|
* @slot end - Content is placed to the right of the range slider in LTR, and to the left in RTL.
|
|
19
19
|
*
|
|
20
|
-
* @part label - The label text describing the range.
|
|
21
20
|
* @part tick - An inactive tick mark.
|
|
22
21
|
* @part tick-active - An active tick mark.
|
|
22
|
+
* @part pin - The counter that appears above a knob.
|
|
23
|
+
* @part knob - The handle that is used to drag the range.
|
|
23
24
|
* @part bar - The inactive part of the bar.
|
|
24
25
|
* @part bar-active - The active part of the bar.
|
|
25
|
-
* @part
|
|
26
|
-
* @part knob-handle-a - The container for the knob with the static `A` identity when `dualKnobs` is `true`. This identity does not change, even if the knobs cross and swap which one represents the lower or upper value.
|
|
27
|
-
* @part knob-handle-b - The container for the knob with the static `B` identity when `dualKnobs` is `true`. This identity does not change, even if the knobs cross and swap which one represents the lower or upper value.
|
|
28
|
-
* @part knob-handle-lower - The container for the knob whose current `value` is `lower` when `dualKnobs` is `true`. The lower and upper parts swap which knob handle they refer to when the knobs cross.
|
|
29
|
-
* @part knob-handle-upper - The container for the knob whose current `value` is `upper` when `dualKnobs` is `true`. The lower and upper parts swap which knob handle they refer to when the knobs cross.
|
|
30
|
-
* @part pin - The value indicator displayed above a knob.
|
|
31
|
-
* @part pin-a - The value indicator above the knob with the static `A` identity when `dualKnobs` is `true`. This identity does not change, even if the knobs cross and swap which one represents the lower or upper value.
|
|
32
|
-
* @part pin-b - The value indicator above the knob with the static `B` identity when `dualKnobs` is `true`. This identity does not change, even if the knobs cross and swap which one represents the lower or upper value.
|
|
33
|
-
* @part pin-lower - The value indicator above the knob whose current `value` is `lower` when `dualKnobs` is `true`. The lower and upper parts swap which pin they refer to when the knobs cross.
|
|
34
|
-
* @part pin-upper - The value indicator above the knob whose current `value` is `upper` when `dualKnobs` is `true`. The lower and upper parts swap which pin they refer to when the knobs cross.
|
|
35
|
-
* @part knob - The visual knob element on the range track.
|
|
36
|
-
* @part knob-a - The visual knob for the static `A` identity when `dualKnobs` is `true`. This identity does not change, even if the knobs cross and swap which one represents the lower or upper value.
|
|
37
|
-
* @part knob-b - The visual knob for the static `B` identity when `dualKnobs` is `true`. This identity does not change, even if the knobs cross and swap which one represents the lower or upper value.
|
|
38
|
-
* @part knob-lower - The visual knob whose current `value` is `lower` when `dualKnobs` is `true`. The lower and upper parts swap which knob they refer to when the knobs cross.
|
|
39
|
-
* @part knob-upper - The visual knob whose current `value` is `upper` when `dualKnobs` is `true`. The lower and upper parts swap which knob they refer to when the knobs cross.
|
|
40
|
-
* @part activated - Added to the knob-handle, knob, and pin when the knob is active. Only one set has this part at a time when `dualKnobs` is `true`.
|
|
41
|
-
* @part focused - Added to the knob-handle, knob, and pin that currently has focus. Only one set has this part at a time when `dualKnobs` is `true`.
|
|
42
|
-
* @part hover - Added to the knob-handle, knob, and pin when the knob has hover. Only one set has this part at a time when `dualKnobs` is `true`.
|
|
43
|
-
* @part pressed - Added to the knob-handle, knob, and pin that is currently being pressed to drag. Only one set has this part at a time when `dualKnobs` is `true`.
|
|
26
|
+
* @part label - The label text describing the range.
|
|
44
27
|
*/
|
|
45
28
|
export class Range {
|
|
46
29
|
constructor() {
|
|
@@ -51,12 +34,6 @@ export class Range {
|
|
|
51
34
|
this.inheritedAttributes = {};
|
|
52
35
|
this.contentEl = null;
|
|
53
36
|
this.initialContentScrollY = true;
|
|
54
|
-
/**
|
|
55
|
-
* Used to avoid setting the focused state on click or tap. The focused
|
|
56
|
-
* state is only set when the focus comes from the keyboard (e.g. Tab).
|
|
57
|
-
* This is set to true on pointer down (mouse/touch).
|
|
58
|
-
*/
|
|
59
|
-
this.focusFromPointer = false;
|
|
60
37
|
this.ratioA = 0;
|
|
61
38
|
this.ratioB = 0;
|
|
62
39
|
/**
|
|
@@ -166,31 +143,6 @@ export class Range {
|
|
|
166
143
|
this.gesture.enable(!this.disabled);
|
|
167
144
|
}
|
|
168
145
|
};
|
|
169
|
-
/**
|
|
170
|
-
* Observes the knob handles for the ion-activated class and syncs
|
|
171
|
-
* activatedKnob so the activated part is correctly set on the handle,
|
|
172
|
-
* knob, and pin.
|
|
173
|
-
*/
|
|
174
|
-
this.setupActivatedObserver = () => {
|
|
175
|
-
const knobHandleA = this.el.shadowRoot.querySelector('.range-knob-handle-a');
|
|
176
|
-
const knobHandleB = this.el.shadowRoot.querySelector('.range-knob-handle-b');
|
|
177
|
-
const syncActivated = () => {
|
|
178
|
-
this.activatedKnob = (knobHandleA === null || knobHandleA === void 0 ? void 0 : knobHandleA.classList.contains('ion-activated'))
|
|
179
|
-
? 'A'
|
|
180
|
-
: (knobHandleB === null || knobHandleB === void 0 ? void 0 : knobHandleB.classList.contains('ion-activated'))
|
|
181
|
-
? 'B'
|
|
182
|
-
: undefined;
|
|
183
|
-
};
|
|
184
|
-
if (Build.isBrowser && typeof MutationObserver !== 'undefined') {
|
|
185
|
-
this.activatedObserver = new MutationObserver(syncActivated);
|
|
186
|
-
this.activatedObserver.observe(this.el.shadowRoot, {
|
|
187
|
-
attributes: true,
|
|
188
|
-
attributeFilter: ['class'],
|
|
189
|
-
subtree: true,
|
|
190
|
-
});
|
|
191
|
-
}
|
|
192
|
-
syncActivated();
|
|
193
|
-
};
|
|
194
146
|
this.handleKeyboard = (knob, isIncrease) => {
|
|
195
147
|
const { ensureValueInBounds } = this;
|
|
196
148
|
let step = this.step;
|
|
@@ -213,7 +165,6 @@ export class Range {
|
|
|
213
165
|
this.onBlur = () => {
|
|
214
166
|
if (this.hasFocus) {
|
|
215
167
|
this.hasFocus = false;
|
|
216
|
-
this.focusedKnob = undefined;
|
|
217
168
|
this.ionBlur.emit();
|
|
218
169
|
}
|
|
219
170
|
};
|
|
@@ -224,20 +175,21 @@ export class Range {
|
|
|
224
175
|
}
|
|
225
176
|
};
|
|
226
177
|
this.onKnobFocus = (knob) => {
|
|
227
|
-
// Clicking focuses the range which is needed for the keyboard,
|
|
228
|
-
// but we only want to add the ion-focused class when focused via Tab.
|
|
229
|
-
if (!this.focusFromPointer) {
|
|
230
|
-
this.focusedKnob = knob;
|
|
231
|
-
}
|
|
232
|
-
else {
|
|
233
|
-
this.focusFromPointer = false;
|
|
234
|
-
this.focusedKnob = undefined;
|
|
235
|
-
}
|
|
236
|
-
// If the knob was not already focused, emit the focus event
|
|
237
178
|
if (!this.hasFocus) {
|
|
238
179
|
this.hasFocus = true;
|
|
239
180
|
this.ionFocus.emit();
|
|
240
181
|
}
|
|
182
|
+
// Manually manage ion-focused class for dual knobs
|
|
183
|
+
if (this.dualKnobs && this.el.shadowRoot) {
|
|
184
|
+
const knobA = this.el.shadowRoot.querySelector('.range-knob-a');
|
|
185
|
+
const knobB = this.el.shadowRoot.querySelector('.range-knob-b');
|
|
186
|
+
// Remove ion-focused from both knobs first
|
|
187
|
+
knobA === null || knobA === void 0 ? void 0 : knobA.classList.remove('ion-focused');
|
|
188
|
+
knobB === null || knobB === void 0 ? void 0 : knobB.classList.remove('ion-focused');
|
|
189
|
+
// Add ion-focused only to the focused knob
|
|
190
|
+
const focusedKnobEl = knob === 'A' ? knobA : knobB;
|
|
191
|
+
focusedKnobEl === null || focusedKnobEl === void 0 ? void 0 : focusedKnobEl.classList.add('ion-focused');
|
|
192
|
+
}
|
|
241
193
|
};
|
|
242
194
|
this.onKnobBlur = () => {
|
|
243
195
|
// Check if focus is moving to another knob within the same range
|
|
@@ -249,18 +201,18 @@ export class Range {
|
|
|
249
201
|
if (!isStillFocusedOnKnob) {
|
|
250
202
|
if (this.hasFocus) {
|
|
251
203
|
this.hasFocus = false;
|
|
252
|
-
this.focusedKnob = undefined;
|
|
253
204
|
this.ionBlur.emit();
|
|
254
205
|
}
|
|
206
|
+
// Remove ion-focused from both knobs when focus leaves the range
|
|
207
|
+
if (this.dualKnobs && this.el.shadowRoot) {
|
|
208
|
+
const knobA = this.el.shadowRoot.querySelector('.range-knob-a');
|
|
209
|
+
const knobB = this.el.shadowRoot.querySelector('.range-knob-b');
|
|
210
|
+
knobA === null || knobA === void 0 ? void 0 : knobA.classList.remove('ion-focused');
|
|
211
|
+
knobB === null || knobB === void 0 ? void 0 : knobB.classList.remove('ion-focused');
|
|
212
|
+
}
|
|
255
213
|
}
|
|
256
214
|
}, 0);
|
|
257
215
|
};
|
|
258
|
-
this.onKnobMouseEnter = (knob) => {
|
|
259
|
-
this.hoveredKnob = knob;
|
|
260
|
-
};
|
|
261
|
-
this.onKnobMouseLeave = () => {
|
|
262
|
-
this.hoveredKnob = undefined;
|
|
263
|
-
};
|
|
264
216
|
}
|
|
265
217
|
debounceChanged() {
|
|
266
218
|
const { ionInput, debounce, originalIonInput } = this;
|
|
@@ -337,7 +289,6 @@ export class Range {
|
|
|
337
289
|
this.originalIonInput = this.ionInput;
|
|
338
290
|
this.setupGesture();
|
|
339
291
|
this.updateRatio();
|
|
340
|
-
this.setupActivatedObserver();
|
|
341
292
|
this.didLoad = true;
|
|
342
293
|
}
|
|
343
294
|
connectedCallback() {
|
|
@@ -354,7 +305,6 @@ export class Range {
|
|
|
354
305
|
*/
|
|
355
306
|
if (this.didLoad) {
|
|
356
307
|
this.setupGesture();
|
|
357
|
-
this.setupActivatedObserver();
|
|
358
308
|
}
|
|
359
309
|
const ionContent = findClosestIonContent(this.el);
|
|
360
310
|
this.contentEl = (_a = ionContent === null || ionContent === void 0 ? void 0 : ionContent.querySelector('.ion-content-scroll-host')) !== null && _a !== void 0 ? _a : ionContent;
|
|
@@ -364,10 +314,6 @@ export class Range {
|
|
|
364
314
|
this.gesture.destroy();
|
|
365
315
|
this.gesture = undefined;
|
|
366
316
|
}
|
|
367
|
-
if (this.activatedObserver) {
|
|
368
|
-
this.activatedObserver.disconnect();
|
|
369
|
-
this.activatedObserver = undefined;
|
|
370
|
-
}
|
|
371
317
|
}
|
|
372
318
|
getValue() {
|
|
373
319
|
var _a;
|
|
@@ -438,7 +384,7 @@ export class Range {
|
|
|
438
384
|
* started dragging the knob.
|
|
439
385
|
*
|
|
440
386
|
* This is necessary to determine which knob the user is dragging,
|
|
441
|
-
* especially when
|
|
387
|
+
* especially when it's a dual knob.
|
|
442
388
|
* Plus, it determines when to apply certain styles.
|
|
443
389
|
*
|
|
444
390
|
* This only needs to be done once since the knob won't change
|
|
@@ -465,7 +411,7 @@ export class Range {
|
|
|
465
411
|
* dragged the knob. They just tapped on the bar.
|
|
466
412
|
*
|
|
467
413
|
* This is necessary to determine which knob the user is changing,
|
|
468
|
-
* especially when
|
|
414
|
+
* especially when it's a dual knob.
|
|
469
415
|
* Plus, it determines when to apply certain styles.
|
|
470
416
|
*/
|
|
471
417
|
if (this.pressedKnob === undefined) {
|
|
@@ -520,6 +466,7 @@ export class Range {
|
|
|
520
466
|
ratio = 1 - ratio;
|
|
521
467
|
}
|
|
522
468
|
this.pressedKnob = !this.dualKnobs || Math.abs(this.ratioA - ratio) < Math.abs(this.ratioB - ratio) ? 'A' : 'B';
|
|
469
|
+
this.setFocus(this.pressedKnob);
|
|
523
470
|
}
|
|
524
471
|
get valA() {
|
|
525
472
|
return ratioToValue(this.ratioA, this.min, this.max, this.step);
|
|
@@ -546,23 +493,9 @@ export class Range {
|
|
|
546
493
|
updateRatio() {
|
|
547
494
|
const value = this.getValue();
|
|
548
495
|
const { min, max } = this;
|
|
549
|
-
/**
|
|
550
|
-
* For dual knobs, value gives lower/upper but not which is A vs B.
|
|
551
|
-
* Assign (lowerRatio, upperRatio) to (ratioA, ratioB) in the way that
|
|
552
|
-
* minimizes change from the current ratios so the knobs don't swap.
|
|
553
|
-
*/
|
|
554
496
|
if (this.dualKnobs) {
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
if (Math.abs(this.ratioA - lowerRatio) + Math.abs(this.ratioB - upperRatio) <=
|
|
558
|
-
Math.abs(this.ratioA - upperRatio) + Math.abs(this.ratioB - lowerRatio)) {
|
|
559
|
-
this.ratioA = lowerRatio;
|
|
560
|
-
this.ratioB = upperRatio;
|
|
561
|
-
}
|
|
562
|
-
else {
|
|
563
|
-
this.ratioA = upperRatio;
|
|
564
|
-
this.ratioB = lowerRatio;
|
|
565
|
-
}
|
|
497
|
+
this.ratioA = valueToRatio(value.lower, min, max);
|
|
498
|
+
this.ratioB = valueToRatio(value.upper, min, max);
|
|
566
499
|
}
|
|
567
500
|
else {
|
|
568
501
|
this.ratioA = valueToRatio(value, min, max);
|
|
@@ -579,6 +512,14 @@ export class Range {
|
|
|
579
512
|
};
|
|
580
513
|
this.noUpdate = false;
|
|
581
514
|
}
|
|
515
|
+
setFocus(knob) {
|
|
516
|
+
if (this.el.shadowRoot) {
|
|
517
|
+
const knobEl = this.el.shadowRoot.querySelector(knob === 'A' ? '.range-knob-a' : '.range-knob-b');
|
|
518
|
+
if (knobEl) {
|
|
519
|
+
knobEl.focus();
|
|
520
|
+
}
|
|
521
|
+
}
|
|
522
|
+
}
|
|
582
523
|
/**
|
|
583
524
|
* Returns true if content was passed to the "start" slot
|
|
584
525
|
*/
|
|
@@ -596,7 +537,7 @@ export class Range {
|
|
|
596
537
|
}
|
|
597
538
|
renderRangeSlider() {
|
|
598
539
|
var _a;
|
|
599
|
-
const { min, max, step, handleKeyboard,
|
|
540
|
+
const { min, max, step, handleKeyboard, pressedKnob, disabled, pin, ratioLower, ratioUpper, pinFormatter, inheritedAttributes, } = this;
|
|
600
541
|
let barStart = `${ratioLower * 100}%`;
|
|
601
542
|
let barEnd = `${100 - ratioUpper * 100}%`;
|
|
602
543
|
const rtl = isRTL(this.el);
|
|
@@ -656,9 +597,7 @@ export class Range {
|
|
|
656
597
|
ticks.push(tick);
|
|
657
598
|
}
|
|
658
599
|
}
|
|
659
|
-
return (h("div", { class: "range-slider", ref: (rangeEl) => (this.rangeSlider = rangeEl),
|
|
660
|
-
this.focusFromPointer = true;
|
|
661
|
-
},
|
|
600
|
+
return (h("div", { class: "range-slider", ref: (rangeEl) => (this.rangeSlider = rangeEl),
|
|
662
601
|
/**
|
|
663
602
|
* Since the gesture has a threshold, the value
|
|
664
603
|
* won't change until the user has dragged past
|
|
@@ -671,7 +610,6 @@ export class Range {
|
|
|
671
610
|
* we need to listen for the "pointerUp" event.
|
|
672
611
|
*/
|
|
673
612
|
onPointerUp: (ev) => {
|
|
674
|
-
this.focusFromPointer = false;
|
|
675
613
|
/**
|
|
676
614
|
* If the user drags the knob on the web
|
|
677
615
|
* version (does not occur on mobile),
|
|
@@ -697,11 +635,6 @@ export class Range {
|
|
|
697
635
|
'has-ticks': ticks.length > 0,
|
|
698
636
|
}, role: "presentation", style: barStyle, part: "bar-active" })), renderKnob(rtl, {
|
|
699
637
|
knob: 'A',
|
|
700
|
-
position: getKnobPosition('A', this.ratioA, this.ratioB, this.dualKnobs),
|
|
701
|
-
dualKnobs: this.dualKnobs,
|
|
702
|
-
activated: activatedKnob === 'A',
|
|
703
|
-
focused: focusedKnob === 'A',
|
|
704
|
-
hovered: hoveredKnob === 'A',
|
|
705
638
|
pressed: pressedKnob === 'A',
|
|
706
639
|
value: this.valA,
|
|
707
640
|
ratio: this.ratioA,
|
|
@@ -714,16 +647,9 @@ export class Range {
|
|
|
714
647
|
inheritedAttributes,
|
|
715
648
|
onKnobFocus: this.onKnobFocus,
|
|
716
649
|
onKnobBlur: this.onKnobBlur,
|
|
717
|
-
onKnobMouseEnter: this.onKnobMouseEnter,
|
|
718
|
-
onKnobMouseLeave: this.onKnobMouseLeave,
|
|
719
650
|
}), this.dualKnobs &&
|
|
720
651
|
renderKnob(rtl, {
|
|
721
652
|
knob: 'B',
|
|
722
|
-
position: getKnobPosition('B', this.ratioA, this.ratioB, this.dualKnobs),
|
|
723
|
-
dualKnobs: this.dualKnobs,
|
|
724
|
-
activated: activatedKnob === 'B',
|
|
725
|
-
focused: focusedKnob === 'B',
|
|
726
|
-
hovered: hoveredKnob === 'B',
|
|
727
653
|
pressed: pressedKnob === 'B',
|
|
728
654
|
value: this.valB,
|
|
729
655
|
ratio: this.ratioB,
|
|
@@ -736,12 +662,10 @@ export class Range {
|
|
|
736
662
|
inheritedAttributes,
|
|
737
663
|
onKnobFocus: this.onKnobFocus,
|
|
738
664
|
onKnobBlur: this.onKnobBlur,
|
|
739
|
-
onKnobMouseEnter: this.onKnobMouseEnter,
|
|
740
|
-
onKnobMouseLeave: this.onKnobMouseLeave,
|
|
741
665
|
})));
|
|
742
666
|
}
|
|
743
667
|
render() {
|
|
744
|
-
const { disabled, el, hasLabel, rangeId, pin, pressedKnob, labelPlacement, label
|
|
668
|
+
const { disabled, el, hasLabel, rangeId, pin, pressedKnob, labelPlacement, label } = this;
|
|
745
669
|
const inItem = hostContext('ion-item', el);
|
|
746
670
|
/**
|
|
747
671
|
* If there is no start content then the knob at
|
|
@@ -756,37 +680,20 @@ export class Range {
|
|
|
756
680
|
const hasEndContent = (hasLabel && labelPlacement === 'end') || this.hasEndSlotContent;
|
|
757
681
|
const needsEndAdjustment = inItem && !hasEndContent;
|
|
758
682
|
const mode = getIonMode(this);
|
|
759
|
-
/**
|
|
760
|
-
* Determine the name and position of the pressed knob to apply
|
|
761
|
-
* Host classes for styling.
|
|
762
|
-
*/
|
|
763
|
-
const pressedKnobName = dualKnobs ? pressedKnob === null || pressedKnob === void 0 ? void 0 : pressedKnob.toLowerCase() : undefined;
|
|
764
|
-
const pressedKnobPosition = dualKnobs && pressedKnob ? getKnobPosition(pressedKnob, this.ratioA, this.ratioB, dualKnobs) : undefined;
|
|
765
|
-
/**
|
|
766
|
-
* Determine if any knob is at the min or max value to
|
|
767
|
-
* apply Host classes for styling.
|
|
768
|
-
*/
|
|
769
|
-
const valueAtMin = dualKnobs ? this.valA === min || this.valB === min : this.valA === min;
|
|
770
|
-
const valueAtMax = dualKnobs ? this.valA === max || this.valB === max : this.valA === max;
|
|
771
683
|
renderHiddenInput(true, el, this.name, JSON.stringify(this.getValue()), disabled);
|
|
772
|
-
return (h(Host, { key: '
|
|
684
|
+
return (h(Host, { key: 'affcac4709096a48a5b4c1864b209b6352f6b078', onFocusin: this.onFocus, onFocusout: this.onBlur, id: rangeId, class: createColorClasses(this.color, {
|
|
773
685
|
[mode]: true,
|
|
774
686
|
'in-item': inItem,
|
|
775
687
|
'range-disabled': disabled,
|
|
776
|
-
'range-dual-knobs': dualKnobs,
|
|
777
688
|
'range-pressed': pressedKnob !== undefined,
|
|
778
|
-
[`range-pressed-${pressedKnobName}`]: pressedKnob !== undefined && pressedKnobName !== undefined,
|
|
779
|
-
[`range-pressed-${pressedKnobPosition}`]: pressedKnob !== undefined && pressedKnobPosition !== undefined,
|
|
780
689
|
'range-has-pin': pin,
|
|
781
690
|
[`range-label-placement-${labelPlacement}`]: true,
|
|
782
691
|
'range-item-start-adjustment': needsStartAdjustment,
|
|
783
692
|
'range-item-end-adjustment': needsEndAdjustment,
|
|
784
|
-
|
|
785
|
-
'range-value-max': valueAtMax,
|
|
786
|
-
}) }, h("label", { key: 'beead65ab01e3b18e4be59c0ee8ac6ebf32aad7c', class: "range-wrapper", id: "range-label" }, h("div", { key: '03633c689d9d2e4c50a2131bcd560329df49e314', class: {
|
|
693
|
+
}) }, h("label", { key: 'c7cf95fa831d10b17c137995d0a9e0cf84006a76', class: "range-wrapper", id: "range-label" }, h("div", { key: '5b8479c7939ae0f94a042c3aafd64316e4577d30', class: {
|
|
787
694
|
'label-text-wrapper': true,
|
|
788
695
|
'label-text-wrapper-hidden': !hasLabel,
|
|
789
|
-
}, part: "label" }, label !== undefined ? h("div", { class: "label-text" }, label) : h("slot", { name: "label" })), h("div", { key: '
|
|
696
|
+
}, part: "label" }, label !== undefined ? h("div", { class: "label-text" }, label) : h("slot", { name: "label" })), h("div", { key: '3c275d822b29a8008e044722e8b6bdabd3ecfad7', class: "native-wrapper" }, h("slot", { key: '03c849d0aa708914984ad57ca292bc5fc66ecad5', name: "start" }), this.renderRangeSlider(), h("slot", { key: '10ca7b8152cac00b45d8fa98ad91410f59fd176a', name: "end" })))));
|
|
790
697
|
}
|
|
791
698
|
static get is() { return "ion-range"; }
|
|
792
699
|
static get encapsulation() { return "shadow"; }
|
|
@@ -814,8 +721,7 @@ export class Range {
|
|
|
814
721
|
"Color": {
|
|
815
722
|
"location": "import",
|
|
816
723
|
"path": "../../interface",
|
|
817
|
-
"id": "src/interface.d.ts::Color"
|
|
818
|
-
"referenceLocation": "Color"
|
|
724
|
+
"id": "src/interface.d.ts::Color"
|
|
819
725
|
}
|
|
820
726
|
}
|
|
821
727
|
},
|
|
@@ -978,8 +884,7 @@ export class Range {
|
|
|
978
884
|
"PinFormatter": {
|
|
979
885
|
"location": "import",
|
|
980
886
|
"path": "./range-interface",
|
|
981
|
-
"id": "src/components/range/range-interface.ts::PinFormatter"
|
|
982
|
-
"referenceLocation": "PinFormatter"
|
|
887
|
+
"id": "src/components/range/range-interface.ts::PinFormatter"
|
|
983
888
|
}
|
|
984
889
|
}
|
|
985
890
|
},
|
|
@@ -1102,8 +1007,7 @@ export class Range {
|
|
|
1102
1007
|
"RangeValue": {
|
|
1103
1008
|
"location": "import",
|
|
1104
1009
|
"path": "./range-interface",
|
|
1105
|
-
"id": "src/components/range/range-interface.ts::RangeValue"
|
|
1106
|
-
"referenceLocation": "RangeValue"
|
|
1010
|
+
"id": "src/components/range/range-interface.ts::RangeValue"
|
|
1107
1011
|
}
|
|
1108
1012
|
}
|
|
1109
1013
|
},
|
|
@@ -1145,9 +1049,6 @@ export class Range {
|
|
|
1145
1049
|
return {
|
|
1146
1050
|
"ratioA": {},
|
|
1147
1051
|
"ratioB": {},
|
|
1148
|
-
"activatedKnob": {},
|
|
1149
|
-
"focusedKnob": {},
|
|
1150
|
-
"hoveredKnob": {},
|
|
1151
1052
|
"pressedKnob": {}
|
|
1152
1053
|
};
|
|
1153
1054
|
}
|
|
@@ -1169,8 +1070,7 @@ export class Range {
|
|
|
1169
1070
|
"RangeChangeEventDetail": {
|
|
1170
1071
|
"location": "import",
|
|
1171
1072
|
"path": "./range-interface",
|
|
1172
|
-
"id": "src/components/range/range-interface.ts::RangeChangeEventDetail"
|
|
1173
|
-
"referenceLocation": "RangeChangeEventDetail"
|
|
1073
|
+
"id": "src/components/range/range-interface.ts::RangeChangeEventDetail"
|
|
1174
1074
|
}
|
|
1175
1075
|
}
|
|
1176
1076
|
}
|
|
@@ -1191,8 +1091,7 @@ export class Range {
|
|
|
1191
1091
|
"RangeChangeEventDetail": {
|
|
1192
1092
|
"location": "import",
|
|
1193
1093
|
"path": "./range-interface",
|
|
1194
|
-
"id": "src/components/range/range-interface.ts::RangeChangeEventDetail"
|
|
1195
|
-
"referenceLocation": "RangeChangeEventDetail"
|
|
1094
|
+
"id": "src/components/range/range-interface.ts::RangeChangeEventDetail"
|
|
1196
1095
|
}
|
|
1197
1096
|
}
|
|
1198
1097
|
}
|
|
@@ -1243,8 +1142,7 @@ export class Range {
|
|
|
1243
1142
|
"RangeKnobMoveStartEventDetail": {
|
|
1244
1143
|
"location": "import",
|
|
1245
1144
|
"path": "./range-interface",
|
|
1246
|
-
"id": "src/components/range/range-interface.ts::RangeKnobMoveStartEventDetail"
|
|
1247
|
-
"referenceLocation": "RangeKnobMoveStartEventDetail"
|
|
1145
|
+
"id": "src/components/range/range-interface.ts::RangeKnobMoveStartEventDetail"
|
|
1248
1146
|
}
|
|
1249
1147
|
}
|
|
1250
1148
|
}
|
|
@@ -1265,8 +1163,7 @@ export class Range {
|
|
|
1265
1163
|
"RangeKnobMoveEndEventDetail": {
|
|
1266
1164
|
"location": "import",
|
|
1267
1165
|
"path": "./range-interface",
|
|
1268
|
-
"id": "src/components/range/range-interface.ts::RangeKnobMoveEndEventDetail"
|
|
1269
|
-
"referenceLocation": "RangeKnobMoveEndEventDetail"
|
|
1166
|
+
"id": "src/components/range/range-interface.ts::RangeKnobMoveEndEventDetail"
|
|
1270
1167
|
}
|
|
1271
1168
|
}
|
|
1272
1169
|
}
|
|
@@ -1298,7 +1195,7 @@ export class Range {
|
|
|
1298
1195
|
}];
|
|
1299
1196
|
}
|
|
1300
1197
|
}
|
|
1301
|
-
const renderKnob = (rtl, { knob,
|
|
1198
|
+
const renderKnob = (rtl, { knob, value, ratio, min, max, disabled, pressed, pin, handleKeyboard, pinFormatter, inheritedAttributes, onKnobFocus, onKnobBlur, }) => {
|
|
1302
1199
|
const start = rtl ? 'right' : 'left';
|
|
1303
1200
|
const knobStyle = () => {
|
|
1304
1201
|
const style = {};
|
|
@@ -1319,74 +1216,16 @@ const renderKnob = (rtl, { knob, position, dualKnobs, value, ratio, min, max, di
|
|
|
1319
1216
|
ev.preventDefault();
|
|
1320
1217
|
ev.stopPropagation();
|
|
1321
1218
|
}
|
|
1322
|
-
}, onFocus: () => onKnobFocus(knob), onBlur: onKnobBlur,
|
|
1219
|
+
}, onFocus: () => onKnobFocus(knob), onBlur: onKnobBlur, class: {
|
|
1323
1220
|
'range-knob-handle': true,
|
|
1324
|
-
'range-knob-
|
|
1325
|
-
'range-knob-
|
|
1221
|
+
'range-knob-a': knob === 'A',
|
|
1222
|
+
'range-knob-b': knob === 'B',
|
|
1326
1223
|
'range-knob-pressed': pressed,
|
|
1327
1224
|
'range-knob-min': value === min,
|
|
1328
1225
|
'range-knob-max': value === max,
|
|
1329
1226
|
'ion-activatable': true,
|
|
1330
1227
|
'ion-focusable': true,
|
|
1331
|
-
|
|
1332
|
-
}, part: [
|
|
1333
|
-
'knob-handle',
|
|
1334
|
-
dualKnobs && knob === 'A' && 'knob-handle-a',
|
|
1335
|
-
dualKnobs && knob === 'B' && 'knob-handle-b',
|
|
1336
|
-
dualKnobs && position === 'lower' && 'knob-handle-lower',
|
|
1337
|
-
dualKnobs && position === 'upper' && 'knob-handle-upper',
|
|
1338
|
-
pressed && 'pressed',
|
|
1339
|
-
focused && 'focused',
|
|
1340
|
-
hovered && 'hover',
|
|
1341
|
-
activated && 'activated',
|
|
1342
|
-
]
|
|
1343
|
-
.filter(Boolean)
|
|
1344
|
-
.join(' '), style: knobStyle(), role: "slider", tabindex: disabled ? -1 : 0, "aria-label": ariaLabel !== undefined ? ariaLabel : null, "aria-labelledby": ariaLabel === undefined ? 'range-label' : null, "aria-valuemin": min, "aria-valuemax": max, "aria-disabled": disabled ? 'true' : null, "aria-valuenow": value }, pin && (h("div", { class: "range-pin", role: "presentation", part: [
|
|
1345
|
-
'pin',
|
|
1346
|
-
dualKnobs && knob === 'A' && 'pin-a',
|
|
1347
|
-
dualKnobs && knob === 'B' && 'pin-b',
|
|
1348
|
-
dualKnobs && position === 'lower' && 'pin-lower',
|
|
1349
|
-
dualKnobs && position === 'upper' && 'pin-upper',
|
|
1350
|
-
pressed && 'pressed',
|
|
1351
|
-
focused && 'focused',
|
|
1352
|
-
hovered && 'hover',
|
|
1353
|
-
activated && 'activated',
|
|
1354
|
-
]
|
|
1355
|
-
.filter(Boolean)
|
|
1356
|
-
.join(' ') }, pinFormatter(value))), h("div", { class: "range-knob", role: "presentation", part: [
|
|
1357
|
-
'knob',
|
|
1358
|
-
dualKnobs && knob === 'A' && 'knob-a',
|
|
1359
|
-
dualKnobs && knob === 'B' && 'knob-b',
|
|
1360
|
-
dualKnobs && position === 'lower' && 'knob-lower',
|
|
1361
|
-
dualKnobs && position === 'upper' && 'knob-upper',
|
|
1362
|
-
pressed && 'pressed',
|
|
1363
|
-
focused && 'focused',
|
|
1364
|
-
hovered && 'hover',
|
|
1365
|
-
activated && 'activated',
|
|
1366
|
-
]
|
|
1367
|
-
.filter(Boolean)
|
|
1368
|
-
.join(' ') })));
|
|
1369
|
-
};
|
|
1370
|
-
/**
|
|
1371
|
-
* Returns whether the given knob is at the lower or upper position based
|
|
1372
|
-
* on current ratios for the given knob.
|
|
1373
|
-
*
|
|
1374
|
-
* When both knobs have the same ratio, we only want one "lower" and one
|
|
1375
|
-
* "upper" position so that the `lower` and `upper` parts are not applied to
|
|
1376
|
-
* the same knob. In that case, we treat knob "A" as the lower position and
|
|
1377
|
-
* knob "B" as the upper position.
|
|
1378
|
-
*/
|
|
1379
|
-
const getKnobPosition = (knob, ratioA, ratioB, dualKnobs) => {
|
|
1380
|
-
if (!dualKnobs) {
|
|
1381
|
-
return 'lower';
|
|
1382
|
-
}
|
|
1383
|
-
if (ratioA === ratioB) {
|
|
1384
|
-
return knob === 'A' ? 'lower' : 'upper';
|
|
1385
|
-
}
|
|
1386
|
-
if (knob === 'A') {
|
|
1387
|
-
return ratioA < ratioB ? 'lower' : 'upper';
|
|
1388
|
-
}
|
|
1389
|
-
return ratioB < ratioA ? 'lower' : 'upper';
|
|
1228
|
+
}, style: knobStyle(), role: "slider", tabindex: disabled ? -1 : 0, "aria-label": ariaLabel !== undefined ? ariaLabel : null, "aria-labelledby": ariaLabel === undefined ? 'range-label' : null, "aria-valuemin": min, "aria-valuemax": max, "aria-disabled": disabled ? 'true' : null, "aria-valuenow": value }, pin && (h("div", { class: "range-pin", role: "presentation", part: "pin" }, pinFormatter(value))), h("div", { class: "range-knob", role: "presentation", part: "knob" })));
|
|
1390
1229
|
};
|
|
1391
1230
|
const ratioToValue = (ratio, min, max, step) => {
|
|
1392
1231
|
let value = (max - min) * ratio;
|