@ionic/core 8.4.4-dev.11741357957.1558bd4c → 8.4.4-dev.11741376313.1cb1887d
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/alert.js +30 -4
- package/components/checkbox.js +4 -6
- package/components/helpers.js +7 -1
- package/components/index6.js +3 -11
- package/components/index9.js +1 -1
- package/components/ion-input.js +2 -2
- package/components/ion-range.js +14 -4
- package/components/ion-router.js +1 -1
- package/components/ion-segment-button.js +1 -1
- package/components/ion-select.js +4 -6
- package/components/ion-textarea.js +2 -2
- package/components/ion-toggle.js +4 -6
- package/components/ionic-global.js +2 -1
- package/components/modal.js +35 -259
- package/components/radio.js +5 -37
- package/components/toolbar.js +2 -2
- package/css/core.css.map +1 -1
- package/css/ionic.bundle.css.map +1 -1
- package/dist/cjs/{app-globals-21afee77.js → app-globals-4283fe37.js} +1 -1
- package/dist/cjs/{data-108e531d.js → data-21dc0f81.js} +1 -1
- package/dist/cjs/{framework-delegate-05579976.js → framework-delegate-c4f2ba04.js} +1 -1
- package/dist/cjs/{hardware-back-button-9e8a2c4f.js → hardware-back-button-f2cbbdce.js} +1 -1
- package/dist/cjs/{helpers-4be3f90d.js → helpers-b14a0f09.js} +7 -0
- package/dist/cjs/{index-0ff61d0b.js → index-1248dbd7.js} +4 -4
- package/dist/cjs/{index-26bb7e42.js → index-4e37257d.js} +5 -5
- package/dist/cjs/{index-2a46a047.js → index-5915f9b3.js} +3 -11
- package/dist/cjs/{index-ad7a712e.js → index-786364c7.js} +1 -1
- package/dist/cjs/{index-6770fc00.js → index-a4a74252.js} +2 -2
- package/dist/cjs/index.cjs.js +10 -10
- package/dist/cjs/{input-shims-fd997b01.js → input-shims-b4c0eee7.js} +3 -5
- package/dist/cjs/{input.utils-c15a1814.js → input.utils-4af208ab.js} +2 -2
- package/dist/cjs/ion-accordion_2.cjs.entry.js +3 -3
- package/dist/cjs/ion-action-sheet.cjs.entry.js +6 -6
- package/dist/cjs/ion-alert.cjs.entry.js +36 -10
- package/dist/cjs/ion-app_8.cjs.entry.js +14 -14
- package/dist/cjs/ion-avatar_3.cjs.entry.js +1 -1
- package/dist/cjs/ion-back-button.cjs.entry.js +2 -2
- package/dist/cjs/ion-backdrop.cjs.entry.js +1 -1
- package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +2 -2
- package/dist/cjs/ion-button_2.cjs.entry.js +3 -3
- package/dist/cjs/ion-card_5.cjs.entry.js +2 -2
- package/dist/cjs/ion-checkbox.cjs.entry.js +6 -7
- package/dist/cjs/ion-chip.cjs.entry.js +1 -1
- package/dist/cjs/ion-col_3.cjs.entry.js +1 -1
- package/dist/cjs/ion-datetime-button.cjs.entry.js +4 -4
- package/dist/cjs/ion-datetime_3.cjs.entry.js +7 -7
- package/dist/cjs/ion-fab_3.cjs.entry.js +2 -2
- package/dist/cjs/ion-img.cjs.entry.js +2 -2
- package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +4 -4
- package/dist/cjs/ion-input-password-toggle.cjs.entry.js +2 -2
- package/dist/cjs/ion-input.cjs.entry.js +7 -7
- package/dist/cjs/ion-item-option_3.cjs.entry.js +4 -4
- package/dist/cjs/ion-item_8.cjs.entry.js +2 -2
- package/dist/cjs/ion-loading.cjs.entry.js +6 -6
- package/dist/cjs/ion-menu_3.cjs.entry.js +7 -7
- package/dist/cjs/ion-modal.cjs.entry.js +43 -266
- package/dist/cjs/ion-nav_2.cjs.entry.js +6 -6
- package/dist/cjs/ion-picker-column-option.cjs.entry.js +2 -2
- package/dist/cjs/ion-picker-column.cjs.entry.js +2 -2
- package/dist/cjs/ion-picker.cjs.entry.js +1 -1
- package/dist/cjs/ion-popover.cjs.entry.js +7 -7
- package/dist/cjs/ion-progress-bar.cjs.entry.js +2 -2
- package/dist/cjs/ion-radio_2.cjs.entry.js +7 -37
- package/dist/cjs/ion-range.cjs.entry.js +17 -7
- package/dist/cjs/ion-refresher_2.cjs.entry.js +4 -4
- package/dist/cjs/ion-reorder_2.cjs.entry.js +4 -4
- package/dist/cjs/ion-ripple-effect.cjs.entry.js +1 -1
- package/dist/cjs/ion-route_4.cjs.entry.js +2 -2
- package/dist/cjs/ion-searchbar.cjs.entry.js +2 -2
- package/dist/cjs/ion-segment_2.cjs.entry.js +2 -2
- package/dist/cjs/ion-select-modal.cjs.entry.js +6 -6
- package/dist/cjs/ion-select_3.cjs.entry.js +11 -12
- package/dist/cjs/ion-spinner.cjs.entry.js +1 -1
- package/dist/cjs/ion-split-pane.cjs.entry.js +1 -1
- package/dist/cjs/ion-tab-bar_2.cjs.entry.js +2 -2
- package/dist/cjs/ion-tab_2.cjs.entry.js +2 -2
- package/dist/cjs/ion-text.cjs.entry.js +1 -1
- package/dist/cjs/ion-textarea.cjs.entry.js +7 -7
- package/dist/cjs/ion-toast.cjs.entry.js +6 -6
- package/dist/cjs/ion-toggle.cjs.entry.js +6 -7
- package/dist/cjs/{ionic-global-d9a8bb5b.js → ionic-global-96da1b2e.js} +2 -1
- package/dist/cjs/ionic.cjs.js +3 -3
- package/dist/cjs/{ios.transition-a4f35c55.js → ios.transition-8d363d77.js} +4 -4
- package/dist/cjs/loader.cjs.js +3 -3
- package/dist/cjs/{md.transition-cdf904e6.js → md.transition-57d695fa.js} +4 -4
- package/dist/cjs/{notch-controller-a0c464d1.js → notch-controller-bd07748b.js} +1 -1
- package/dist/cjs/{overlays-86695cf1.js → overlays-27703a30.js} +5 -5
- package/dist/cjs/{status-tap-1a2485c1.js → status-tap-654077ee.js} +3 -4
- package/dist/cjs/{swipe-back-47a52b83.js → swipe-back-b70cd52e.js} +1 -1
- package/dist/collection/components/alert/alert.js +34 -4
- package/dist/collection/components/checkbox/checkbox.js +4 -23
- package/dist/collection/components/input/input.ios.css +2 -3
- package/dist/collection/components/input/input.md.css +2 -7
- package/dist/collection/components/modal/animations/ios.enter.js +4 -50
- package/dist/collection/components/modal/animations/ios.leave.js +2 -24
- package/dist/collection/components/modal/animations/md.enter.js +5 -52
- package/dist/collection/components/modal/animations/md.leave.js +3 -26
- package/dist/collection/components/modal/animations/sheet.js +2 -11
- package/dist/collection/components/modal/gestures/sheet.js +10 -79
- package/dist/collection/components/modal/modal.ios.css +0 -16
- package/dist/collection/components/modal/modal.js +7 -32
- package/dist/collection/components/modal/modal.md.css +0 -6
- package/dist/collection/components/radio/radio.ios.css +15 -52
- package/dist/collection/components/radio/radio.js +3 -70
- package/dist/collection/components/radio/radio.md.css +15 -52
- package/dist/collection/components/range/range.js +10 -4
- package/dist/collection/components/select/select.js +4 -23
- package/dist/collection/components/textarea/textarea.ios.css +2 -3
- package/dist/collection/components/textarea/textarea.md.css +2 -7
- package/dist/collection/components/toggle/toggle.js +4 -23
- package/dist/collection/components/toolbar/toolbar.js +2 -6
- package/dist/collection/utils/floating-point/index.js +5 -0
- package/dist/collection/utils/helpers.js +6 -0
- package/dist/collection/utils/logging/index.js +3 -10
- package/dist/collection/utils/platform.js +2 -1
- package/dist/collection/utils/test/platform.utils.js +1 -1
- package/dist/docs.json +6 -187
- package/dist/esm/{app-globals-5dbb61a5.js → app-globals-c10a1137.js} +1 -1
- package/dist/esm/{data-b3284b5e.js → data-ae11fd43.js} +1 -1
- package/dist/esm/{framework-delegate-f683816e.js → framework-delegate-42bc40b1.js} +1 -1
- package/dist/esm/{hardware-back-button-06ef3c3e.js → hardware-back-button-44195e92.js} +1 -1
- package/dist/esm/{helpers-9b49d7d2.js → helpers-13b816c6.js} +7 -1
- package/dist/esm/{index-5a0f5fd0.js → index-28c8fd64.js} +1 -1
- package/dist/esm/{index-6a5baab0.js → index-4b39521b.js} +5 -5
- package/dist/esm/{index-7105cd59.js → index-6b548278.js} +4 -4
- package/dist/esm/{index-6ad967f3.js → index-9b0d46f4.js} +3 -11
- package/dist/esm/{index-dd0f7395.js → index-edf58462.js} +2 -2
- package/dist/esm/index.js +10 -10
- package/dist/esm/{input-shims-dff819a9.js → input-shims-5e5e47e8.js} +3 -5
- package/dist/esm/{input.utils-2f1029cf.js → input.utils-d3717b00.js} +2 -2
- package/dist/esm/ion-accordion_2.entry.js +3 -3
- package/dist/esm/ion-action-sheet.entry.js +6 -6
- package/dist/esm/ion-alert.entry.js +36 -10
- package/dist/esm/ion-app_8.entry.js +14 -14
- package/dist/esm/ion-avatar_3.entry.js +1 -1
- package/dist/esm/ion-back-button.entry.js +2 -2
- package/dist/esm/ion-backdrop.entry.js +1 -1
- package/dist/esm/ion-breadcrumb_2.entry.js +2 -2
- package/dist/esm/ion-button_2.entry.js +3 -3
- package/dist/esm/ion-card_5.entry.js +2 -2
- package/dist/esm/ion-checkbox.entry.js +6 -7
- package/dist/esm/ion-chip.entry.js +1 -1
- package/dist/esm/ion-col_3.entry.js +1 -1
- package/dist/esm/ion-datetime-button.entry.js +4 -4
- package/dist/esm/ion-datetime_3.entry.js +7 -7
- package/dist/esm/ion-fab_3.entry.js +2 -2
- package/dist/esm/ion-img.entry.js +2 -2
- package/dist/esm/ion-infinite-scroll_2.entry.js +4 -4
- package/dist/esm/ion-input-password-toggle.entry.js +2 -2
- package/dist/esm/ion-input.entry.js +7 -7
- package/dist/esm/ion-item-option_3.entry.js +4 -4
- package/dist/esm/ion-item_8.entry.js +2 -2
- package/dist/esm/ion-loading.entry.js +6 -6
- package/dist/esm/ion-menu_3.entry.js +7 -7
- package/dist/esm/ion-modal.entry.js +43 -266
- package/dist/esm/ion-nav_2.entry.js +6 -6
- package/dist/esm/ion-picker-column-option.entry.js +2 -2
- package/dist/esm/ion-picker-column.entry.js +2 -2
- package/dist/esm/ion-picker.entry.js +1 -1
- package/dist/esm/ion-popover.entry.js +7 -7
- package/dist/esm/ion-progress-bar.entry.js +2 -2
- package/dist/esm/ion-radio_2.entry.js +7 -37
- package/dist/esm/ion-range.entry.js +17 -7
- package/dist/esm/ion-refresher_2.entry.js +4 -4
- package/dist/esm/ion-reorder_2.entry.js +4 -4
- package/dist/esm/ion-ripple-effect.entry.js +1 -1
- package/dist/esm/ion-route_4.entry.js +2 -2
- package/dist/esm/ion-searchbar.entry.js +2 -2
- package/dist/esm/ion-segment_2.entry.js +2 -2
- package/dist/esm/ion-select-modal.entry.js +6 -6
- package/dist/esm/ion-select_3.entry.js +11 -12
- package/dist/esm/ion-spinner.entry.js +1 -1
- package/dist/esm/ion-split-pane.entry.js +1 -1
- package/dist/esm/ion-tab-bar_2.entry.js +2 -2
- package/dist/esm/ion-tab_2.entry.js +2 -2
- package/dist/esm/ion-text.entry.js +1 -1
- package/dist/esm/ion-textarea.entry.js +7 -7
- package/dist/esm/ion-toast.entry.js +6 -6
- package/dist/esm/ion-toggle.entry.js +6 -7
- package/dist/esm/{ionic-global-c81d82ab.js → ionic-global-bf78a847.js} +2 -1
- package/dist/esm/ionic.js +3 -3
- package/dist/esm/{ios.transition-314468a2.js → ios.transition-e7a4de4f.js} +4 -4
- package/dist/esm/loader.js +3 -3
- package/dist/esm/{md.transition-a560e0e2.js → md.transition-290d8802.js} +4 -4
- package/dist/esm/{notch-controller-3dc61260.js → notch-controller-bb8f3a48.js} +1 -1
- package/dist/esm/{overlays-9a81f230.js → overlays-4ff6e618.js} +5 -5
- package/dist/esm/{status-tap-d07dbc82.js → status-tap-ba401484.js} +3 -4
- package/dist/esm/{swipe-back-23ee7ab1.js → swipe-back-a258b011.js} +1 -1
- package/dist/esm-es5/app-globals-c10a1137.js +4 -0
- package/dist/esm-es5/{data-b3284b5e.js → data-ae11fd43.js} +1 -1
- package/dist/esm-es5/{framework-delegate-f683816e.js → framework-delegate-42bc40b1.js} +1 -1
- package/dist/esm-es5/{hardware-back-button-06ef3c3e.js → hardware-back-button-44195e92.js} +1 -1
- package/dist/esm-es5/{helpers-9b49d7d2.js → helpers-13b816c6.js} +1 -1
- package/dist/esm-es5/{index-5a0f5fd0.js → index-28c8fd64.js} +1 -1
- package/dist/esm-es5/{index-6a5baab0.js → index-4b39521b.js} +1 -1
- package/dist/esm-es5/{index-7105cd59.js → index-6b548278.js} +1 -1
- package/dist/esm-es5/index-9b0d46f4.js +4 -0
- package/dist/esm-es5/{index-dd0f7395.js → index-edf58462.js} +1 -1
- package/dist/esm-es5/index.js +1 -1
- package/dist/esm-es5/input-shims-5e5e47e8.js +4 -0
- package/dist/esm-es5/{input.utils-2f1029cf.js → input.utils-d3717b00.js} +1 -1
- package/dist/esm-es5/ion-accordion_2.entry.js +1 -1
- package/dist/esm-es5/ion-action-sheet.entry.js +1 -1
- package/dist/esm-es5/ion-alert.entry.js +1 -1
- package/dist/esm-es5/ion-app_8.entry.js +1 -1
- package/dist/esm-es5/ion-avatar_3.entry.js +1 -1
- package/dist/esm-es5/ion-back-button.entry.js +1 -1
- package/dist/esm-es5/ion-backdrop.entry.js +1 -1
- package/dist/esm-es5/ion-breadcrumb_2.entry.js +1 -1
- package/dist/esm-es5/ion-button_2.entry.js +1 -1
- package/dist/esm-es5/ion-card_5.entry.js +1 -1
- package/dist/esm-es5/ion-checkbox.entry.js +1 -1
- package/dist/esm-es5/ion-chip.entry.js +1 -1
- package/dist/esm-es5/ion-col_3.entry.js +1 -1
- package/dist/esm-es5/ion-datetime-button.entry.js +1 -1
- package/dist/esm-es5/ion-datetime_3.entry.js +1 -1
- package/dist/esm-es5/ion-fab_3.entry.js +1 -1
- package/dist/esm-es5/ion-img.entry.js +1 -1
- package/dist/esm-es5/ion-infinite-scroll_2.entry.js +1 -1
- package/dist/esm-es5/ion-input-password-toggle.entry.js +1 -1
- package/dist/esm-es5/ion-input.entry.js +1 -1
- package/dist/esm-es5/ion-item-option_3.entry.js +1 -1
- package/dist/esm-es5/ion-item_8.entry.js +1 -1
- package/dist/esm-es5/ion-loading.entry.js +1 -1
- package/dist/esm-es5/ion-menu_3.entry.js +1 -1
- package/dist/esm-es5/ion-modal.entry.js +1 -1
- package/dist/esm-es5/ion-nav_2.entry.js +1 -1
- package/dist/esm-es5/ion-picker-column-option.entry.js +1 -1
- package/dist/esm-es5/ion-picker-column.entry.js +1 -1
- package/dist/esm-es5/ion-picker.entry.js +1 -1
- package/dist/esm-es5/ion-popover.entry.js +1 -1
- package/dist/esm-es5/ion-progress-bar.entry.js +1 -1
- package/dist/esm-es5/ion-radio_2.entry.js +1 -1
- package/dist/esm-es5/ion-range.entry.js +1 -1
- package/dist/esm-es5/ion-refresher_2.entry.js +1 -1
- package/dist/esm-es5/ion-reorder_2.entry.js +1 -1
- package/dist/esm-es5/ion-ripple-effect.entry.js +1 -1
- package/dist/esm-es5/ion-route_4.entry.js +1 -1
- package/dist/esm-es5/ion-searchbar.entry.js +1 -1
- package/dist/esm-es5/ion-segment_2.entry.js +1 -1
- package/dist/esm-es5/ion-select-modal.entry.js +1 -1
- package/dist/esm-es5/ion-select_3.entry.js +1 -1
- package/dist/esm-es5/ion-spinner.entry.js +1 -1
- package/dist/esm-es5/ion-split-pane.entry.js +1 -1
- package/dist/esm-es5/ion-tab-bar_2.entry.js +1 -1
- package/dist/esm-es5/ion-tab_2.entry.js +1 -1
- package/dist/esm-es5/ion-text.entry.js +1 -1
- package/dist/esm-es5/ion-textarea.entry.js +1 -1
- package/dist/esm-es5/ion-toast.entry.js +1 -1
- package/dist/esm-es5/ion-toggle.entry.js +1 -1
- package/dist/esm-es5/{ionic-global-c81d82ab.js → ionic-global-bf78a847.js} +1 -1
- package/dist/esm-es5/ionic.js +1 -1
- package/dist/esm-es5/{ios.transition-314468a2.js → ios.transition-e7a4de4f.js} +1 -1
- package/dist/esm-es5/loader.js +1 -1
- package/dist/esm-es5/md.transition-290d8802.js +4 -0
- package/dist/esm-es5/{notch-controller-3dc61260.js → notch-controller-bb8f3a48.js} +1 -1
- package/dist/esm-es5/{overlays-9a81f230.js → overlays-4ff6e618.js} +1 -1
- package/dist/esm-es5/status-tap-ba401484.js +4 -0
- package/dist/esm-es5/{swipe-back-23ee7ab1.js → swipe-back-a258b011.js} +1 -1
- package/dist/html.html-data.json +0 -24
- package/dist/ionic/index.esm.js +1 -1
- package/dist/ionic/ionic.esm.js +1 -1
- package/dist/ionic/ionic.js +1 -1
- package/dist/ionic/{p-bb2a6761.entry.js → p-00d5ab83.entry.js} +1 -1
- package/dist/ionic/{p-73897169.system.js → p-0116e7d7.system.js} +1 -1
- package/dist/ionic/{p-5b932840.entry.js → p-026517fb.entry.js} +1 -1
- package/dist/ionic/{p-da8ef548.system.entry.js → p-05f90810.system.entry.js} +1 -1
- package/dist/ionic/p-06fee233.js +4 -0
- package/dist/ionic/{p-e32557bb.system.entry.js → p-0793353d.system.entry.js} +1 -1
- package/dist/ionic/{p-c935cfc9.js → p-07d0478c.js} +1 -1
- package/dist/ionic/{p-70af0afb.entry.js → p-13637707.entry.js} +1 -1
- package/dist/ionic/{p-df862603.entry.js → p-136ff13e.entry.js} +1 -1
- package/dist/ionic/{p-76446a85.entry.js → p-166f4ba0.entry.js} +1 -1
- package/dist/ionic/{p-fca17935.entry.js → p-16dd9c9b.entry.js} +1 -1
- package/dist/ionic/{p-a5b31c0f.entry.js → p-17c772fb.entry.js} +1 -1
- package/dist/ionic/{p-0bfffa34.system.entry.js → p-1b2657c9.system.entry.js} +1 -1
- package/dist/ionic/{p-4ad78edc.entry.js → p-1f62c30b.entry.js} +1 -1
- package/dist/ionic/{p-eeb5cb45.system.entry.js → p-213b12ce.system.entry.js} +2 -2
- package/dist/ionic/{p-990630ca.js → p-230af7f2.js} +1 -1
- package/dist/ionic/{p-dd0c9350.system.entry.js → p-25580c85.system.entry.js} +1 -1
- package/dist/ionic/p-30ec5574.entry.js +4 -0
- package/dist/ionic/{p-8818edd8.entry.js → p-31918ee1.entry.js} +1 -1
- package/dist/ionic/{p-bc616455.entry.js → p-327b452e.entry.js} +1 -1
- package/dist/ionic/{p-9b3bb24e.entry.js → p-34182275.entry.js} +1 -1
- package/dist/ionic/{p-2bc73fb5.js → p-3559bd4f.js} +1 -1
- package/dist/ionic/{p-acc8399c.system.entry.js → p-361ab803.system.entry.js} +2 -2
- package/dist/ionic/{p-d821466d.system.entry.js → p-364ed29d.system.entry.js} +1 -1
- package/dist/ionic/{p-265939f0.entry.js → p-37264dcc.entry.js} +1 -1
- package/dist/ionic/{p-f5d6624d.entry.js → p-379d9002.entry.js} +1 -1
- package/dist/ionic/{p-02e23f26.entry.js → p-37a21d70.entry.js} +1 -1
- package/dist/ionic/{p-77e7b7b6.system.entry.js → p-3fe95571.system.entry.js} +1 -1
- package/dist/ionic/p-4075165f.js +4 -0
- package/dist/ionic/p-4133f9ec.entry.js +4 -0
- package/dist/ionic/{p-afecb188.entry.js → p-42a9bb35.entry.js} +1 -1
- package/dist/ionic/{p-5010643d.system.entry.js → p-43df2d06.system.entry.js} +1 -1
- package/dist/ionic/{p-e8f34871.entry.js → p-441c2c8c.entry.js} +1 -1
- package/dist/ionic/{p-9962f63f.entry.js → p-4429e8c5.entry.js} +1 -1
- package/dist/ionic/{p-d1172fe3.system.entry.js → p-45109533.system.entry.js} +1 -1
- package/dist/ionic/{p-f3102647.system.entry.js → p-478dfa8c.system.entry.js} +1 -1
- package/dist/ionic/p-47ed8b64.entry.js +4 -0
- package/dist/ionic/{p-7ae680ba.system.entry.js → p-486dc46d.system.entry.js} +1 -1
- package/dist/ionic/{p-92365bc1.system.entry.js → p-48e13807.system.entry.js} +1 -1
- package/dist/ionic/{p-0eb2553a.system.entry.js → p-4a98a017.system.entry.js} +1 -1
- package/dist/ionic/p-4e8946f7.js +4 -0
- package/dist/ionic/{p-2abae1cc.system.entry.js → p-4eed0eb2.system.entry.js} +1 -1
- package/dist/ionic/p-51d4cdba.system.js +4 -0
- package/dist/ionic/{p-5126cf1e.system.js → p-52b61cba.system.js} +1 -1
- package/dist/ionic/{p-95775830.entry.js → p-56a8aa85.entry.js} +1 -1
- package/dist/ionic/{p-2515cb4d.system.entry.js → p-5996d3ad.system.entry.js} +1 -1
- package/dist/ionic/{p-346b2baf.js → p-5ae70860.js} +1 -1
- package/dist/ionic/{p-39dd4f62.js → p-5d1be985.js} +1 -1
- package/dist/ionic/{p-f78af648.system.entry.js → p-5d3dc32b.system.entry.js} +1 -1
- package/dist/ionic/{p-155c2bb0.entry.js → p-5e9733d0.entry.js} +1 -1
- package/dist/ionic/{p-f301a694.system.entry.js → p-6347c733.system.entry.js} +1 -1
- package/dist/ionic/{p-058e61eb.system.js → p-64bb1da1.system.js} +1 -1
- package/dist/ionic/p-665f9987.entry.js +4 -0
- package/dist/ionic/{p-578efda4.system.js → p-6a649fcd.system.js} +2 -2
- package/dist/ionic/p-6c85db7e.system.entry.js +4 -0
- package/dist/ionic/{p-bb11d9fb.js → p-6eb35904.js} +1 -1
- package/dist/ionic/{p-ecceeb90.js → p-6f3d8334.js} +1 -1
- package/dist/ionic/{p-fca6ef5f.system.entry.js → p-712b57f9.system.entry.js} +1 -1
- package/dist/ionic/p-71d528e6.entry.js +4 -0
- package/dist/ionic/{p-d99e8644.system.js → p-733f53f8.system.js} +1 -1
- package/dist/ionic/{p-18e101b7.system.entry.js → p-7a9407cc.system.entry.js} +2 -2
- package/dist/ionic/{p-d7bb5325.entry.js → p-80f2a47b.entry.js} +1 -1
- package/dist/ionic/{p-8cfba7e9.system.entry.js → p-830f1a37.system.entry.js} +1 -1
- package/dist/ionic/{p-62af944c.entry.js → p-85b1ffae.entry.js} +1 -1
- package/dist/ionic/{p-3c8e5c23.system.js → p-8911101b.system.js} +1 -1
- package/dist/ionic/{p-7a1766d6.js → p-89e678fa.js} +1 -1
- package/dist/ionic/{p-b3680e2f.system.js → p-8aa290af.system.js} +1 -1
- package/dist/ionic/p-8b367303.entry.js +4 -0
- package/dist/ionic/{p-41780810.entry.js → p-8c0d81a9.entry.js} +1 -1
- package/dist/ionic/p-8f3d6be8.entry.js +4 -0
- package/dist/ionic/{p-955c3eb8.entry.js → p-8f89c8e3.entry.js} +1 -1
- package/dist/ionic/{p-c32644d7.entry.js → p-91b944fa.entry.js} +1 -1
- package/dist/ionic/{p-af452fa4.system.js → p-953d9cf5.system.js} +1 -1
- package/dist/ionic/{p-5fce0c0b.system.entry.js → p-9c7efe25.system.entry.js} +1 -1
- package/dist/ionic/{p-bdad26e3.entry.js → p-9d4a8059.entry.js} +1 -1
- package/dist/ionic/p-9e23592d.system.js +4 -0
- package/dist/ionic/{p-c8d645b3.entry.js → p-a4b108a7.entry.js} +1 -1
- package/dist/ionic/{p-9de5c787.entry.js → p-a69cf9ea.entry.js} +1 -1
- package/dist/ionic/p-a749d4a9.entry.js +4 -0
- package/dist/ionic/{p-2507278c.system.entry.js → p-a873feda.system.entry.js} +1 -1
- package/dist/ionic/{p-2cbe5399.entry.js → p-a8d31cd5.entry.js} +1 -1
- package/dist/ionic/{p-655723eb.system.entry.js → p-ac2c154f.system.entry.js} +1 -1
- package/dist/ionic/p-acb5a6e4.entry.js +4 -0
- package/dist/ionic/{p-4d413973.system.entry.js → p-ae02a7ea.system.entry.js} +1 -1
- package/dist/ionic/p-afd6183a.system.entry.js +4 -0
- package/dist/ionic/p-b1c4a9db.js +4 -0
- package/dist/ionic/{p-af744710.system.entry.js → p-b533b7ab.system.entry.js} +1 -1
- package/dist/ionic/{p-d4ca0475.js → p-b566749e.js} +1 -1
- package/dist/ionic/p-b58057d4.js +4 -0
- package/dist/ionic/p-b5a10c8b.system.entry.js +4 -0
- package/dist/ionic/p-b6ee3fc7.system.entry.js +4 -0
- package/dist/ionic/{p-8e407469.system.js → p-bba0bc47.system.js} +1 -1
- package/dist/ionic/{p-10327ad2.system.entry.js → p-bc148b43.system.entry.js} +1 -1
- package/dist/ionic/{p-fec13c57.entry.js → p-c06312bf.entry.js} +1 -1
- package/dist/ionic/{p-860eb968.system.js → p-c09a2f58.system.js} +1 -1
- package/dist/ionic/{p-6d32975a.entry.js → p-c2583512.entry.js} +1 -1
- package/dist/ionic/p-c312ea08.entry.js +4 -0
- package/dist/ionic/{p-2ef3c7ee.system.entry.js → p-c3a51c19.system.entry.js} +1 -1
- package/dist/ionic/{p-f89cf011.system.entry.js → p-c3de6cd1.system.entry.js} +1 -1
- package/dist/ionic/p-c42a4dad.system.entry.js +4 -0
- package/dist/ionic/{p-a9e24ae2.system.entry.js → p-c55254f0.system.entry.js} +1 -1
- package/dist/ionic/{p-33a8a71b.entry.js → p-c66604e4.entry.js} +1 -1
- package/dist/ionic/{p-72ec9a26.entry.js → p-ca5eef42.entry.js} +1 -1
- package/dist/ionic/{p-037fc3f3.entry.js → p-cc991f05.entry.js} +1 -1
- package/dist/ionic/{p-7458862e.system.entry.js → p-d4896d36.system.entry.js} +1 -1
- package/dist/ionic/{p-1a5bc5f7.js → p-d60342e3.js} +1 -1
- package/dist/ionic/{p-5882bffa.system.entry.js → p-d6b3e734.system.entry.js} +1 -1
- package/dist/ionic/{p-acb30a5c.system.js → p-d7607262.system.js} +1 -1
- package/dist/ionic/{p-31a6efce.system.entry.js → p-d785235b.system.entry.js} +1 -1
- package/dist/ionic/{p-ed75fcfb.system.entry.js → p-d7fef52e.system.entry.js} +1 -1
- package/dist/ionic/{p-65346408.system.entry.js → p-d854f4bc.system.entry.js} +1 -1
- package/dist/ionic/{p-a69b9fc5.system.js → p-d86d7845.system.js} +1 -1
- package/dist/ionic/{p-dc146a2a.system.entry.js → p-de4fef3c.system.entry.js} +1 -1
- package/dist/ionic/p-e03cd18a.system.entry.js +4 -0
- package/dist/ionic/p-e03d645e.entry.js +4 -0
- package/dist/ionic/{p-84d08aae.system.entry.js → p-e0a2abde.system.entry.js} +1 -1
- package/dist/ionic/{p-d743e981.js → p-e25cd3c7.js} +1 -1
- package/dist/ionic/{p-484d855b.system.entry.js → p-e3be9fa8.system.entry.js} +2 -2
- package/dist/ionic/{p-56da53ad.system.entry.js → p-e4c1fd74.system.entry.js} +1 -1
- package/dist/ionic/{p-e2e19375.system.entry.js → p-e84da6cb.system.entry.js} +1 -1
- package/dist/ionic/{p-36c448fe.entry.js → p-eab9414f.entry.js} +1 -1
- package/dist/ionic/{p-9f3008d4.system.js → p-eb4ac14d.system.js} +1 -1
- package/dist/ionic/p-ebb85488.entry.js +4 -0
- package/dist/ionic/{p-89bf08c7.entry.js → p-ebd0a280.entry.js} +1 -1
- package/dist/ionic/{p-93e3654c.system.entry.js → p-ee41045b.system.entry.js} +1 -1
- package/dist/ionic/p-efa8edbc.system.js +4 -0
- package/dist/ionic/p-f1bbc785.js +4 -0
- package/dist/ionic/p-f4f255cb.system.js +4 -0
- package/dist/ionic/{p-4452a8ac.system.js → p-f5a536e1.system.js} +1 -1
- package/dist/ionic/{p-343b6b1d.system.js → p-f687573e.system.js} +1 -1
- package/dist/ionic/{p-95da3ae2.system.js → p-f6e7870b.system.js} +1 -1
- package/dist/ionic/p-f6fe87c1.js +4 -0
- package/dist/ionic/{p-f56752be.system.entry.js → p-f8ef15ba.system.entry.js} +1 -1
- package/dist/ionic/{p-e5849f8d.entry.js → p-fced06e0.entry.js} +1 -1
- package/dist/ionic/{p-7b98cebe.entry.js → p-fd2c0aa6.entry.js} +1 -1
- package/dist/ionic/{p-63c09585.system.entry.js → p-feab8373.system.entry.js} +1 -1
- package/dist/ionic/p-ff4b7e40.system.js +4 -0
- package/dist/ionic/{p-4d3a5f86.js → p-ffb6d30e.js} +1 -1
- package/dist/types/components/checkbox/checkbox.d.ts +0 -6
- package/dist/types/components/modal/animations/sheet.d.ts +0 -1
- package/dist/types/components/modal/gestures/sheet.d.ts +1 -1
- package/dist/types/components/modal/modal-interface.d.ts +0 -1
- package/dist/types/components/modal/modal.d.ts +0 -11
- package/dist/types/components/radio/radio.d.ts +0 -19
- package/dist/types/components/select/select.d.ts +0 -6
- package/dist/types/components/toggle/toggle.d.ts +0 -6
- package/dist/types/components/toolbar/toolbar.d.ts +0 -4
- package/dist/types/components.d.ts +0 -48
- package/dist/types/utils/config.d.ts +0 -9
- package/dist/types/utils/helpers.d.ts +4 -0
- package/dist/types/utils/logging/index.d.ts +1 -13
- package/dist/types/utils/native/capacitor.d.ts +7 -1
- package/dist/types/utils/test/platform.utils.d.ts +1 -1
- package/hydrate/index.js +112 -344
- package/hydrate/index.mjs +112 -344
- package/package.json +5 -5
- package/dist/esm-es5/app-globals-5dbb61a5.js +0 -4
- package/dist/esm-es5/index-6ad967f3.js +0 -4
- package/dist/esm-es5/input-shims-dff819a9.js +0 -4
- package/dist/esm-es5/md.transition-a560e0e2.js +0 -4
- package/dist/esm-es5/status-tap-d07dbc82.js +0 -4
- package/dist/ionic/p-04e08129.entry.js +0 -4
- package/dist/ionic/p-0574e87e.js +0 -4
- package/dist/ionic/p-155f4d90.entry.js +0 -4
- package/dist/ionic/p-16bfb979.system.entry.js +0 -4
- package/dist/ionic/p-1f405274.js +0 -4
- package/dist/ionic/p-21227121.js +0 -4
- package/dist/ionic/p-22149a4f.js +0 -4
- package/dist/ionic/p-2c9eb774.system.js +0 -4
- package/dist/ionic/p-322c5fb4.system.js +0 -4
- package/dist/ionic/p-34479cfb.entry.js +0 -4
- package/dist/ionic/p-3e99e3e0.entry.js +0 -4
- package/dist/ionic/p-4129228f.system.entry.js +0 -4
- package/dist/ionic/p-42c9deb1.entry.js +0 -4
- package/dist/ionic/p-49a0e74c.entry.js +0 -4
- package/dist/ionic/p-52245809.js +0 -4
- package/dist/ionic/p-5375091b.system.entry.js +0 -4
- package/dist/ionic/p-5c9324c6.js +0 -4
- package/dist/ionic/p-67222c16.system.js +0 -4
- package/dist/ionic/p-712fedc9.entry.js +0 -4
- package/dist/ionic/p-80c6d619.entry.js +0 -4
- package/dist/ionic/p-8f51281f.entry.js +0 -4
- package/dist/ionic/p-9a100adc.entry.js +0 -4
- package/dist/ionic/p-a18470c6.entry.js +0 -4
- package/dist/ionic/p-af09741c.entry.js +0 -4
- package/dist/ionic/p-b936eb7e.system.entry.js +0 -4
- package/dist/ionic/p-c3802319.system.js +0 -4
- package/dist/ionic/p-e8d56122.js +0 -4
- package/dist/ionic/p-efbf5af5.system.entry.js +0 -4
- package/dist/ionic/p-f2613334.system.entry.js +0 -4
- package/dist/ionic/p-fbf86e62.system.js +0 -4
|
@@ -14,15 +14,10 @@ import { getIonMode } from "../../global/ionic-global";
|
|
|
14
14
|
* @part container - The container for the radio mark.
|
|
15
15
|
* @part label - The label text describing the radio.
|
|
16
16
|
* @part mark - The checkmark or dot used to indicate the checked state.
|
|
17
|
-
* @part supporting-text - Supporting text displayed beneath the radio label.
|
|
18
|
-
* @part helper-text - Supporting text displayed beneath the radio label when the radio is valid.
|
|
19
|
-
* @part error-text - Supporting text displayed beneath the radio label when the radio is invalid and touched.
|
|
20
17
|
*/
|
|
21
18
|
export class Radio {
|
|
22
19
|
constructor() {
|
|
23
20
|
this.inputId = `ion-rb-${radioButtonIds++}`;
|
|
24
|
-
this.helperTextId = `${this.inputId}-helper-text`;
|
|
25
|
-
this.errorTextId = `${this.inputId}-error-text`;
|
|
26
21
|
this.radioGroup = null;
|
|
27
22
|
this.updateState = () => {
|
|
28
23
|
if (this.radioGroup) {
|
|
@@ -62,8 +57,6 @@ export class Radio {
|
|
|
62
57
|
this.color = undefined;
|
|
63
58
|
this.name = this.inputId;
|
|
64
59
|
this.disabled = false;
|
|
65
|
-
this.errorText = undefined;
|
|
66
|
-
this.helperText = undefined;
|
|
67
60
|
this.value = undefined;
|
|
68
61
|
this.labelPlacement = 'start';
|
|
69
62
|
this.justify = undefined;
|
|
@@ -123,37 +116,11 @@ export class Radio {
|
|
|
123
116
|
renderRadioControl() {
|
|
124
117
|
return (h("div", { class: "radio-icon", part: "container" }, h("div", { class: "radio-inner", part: "mark" }), h("div", { class: "radio-ripple" })));
|
|
125
118
|
}
|
|
126
|
-
getHintTextID() {
|
|
127
|
-
const { el, helperText, errorText, helperTextId, errorTextId } = this;
|
|
128
|
-
if (el.classList.contains('ion-touched') && el.classList.contains('ion-invalid') && errorText) {
|
|
129
|
-
return errorTextId;
|
|
130
|
-
}
|
|
131
|
-
if (helperText) {
|
|
132
|
-
return helperTextId;
|
|
133
|
-
}
|
|
134
|
-
return undefined;
|
|
135
|
-
}
|
|
136
|
-
/**
|
|
137
|
-
* Responsible for rendering helper text and error text.
|
|
138
|
-
* This element should only be rendered if hint text is set.
|
|
139
|
-
*/
|
|
140
|
-
renderHintText() {
|
|
141
|
-
const { helperText, errorText, helperTextId, errorTextId } = this;
|
|
142
|
-
/**
|
|
143
|
-
* undefined and empty string values should
|
|
144
|
-
* be treated as not having helper/error text.
|
|
145
|
-
*/
|
|
146
|
-
const hasHintText = !!helperText || !!errorText;
|
|
147
|
-
if (!hasHintText) {
|
|
148
|
-
return;
|
|
149
|
-
}
|
|
150
|
-
return (h("div", { class: "radio-bottom" }, h("div", { id: helperTextId, class: "helper-text", part: "supporting-text helper-text" }, helperText), h("div", { id: errorTextId, class: "error-text", part: "supporting-text error-text" }, errorText)));
|
|
151
|
-
}
|
|
152
119
|
render() {
|
|
153
120
|
const { checked, disabled, color, el, justify, labelPlacement, hasLabel, buttonTabindex, alignment } = this;
|
|
154
121
|
const mode = getIonMode(this);
|
|
155
122
|
const inItem = hostContext('ion-item', el);
|
|
156
|
-
return (h(Host, { key: '
|
|
123
|
+
return (h(Host, { key: '5a0adab55ad009305de4856fa1b9f93f2279a734', onFocus: this.onFocus, onBlur: this.onBlur, onClick: this.onClick, class: createColorClasses(color, {
|
|
157
124
|
[mode]: true,
|
|
158
125
|
'in-item': inItem,
|
|
159
126
|
'radio-checked': checked,
|
|
@@ -164,10 +131,10 @@ export class Radio {
|
|
|
164
131
|
// Focus and active styling should not apply when the radio is in an item
|
|
165
132
|
'ion-activatable': !inItem,
|
|
166
133
|
'ion-focusable': !inItem,
|
|
167
|
-
}), role: "radio", "aria-checked": checked ? 'true' : 'false', "aria-disabled": disabled ? 'true' : null,
|
|
134
|
+
}), role: "radio", "aria-checked": checked ? 'true' : 'false', "aria-disabled": disabled ? 'true' : null, tabindex: buttonTabindex }, h("label", { key: 'f5673a798e6d87868339f046445f707e1d93b7b6', class: "radio-wrapper" }, h("div", { key: 'e9190c06f75a171cab63e3f74ccf771c3ed87005', class: {
|
|
168
135
|
'label-text-wrapper': true,
|
|
169
136
|
'label-text-wrapper-hidden': !hasLabel,
|
|
170
|
-
}, part: "label" }, h("slot", { key: '
|
|
137
|
+
}, part: "label" }, h("slot", { key: '6cedf4e7b3bd03e4a635727dd7b6094bab64af64' })), h("div", { key: '26dd48d9d2848b7f100b732abdc4a3171adde483', class: "native-wrapper" }, this.renderRadioControl()))));
|
|
171
138
|
}
|
|
172
139
|
static get is() { return "ion-radio"; }
|
|
173
140
|
static get encapsulation() { return "shadow"; }
|
|
@@ -244,40 +211,6 @@ export class Radio {
|
|
|
244
211
|
"reflect": false,
|
|
245
212
|
"defaultValue": "false"
|
|
246
213
|
},
|
|
247
|
-
"errorText": {
|
|
248
|
-
"type": "string",
|
|
249
|
-
"mutable": false,
|
|
250
|
-
"complexType": {
|
|
251
|
-
"original": "string",
|
|
252
|
-
"resolved": "string | undefined",
|
|
253
|
-
"references": {}
|
|
254
|
-
},
|
|
255
|
-
"required": false,
|
|
256
|
-
"optional": true,
|
|
257
|
-
"docs": {
|
|
258
|
-
"tags": [],
|
|
259
|
-
"text": "Text that is placed under the radio label and displayed when an error is detected."
|
|
260
|
-
},
|
|
261
|
-
"attribute": "error-text",
|
|
262
|
-
"reflect": false
|
|
263
|
-
},
|
|
264
|
-
"helperText": {
|
|
265
|
-
"type": "string",
|
|
266
|
-
"mutable": false,
|
|
267
|
-
"complexType": {
|
|
268
|
-
"original": "string",
|
|
269
|
-
"resolved": "string | undefined",
|
|
270
|
-
"references": {}
|
|
271
|
-
},
|
|
272
|
-
"required": false,
|
|
273
|
-
"optional": true,
|
|
274
|
-
"docs": {
|
|
275
|
-
"tags": [],
|
|
276
|
-
"text": "Text that is placed under the radio label and displayed when no error is detected."
|
|
277
|
-
},
|
|
278
|
-
"attribute": "helper-text",
|
|
279
|
-
"reflect": false
|
|
280
|
-
},
|
|
281
214
|
"value": {
|
|
282
215
|
"type": "any",
|
|
283
216
|
"mutable": false,
|
|
@@ -175,39 +175,32 @@ input {
|
|
|
175
175
|
align-items: center;
|
|
176
176
|
}
|
|
177
177
|
|
|
178
|
-
.radio-
|
|
179
|
-
padding-top: 4px;
|
|
180
|
-
display: flex;
|
|
178
|
+
:host(.radio-justify-space-between) .radio-wrapper {
|
|
181
179
|
justify-content: space-between;
|
|
182
|
-
font-size: 0.75rem;
|
|
183
|
-
white-space: normal;
|
|
184
180
|
}
|
|
185
181
|
|
|
186
|
-
:host(.radio-
|
|
187
|
-
|
|
182
|
+
:host(.radio-justify-start) .radio-wrapper {
|
|
183
|
+
justify-content: start;
|
|
188
184
|
}
|
|
189
185
|
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
* present on the radio. Otherwise the helper text should
|
|
193
|
-
* be shown.
|
|
194
|
-
*/
|
|
195
|
-
.radio-bottom .error-text {
|
|
196
|
-
display: none;
|
|
197
|
-
color: var(--ion-color-danger, #c5000f);
|
|
186
|
+
:host(.radio-justify-end) .radio-wrapper {
|
|
187
|
+
justify-content: end;
|
|
198
188
|
}
|
|
199
189
|
|
|
200
|
-
.radio-
|
|
201
|
-
|
|
202
|
-
color: var(--ion-color-step-700, var(--ion-text-color-step-300, #4d4d4d));
|
|
190
|
+
:host(.radio-alignment-start) .radio-wrapper {
|
|
191
|
+
align-items: start;
|
|
203
192
|
}
|
|
204
193
|
|
|
205
|
-
:host(.
|
|
206
|
-
|
|
194
|
+
:host(.radio-alignment-center) .radio-wrapper {
|
|
195
|
+
align-items: center;
|
|
207
196
|
}
|
|
208
197
|
|
|
209
|
-
:host(.
|
|
210
|
-
|
|
198
|
+
:host(.radio-justify-space-between),
|
|
199
|
+
:host(.radio-justify-start),
|
|
200
|
+
:host(.radio-justify-end),
|
|
201
|
+
:host(.radio-alignment-start),
|
|
202
|
+
:host(.radio-alignment-center) {
|
|
203
|
+
display: block;
|
|
211
204
|
}
|
|
212
205
|
|
|
213
206
|
/**
|
|
@@ -236,7 +229,6 @@ input {
|
|
|
236
229
|
*/
|
|
237
230
|
:host(.radio-label-placement-end) .radio-wrapper {
|
|
238
231
|
flex-direction: row-reverse;
|
|
239
|
-
justify-content: start;
|
|
240
232
|
}
|
|
241
233
|
|
|
242
234
|
/**
|
|
@@ -278,7 +270,6 @@ input {
|
|
|
278
270
|
*/
|
|
279
271
|
:host(.radio-label-placement-stacked) .radio-wrapper {
|
|
280
272
|
flex-direction: column;
|
|
281
|
-
text-align: center;
|
|
282
273
|
}
|
|
283
274
|
|
|
284
275
|
:host(.radio-label-placement-stacked) .label-text-wrapper {
|
|
@@ -324,34 +315,6 @@ input {
|
|
|
324
315
|
}
|
|
325
316
|
}
|
|
326
317
|
|
|
327
|
-
:host(.radio-justify-space-between) .radio-wrapper {
|
|
328
|
-
justify-content: space-between;
|
|
329
|
-
}
|
|
330
|
-
|
|
331
|
-
:host(.radio-justify-start) .radio-wrapper {
|
|
332
|
-
justify-content: start;
|
|
333
|
-
}
|
|
334
|
-
|
|
335
|
-
:host(.radio-justify-end) .radio-wrapper {
|
|
336
|
-
justify-content: end;
|
|
337
|
-
}
|
|
338
|
-
|
|
339
|
-
:host(.radio-alignment-start) .radio-wrapper {
|
|
340
|
-
align-items: start;
|
|
341
|
-
}
|
|
342
|
-
|
|
343
|
-
:host(.radio-alignment-center) .radio-wrapper {
|
|
344
|
-
align-items: center;
|
|
345
|
-
}
|
|
346
|
-
|
|
347
|
-
:host(.radio-justify-space-between),
|
|
348
|
-
:host(.radio-justify-start),
|
|
349
|
-
:host(.radio-justify-end),
|
|
350
|
-
:host(.radio-alignment-start),
|
|
351
|
-
:host(.radio-alignment-center) {
|
|
352
|
-
display: block;
|
|
353
|
-
}
|
|
354
|
-
|
|
355
318
|
/**
|
|
356
319
|
* Convert a font size to a dynamic font size.
|
|
357
320
|
* Fonts that participate in Dynamic Type should use
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
import { Host, h } from "@stencil/core";
|
|
5
5
|
import { findClosestIonContent, disableContentScrollY, resetContentScrollY } from "../../utils/content/index";
|
|
6
|
-
import { inheritAriaAttributes, clamp, debounceEvent, renderHiddenInput } from "../../utils/helpers";
|
|
6
|
+
import { inheritAriaAttributes, clamp, debounceEvent, renderHiddenInput, isSafeNumber } from "../../utils/helpers";
|
|
7
7
|
import { printIonWarning } from "../../utils/logging/index";
|
|
8
8
|
import { isRTL } from "../../utils/rtl/index";
|
|
9
9
|
import { createColorClasses, hostContext } from "../../utils/theme";
|
|
@@ -129,11 +129,17 @@ export class Range {
|
|
|
129
129
|
this.ionInput = debounce === undefined ? originalIonInput !== null && originalIonInput !== void 0 ? originalIonInput : ionInput : debounceEvent(ionInput, debounce);
|
|
130
130
|
}
|
|
131
131
|
minChanged() {
|
|
132
|
+
if (!isSafeNumber(this.min)) {
|
|
133
|
+
this.min = 0;
|
|
134
|
+
}
|
|
132
135
|
if (!this.noUpdate) {
|
|
133
136
|
this.updateRatio();
|
|
134
137
|
}
|
|
135
138
|
}
|
|
136
139
|
maxChanged() {
|
|
140
|
+
if (!isSafeNumber(this.max)) {
|
|
141
|
+
this.max = 100;
|
|
142
|
+
}
|
|
137
143
|
if (!this.noUpdate) {
|
|
138
144
|
this.updateRatio();
|
|
139
145
|
}
|
|
@@ -564,7 +570,7 @@ export class Range {
|
|
|
564
570
|
const needsEndAdjustment = inItem && !hasEndContent;
|
|
565
571
|
const mode = getIonMode(this);
|
|
566
572
|
renderHiddenInput(true, el, this.name, JSON.stringify(this.getValue()), disabled);
|
|
567
|
-
return (h(Host, { key: '
|
|
573
|
+
return (h(Host, { key: '37f1c8a1f2952dcfc900d200884b3ac7a76a349c', onFocusin: this.onFocus, onFocusout: this.onBlur, id: rangeId, class: createColorClasses(this.color, {
|
|
568
574
|
[mode]: true,
|
|
569
575
|
'in-item': inItem,
|
|
570
576
|
'range-disabled': disabled,
|
|
@@ -573,10 +579,10 @@ export class Range {
|
|
|
573
579
|
[`range-label-placement-${labelPlacement}`]: true,
|
|
574
580
|
'range-item-start-adjustment': needsStartAdjustment,
|
|
575
581
|
'range-item-end-adjustment': needsEndAdjustment,
|
|
576
|
-
}) }, h("label", { key: '
|
|
582
|
+
}) }, h("label", { key: '2833c43f2f36b95ac21ca7700d85d28527c78936', class: "range-wrapper", id: "range-label" }, h("div", { key: 'e73b0c070244ae7e1b97b4dab05e6a9da4f559a7', class: {
|
|
577
583
|
'label-text-wrapper': true,
|
|
578
584
|
'label-text-wrapper-hidden': !hasLabel,
|
|
579
|
-
}, part: "label" }, label !== undefined ? h("div", { class: "label-text" }, label) : h("slot", { name: "label" })), h("div", { key: '
|
|
585
|
+
}, part: "label" }, label !== undefined ? h("div", { class: "label-text" }, label) : h("slot", { name: "label" })), h("div", { key: '1a93a9e6cc9ff5b03c4d7318f36debe462ffd7ef', class: "native-wrapper" }, h("slot", { key: '976d52d2ae6d91fc872dfe0fd6a35716693af172', name: "start" }), this.renderRangeSlider(), h("slot", { key: 'bad89f6db73b136313ed3a195e598c2c220181c0', name: "end" })))));
|
|
580
586
|
}
|
|
581
587
|
static get is() { return "ion-range"; }
|
|
582
588
|
static get encapsulation() { return "shadow"; }
|
|
@@ -91,7 +91,6 @@ export class Select {
|
|
|
91
91
|
this.expandedIcon = undefined;
|
|
92
92
|
this.shape = undefined;
|
|
93
93
|
this.value = undefined;
|
|
94
|
-
this.required = false;
|
|
95
94
|
}
|
|
96
95
|
styleChanged() {
|
|
97
96
|
this.emitStyle();
|
|
@@ -656,8 +655,8 @@ export class Select {
|
|
|
656
655
|
return renderedLabel;
|
|
657
656
|
}
|
|
658
657
|
renderListbox() {
|
|
659
|
-
const { disabled, inputId, isExpanded
|
|
660
|
-
return (h("button", { disabled: disabled, id: inputId, "aria-label": this.ariaLabel, "aria-haspopup": "dialog", "aria-expanded": `${isExpanded}`,
|
|
658
|
+
const { disabled, inputId, isExpanded } = this;
|
|
659
|
+
return (h("button", { disabled: disabled, id: inputId, "aria-label": this.ariaLabel, "aria-haspopup": "dialog", "aria-expanded": `${isExpanded}`, onFocus: this.onFocus, onBlur: this.onBlur, ref: (focusEl) => (this.focusEl = focusEl) }));
|
|
661
660
|
}
|
|
662
661
|
render() {
|
|
663
662
|
const { disabled, el, isExpanded, expandedIcon, labelPlacement, justify, placeholder, fill, shape, name, value } = this;
|
|
@@ -688,7 +687,7 @@ export class Select {
|
|
|
688
687
|
* TODO(FW-5592): Remove hasStartEndSlots condition
|
|
689
688
|
*/
|
|
690
689
|
const labelShouldFloat = labelPlacement === 'stacked' || (labelPlacement === 'floating' && (hasValue || isExpanded || hasStartEndSlots));
|
|
691
|
-
return (h(Host, { key: '
|
|
690
|
+
return (h(Host, { key: 'b2dca9ae25d88e4d9fdb55003041a66be5668fcf', onClick: this.onClick, class: createColorClasses(this.color, {
|
|
692
691
|
[mode]: true,
|
|
693
692
|
'in-item': inItem,
|
|
694
693
|
'in-item-color': hostContext('ion-item.ion-color', el),
|
|
@@ -704,7 +703,7 @@ export class Select {
|
|
|
704
703
|
[`select-justify-${justify}`]: justifyEnabled,
|
|
705
704
|
[`select-shape-${shape}`]: shape !== undefined,
|
|
706
705
|
[`select-label-placement-${labelPlacement}`]: true,
|
|
707
|
-
}) }, h("label", { key: '
|
|
706
|
+
}) }, h("label", { key: 'c22fe9aee8cd448223497ef143e89529fcef8af6', class: "select-wrapper", id: "select-label" }, this.renderLabelContainer(), h("div", { key: '601972df4579f4fa6a9c2c12865593e807decb72', class: "select-wrapper-inner" }, h("slot", { key: '5f7b1261862f74b978b26f026533e3fd1cc666ba', name: "start" }), h("div", { key: '39616da89f4b4b78432f6da85116a7de2ca589e7', class: "native-wrapper", ref: (el) => (this.nativeWrapperEl = el), part: "container" }, this.renderSelectText(), this.renderListbox()), h("slot", { key: '1d7b3601b73af7c05b3627cfc8e5147ea379bb03', name: "end" }), !hasFloatingOrStackedLabel && this.renderSelectIcon()), hasFloatingOrStackedLabel && this.renderSelectIcon(), shouldRenderHighlight && h("div", { key: 'b0344f0ac15003e22fee66d3d7ed03a07da7e8b7', class: "select-highlight" }))));
|
|
708
707
|
}
|
|
709
708
|
static get is() { return "ion-select"; }
|
|
710
709
|
static get encapsulation() { return "shadow"; }
|
|
@@ -1070,24 +1069,6 @@ export class Select {
|
|
|
1070
1069
|
},
|
|
1071
1070
|
"attribute": "value",
|
|
1072
1071
|
"reflect": false
|
|
1073
|
-
},
|
|
1074
|
-
"required": {
|
|
1075
|
-
"type": "boolean",
|
|
1076
|
-
"mutable": false,
|
|
1077
|
-
"complexType": {
|
|
1078
|
-
"original": "boolean",
|
|
1079
|
-
"resolved": "boolean",
|
|
1080
|
-
"references": {}
|
|
1081
|
-
},
|
|
1082
|
-
"required": false,
|
|
1083
|
-
"optional": false,
|
|
1084
|
-
"docs": {
|
|
1085
|
-
"tags": [],
|
|
1086
|
-
"text": "If true, screen readers will announce it as a required field. This property\nworks only for accessibility purposes, it will not prevent the form from\nsubmitting if the value is invalid."
|
|
1087
|
-
},
|
|
1088
|
-
"attribute": "required",
|
|
1089
|
-
"reflect": false,
|
|
1090
|
-
"defaultValue": "false"
|
|
1091
1072
|
}
|
|
1092
1073
|
};
|
|
1093
1074
|
}
|
|
@@ -373,7 +373,6 @@
|
|
|
373
373
|
justify-content: space-between;
|
|
374
374
|
border-top: var(--border-width) var(--border-style) var(--border-color);
|
|
375
375
|
font-size: 0.75rem;
|
|
376
|
-
white-space: normal;
|
|
377
376
|
}
|
|
378
377
|
|
|
379
378
|
/**
|
|
@@ -397,7 +396,7 @@
|
|
|
397
396
|
|
|
398
397
|
.textarea-bottom .helper-text {
|
|
399
398
|
display: block;
|
|
400
|
-
color: var(--ion-color-step-
|
|
399
|
+
color: var(--ion-color-step-550, var(--ion-text-color-step-450, #737373));
|
|
401
400
|
}
|
|
402
401
|
|
|
403
402
|
:host(.ion-touched.ion-invalid) .textarea-bottom .error-text {
|
|
@@ -416,7 +415,7 @@
|
|
|
416
415
|
*/
|
|
417
416
|
-webkit-margin-start: auto;
|
|
418
417
|
margin-inline-start: auto;
|
|
419
|
-
color: var(--ion-color-step-
|
|
418
|
+
color: var(--ion-color-step-550, var(--ion-text-color-step-450, #737373));
|
|
420
419
|
white-space: nowrap;
|
|
421
420
|
padding-inline-start: 16px;
|
|
422
421
|
}
|
|
@@ -373,7 +373,6 @@
|
|
|
373
373
|
justify-content: space-between;
|
|
374
374
|
border-top: var(--border-width) var(--border-style) var(--border-color);
|
|
375
375
|
font-size: 0.75rem;
|
|
376
|
-
white-space: normal;
|
|
377
376
|
}
|
|
378
377
|
|
|
379
378
|
/**
|
|
@@ -397,7 +396,7 @@
|
|
|
397
396
|
|
|
398
397
|
.textarea-bottom .helper-text {
|
|
399
398
|
display: block;
|
|
400
|
-
color: var(--ion-color-step-
|
|
399
|
+
color: var(--ion-color-step-550, var(--ion-text-color-step-450, #737373));
|
|
401
400
|
}
|
|
402
401
|
|
|
403
402
|
:host(.ion-touched.ion-invalid) .textarea-bottom .error-text {
|
|
@@ -416,7 +415,7 @@
|
|
|
416
415
|
*/
|
|
417
416
|
-webkit-margin-start: auto;
|
|
418
417
|
margin-inline-start: auto;
|
|
419
|
-
color: var(--ion-color-step-
|
|
418
|
+
color: var(--ion-color-step-550, var(--ion-text-color-step-450, #737373));
|
|
420
419
|
white-space: nowrap;
|
|
421
420
|
padding-inline-start: 16px;
|
|
422
421
|
}
|
|
@@ -929,10 +928,6 @@
|
|
|
929
928
|
--border-color: var(--highlight-color);
|
|
930
929
|
}
|
|
931
930
|
|
|
932
|
-
/**
|
|
933
|
-
* The bottom content should never have
|
|
934
|
-
* a border with the solid style.
|
|
935
|
-
*/
|
|
936
931
|
:host(.textarea-fill-solid) .textarea-bottom {
|
|
937
932
|
border-top: none;
|
|
938
933
|
}
|
|
@@ -71,7 +71,6 @@ export class Toggle {
|
|
|
71
71
|
this.labelPlacement = 'start';
|
|
72
72
|
this.justify = undefined;
|
|
73
73
|
this.alignment = undefined;
|
|
74
|
-
this.required = false;
|
|
75
74
|
}
|
|
76
75
|
disabledChanged() {
|
|
77
76
|
if (this.gesture) {
|
|
@@ -153,12 +152,12 @@ export class Toggle {
|
|
|
153
152
|
return this.el.textContent !== '';
|
|
154
153
|
}
|
|
155
154
|
render() {
|
|
156
|
-
const { activated, color, checked, disabled, el, justify, labelPlacement, inputId, name, alignment
|
|
155
|
+
const { activated, color, checked, disabled, el, justify, labelPlacement, inputId, name, alignment } = this;
|
|
157
156
|
const mode = getIonMode(this);
|
|
158
157
|
const value = this.getValue();
|
|
159
158
|
const rtl = isRTL(el) ? 'rtl' : 'ltr';
|
|
160
159
|
renderHiddenInput(true, el, name, checked ? value : '', disabled);
|
|
161
|
-
return (h(Host, { key: '
|
|
160
|
+
return (h(Host, { key: 'f52195ec3bc14c024647cb41319c32a4cd330e19', onClick: this.onClick, class: createColorClasses(color, {
|
|
162
161
|
[mode]: true,
|
|
163
162
|
'in-item': hostContext('ion-item', el),
|
|
164
163
|
'toggle-activated': activated,
|
|
@@ -168,10 +167,10 @@ export class Toggle {
|
|
|
168
167
|
[`toggle-alignment-${alignment}`]: alignment !== undefined,
|
|
169
168
|
[`toggle-label-placement-${labelPlacement}`]: true,
|
|
170
169
|
[`toggle-${rtl}`]: true,
|
|
171
|
-
}) }, h("label", { key: '
|
|
170
|
+
}) }, h("label", { key: 'f8b3a215ad85b2cee611ad63449b584e1640f27f', class: "toggle-wrapper" }, h("input", Object.assign({ key: 'f387b1ea840737a9737917e516834c887be99c09', type: "checkbox", role: "switch", "aria-checked": `${checked}`, checked: checked, disabled: disabled, id: inputId, onFocus: () => this.onFocus(), onBlur: () => this.onBlur(), ref: (focusEl) => (this.focusEl = focusEl) }, this.inheritedAttributes)), h("div", { key: '936af880db59fe377cd2de9101eb28a1c4fb8914', class: {
|
|
172
171
|
'label-text-wrapper': true,
|
|
173
172
|
'label-text-wrapper-hidden': !this.hasLabel,
|
|
174
|
-
}, part: "label" }, h("slot", { key: '
|
|
173
|
+
}, part: "label" }, h("slot", { key: '80a6672e2e792c15011a9496dcd75363cdba31c6' })), h("div", { key: '2b2b318b38ab27b194c0dab4cecd77d9d780f2ca', class: "native-wrapper" }, this.renderToggleControl()))));
|
|
175
174
|
}
|
|
176
175
|
static get is() { return "ion-toggle"; }
|
|
177
176
|
static get encapsulation() { return "shadow"; }
|
|
@@ -353,24 +352,6 @@ export class Toggle {
|
|
|
353
352
|
},
|
|
354
353
|
"attribute": "alignment",
|
|
355
354
|
"reflect": false
|
|
356
|
-
},
|
|
357
|
-
"required": {
|
|
358
|
-
"type": "boolean",
|
|
359
|
-
"mutable": false,
|
|
360
|
-
"complexType": {
|
|
361
|
-
"original": "boolean",
|
|
362
|
-
"resolved": "boolean",
|
|
363
|
-
"references": {}
|
|
364
|
-
},
|
|
365
|
-
"required": false,
|
|
366
|
-
"optional": false,
|
|
367
|
-
"docs": {
|
|
368
|
-
"tags": [],
|
|
369
|
-
"text": "If true, screen readers will announce it as a required field. This property\nworks only for accessibility purposes, it will not prevent the form from\nsubmitting if the value is invalid."
|
|
370
|
-
},
|
|
371
|
-
"attribute": "required",
|
|
372
|
-
"reflect": false,
|
|
373
|
-
"defaultValue": "false"
|
|
374
355
|
}
|
|
375
356
|
};
|
|
376
357
|
}
|
|
@@ -12,10 +12,6 @@ import { getIonMode } from "../../global/ionic-global";
|
|
|
12
12
|
* @slot secondary - Content is placed to the left of the toolbar text in `ios` mode, and directly to the right in `md` mode.
|
|
13
13
|
* @slot primary - Content is placed to the right of the toolbar text in `ios` mode, and to the far right in `md` mode.
|
|
14
14
|
* @slot end - Content is placed to the right of the toolbar text in LTR, and to the left in RTL.
|
|
15
|
-
*
|
|
16
|
-
* @part background - The background of the toolbar, covering the entire area behind the toolbar content.
|
|
17
|
-
* @part container - The container that wraps all toolbar content, including the default slot and named slot content.
|
|
18
|
-
* @part content - The container for the default slot, wrapping content provided without a named slot.
|
|
19
15
|
*/
|
|
20
16
|
export class Toolbar {
|
|
21
17
|
constructor() {
|
|
@@ -66,10 +62,10 @@ export class Toolbar {
|
|
|
66
62
|
this.childrenStyles.forEach((value) => {
|
|
67
63
|
Object.assign(childStyles, value);
|
|
68
64
|
});
|
|
69
|
-
return (h(Host, { key: '
|
|
65
|
+
return (h(Host, { key: '462538a5ecd01baf3cde116c9f029aeda26c81be', class: Object.assign(Object.assign({}, childStyles), createColorClasses(this.color, {
|
|
70
66
|
[mode]: true,
|
|
71
67
|
'in-toolbar': hostContext('ion-toolbar', this.el),
|
|
72
|
-
})) }, h("div", { key: '
|
|
68
|
+
})) }, h("div", { key: 'c0b4415d3b2472de643a9be7cb3b13b3b628621b', class: "toolbar-background" }), h("div", { key: '0ccb8a2dbeaa28d8f9bed87629c0c097446690c2', class: "toolbar-container" }, h("slot", { key: '3e726dac359e923df21d80301651f16063a3de20', name: "start" }), h("slot", { key: 'cd799330b56a7f8833bc61bb2807aafb21846f71', name: "secondary" }), h("div", { key: '395282e6ac8c53576922dcdb5f08c25d34638c86', class: "toolbar-content" }, h("slot", { key: 'a437c60e4ba5aae65e55169ae82a6f379868ec1d' })), h("slot", { key: '711af9b9d321a7b31ede924c9bdcad767aa9a1ca', name: "primary" }), h("slot", { key: 'ecc02edeaf80a837890bcb08d5096df1e22a0b9a', name: "end" }))));
|
|
73
69
|
}
|
|
74
70
|
static get is() { return "ion-toolbar"; }
|
|
75
71
|
static get encapsulation() { return "shadow"; }
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* (C) Ionic http://ionicframework.com - MIT License
|
|
3
3
|
*/
|
|
4
|
+
import { isSafeNumber } from "../helpers";
|
|
4
5
|
export function getDecimalPlaces(n) {
|
|
6
|
+
if (!isSafeNumber(n))
|
|
7
|
+
return 0;
|
|
5
8
|
if (n % 1 === 0)
|
|
6
9
|
return 0;
|
|
7
10
|
return n.toString().split('.')[1].length;
|
|
@@ -39,6 +42,8 @@ export function getDecimalPlaces(n) {
|
|
|
39
42
|
* be used as a reference for the desired specificity.
|
|
40
43
|
*/
|
|
41
44
|
export function roundToMaxDecimalPlaces(n, ...references) {
|
|
45
|
+
if (!isSafeNumber(n))
|
|
46
|
+
return 0;
|
|
42
47
|
const maxPlaces = Math.max(...references.map((r) => getDecimalPlaces(r)));
|
|
43
48
|
return Number(n.toFixed(maxPlaces));
|
|
44
49
|
}
|
|
@@ -374,3 +374,9 @@ export const getNextSiblingOfType = (element) => {
|
|
|
374
374
|
}
|
|
375
375
|
return null;
|
|
376
376
|
};
|
|
377
|
+
/**
|
|
378
|
+
* Checks input for usable number. Not NaN and not Infinite.
|
|
379
|
+
*/
|
|
380
|
+
export const isSafeNumber = (input) => {
|
|
381
|
+
return typeof input === 'number' && !isNaN(input) && isFinite(input);
|
|
382
|
+
};
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* (C) Ionic http://ionicframework.com - MIT License
|
|
3
3
|
*/
|
|
4
|
-
import { config } from "../../global/config";
|
|
5
4
|
/**
|
|
6
5
|
* Logs a warning to the console with an Ionic prefix
|
|
7
6
|
* to indicate the library that is warning the developer.
|
|
@@ -9,12 +8,9 @@ import { config } from "../../global/config";
|
|
|
9
8
|
* @param message - The string message to be logged to the console.
|
|
10
9
|
*/
|
|
11
10
|
export const printIonWarning = (message, ...params) => {
|
|
12
|
-
|
|
13
|
-
if (["WARN" /* LogLevel.WARN */].includes(logLevel)) {
|
|
14
|
-
return console.warn(`[Ionic Warning]: ${message}`, ...params);
|
|
15
|
-
}
|
|
11
|
+
return console.warn(`[Ionic Warning]: ${message}`, ...params);
|
|
16
12
|
};
|
|
17
|
-
|
|
13
|
+
/*
|
|
18
14
|
* Logs an error to the console with an Ionic prefix
|
|
19
15
|
* to indicate the library that is warning the developer.
|
|
20
16
|
*
|
|
@@ -22,10 +18,7 @@ export const printIonWarning = (message, ...params) => {
|
|
|
22
18
|
* @param params - Additional arguments to supply to the console.error.
|
|
23
19
|
*/
|
|
24
20
|
export const printIonError = (message, ...params) => {
|
|
25
|
-
|
|
26
|
-
if (["ERROR" /* LogLevel.ERROR */, "WARN" /* LogLevel.WARN */].includes(logLevel)) {
|
|
27
|
-
return console.error(`[Ionic Error]: ${message}`, ...params);
|
|
28
|
-
}
|
|
21
|
+
return console.error(`[Ionic Error]: ${message}`, ...params);
|
|
29
22
|
};
|
|
30
23
|
/**
|
|
31
24
|
* Prints an error informing developers that an implementation requires an element to be used
|
|
@@ -67,7 +67,8 @@ const isHybrid = (win) => isCordova(win) || isCapacitorNative(win);
|
|
|
67
67
|
const isCordova = (win) => !!(win['cordova'] || win['phonegap'] || win['PhoneGap']);
|
|
68
68
|
const isCapacitorNative = (win) => {
|
|
69
69
|
const capacitor = win['Capacitor'];
|
|
70
|
-
|
|
70
|
+
// TODO(ROU-11693): Remove when we no longer support Capacitor 2, which does not have isNativePlatform
|
|
71
|
+
return !!((capacitor === null || capacitor === void 0 ? void 0 : capacitor.isNative) || ((capacitor === null || capacitor === void 0 ? void 0 : capacitor.isNativePlatform) && !!capacitor.isNativePlatform()));
|
|
71
72
|
};
|
|
72
73
|
const isElectron = (win) => testUserAgent(win, /electron/i);
|
|
73
74
|
const isPWA = (win) => { var _a; return !!(((_a = win.matchMedia) === null || _a === void 0 ? void 0 : _a.call(win, '(display-mode: standalone)').matches) || win.navigator.standalone); };
|