@ionic/core 8.4.4-dev.11741630999.189d7fc2 → 8.4.4-dev.11741648084.118e26ac
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/checkbox.js +37 -5
- package/components/ion-item-divider.js +2 -2
- package/components/ion-item-group.js +1 -1
- package/components/ion-item-option.js +2 -2
- package/components/ion-item-options.js +1 -1
- package/components/ion-item-sliding.js +1 -1
- package/components/ion-loading.js +2 -2
- package/components/ion-menu-button.js +2 -2
- package/components/ion-menu-toggle.js +2 -2
- package/components/ion-menu.js +2 -2
- package/components/ion-nav-link.js +1 -1
- package/components/ion-nav.js +1 -1
- package/components/ion-note.js +2 -2
- package/components/ion-picker-legacy.js +2 -2
- package/components/ion-progress-bar.js +1 -1
- package/components/ion-range.js +3 -3
- package/components/ion-refresher-content.js +1 -1
- package/components/ion-refresher.js +1 -1
- package/components/ion-reorder-group.js +1 -1
- package/components/ion-reorder.js +1 -1
- package/components/ion-router-link.js +2 -2
- package/components/ion-router-outlet.js +1 -1
- package/components/ion-row.js +1 -1
- package/components/ion-searchbar.js +4 -4
- package/components/ion-segment-button.js +2 -2
- package/components/ion-segment-content.js +1 -1
- package/components/ion-segment-view.js +2 -2
- package/components/ion-segment.js +2 -2
- package/components/ion-select-option.js +1 -1
- package/components/ion-select.js +47 -5
- package/components/ion-skeleton-text.js +2 -2
- package/components/ion-split-pane.js +2 -2
- package/components/ion-tab-bar.js +2 -2
- package/components/ion-tab-button.js +2 -2
- package/components/ion-tab.js +2 -2
- package/components/ion-tabs.js +1 -1
- package/components/ion-text.js +2 -2
- package/components/ion-textarea.js +2 -2
- package/components/ion-thumbnail.js +1 -1
- package/components/ion-toast.js +2 -2
- package/components/ion-toggle.js +3 -3
- package/components/label.js +2 -2
- package/components/list-header.js +2 -2
- package/components/modal.js +15 -7
- package/components/picker-column-option.js +2 -2
- package/components/picker-column2.js +2 -2
- package/components/popover.js +2 -2
- package/components/radio-group.js +39 -2
- package/components/radio.js +3 -3
- package/components/ripple-effect.js +1 -1
- package/components/select-modal.js +1 -1
- package/components/select-popover.js +1 -1
- package/components/spinner.js +1 -1
- package/components/title.js +2 -2
- package/components/toolbar.js +2 -2
- package/dist/cjs/ion-app_8.cjs.entry.js +5 -5
- package/dist/cjs/ion-avatar_3.cjs.entry.js +1 -1
- package/dist/cjs/ion-checkbox.cjs.entry.js +35 -5
- package/dist/cjs/ion-col_3.cjs.entry.js +1 -1
- package/dist/cjs/ion-datetime_3.cjs.entry.js +4 -4
- package/dist/cjs/ion-item-option_3.cjs.entry.js +4 -4
- package/dist/cjs/ion-item_8.cjs.entry.js +11 -11
- package/dist/cjs/ion-loading.cjs.entry.js +2 -2
- package/dist/cjs/ion-menu_3.cjs.entry.js +6 -6
- package/dist/cjs/ion-modal.cjs.entry.js +15 -7
- package/dist/cjs/ion-nav_2.cjs.entry.js +2 -2
- package/dist/cjs/ion-picker-column-option.cjs.entry.js +2 -2
- package/dist/cjs/ion-popover.cjs.entry.js +2 -2
- package/dist/cjs/ion-progress-bar.cjs.entry.js +1 -1
- package/dist/cjs/ion-radio_2.cjs.entry.js +39 -4
- package/dist/cjs/ion-range.cjs.entry.js +3 -3
- package/dist/cjs/ion-refresher_2.cjs.entry.js +2 -2
- package/dist/cjs/ion-reorder_2.cjs.entry.js +2 -2
- 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 +4 -4
- package/dist/cjs/ion-segment-content.cjs.entry.js +1 -1
- package/dist/cjs/ion-segment-view.cjs.entry.js +2 -2
- package/dist/cjs/ion-segment_2.cjs.entry.js +4 -4
- package/dist/cjs/ion-select-modal.cjs.entry.js +1 -1
- package/dist/cjs/ion-select_3.cjs.entry.js +47 -7
- package/dist/cjs/ion-spinner.cjs.entry.js +1 -1
- package/dist/cjs/ion-split-pane.cjs.entry.js +2 -2
- package/dist/cjs/ion-tab-bar_2.cjs.entry.js +4 -4
- package/dist/cjs/ion-tab_2.cjs.entry.js +3 -3
- package/dist/cjs/ion-text.cjs.entry.js +2 -2
- package/dist/cjs/ion-textarea.cjs.entry.js +2 -2
- package/dist/cjs/ion-toast.cjs.entry.js +2 -2
- package/dist/cjs/ion-toggle.cjs.entry.js +3 -3
- package/dist/cjs/ionic.cjs.js +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/collection/components/checkbox/checkbox.ios.css +52 -15
- package/dist/collection/components/checkbox/checkbox.js +70 -3
- package/dist/collection/components/checkbox/checkbox.md.css +52 -15
- package/dist/collection/components/item-divider/item-divider.js +2 -2
- package/dist/collection/components/item-group/item-group.js +1 -1
- package/dist/collection/components/item-option/item-option.js +2 -2
- package/dist/collection/components/item-options/item-options.js +1 -1
- package/dist/collection/components/item-sliding/item-sliding.js +1 -1
- package/dist/collection/components/label/label.js +2 -2
- package/dist/collection/components/list-header/list-header.js +2 -2
- package/dist/collection/components/loading/loading.js +2 -2
- package/dist/collection/components/menu/menu.js +2 -2
- package/dist/collection/components/menu-button/menu-button.js +2 -2
- package/dist/collection/components/menu-toggle/menu-toggle.js +2 -2
- package/dist/collection/components/modal/gestures/sheet.js +11 -3
- package/dist/collection/components/modal/modal.js +5 -5
- package/dist/collection/components/nav/nav.js +1 -1
- package/dist/collection/components/nav-link/nav-link.js +1 -1
- package/dist/collection/components/note/note.js +2 -2
- package/dist/collection/components/picker-column-option/picker-column-option.js +2 -2
- package/dist/collection/components/picker-legacy/picker.js +2 -2
- package/dist/collection/components/picker-legacy-column/picker-column.js +2 -2
- package/dist/collection/components/popover/popover.js +2 -2
- package/dist/collection/components/progress-bar/progress-bar.js +1 -1
- package/dist/collection/components/radio/radio.js +3 -3
- package/dist/collection/components/radio-group/radio-group.ios.css +205 -0
- package/dist/collection/components/radio-group/radio-group.js +72 -1
- package/dist/collection/components/radio-group/radio-group.md.css +205 -0
- package/dist/collection/components/range/range.js +3 -3
- package/dist/collection/components/refresher/refresher.js +1 -1
- package/dist/collection/components/refresher-content/refresher-content.js +1 -1
- package/dist/collection/components/reorder/reorder.js +1 -1
- package/dist/collection/components/reorder-group/reorder-group.js +1 -1
- package/dist/collection/components/ripple-effect/ripple-effect.js +1 -1
- package/dist/collection/components/router-link/router-link.js +2 -2
- package/dist/collection/components/router-outlet/router-outlet.js +1 -1
- package/dist/collection/components/row/row.js +1 -1
- package/dist/collection/components/searchbar/searchbar.js +4 -4
- package/dist/collection/components/segment/segment.js +2 -2
- package/dist/collection/components/segment-button/segment-button.js +2 -2
- package/dist/collection/components/segment-content/segment-content.js +1 -1
- package/dist/collection/components/segment-view/segment-view.js +2 -2
- package/dist/collection/components/select/select.ios.css +59 -0
- package/dist/collection/components/select/select.js +80 -3
- package/dist/collection/components/select/select.md.css +61 -0
- package/dist/collection/components/select-modal/select-modal.js +1 -1
- package/dist/collection/components/select-option/select-option.js +1 -1
- package/dist/collection/components/select-popover/select-popover.js +1 -1
- package/dist/collection/components/skeleton-text/skeleton-text.js +2 -2
- package/dist/collection/components/spinner/spinner.js +1 -1
- package/dist/collection/components/split-pane/split-pane.js +2 -2
- package/dist/collection/components/tab/tab.js +2 -2
- package/dist/collection/components/tab-bar/tab-bar.js +2 -2
- package/dist/collection/components/tab-button/tab-button.js +2 -2
- package/dist/collection/components/tabs/tabs.js +1 -1
- package/dist/collection/components/text/text.js +2 -2
- package/dist/collection/components/textarea/textarea.js +2 -2
- package/dist/collection/components/thumbnail/thumbnail.js +1 -1
- package/dist/collection/components/title/title.js +2 -2
- package/dist/collection/components/toast/toast.js +2 -2
- package/dist/collection/components/toggle/toggle.js +3 -3
- package/dist/collection/components/toolbar/toolbar.js +2 -2
- package/dist/docs.json +194 -2
- package/dist/esm/ion-app_8.entry.js +5 -5
- package/dist/esm/ion-avatar_3.entry.js +1 -1
- package/dist/esm/ion-checkbox.entry.js +35 -5
- package/dist/esm/ion-col_3.entry.js +1 -1
- package/dist/esm/ion-datetime_3.entry.js +4 -4
- package/dist/esm/ion-item-option_3.entry.js +4 -4
- package/dist/esm/ion-item_8.entry.js +11 -11
- package/dist/esm/ion-loading.entry.js +2 -2
- package/dist/esm/ion-menu_3.entry.js +6 -6
- package/dist/esm/ion-modal.entry.js +15 -7
- package/dist/esm/ion-nav_2.entry.js +2 -2
- package/dist/esm/ion-picker-column-option.entry.js +2 -2
- package/dist/esm/ion-popover.entry.js +2 -2
- package/dist/esm/ion-progress-bar.entry.js +1 -1
- package/dist/esm/ion-radio_2.entry.js +39 -4
- package/dist/esm/ion-range.entry.js +3 -3
- package/dist/esm/ion-refresher_2.entry.js +2 -2
- package/dist/esm/ion-reorder_2.entry.js +2 -2
- 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 +4 -4
- package/dist/esm/ion-segment-content.entry.js +1 -1
- package/dist/esm/ion-segment-view.entry.js +2 -2
- package/dist/esm/ion-segment_2.entry.js +4 -4
- package/dist/esm/ion-select-modal.entry.js +1 -1
- package/dist/esm/ion-select_3.entry.js +47 -7
- package/dist/esm/ion-spinner.entry.js +1 -1
- package/dist/esm/ion-split-pane.entry.js +2 -2
- package/dist/esm/ion-tab-bar_2.entry.js +4 -4
- package/dist/esm/ion-tab_2.entry.js +3 -3
- package/dist/esm/ion-text.entry.js +2 -2
- package/dist/esm/ion-textarea.entry.js +2 -2
- package/dist/esm/ion-toast.entry.js +2 -2
- package/dist/esm/ion-toggle.entry.js +3 -3
- package/dist/esm/ionic.js +1 -1
- package/dist/esm/loader.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-checkbox.entry.js +1 -1
- package/dist/esm-es5/ion-col_3.entry.js +1 -1
- package/dist/esm-es5/ion-datetime_3.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-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-content.entry.js +1 -1
- package/dist/esm-es5/ion-segment-view.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.js +1 -1
- package/dist/esm-es5/loader.js +1 -1
- package/dist/html.html-data.json +25 -1
- package/dist/ionic/ionic.esm.js +1 -1
- package/dist/ionic/{p-026517fb.entry.js → p-020df11a.entry.js} +1 -1
- package/dist/ionic/{p-dd14d988.entry.js → p-0434c94c.entry.js} +1 -1
- package/dist/ionic/p-0ab8caf8.system.entry.js +4 -0
- package/dist/ionic/{p-136ff13e.entry.js → p-0eab6979.entry.js} +1 -1
- package/dist/ionic/{p-ab2f4b05.entry.js → p-0f138cf3.entry.js} +1 -1
- package/dist/ionic/{p-d9ef8526.system.entry.js → p-166a794f.system.entry.js} +1 -1
- package/dist/ionic/{p-3fe95571.system.entry.js → p-1cf593cf.system.entry.js} +1 -1
- package/dist/ionic/p-21780245.entry.js +4 -0
- package/dist/ionic/p-221fbdf5.entry.js +4 -0
- package/dist/ionic/{p-d782ad8d.entry.js → p-2840743b.entry.js} +1 -1
- package/dist/ionic/{p-71e1d84d.entry.js → p-29cccf08.entry.js} +1 -1
- package/dist/ionic/{p-d25142f7.entry.js → p-2f429536.entry.js} +1 -1
- package/dist/ionic/{p-166f4ba0.entry.js → p-3b872754.entry.js} +1 -1
- package/dist/ionic/p-3e6be709.entry.js +4 -0
- package/dist/ionic/p-41d7ca3c.entry.js +4 -0
- package/dist/ionic/{p-323984f9.system.entry.js → p-4200e056.system.entry.js} +1 -1
- package/dist/ionic/{p-56a8aa85.entry.js → p-43bfbfd7.entry.js} +1 -1
- package/dist/ionic/{p-7112ab06.system.entry.js → p-47026941.system.entry.js} +1 -1
- package/dist/ionic/p-48e9eedb.entry.js +4 -0
- package/dist/ionic/{p-2cb33c6c.system.entry.js → p-506f2664.system.entry.js} +2 -2
- package/dist/ionic/p-541b5191.entry.js +4 -0
- package/dist/ionic/{p-3c29cb9d.entry.js → p-5c364a5b.entry.js} +1 -1
- package/dist/ionic/{p-424eb140.system.entry.js → p-5cc9314d.system.entry.js} +1 -1
- package/dist/ionic/{p-5d3dc32b.system.entry.js → p-5f10138c.system.entry.js} +1 -1
- package/dist/ionic/{p-98ce0c01.system.entry.js → p-5f7a9125.system.entry.js} +2 -2
- package/dist/ionic/p-62151078.system.entry.js +4 -0
- package/dist/ionic/{p-c42a4dad.system.entry.js → p-623b4fa6.system.entry.js} +1 -1
- package/dist/ionic/{p-37a21d70.entry.js → p-62d2e17d.entry.js} +1 -1
- package/dist/ionic/{p-e4c1fd74.system.entry.js → p-6321783a.system.entry.js} +1 -1
- package/dist/ionic/{p-b6208867.system.entry.js → p-66425a02.system.entry.js} +1 -1
- package/dist/ionic/{p-e84da6cb.system.entry.js → p-6703c724.system.entry.js} +1 -1
- package/dist/ionic/{p-fd2c0aa6.entry.js → p-6f6dd24f.entry.js} +1 -1
- package/dist/ionic/{p-57cca929.system.entry.js → p-717520d6.system.entry.js} +1 -1
- package/dist/ionic/{p-16799667.system.entry.js → p-7af3d1e8.system.entry.js} +1 -1
- package/dist/ionic/{p-6c85db7e.system.entry.js → p-7ef62ef9.system.entry.js} +2 -2
- package/dist/ionic/{p-712b57f9.system.entry.js → p-826c4d67.system.entry.js} +1 -1
- package/dist/ionic/{p-e18fc89c.entry.js → p-82afe775.entry.js} +1 -1
- package/dist/ionic/{p-8c0d81a9.entry.js → p-85d6d07c.entry.js} +1 -1
- package/dist/ionic/{p-c2583512.entry.js → p-8eee812a.entry.js} +1 -1
- package/dist/ionic/{p-badd3610.entry.js → p-8fa80de0.entry.js} +1 -1
- package/dist/ionic/{p-5bf080b2.entry.js → p-95a11fc4.entry.js} +1 -1
- package/dist/ionic/{p-8c42a26f.system.entry.js → p-986a98d9.system.entry.js} +1 -1
- package/dist/ionic/{p-5996d3ad.system.entry.js → p-98aefaa1.system.entry.js} +1 -1
- package/dist/ionic/{p-f670529f.system.entry.js → p-99b4160f.system.entry.js} +1 -1
- package/dist/ionic/p-9a950d3c.entry.js +4 -0
- package/dist/ionic/{p-48e13807.system.entry.js → p-9aaaff17.system.entry.js} +1 -1
- package/dist/ionic/{p-d7fef52e.system.entry.js → p-a4e7eaf6.system.entry.js} +1 -1
- package/dist/ionic/{p-b6849d30.system.entry.js → p-aae5907a.system.entry.js} +1 -1
- package/dist/ionic/{p-6f36e4c8.system.entry.js → p-afba4c00.system.entry.js} +1 -1
- package/dist/ionic/{p-e2f893bd.entry.js → p-b1dbfc12.entry.js} +1 -1
- package/dist/ionic/{p-91b944fa.entry.js → p-bd1c99cb.entry.js} +1 -1
- package/dist/ionic/{p-2cf956b8.entry.js → p-c43872df.entry.js} +1 -1
- package/dist/ionic/p-c4f9367a.entry.js +4 -0
- package/dist/ionic/{p-6347c733.system.entry.js → p-c52ca485.system.entry.js} +1 -1
- package/dist/ionic/{p-d4896d36.system.entry.js → p-cad0b874.system.entry.js} +1 -1
- package/dist/ionic/{p-193d447d.system.entry.js → p-d9162cf7.system.entry.js} +1 -1
- package/dist/ionic/{p-3c3d353b.entry.js → p-dbe534f5.entry.js} +1 -1
- package/dist/ionic/{p-42a9bb35.entry.js → p-dde5afee.entry.js} +1 -1
- package/dist/ionic/{p-d6b60875.entry.js → p-de0b8503.entry.js} +1 -1
- package/dist/ionic/p-e3bd1070.entry.js +4 -0
- package/dist/ionic/{p-85b1ffae.entry.js → p-ebceb0ac.entry.js} +1 -1
- package/dist/ionic/{p-a873feda.system.entry.js → p-ec92cc52.system.entry.js} +1 -1
- package/dist/ionic/{p-447d4981.system.entry.js → p-ee70a913.system.entry.js} +1 -1
- package/dist/ionic/{p-73dc4950.entry.js → p-f2a72b24.entry.js} +1 -1
- package/dist/ionic/p-f4f255cb.system.js +1 -1
- package/dist/ionic/{p-c3a51c19.system.entry.js → p-f5f52b6d.system.entry.js} +1 -1
- package/dist/ionic/{p-4eed0eb2.system.entry.js → p-fa5a45cd.system.entry.js} +1 -1
- package/dist/ionic/{p-3b8b35c7.system.entry.js → p-fb048d4d.system.entry.js} +1 -1
- package/dist/ionic/p-fe00ac05.system.entry.js +4 -0
- package/dist/types/components/checkbox/checkbox.d.ts +19 -0
- package/dist/types/components/modal/modal.d.ts +6 -3
- package/dist/types/components/radio-group/radio-group.d.ts +15 -0
- package/dist/types/components/select/select.d.ts +23 -0
- package/dist/types/components.d.ts +50 -2
- package/hydrate/index.js +231 -106
- package/hydrate/index.mjs +231 -106
- package/package.json +1 -1
- package/dist/ionic/p-14be4015.entry.js +0 -4
- package/dist/ionic/p-30ec5574.entry.js +0 -4
- package/dist/ionic/p-37264dcc.entry.js +0 -4
- package/dist/ionic/p-49b2653a.system.entry.js +0 -4
- package/dist/ionic/p-59884cc7.system.entry.js +0 -4
- package/dist/ionic/p-7896a440.system.entry.js +0 -4
- package/dist/ionic/p-8b367303.entry.js +0 -4
- package/dist/ionic/p-ba61193a.entry.js +0 -4
- package/dist/ionic/p-ebb85488.entry.js +0 -4
- package/dist/ionic/p-ec197876.entry.js +0 -4
- package/dist/ionic/p-efcb7383.entry.js +0 -4
- package/dist/ionic/p-fc9149bd.entry.js +0 -4
|
@@ -0,0 +1,205 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Convert a font size to a dynamic font size.
|
|
3
|
+
* Fonts that participate in Dynamic Type should use
|
|
4
|
+
* dynamic font sizes.
|
|
5
|
+
* @param size - The initial font size including the unit (i.e. px or pt)
|
|
6
|
+
* @param unit (optional) - The unit to convert to. Use this if you want to
|
|
7
|
+
* convert to a unit other than $baselineUnit.
|
|
8
|
+
*/
|
|
9
|
+
/**
|
|
10
|
+
* Convert a font size to a dynamic font size but impose
|
|
11
|
+
* a maximum font size.
|
|
12
|
+
* @param size - The initial font size including the unit (i.e. px or pt)
|
|
13
|
+
* @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
|
|
14
|
+
* @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
|
|
15
|
+
* convert to a unit other than $baselineUnit.
|
|
16
|
+
*/
|
|
17
|
+
/**
|
|
18
|
+
* Convert a font size to a dynamic font size but impose
|
|
19
|
+
* a minimum font size.
|
|
20
|
+
* @param size - The initial font size including the unit (i.e. px or pt)
|
|
21
|
+
* @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
|
|
22
|
+
* @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
|
|
23
|
+
* convert to a unit other than $baselineUnit.
|
|
24
|
+
*/
|
|
25
|
+
/**
|
|
26
|
+
* Convert a font size to a dynamic font size but impose
|
|
27
|
+
* maximum and minimum font sizes.
|
|
28
|
+
* @param size - The initial font size including the unit (i.e. px or pt)
|
|
29
|
+
* @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
|
|
30
|
+
* @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
|
|
31
|
+
* @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
|
|
32
|
+
* convert to a unit other than $baselineUnit.
|
|
33
|
+
*/
|
|
34
|
+
/**
|
|
35
|
+
* A heuristic that applies CSS to tablet
|
|
36
|
+
* viewports.
|
|
37
|
+
*
|
|
38
|
+
* Usage:
|
|
39
|
+
* @include tablet-viewport() {
|
|
40
|
+
* :host {
|
|
41
|
+
* background-color: green;
|
|
42
|
+
* }
|
|
43
|
+
* }
|
|
44
|
+
*/
|
|
45
|
+
/**
|
|
46
|
+
* A heuristic that applies CSS to mobile
|
|
47
|
+
* viewports (i.e. phones, not tablets).
|
|
48
|
+
*
|
|
49
|
+
* Usage:
|
|
50
|
+
* @include mobile-viewport() {
|
|
51
|
+
* :host {
|
|
52
|
+
* background-color: blue;
|
|
53
|
+
* }
|
|
54
|
+
* }
|
|
55
|
+
*/
|
|
56
|
+
/**
|
|
57
|
+
* Convert a font size to a dynamic font size.
|
|
58
|
+
* Fonts that participate in Dynamic Type should use
|
|
59
|
+
* dynamic font sizes.
|
|
60
|
+
* @param size - The initial font size including the unit (i.e. px or pt)
|
|
61
|
+
* @param unit (optional) - The unit to convert to. Use this if you want to
|
|
62
|
+
* convert to a unit other than $baselineUnit.
|
|
63
|
+
*/
|
|
64
|
+
/**
|
|
65
|
+
* Convert a font size to a dynamic font size but impose
|
|
66
|
+
* a maximum font size.
|
|
67
|
+
* @param size - The initial font size including the unit (i.e. px or pt)
|
|
68
|
+
* @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
|
|
69
|
+
* @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
|
|
70
|
+
* convert to a unit other than $baselineUnit.
|
|
71
|
+
*/
|
|
72
|
+
/**
|
|
73
|
+
* Convert a font size to a dynamic font size but impose
|
|
74
|
+
* a minimum font size.
|
|
75
|
+
* @param size - The initial font size including the unit (i.e. px or pt)
|
|
76
|
+
* @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
|
|
77
|
+
* @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
|
|
78
|
+
* convert to a unit other than $baselineUnit.
|
|
79
|
+
*/
|
|
80
|
+
/**
|
|
81
|
+
* Convert a font size to a dynamic font size but impose
|
|
82
|
+
* maximum and minimum font sizes.
|
|
83
|
+
* @param size - The initial font size including the unit (i.e. px or pt)
|
|
84
|
+
* @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
|
|
85
|
+
* @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
|
|
86
|
+
* @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
|
|
87
|
+
* convert to a unit other than $baselineUnit.
|
|
88
|
+
*/
|
|
89
|
+
/**
|
|
90
|
+
* A heuristic that applies CSS to tablet
|
|
91
|
+
* viewports.
|
|
92
|
+
*
|
|
93
|
+
* Usage:
|
|
94
|
+
* @include tablet-viewport() {
|
|
95
|
+
* :host {
|
|
96
|
+
* background-color: green;
|
|
97
|
+
* }
|
|
98
|
+
* }
|
|
99
|
+
*/
|
|
100
|
+
/**
|
|
101
|
+
* A heuristic that applies CSS to mobile
|
|
102
|
+
* viewports (i.e. phones, not tablets).
|
|
103
|
+
*
|
|
104
|
+
* Usage:
|
|
105
|
+
* @include mobile-viewport() {
|
|
106
|
+
* :host {
|
|
107
|
+
* background-color: blue;
|
|
108
|
+
* }
|
|
109
|
+
* }
|
|
110
|
+
*/
|
|
111
|
+
ion-radio-group {
|
|
112
|
+
vertical-align: top;
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
.radio-group-wrapper {
|
|
116
|
+
display: inline;
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
.radio-group-top {
|
|
120
|
+
line-height: 1.5;
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
/**
|
|
124
|
+
* Error text should only be shown when .ion-invalid is present
|
|
125
|
+
* on the radio group. Otherwise the helper text should be shown.
|
|
126
|
+
*/
|
|
127
|
+
.radio-group-top .error-text {
|
|
128
|
+
display: none;
|
|
129
|
+
color: var(--ion-color-danger, #c5000f);
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
.radio-group-top .helper-text {
|
|
133
|
+
display: block;
|
|
134
|
+
color: var(--ion-color-step-700, var(--ion-text-color-step-300, #4d4d4d));
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
.ion-touched.ion-invalid .radio-group-top .error-text {
|
|
138
|
+
display: block;
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
.ion-touched.ion-invalid .radio-group-top .helper-text {
|
|
142
|
+
display: none;
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
/**
|
|
146
|
+
* Convert a font size to a dynamic font size.
|
|
147
|
+
* Fonts that participate in Dynamic Type should use
|
|
148
|
+
* dynamic font sizes.
|
|
149
|
+
* @param size - The initial font size including the unit (i.e. px or pt)
|
|
150
|
+
* @param unit (optional) - The unit to convert to. Use this if you want to
|
|
151
|
+
* convert to a unit other than $baselineUnit.
|
|
152
|
+
*/
|
|
153
|
+
/**
|
|
154
|
+
* Convert a font size to a dynamic font size but impose
|
|
155
|
+
* a maximum font size.
|
|
156
|
+
* @param size - The initial font size including the unit (i.e. px or pt)
|
|
157
|
+
* @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
|
|
158
|
+
* @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
|
|
159
|
+
* convert to a unit other than $baselineUnit.
|
|
160
|
+
*/
|
|
161
|
+
/**
|
|
162
|
+
* Convert a font size to a dynamic font size but impose
|
|
163
|
+
* a minimum font size.
|
|
164
|
+
* @param size - The initial font size including the unit (i.e. px or pt)
|
|
165
|
+
* @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
|
|
166
|
+
* @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
|
|
167
|
+
* convert to a unit other than $baselineUnit.
|
|
168
|
+
*/
|
|
169
|
+
/**
|
|
170
|
+
* Convert a font size to a dynamic font size but impose
|
|
171
|
+
* maximum and minimum font sizes.
|
|
172
|
+
* @param size - The initial font size including the unit (i.e. px or pt)
|
|
173
|
+
* @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
|
|
174
|
+
* @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
|
|
175
|
+
* @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
|
|
176
|
+
* convert to a unit other than $baselineUnit.
|
|
177
|
+
*/
|
|
178
|
+
/**
|
|
179
|
+
* A heuristic that applies CSS to tablet
|
|
180
|
+
* viewports.
|
|
181
|
+
*
|
|
182
|
+
* Usage:
|
|
183
|
+
* @include tablet-viewport() {
|
|
184
|
+
* :host {
|
|
185
|
+
* background-color: green;
|
|
186
|
+
* }
|
|
187
|
+
* }
|
|
188
|
+
*/
|
|
189
|
+
/**
|
|
190
|
+
* A heuristic that applies CSS to mobile
|
|
191
|
+
* viewports (i.e. phones, not tablets).
|
|
192
|
+
*
|
|
193
|
+
* Usage:
|
|
194
|
+
* @include mobile-viewport() {
|
|
195
|
+
* :host {
|
|
196
|
+
* background-color: blue;
|
|
197
|
+
* }
|
|
198
|
+
* }
|
|
199
|
+
*/
|
|
200
|
+
ion-list .radio-group-top {
|
|
201
|
+
-webkit-padding-start: 16px;
|
|
202
|
+
padding-inline-start: 16px;
|
|
203
|
+
-webkit-padding-end: 16px;
|
|
204
|
+
padding-inline-end: 16px;
|
|
205
|
+
}
|
|
@@ -580,7 +580,7 @@ export class Range {
|
|
|
580
580
|
const needsEndAdjustment = inItem && !hasEndContent;
|
|
581
581
|
const mode = getIonMode(this);
|
|
582
582
|
renderHiddenInput(true, el, this.name, JSON.stringify(this.getValue()), disabled);
|
|
583
|
-
return (h(Host, { key: '
|
|
583
|
+
return (h(Host, { key: 'ddecc98800b9137294c8cadfbde7d07d5b3825d7', onFocusin: this.onFocus, onFocusout: this.onBlur, id: rangeId, class: createColorClasses(this.color, {
|
|
584
584
|
[mode]: true,
|
|
585
585
|
'in-item': inItem,
|
|
586
586
|
'range-disabled': disabled,
|
|
@@ -589,10 +589,10 @@ export class Range {
|
|
|
589
589
|
[`range-label-placement-${labelPlacement}`]: true,
|
|
590
590
|
'range-item-start-adjustment': needsStartAdjustment,
|
|
591
591
|
'range-item-end-adjustment': needsEndAdjustment,
|
|
592
|
-
}) }, h("label", { key: '
|
|
592
|
+
}) }, h("label", { key: '5afdbea21b1b82efde1126ceb0a263f85731aecf', class: "range-wrapper", id: "range-label" }, h("div", { key: 'e47e0bbefcb931dff5b846f47b4458153b73df94', class: {
|
|
593
593
|
'label-text-wrapper': true,
|
|
594
594
|
'label-text-wrapper-hidden': !hasLabel,
|
|
595
|
-
}, part: "label" }, label !== undefined ? h("div", { class: "label-text" }, label) : h("slot", { name: "label" })), h("div", { key: '
|
|
595
|
+
}, part: "label" }, label !== undefined ? h("div", { class: "label-text" }, label) : h("slot", { name: "label" })), h("div", { key: '842f35cd03bb6108d1ecf0c0a07adfbdc900401c', class: "native-wrapper" }, h("slot", { key: '4a5141daaf5de5b3251bef4232ce5a27fc0395df', name: "start" }), this.renderRangeSlider(), h("slot", { key: '53ffe0a40b093c5fbcbc50d47eea6bb3f39dfdbb', name: "end" })))));
|
|
596
596
|
}
|
|
597
597
|
static get is() { return "ion-range"; }
|
|
598
598
|
static get encapsulation() { return "shadow"; }
|
|
@@ -621,7 +621,7 @@ export class Refresher {
|
|
|
621
621
|
}
|
|
622
622
|
render() {
|
|
623
623
|
const mode = getIonMode(this);
|
|
624
|
-
return (h(Host, { key: '
|
|
624
|
+
return (h(Host, { key: '4c36bffbfa32ef1bd28a60f4455c125842880659', slot: "fixed", class: {
|
|
625
625
|
[mode]: true,
|
|
626
626
|
// Used internally for styling
|
|
627
627
|
[`refresher-${mode}`]: true,
|
|
@@ -52,7 +52,7 @@ export class RefresherContent {
|
|
|
52
52
|
const pullingIcon = this.pullingIcon;
|
|
53
53
|
const hasSpinner = pullingIcon != null && SPINNERS[pullingIcon] !== undefined;
|
|
54
54
|
const mode = getIonMode(this);
|
|
55
|
-
return (h(Host, { key: '
|
|
55
|
+
return (h(Host, { key: 'fb78d7e31f8feb31025e58903eb9de85cb928dbd', class: mode }, h("div", { key: '23f67800f09765ef8fde8cf85a843e19e667f337', class: "refresher-pulling" }, this.pullingIcon && hasSpinner && (h("div", { key: '5a08d3b69762f8b51dcd3dcfbaf3fddb707257fa', class: "refresher-pulling-icon" }, h("div", { key: '42a613b029e092acdff7fe613a429375d89f157e', class: "spinner-arrow-container" }, h("ion-spinner", { key: '2f9cdc75938c4d306de7a717ed67901daef71c2c', name: this.pullingIcon, paused: true }), mode === 'md' && this.pullingIcon === 'circular' && (h("div", { key: '1f8a6347b4a46417ba55286a79f1a41f04bf9c91', class: "arrow-container" }, h("ion-icon", { key: '326713d11d482d420ba5a739ff4528400a37e9ca', icon: caretBackSharp, "aria-hidden": "true" })))))), this.pullingIcon && !hasSpinner && (h("div", { key: 'ab18c7cbea7bcbfa034f90f317652af4d93660ed', class: "refresher-pulling-icon" }, h("ion-icon", { key: 'f488acd54acc8a61b6c5a279f0d7f9a437c370c0', icon: this.pullingIcon, lazy: false, "aria-hidden": "true" }))), this.pullingText !== undefined && this.renderPullingText()), h("div", { key: '914ad6139442dac53af47120ea821fa11c309a38', class: "refresher-refreshing" }, this.refreshingSpinner && (h("div", { key: '7eba732f5e2d72b90399d68a3e89617d8979b3d1', class: "refresher-refreshing-icon" }, h("ion-spinner", { key: '838d66d8bef6f56622c62b1068e7fed29e094302', name: this.refreshingSpinner }))), this.refreshingText !== undefined && this.renderRefreshingText())));
|
|
56
56
|
}
|
|
57
57
|
static get is() { return "ion-refresher-content"; }
|
|
58
58
|
static get properties() {
|
|
@@ -20,7 +20,7 @@ export class Reorder {
|
|
|
20
20
|
render() {
|
|
21
21
|
const mode = getIonMode(this);
|
|
22
22
|
const reorderIcon = mode === 'ios' ? reorderThreeOutline : reorderTwoSharp;
|
|
23
|
-
return (h(Host, { key: '
|
|
23
|
+
return (h(Host, { key: '17adf3165f4e09283d5d6434d7cd47bd23519048', class: mode }, h("slot", { key: 'd00d1cd97c689fc5c7b7175a2051cf697fe22871' }, h("ion-icon", { key: 'eec219aebde6083de98358be3e75965c5a5dc3d0', icon: reorderIcon, lazy: false, class: "reorder-icon", part: "icon", "aria-hidden": "true" }))));
|
|
24
24
|
}
|
|
25
25
|
static get is() { return "ion-reorder"; }
|
|
26
26
|
static get encapsulation() { return "shadow"; }
|
|
@@ -238,7 +238,7 @@ export class ReorderGroup {
|
|
|
238
238
|
}
|
|
239
239
|
render() {
|
|
240
240
|
const mode = getIonMode(this);
|
|
241
|
-
return (h(Host, { key: '
|
|
241
|
+
return (h(Host, { key: '6ca009dd65302a914d459aec638e62977440db20', class: {
|
|
242
242
|
[mode]: true,
|
|
243
243
|
'reorder-enabled': !this.disabled,
|
|
244
244
|
'reorder-list-active': this.state !== 0 /* ReorderGroupState.Idle */,
|
|
@@ -59,7 +59,7 @@ export class RippleEffect {
|
|
|
59
59
|
}
|
|
60
60
|
render() {
|
|
61
61
|
const mode = getIonMode(this);
|
|
62
|
-
return (h(Host, { key: '
|
|
62
|
+
return (h(Host, { key: '40c7f73e7f5f67e29f83e1236a61c6e1c9943c42', role: "presentation", class: {
|
|
63
63
|
[mode]: true,
|
|
64
64
|
unbounded: this.unbounded,
|
|
65
65
|
} }));
|
|
@@ -23,10 +23,10 @@ export class RouterLink {
|
|
|
23
23
|
rel: this.rel,
|
|
24
24
|
target: this.target,
|
|
25
25
|
};
|
|
26
|
-
return (h(Host, { key: '
|
|
26
|
+
return (h(Host, { key: '11183264fb6ae0db9a7a47c71b6862d60001b834', onClick: this.onClick, class: createColorClasses(this.color, {
|
|
27
27
|
[mode]: true,
|
|
28
28
|
'ion-activatable': true,
|
|
29
|
-
}) }, h("a", Object.assign({ key: '
|
|
29
|
+
}) }, h("a", Object.assign({ key: '3e0e5242161cb0df593d6d573e51b8ba750065a1' }, attrs), h("slot", { key: '5bd808e98a4627bb1236f0d955f4b32971355417' }))));
|
|
30
30
|
}
|
|
31
31
|
static get is() { return "ion-router-link"; }
|
|
32
32
|
static get encapsulation() { return "shadow"; }
|
|
@@ -177,7 +177,7 @@ export class RouterOutlet {
|
|
|
177
177
|
return true;
|
|
178
178
|
}
|
|
179
179
|
render() {
|
|
180
|
-
return h("slot", { key: '
|
|
180
|
+
return h("slot", { key: '8d0c163c5f63158e16ef2db7cc3c756cf597461d' });
|
|
181
181
|
}
|
|
182
182
|
static get is() { return "ion-router-outlet"; }
|
|
183
183
|
static get encapsulation() { return "shadow"; }
|
|
@@ -5,7 +5,7 @@ import { Host, h } from "@stencil/core";
|
|
|
5
5
|
import { getIonMode } from "../../global/ionic-global";
|
|
6
6
|
export class Row {
|
|
7
7
|
render() {
|
|
8
|
-
return (h(Host, { key: '
|
|
8
|
+
return (h(Host, { key: 'a690022e2abdce6946d24264574e4aa0886a8ea5', class: getIonMode(this) }, h("slot", { key: 'd1a0e831dd1dbfe7877d3ad01d0a3045a5fb29e3' })));
|
|
9
9
|
}
|
|
10
10
|
static get is() { return "ion-row"; }
|
|
11
11
|
static get encapsulation() { return "shadow"; }
|
|
@@ -378,8 +378,8 @@ export class Searchbar {
|
|
|
378
378
|
const clearIcon = this.clearIcon || (mode === 'ios' ? closeCircle : closeSharp);
|
|
379
379
|
const searchIcon = this.searchIcon || (mode === 'ios' ? searchOutline : searchSharp);
|
|
380
380
|
const shouldShowCancelButton = this.shouldShowCancelButton();
|
|
381
|
-
const cancelButton = this.showCancelButton !== 'never' && (h("button", { key: '
|
|
382
|
-
return (h(Host, { key: '
|
|
381
|
+
const cancelButton = this.showCancelButton !== 'never' && (h("button", { key: '989f3e84c472ada6e66dd9b249d0d268bf17ce26', "aria-label": cancelButtonText, "aria-hidden": shouldShowCancelButton ? undefined : 'true', type: "button", tabIndex: mode === 'ios' && !shouldShowCancelButton ? -1 : undefined, onMouseDown: this.onCancelSearchbar, onTouchStart: this.onCancelSearchbar, class: "searchbar-cancel-button" }, h("div", { key: '7d335d4fde33822dc79d26b748ba2e98db7494bb', "aria-hidden": "true" }, mode === 'md' ? (h("ion-icon", { "aria-hidden": "true", mode: mode, icon: this.cancelButtonIcon, lazy: false })) : (cancelButtonText))));
|
|
382
|
+
return (h(Host, { key: 'd1a1972725e949fb102c91487aaa7b9d10c2d718', role: "search", "aria-disabled": this.disabled ? 'true' : null, class: createColorClasses(this.color, {
|
|
383
383
|
[mode]: true,
|
|
384
384
|
'searchbar-animated': animated,
|
|
385
385
|
'searchbar-disabled': this.disabled,
|
|
@@ -389,14 +389,14 @@ export class Searchbar {
|
|
|
389
389
|
'searchbar-has-focus': this.focused,
|
|
390
390
|
'searchbar-should-show-clear': this.shouldShowClearButton(),
|
|
391
391
|
'searchbar-should-show-cancel': this.shouldShowCancelButton(),
|
|
392
|
-
}) }, h("div", { key: '
|
|
392
|
+
}) }, h("div", { key: 'add53640b2994cb6b2bf02792dafe51aba6b1684', class: "searchbar-input-container" }, h("input", Object.assign({ key: '160cc36459a4a652e7f41ccd14dcdc782278779e', "aria-label": "search text", disabled: this.disabled, ref: (el) => (this.nativeInput = el), class: "searchbar-input", inputMode: this.inputmode, enterKeyHint: this.enterkeyhint, name: this.name, onInput: this.onInput, onChange: this.onChange, onBlur: this.onBlur, onFocus: this.onFocus, minLength: this.minlength, maxLength: this.maxlength, placeholder: this.placeholder, type: this.type, value: this.getValue(), autoCapitalize: autocapitalize === 'default' ? undefined : autocapitalize, autoComplete: this.autocomplete, autoCorrect: this.autocorrect, spellcheck: this.spellcheck }, this.inheritedAttributes)), mode === 'md' && cancelButton, h("ion-icon", { key: '8825fd13af0d2dea451ccc0e00ae7b5021dc01c4', "aria-hidden": "true", mode: mode, icon: searchIcon, lazy: false, class: "searchbar-search-icon" }), h("button", { key: '8a7b56da278b9ca5c4f5a4ee9c01924fd5ae29d8', "aria-label": "reset", type: "button", "no-blur": true, class: "searchbar-clear-button", onPointerDown: (ev) => {
|
|
393
393
|
/**
|
|
394
394
|
* This prevents mobile browsers from
|
|
395
395
|
* blurring the input when the clear
|
|
396
396
|
* button is activated.
|
|
397
397
|
*/
|
|
398
398
|
ev.preventDefault();
|
|
399
|
-
}, onClick: () => this.onClearInput(true) }, h("ion-icon", { key: '
|
|
399
|
+
}, onClick: () => this.onClearInput(true) }, h("ion-icon", { key: '24c55274516ab012d8c25f03525c6cdb9409e52f', "aria-hidden": "true", mode: mode, icon: clearIcon, lazy: false, class: "searchbar-clear-icon" }))), mode === 'ios' && cancelButton));
|
|
400
400
|
}
|
|
401
401
|
static get is() { return "ion-searchbar"; }
|
|
402
402
|
static get encapsulation() { return "scoped"; }
|
|
@@ -530,14 +530,14 @@ export class Segment {
|
|
|
530
530
|
}
|
|
531
531
|
render() {
|
|
532
532
|
const mode = getIonMode(this);
|
|
533
|
-
return (h(Host, { key: '
|
|
533
|
+
return (h(Host, { key: 'a64e39352050b516f7dc82ce95a4bcff8431d1d0', role: "tablist", onClick: this.onClick, class: createColorClasses(this.color, {
|
|
534
534
|
[mode]: true,
|
|
535
535
|
'in-toolbar': hostContext('ion-toolbar', this.el),
|
|
536
536
|
'in-toolbar-color': hostContext('ion-toolbar[color]', this.el),
|
|
537
537
|
'segment-activated': this.activated,
|
|
538
538
|
'segment-disabled': this.disabled,
|
|
539
539
|
'segment-scrollable': this.scrollable,
|
|
540
|
-
}) }, h("slot", { key: '
|
|
540
|
+
}) }, h("slot", { key: 'bb3f3ec30e59e0461fa620d8961ab730cc802a4e', onSlotchange: this.onSlottedItemsChange })));
|
|
541
541
|
}
|
|
542
542
|
static get is() { return "ion-segment"; }
|
|
543
543
|
static get encapsulation() { return "shadow"; }
|
|
@@ -130,7 +130,7 @@ export class SegmentButton {
|
|
|
130
130
|
const { checked, type, disabled, hasIcon, hasLabel, layout, segmentEl } = this;
|
|
131
131
|
const mode = getIonMode(this);
|
|
132
132
|
const hasSegmentColor = () => (segmentEl === null || segmentEl === void 0 ? void 0 : segmentEl.color) !== undefined;
|
|
133
|
-
return (h(Host, { key: '
|
|
133
|
+
return (h(Host, { key: 'e1e582b9a142cb07043ba08f02ad25f5a1fa5690', class: {
|
|
134
134
|
[mode]: true,
|
|
135
135
|
'in-toolbar': hostContext('ion-toolbar', this.el),
|
|
136
136
|
'in-toolbar-color': hostContext('ion-toolbar[color]', this.el),
|
|
@@ -146,7 +146,7 @@ export class SegmentButton {
|
|
|
146
146
|
'ion-activatable': true,
|
|
147
147
|
'ion-activatable-instant': true,
|
|
148
148
|
'ion-focusable': true,
|
|
149
|
-
} }, h("button", Object.assign({ key: '
|
|
149
|
+
} }, h("button", Object.assign({ key: '8621a028894fb382854ff28779d0cadd3d9035f7', "aria-selected": checked ? 'true' : 'false', role: "tab", ref: (el) => (this.nativeEl = el), type: type, class: "button-native", part: "native", disabled: disabled }, this.inheritedAttributes), h("span", { key: '5c55858dbfb50734fb02d24091ebac3e0d05259f', class: "button-inner" }, h("slot", { key: '1f3bb8d76a1039ad648e202c650db06dfca88f79' })), mode === 'md' && h("ion-ripple-effect", { key: 'bda74b25bfdd431a8a36f0ee727b9184e9074321' })), h("div", { key: 'ff11369e921d6d0a540c75c37f692a3853e903f7', part: "indicator", class: "segment-button-indicator segment-button-indicator-animated" }, h("div", { key: '74ec4ca69331ed3f155fd8a8a356545941887df1', part: "indicator-background", class: "segment-button-indicator-background" }))));
|
|
150
150
|
}
|
|
151
151
|
static get is() { return "ion-segment-button"; }
|
|
152
152
|
static get encapsulation() { return "shadow"; }
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
import { Host, h } from "@stencil/core";
|
|
5
5
|
export class SegmentContent {
|
|
6
6
|
render() {
|
|
7
|
-
return (h(Host, { key: '
|
|
7
|
+
return (h(Host, { key: '64b3965b14c749e77e9ce13b59f349d971e245c8' }, h("slot", { key: '2d0bed34f9bc93f92e713cb51e42220f3cecd8f5' })));
|
|
8
8
|
}
|
|
9
9
|
static get is() { return "ion-segment-content"; }
|
|
10
10
|
static get encapsulation() { return "shadow"; }
|
|
@@ -94,10 +94,10 @@ export class SegmentView {
|
|
|
94
94
|
}
|
|
95
95
|
render() {
|
|
96
96
|
const { disabled, isManualScroll } = this;
|
|
97
|
-
return (h(Host, { key: '
|
|
97
|
+
return (h(Host, { key: 'fa528d2d9ae0f00fc3067defe2a047dce77c814a', class: {
|
|
98
98
|
'segment-view-disabled': disabled,
|
|
99
99
|
'segment-view-scroll-disabled': isManualScroll === false,
|
|
100
|
-
} }, h("slot", { key: '
|
|
100
|
+
} }, h("slot", { key: '74dc8b4d073caeff1bab272d11b9ea3e1a215954' })));
|
|
101
101
|
}
|
|
102
102
|
static get is() { return "ion-segment-view"; }
|
|
103
103
|
static get encapsulation() { return "shadow"; }
|
|
@@ -299,6 +299,63 @@ button {
|
|
|
299
299
|
--highlight-color: var(--highlight-color-valid);
|
|
300
300
|
}
|
|
301
301
|
|
|
302
|
+
.select-bottom {
|
|
303
|
+
/**
|
|
304
|
+
* The bottom content should take on the start and end
|
|
305
|
+
* padding so it is always aligned with either the label
|
|
306
|
+
* or the start of the text select.
|
|
307
|
+
*/
|
|
308
|
+
-webkit-padding-start: var(--padding-start);
|
|
309
|
+
padding-inline-start: var(--padding-start);
|
|
310
|
+
-webkit-padding-end: var(--padding-end);
|
|
311
|
+
padding-inline-end: var(--padding-end);
|
|
312
|
+
padding-top: 5px;
|
|
313
|
+
padding-bottom: 0;
|
|
314
|
+
display: flex;
|
|
315
|
+
justify-content: space-between;
|
|
316
|
+
border-top: var(--border-width) var(--border-style) var(--border-color);
|
|
317
|
+
font-size: 0.75rem;
|
|
318
|
+
white-space: normal;
|
|
319
|
+
}
|
|
320
|
+
|
|
321
|
+
/**
|
|
322
|
+
* If the select has a validity state, the
|
|
323
|
+
* border and label should reflect that as a color.
|
|
324
|
+
* The invalid state should show if the select is
|
|
325
|
+
* invalid and has already been touched.
|
|
326
|
+
* The valid state should show if the select
|
|
327
|
+
* is valid, has already been touched, and
|
|
328
|
+
* is currently focused. Do not show the valid
|
|
329
|
+
* highlight when the select is blurred.
|
|
330
|
+
*/
|
|
331
|
+
:host(.has-focus.ion-valid),
|
|
332
|
+
:host(.ion-touched.ion-invalid) {
|
|
333
|
+
--border-color: var(--highlight-color);
|
|
334
|
+
}
|
|
335
|
+
|
|
336
|
+
/**
|
|
337
|
+
* Error text should only be shown when .ion-invalid is
|
|
338
|
+
* present on the select. Otherwise the helper text should
|
|
339
|
+
* be shown.
|
|
340
|
+
*/
|
|
341
|
+
.select-bottom .error-text {
|
|
342
|
+
display: none;
|
|
343
|
+
color: var(--highlight-color-invalid);
|
|
344
|
+
}
|
|
345
|
+
|
|
346
|
+
.select-bottom .helper-text {
|
|
347
|
+
display: block;
|
|
348
|
+
color: var(--ion-color-step-700, var(--ion-text-color-step-300, #4d4d4d));
|
|
349
|
+
}
|
|
350
|
+
|
|
351
|
+
:host(.ion-touched.ion-invalid) .select-bottom .error-text {
|
|
352
|
+
display: block;
|
|
353
|
+
}
|
|
354
|
+
|
|
355
|
+
:host(.ion-touched.ion-invalid) .select-bottom .helper-text {
|
|
356
|
+
display: none;
|
|
357
|
+
}
|
|
358
|
+
|
|
302
359
|
.label-text-wrapper {
|
|
303
360
|
/**
|
|
304
361
|
* This causes the label to take up
|
|
@@ -686,6 +743,8 @@ button {
|
|
|
686
743
|
* }
|
|
687
744
|
*/
|
|
688
745
|
:host {
|
|
746
|
+
--border-width: 0.55px;
|
|
747
|
+
--border-color: var(--ion-item-border-color, var(--ion-border-color, var(--ion-color-step-250, var(--ion-background-color-step-250, #c8c7cc))));
|
|
689
748
|
--highlight-height: 0px;
|
|
690
749
|
}
|
|
691
750
|
|
|
@@ -23,10 +23,15 @@ import { getIonMode } from "../../global/ionic-global";
|
|
|
23
23
|
* @part icon - The select icon container.
|
|
24
24
|
* @part container - The container for the selected text or placeholder.
|
|
25
25
|
* @part label - The label text describing the select.
|
|
26
|
+
* @part supporting-text - Supporting text displayed beneath the select.
|
|
27
|
+
* @part helper-text - Supporting text displayed beneath the select when the select is valid.
|
|
28
|
+
* @part error-text - Supporting text displayed beneath the select when the select is invalid and touched.
|
|
26
29
|
*/
|
|
27
30
|
export class Select {
|
|
28
31
|
constructor() {
|
|
29
32
|
this.inputId = `ion-sel-${selectIds++}`;
|
|
33
|
+
this.helperTextId = `${this.inputId}-helper-text`;
|
|
34
|
+
this.errorTextId = `${this.inputId}-error-text`;
|
|
30
35
|
this.inheritedAttributes = {};
|
|
31
36
|
this.onClick = (ev) => {
|
|
32
37
|
const target = ev.target;
|
|
@@ -77,6 +82,8 @@ export class Select {
|
|
|
77
82
|
this.compareWith = undefined;
|
|
78
83
|
this.disabled = false;
|
|
79
84
|
this.fill = undefined;
|
|
85
|
+
this.errorText = undefined;
|
|
86
|
+
this.helperText = undefined;
|
|
80
87
|
this.interface = 'alert';
|
|
81
88
|
this.interfaceOptions = {};
|
|
82
89
|
this.justify = undefined;
|
|
@@ -657,7 +664,43 @@ export class Select {
|
|
|
657
664
|
}
|
|
658
665
|
renderListbox() {
|
|
659
666
|
const { disabled, inputId, isExpanded, required } = this;
|
|
660
|
-
return (h("button", { disabled: disabled, id: inputId, "aria-label": this.ariaLabel, "aria-haspopup": "dialog", "aria-expanded": `${isExpanded}`, "aria-required": `${required}`, onFocus: this.onFocus, onBlur: this.onBlur, ref: (focusEl) => (this.focusEl = focusEl) }));
|
|
667
|
+
return (h("button", { disabled: disabled, id: inputId, "aria-label": this.ariaLabel, "aria-haspopup": "dialog", "aria-expanded": `${isExpanded}`, "aria-describedby": this.getHintTextID(), "aria-invalid": this.getHintTextID() === this.errorTextId, "aria-required": `${required}`, onFocus: this.onFocus, onBlur: this.onBlur, ref: (focusEl) => (this.focusEl = focusEl) }));
|
|
668
|
+
}
|
|
669
|
+
getHintTextID() {
|
|
670
|
+
const { el, helperText, errorText, helperTextId, errorTextId } = this;
|
|
671
|
+
if (el.classList.contains('ion-touched') && el.classList.contains('ion-invalid') && errorText) {
|
|
672
|
+
return errorTextId;
|
|
673
|
+
}
|
|
674
|
+
if (helperText) {
|
|
675
|
+
return helperTextId;
|
|
676
|
+
}
|
|
677
|
+
return undefined;
|
|
678
|
+
}
|
|
679
|
+
/**
|
|
680
|
+
* Renders the helper text or error text values
|
|
681
|
+
*/
|
|
682
|
+
renderHintText() {
|
|
683
|
+
const { helperText, errorText, helperTextId, errorTextId } = this;
|
|
684
|
+
return [
|
|
685
|
+
h("div", { id: helperTextId, class: "helper-text", part: "supporting-text helper-text" }, helperText),
|
|
686
|
+
h("div", { id: errorTextId, class: "error-text", part: "supporting-text error-text" }, errorText),
|
|
687
|
+
];
|
|
688
|
+
}
|
|
689
|
+
/**
|
|
690
|
+
* Responsible for rendering helper text, and error text. This element
|
|
691
|
+
* should only be rendered if hint text is set.
|
|
692
|
+
*/
|
|
693
|
+
renderBottomContent() {
|
|
694
|
+
const { helperText, errorText } = this;
|
|
695
|
+
/**
|
|
696
|
+
* undefined and empty string values should
|
|
697
|
+
* be treated as not having helper/error text.
|
|
698
|
+
*/
|
|
699
|
+
const hasHintText = !!helperText || !!errorText;
|
|
700
|
+
if (!hasHintText) {
|
|
701
|
+
return;
|
|
702
|
+
}
|
|
703
|
+
return h("div", { class: "select-bottom" }, this.renderHintText());
|
|
661
704
|
}
|
|
662
705
|
render() {
|
|
663
706
|
const { disabled, el, isExpanded, expandedIcon, labelPlacement, justify, placeholder, fill, shape, name, value } = this;
|
|
@@ -688,7 +731,7 @@ export class Select {
|
|
|
688
731
|
* TODO(FW-5592): Remove hasStartEndSlots condition
|
|
689
732
|
*/
|
|
690
733
|
const labelShouldFloat = labelPlacement === 'stacked' || (labelPlacement === 'floating' && (hasValue || isExpanded || hasStartEndSlots));
|
|
691
|
-
return (h(Host, { key: '
|
|
734
|
+
return (h(Host, { key: 'aa7bd7fbb6479c7805486990650a406e5470fd13', onClick: this.onClick, class: createColorClasses(this.color, {
|
|
692
735
|
[mode]: true,
|
|
693
736
|
'in-item': inItem,
|
|
694
737
|
'in-item-color': hostContext('ion-item.ion-color', el),
|
|
@@ -704,7 +747,7 @@ export class Select {
|
|
|
704
747
|
[`select-justify-${justify}`]: justifyEnabled,
|
|
705
748
|
[`select-shape-${shape}`]: shape !== undefined,
|
|
706
749
|
[`select-label-placement-${labelPlacement}`]: true,
|
|
707
|
-
}) }, h("label", { key: '
|
|
750
|
+
}) }, h("label", { key: 'fde3cdfd0ef7d1a20263e35ff4358ee7f61a789f', class: "select-wrapper", id: "select-label" }, this.renderLabelContainer(), h("div", { key: '6fb8deedc827b6be2f19f9e57a62efefaaba200f', class: "select-wrapper-inner" }, h("slot", { key: 'a57a204ea1cbd9c4bac338f14e196e780dab0a10', name: "start" }), h("div", { key: '78b83e1484a446537e038527d539d997e330cd69', class: "native-wrapper", ref: (el) => (this.nativeWrapperEl = el), part: "container" }, this.renderSelectText(), this.renderListbox()), h("slot", { key: '9fc660134e5247c4e5243c7d9d71ac6cec08705d', name: "end" }), !hasFloatingOrStackedLabel && this.renderSelectIcon()), hasFloatingOrStackedLabel && this.renderSelectIcon(), shouldRenderHighlight && h("div", { key: '7f143285efa7fd7756dfdc5517ca33e84c8a027e', class: "select-highlight" })), this.renderBottomContent()));
|
|
708
751
|
}
|
|
709
752
|
static get is() { return "ion-select"; }
|
|
710
753
|
static get encapsulation() { return "shadow"; }
|
|
@@ -821,6 +864,40 @@ export class Select {
|
|
|
821
864
|
"attribute": "fill",
|
|
822
865
|
"reflect": false
|
|
823
866
|
},
|
|
867
|
+
"errorText": {
|
|
868
|
+
"type": "string",
|
|
869
|
+
"mutable": false,
|
|
870
|
+
"complexType": {
|
|
871
|
+
"original": "string",
|
|
872
|
+
"resolved": "string | undefined",
|
|
873
|
+
"references": {}
|
|
874
|
+
},
|
|
875
|
+
"required": false,
|
|
876
|
+
"optional": true,
|
|
877
|
+
"docs": {
|
|
878
|
+
"tags": [],
|
|
879
|
+
"text": "Text that is placed under the select and displayed when an error is detected."
|
|
880
|
+
},
|
|
881
|
+
"attribute": "error-text",
|
|
882
|
+
"reflect": false
|
|
883
|
+
},
|
|
884
|
+
"helperText": {
|
|
885
|
+
"type": "string",
|
|
886
|
+
"mutable": false,
|
|
887
|
+
"complexType": {
|
|
888
|
+
"original": "string",
|
|
889
|
+
"resolved": "string | undefined",
|
|
890
|
+
"references": {}
|
|
891
|
+
},
|
|
892
|
+
"required": false,
|
|
893
|
+
"optional": true,
|
|
894
|
+
"docs": {
|
|
895
|
+
"tags": [],
|
|
896
|
+
"text": "Text that is placed under the select and displayed when no error is detected."
|
|
897
|
+
},
|
|
898
|
+
"attribute": "helper-text",
|
|
899
|
+
"reflect": false
|
|
900
|
+
},
|
|
824
901
|
"interface": {
|
|
825
902
|
"type": "string",
|
|
826
903
|
"mutable": false,
|