@ionic/core 8.2.3-dev.11721064272.19e3ddfd → 8.2.3-dev.11721225504.1476a6ac
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/ion-avatar.js +3 -3
- package/components/ion-badge.js +3 -3
- package/components/ion-input.js +1 -1
- package/components/ion-segment.js +3 -11
- package/components/ion-select-option.js +1 -1
- package/components/ion-select.js +2 -2
- 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 +2 -2
- package/components/ion-title.js +2 -2
- package/components/ion-toast.js +2 -2
- package/components/ion-toggle.js +3 -3
- package/components/ion-toolbar.js +2 -2
- package/components/item.js +3 -3
- package/components/select-popover.js +2 -2
- package/components/spinner.js +33 -6
- package/dist/cjs/ion-app_8.cjs.entry.js +4 -4
- package/dist/cjs/ion-avatar_3.cjs.entry.js +8 -8
- package/dist/cjs/ion-input.cjs.entry.js +1 -1
- package/dist/cjs/ion-item_8.cjs.entry.js +5 -5
- package/dist/cjs/ion-segment_2.cjs.entry.js +3 -11
- package/dist/cjs/ion-select_3.cjs.entry.js +5 -5
- package/dist/cjs/ion-spinner.cjs.entry.js +30 -4
- 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/collection-manifest.json +0 -2
- package/dist/collection/components/avatar/avatar.ionic.css +17 -1
- package/dist/collection/components/avatar/avatar.js +5 -5
- package/dist/collection/components/avatar/test/shape/avatar.e2e.js +7 -0
- package/dist/collection/components/avatar/test/size/avatar.e2e.js +27 -0
- package/dist/collection/components/badge/badge.ionic.css +32 -37
- package/dist/collection/components/badge/badge.ios.css +94 -3
- package/dist/collection/components/badge/badge.md.css +94 -3
- package/dist/collection/components/button/test/outline/button.e2e.js +1 -2
- package/dist/collection/components/input/input.ionic.css +2 -1
- package/dist/collection/components/item/item.ionic.css +359 -65
- package/dist/collection/components/item/item.ios.css +94 -67
- package/dist/collection/components/item/item.md.css +94 -67
- package/dist/collection/components/segment/segment.js +3 -11
- package/dist/collection/components/select/select.js +2 -2
- package/dist/collection/components/select-option/select-option.js +1 -1
- package/dist/collection/components/select-popover/select-popover.js +2 -2
- package/dist/collection/components/skeleton-text/skeleton-text.js +2 -2
- package/dist/collection/components/spinner/spinner.common.css +199 -0
- package/dist/collection/components/spinner/{spinner.css → spinner.ionic.css} +55 -0
- package/dist/collection/components/spinner/spinner.js +40 -3
- package/dist/collection/components/spinner/test/size/spinner.e2e.js +47 -0
- 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 +2 -2
- 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 +190 -48
- package/dist/esm/ion-app_8.entry.js +4 -4
- package/dist/esm/ion-avatar_3.entry.js +8 -8
- package/dist/esm/ion-input.entry.js +1 -1
- package/dist/esm/ion-item_8.entry.js +5 -5
- package/dist/esm/ion-segment_2.entry.js +3 -11
- package/dist/esm/ion-select_3.entry.js +5 -5
- package/dist/esm/ion-spinner.entry.js +30 -4
- 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-input.entry.js +1 -1
- package/dist/esm-es5/ion-item_8.entry.js +1 -1
- package/dist/esm-es5/ion-segment_2.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 -29
- package/dist/ionic/ionic.esm.js +1 -1
- package/dist/ionic/{p-29f4100d.entry.js → p-01ae1aa0.entry.js} +1 -1
- package/dist/ionic/p-1be0295f.entry.js +4 -0
- package/dist/ionic/p-201d8768.system.entry.js +4 -0
- package/dist/ionic/{p-062c1cb9.system.entry.js → p-223bc7dd.system.entry.js} +1 -1
- package/dist/ionic/{p-0595a36c.system.entry.js → p-24592a4d.system.entry.js} +1 -1
- package/dist/ionic/{p-2aa6a169.entry.js → p-28649e61.entry.js} +1 -1
- package/dist/ionic/{p-385a361b.entry.js → p-39a39279.entry.js} +1 -1
- package/dist/ionic/p-3ce954c7.entry.js +4 -0
- package/dist/ionic/p-40c14f53.system.entry.js +4 -0
- package/dist/ionic/{p-cd6d4c1d.entry.js → p-4346453b.entry.js} +1 -1
- package/dist/ionic/{p-1be0ed0e.system.entry.js → p-45ca3acb.system.entry.js} +2 -2
- package/dist/ionic/p-4b9c6418.system.entry.js +4 -0
- package/dist/ionic/p-563a8d3b.entry.js +4 -0
- package/dist/ionic/{p-b67ed806.system.entry.js → p-56c72f65.system.entry.js} +1 -1
- package/dist/ionic/{p-da668343.system.entry.js → p-7ab9c88c.system.entry.js} +1 -1
- package/dist/ionic/p-7b590e46.system.js +1 -1
- package/dist/ionic/{p-c0dace15.system.entry.js → p-7dad531c.system.entry.js} +1 -1
- package/dist/ionic/p-85ca50a9.system.entry.js +4 -0
- package/dist/ionic/p-8ac5efa9.entry.js +4 -0
- package/dist/ionic/p-a0b51978.system.entry.js +4 -0
- package/dist/ionic/p-a6bb62ea.entry.js +4 -0
- package/dist/ionic/p-ae79f1e2.entry.js +4 -0
- package/dist/ionic/{p-aaf1b71f.entry.js → p-b374abe2.entry.js} +1 -1
- package/dist/ionic/{p-61f51286.system.entry.js → p-b5cc6e57.system.entry.js} +1 -1
- package/dist/ionic/p-bbefc52b.system.entry.js +4 -0
- package/dist/ionic/{p-adb54d5b.entry.js → p-c23822f8.entry.js} +1 -1
- package/dist/ionic/{p-14ae725a.entry.js → p-d2a580db.entry.js} +1 -1
- package/dist/ionic/p-dc8a3888.entry.js +4 -0
- package/dist/ionic/{p-5cc8fa7f.system.entry.js → p-f84ea1e9.system.entry.js} +1 -1
- package/dist/types/components/avatar/avatar.d.ts +7 -4
- package/dist/types/components/segment/segment.d.ts +1 -1
- package/dist/types/components/spinner/spinner.d.ts +11 -0
- package/dist/types/components.d.ts +12 -30
- package/hydrate/index.js +77 -151
- package/package.json +1 -1
- package/components/ion-segment-content.d.ts +0 -11
- package/components/ion-segment-content.js +0 -38
- package/components/ion-segment-view.d.ts +0 -11
- package/components/ion-segment-view.js +0 -86
- package/dist/cjs/ion-segment-content.cjs.entry.js +0 -24
- package/dist/cjs/ion-segment-view.cjs.entry.js +0 -72
- package/dist/collection/components/segment-content/segment-content.css +0 -5
- package/dist/collection/components/segment-content/segment-content.js +0 -22
- package/dist/collection/components/segment-view/segment-view.css +0 -15
- package/dist/collection/components/segment-view/segment-view.js +0 -81
- package/dist/esm/ion-segment-content.entry.js +0 -20
- package/dist/esm/ion-segment-view.entry.js +0 -68
- package/dist/esm-es5/ion-segment-content.entry.js +0 -4
- package/dist/esm-es5/ion-segment-view.entry.js +0 -4
- package/dist/ionic/p-07b804ba.entry.js +0 -4
- package/dist/ionic/p-405559bd.entry.js +0 -4
- package/dist/ionic/p-5839776e.entry.js +0 -4
- package/dist/ionic/p-660cf6f3.system.entry.js +0 -4
- package/dist/ionic/p-6ced0cc0.entry.js +0 -4
- package/dist/ionic/p-6d4534cb.system.entry.js +0 -4
- package/dist/ionic/p-72944d53.system.entry.js +0 -4
- package/dist/ionic/p-7813dead.system.entry.js +0 -4
- package/dist/ionic/p-833593dd.entry.js +0 -4
- package/dist/ionic/p-8ef82205.entry.js +0 -4
- package/dist/ionic/p-9316e014.system.entry.js +0 -4
- package/dist/ionic/p-a2830649.system.entry.js +0 -4
- package/dist/ionic/p-aa246404.entry.js +0 -4
- package/dist/ionic/p-aa97948b.entry.js +0 -4
- package/dist/ionic/p-c6e43624.entry.js +0 -4
- package/dist/ionic/p-f1eb1152.system.entry.js +0 -4
- package/dist/ionic/p-f8a16486.system.entry.js +0 -4
- package/dist/types/components/segment-content/segment-content.d.ts +0 -5
- package/dist/types/components/segment-view/segment-view.d.ts +0 -13
|
@@ -1,3 +1,350 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A heuristic that applies CSS to tablet
|
|
3
|
+
* viewports.
|
|
4
|
+
*
|
|
5
|
+
* Usage:
|
|
6
|
+
* @include tablet-viewport() {
|
|
7
|
+
* :host {
|
|
8
|
+
* background-color: green;
|
|
9
|
+
* }
|
|
10
|
+
* }
|
|
11
|
+
*/
|
|
12
|
+
/**
|
|
13
|
+
* A heuristic that applies CSS to mobile
|
|
14
|
+
* viewports (i.e. phones, not tablets).
|
|
15
|
+
*
|
|
16
|
+
* Usage:
|
|
17
|
+
* @include mobile-viewport() {
|
|
18
|
+
* :host {
|
|
19
|
+
* background-color: blue;
|
|
20
|
+
* }
|
|
21
|
+
* }
|
|
22
|
+
*/
|
|
23
|
+
:host {
|
|
24
|
+
/**
|
|
25
|
+
* @prop --background: Background of the item
|
|
26
|
+
* @prop --background-activated: Background of the item when pressed. Note: setting this will interfere with the Material Design ripple.
|
|
27
|
+
* @prop --background-activated-opacity: Opacity of the item background when pressed
|
|
28
|
+
* @prop --background-focused: Background of the item when focused with the tab key
|
|
29
|
+
* @prop --background-focused-opacity: Opacity of the item background when focused with the tab key
|
|
30
|
+
* @prop --background-hover: Background of the item on hover
|
|
31
|
+
* @prop --background-hover-opacity: Opacity of the background of the item on hover
|
|
32
|
+
*
|
|
33
|
+
* @prop --border-color: Color of the item border
|
|
34
|
+
* @prop --border-radius: Radius of the item border
|
|
35
|
+
* @prop --border-style: Style of the item border
|
|
36
|
+
* @prop --border-width: Width of the item border
|
|
37
|
+
*
|
|
38
|
+
* @prop --color: Color of the item
|
|
39
|
+
* @prop --color-activated: Color of the item when pressed
|
|
40
|
+
* @prop --color-focused: Color of the item when focused with the tab key
|
|
41
|
+
* @prop --color-hover: Color of the item on hover
|
|
42
|
+
*
|
|
43
|
+
* @prop --detail-icon-color: Color of the item detail icon
|
|
44
|
+
* @prop --detail-icon-opacity: Opacity of the item detail icon
|
|
45
|
+
* @prop --detail-icon-font-size: Font size of the item detail icon
|
|
46
|
+
*
|
|
47
|
+
* @prop --inner-border-width: Width of the item inner border
|
|
48
|
+
* @prop --inner-box-shadow: Box shadow of the item inner
|
|
49
|
+
* @prop --inner-padding-top: Top padding of the item inner
|
|
50
|
+
* @prop --inner-padding-end: Right padding if direction is left-to-right, and left padding if direction is right-to-left of the item inner
|
|
51
|
+
* @prop --inner-padding-bottom: Bottom padding of the item inner
|
|
52
|
+
* @prop --inner-padding-start: Left padding if direction is left-to-right, and right padding if direction is right-to-left of the item inner
|
|
53
|
+
*
|
|
54
|
+
* @prop --min-height: Minimum height of the item
|
|
55
|
+
*
|
|
56
|
+
* @prop --padding-bottom: Bottom padding of the item
|
|
57
|
+
* @prop --padding-end: Right padding if direction is left-to-right, and left padding if direction is right-to-left of the item
|
|
58
|
+
* @prop --padding-start: Left padding if direction is left-to-right, and right padding if direction is right-to-left of the item
|
|
59
|
+
* @prop --padding-top: Top padding of the item
|
|
60
|
+
*
|
|
61
|
+
* @prop --transition: Transition of the item
|
|
62
|
+
*
|
|
63
|
+
* @prop --ripple-color: Color of the item ripple effect
|
|
64
|
+
*
|
|
65
|
+
*/
|
|
66
|
+
--border-radius: 0px;
|
|
67
|
+
--border-width: 0px;
|
|
68
|
+
--border-style: solid;
|
|
69
|
+
--padding-top: 0px;
|
|
70
|
+
--padding-bottom: 0px;
|
|
71
|
+
--padding-end: 0px;
|
|
72
|
+
--padding-start: 0px;
|
|
73
|
+
--inner-border-width: 0px;
|
|
74
|
+
--inner-padding-top: 0px;
|
|
75
|
+
--inner-padding-bottom: 0px;
|
|
76
|
+
--inner-padding-start: 0px;
|
|
77
|
+
--inner-padding-end: 0px;
|
|
78
|
+
--inner-box-shadow: none;
|
|
79
|
+
--detail-icon-color: initial;
|
|
80
|
+
--detail-icon-font-size: 1.25em;
|
|
81
|
+
--detail-icon-opacity: 0.25;
|
|
82
|
+
--color-activated: var(--color);
|
|
83
|
+
--color-focused: var(--color);
|
|
84
|
+
--color-hover: var(--color);
|
|
85
|
+
--ripple-color: currentColor;
|
|
86
|
+
-moz-osx-font-smoothing: grayscale;
|
|
87
|
+
-webkit-font-smoothing: antialiased;
|
|
88
|
+
display: block;
|
|
89
|
+
position: relative;
|
|
90
|
+
align-items: center;
|
|
91
|
+
justify-content: space-between;
|
|
92
|
+
outline: none;
|
|
93
|
+
color: var(--color);
|
|
94
|
+
text-align: initial;
|
|
95
|
+
text-decoration: none;
|
|
96
|
+
overflow: hidden;
|
|
97
|
+
box-sizing: border-box;
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
:host(.ion-activated) .item-native {
|
|
101
|
+
color: var(--color-activated);
|
|
102
|
+
}
|
|
103
|
+
:host(.ion-activated) .item-native::after {
|
|
104
|
+
background: var(--background-activated);
|
|
105
|
+
opacity: var(--background-activated-opacity);
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
:host(.ion-focused) .item-native {
|
|
109
|
+
color: var(--color-focused);
|
|
110
|
+
}
|
|
111
|
+
:host(.ion-focused) .item-native::after {
|
|
112
|
+
background: var(--background-focused);
|
|
113
|
+
opacity: var(--background-focused-opacity);
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
@media (any-hover: hover) {
|
|
117
|
+
:host(.ion-activatable:not(.ion-focused):hover) .item-native {
|
|
118
|
+
color: var(--color-hover);
|
|
119
|
+
}
|
|
120
|
+
:host(.ion-activatable:not(.ion-focused):hover) .item-native::after {
|
|
121
|
+
background: var(--background-hover);
|
|
122
|
+
opacity: var(--background-hover-opacity);
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
:host(.item-control-needs-pointer-cursor) {
|
|
126
|
+
cursor: pointer;
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
:host(.item-interactive-disabled:not(.item-multiple-inputs)) {
|
|
130
|
+
cursor: default;
|
|
131
|
+
pointer-events: none;
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
:host(.item-disabled) {
|
|
135
|
+
cursor: default;
|
|
136
|
+
opacity: 0.3;
|
|
137
|
+
pointer-events: none;
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
.item-native {
|
|
141
|
+
border-radius: var(--border-radius);
|
|
142
|
+
margin-left: 0;
|
|
143
|
+
margin-right: 0;
|
|
144
|
+
margin-top: 0;
|
|
145
|
+
margin-bottom: 0;
|
|
146
|
+
padding-top: var(--padding-top);
|
|
147
|
+
padding-bottom: var(--padding-bottom);
|
|
148
|
+
color: inherit;
|
|
149
|
+
font-family: inherit;
|
|
150
|
+
font-size: inherit;
|
|
151
|
+
font-style: inherit;
|
|
152
|
+
font-weight: inherit;
|
|
153
|
+
letter-spacing: inherit;
|
|
154
|
+
text-align: inherit;
|
|
155
|
+
text-decoration: inherit;
|
|
156
|
+
text-indent: inherit;
|
|
157
|
+
text-overflow: inherit;
|
|
158
|
+
text-transform: inherit;
|
|
159
|
+
white-space: inherit;
|
|
160
|
+
/* stylelint-disable */
|
|
161
|
+
padding-right: var(--padding-end);
|
|
162
|
+
padding-left: calc(var(--padding-start) + var(--ion-safe-area-left, 0px));
|
|
163
|
+
/* stylelint-enable */
|
|
164
|
+
display: flex;
|
|
165
|
+
position: relative;
|
|
166
|
+
align-items: inherit;
|
|
167
|
+
justify-content: inherit;
|
|
168
|
+
width: 100%;
|
|
169
|
+
min-height: var(--min-height);
|
|
170
|
+
transition: var(--transition);
|
|
171
|
+
border-width: var(--border-width);
|
|
172
|
+
border-style: var(--border-style);
|
|
173
|
+
border-color: var(--border-color);
|
|
174
|
+
outline: none;
|
|
175
|
+
background: var(--background);
|
|
176
|
+
overflow: inherit;
|
|
177
|
+
z-index: 1;
|
|
178
|
+
box-sizing: border-box;
|
|
179
|
+
}
|
|
180
|
+
:host-context([dir=rtl]) .item-native {
|
|
181
|
+
padding-right: calc(var(--padding-start) + var(--ion-safe-area-right, 0px));
|
|
182
|
+
padding-left: var(--padding-end);
|
|
183
|
+
}
|
|
184
|
+
|
|
185
|
+
[dir=rtl] .item-native {
|
|
186
|
+
padding-right: calc(var(--padding-start) + var(--ion-safe-area-right, 0px));
|
|
187
|
+
padding-left: var(--padding-end);
|
|
188
|
+
}
|
|
189
|
+
|
|
190
|
+
@supports selector(:dir(rtl)) {
|
|
191
|
+
.item-native:dir(rtl) {
|
|
192
|
+
padding-right: calc(var(--padding-start) + var(--ion-safe-area-right, 0px));
|
|
193
|
+
padding-left: var(--padding-end);
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
|
|
197
|
+
.item-native::-moz-focus-inner {
|
|
198
|
+
border: 0;
|
|
199
|
+
}
|
|
200
|
+
|
|
201
|
+
.item-native::after {
|
|
202
|
+
right: 0;
|
|
203
|
+
left: 0;
|
|
204
|
+
top: 0;
|
|
205
|
+
bottom: 0;
|
|
206
|
+
position: absolute;
|
|
207
|
+
content: "";
|
|
208
|
+
opacity: 0;
|
|
209
|
+
transition: var(--transition);
|
|
210
|
+
z-index: -1;
|
|
211
|
+
}
|
|
212
|
+
|
|
213
|
+
button,
|
|
214
|
+
a {
|
|
215
|
+
cursor: pointer;
|
|
216
|
+
user-select: none;
|
|
217
|
+
-webkit-user-drag: none;
|
|
218
|
+
}
|
|
219
|
+
|
|
220
|
+
.item-inner {
|
|
221
|
+
margin-left: 0;
|
|
222
|
+
margin-right: 0;
|
|
223
|
+
margin-top: 0;
|
|
224
|
+
margin-bottom: 0;
|
|
225
|
+
padding-top: var(--inner-padding-top);
|
|
226
|
+
padding-bottom: var(--inner-padding-bottom);
|
|
227
|
+
/* stylelint-disable */
|
|
228
|
+
padding-right: calc(var(--ion-safe-area-right, 0px) + var(--inner-padding-end));
|
|
229
|
+
padding-left: var(--inner-padding-start);
|
|
230
|
+
/* stylelint-enable */
|
|
231
|
+
display: flex;
|
|
232
|
+
position: relative;
|
|
233
|
+
flex: 1;
|
|
234
|
+
flex-direction: inherit;
|
|
235
|
+
align-items: inherit;
|
|
236
|
+
align-self: stretch;
|
|
237
|
+
min-height: inherit;
|
|
238
|
+
border-width: var(--inner-border-width);
|
|
239
|
+
border-style: var(--border-style);
|
|
240
|
+
border-color: var(--border-color);
|
|
241
|
+
box-shadow: var(--inner-box-shadow);
|
|
242
|
+
overflow: inherit;
|
|
243
|
+
box-sizing: border-box;
|
|
244
|
+
}
|
|
245
|
+
:host-context([dir=rtl]) .item-inner {
|
|
246
|
+
padding-right: var(--inner-padding-start);
|
|
247
|
+
padding-left: calc(var(--ion-safe-area-left, 0px) + var(--inner-padding-end));
|
|
248
|
+
}
|
|
249
|
+
|
|
250
|
+
[dir=rtl] .item-inner {
|
|
251
|
+
padding-right: var(--inner-padding-start);
|
|
252
|
+
padding-left: calc(var(--ion-safe-area-left, 0px) + var(--inner-padding-end));
|
|
253
|
+
}
|
|
254
|
+
|
|
255
|
+
@supports selector(:dir(rtl)) {
|
|
256
|
+
.item-inner:dir(rtl) {
|
|
257
|
+
padding-right: var(--inner-padding-start);
|
|
258
|
+
padding-left: calc(var(--ion-safe-area-left, 0px) + var(--inner-padding-end));
|
|
259
|
+
}
|
|
260
|
+
}
|
|
261
|
+
|
|
262
|
+
.item-detail-icon {
|
|
263
|
+
/**
|
|
264
|
+
* IonItem applies its own end padding. However,
|
|
265
|
+
* all IonIcons have the same bounding box meaning
|
|
266
|
+
* there may be white space for narrow icons. As
|
|
267
|
+
* a result, the white space gives the appearance
|
|
268
|
+
* that there is too much end margin. We move the default
|
|
269
|
+
* chevron icon over to account for this extra whitespace.
|
|
270
|
+
*/
|
|
271
|
+
-webkit-margin-start: calc(var(--inner-padding-end) / 2);
|
|
272
|
+
margin-inline-start: calc(var(--inner-padding-end) / 2);
|
|
273
|
+
-webkit-margin-end: -6px;
|
|
274
|
+
margin-inline-end: -6px;
|
|
275
|
+
color: var(--detail-icon-color);
|
|
276
|
+
font-size: var(--detail-icon-font-size);
|
|
277
|
+
opacity: var(--detail-icon-opacity);
|
|
278
|
+
}
|
|
279
|
+
|
|
280
|
+
::slotted(ion-icon) {
|
|
281
|
+
font-size: 1.6em;
|
|
282
|
+
}
|
|
283
|
+
|
|
284
|
+
::slotted(ion-button) {
|
|
285
|
+
--margin-top: 0;
|
|
286
|
+
--margin-bottom: 0;
|
|
287
|
+
--margin-start: 0;
|
|
288
|
+
--margin-end: 0;
|
|
289
|
+
z-index: 1;
|
|
290
|
+
}
|
|
291
|
+
|
|
292
|
+
::slotted(ion-label:not([slot=end])) {
|
|
293
|
+
flex: 1;
|
|
294
|
+
width: min-content;
|
|
295
|
+
/**
|
|
296
|
+
* We allow labels in the default
|
|
297
|
+
* slot to grow. However, we do not
|
|
298
|
+
* want them to grow indefinitely.
|
|
299
|
+
*/
|
|
300
|
+
max-width: 100%;
|
|
301
|
+
}
|
|
302
|
+
|
|
303
|
+
:host(.item-input) {
|
|
304
|
+
align-items: center;
|
|
305
|
+
}
|
|
306
|
+
|
|
307
|
+
.input-wrapper {
|
|
308
|
+
display: flex;
|
|
309
|
+
flex: 1;
|
|
310
|
+
flex-direction: inherit;
|
|
311
|
+
align-items: inherit;
|
|
312
|
+
align-self: stretch;
|
|
313
|
+
text-overflow: ellipsis;
|
|
314
|
+
overflow: inherit;
|
|
315
|
+
box-sizing: border-box;
|
|
316
|
+
}
|
|
317
|
+
|
|
318
|
+
:host(.item-label-stacked),
|
|
319
|
+
:host(.item-label-floating) {
|
|
320
|
+
align-items: start;
|
|
321
|
+
}
|
|
322
|
+
|
|
323
|
+
:host(.item-label-stacked) .input-wrapper,
|
|
324
|
+
:host(.item-label-floating) .input-wrapper {
|
|
325
|
+
flex: 1;
|
|
326
|
+
flex-direction: column;
|
|
327
|
+
}
|
|
328
|
+
|
|
329
|
+
:host(.item-multiple-inputs) ::slotted(ion-checkbox),
|
|
330
|
+
:host(.item-multiple-inputs) ::slotted(ion-datetime),
|
|
331
|
+
:host(.item-multiple-inputs) ::slotted(ion-radio) {
|
|
332
|
+
position: relative;
|
|
333
|
+
}
|
|
334
|
+
|
|
335
|
+
:host(.item-textarea) {
|
|
336
|
+
align-items: stretch;
|
|
337
|
+
}
|
|
338
|
+
|
|
339
|
+
::slotted(ion-reorder[slot]) {
|
|
340
|
+
margin-top: 0;
|
|
341
|
+
margin-bottom: 0;
|
|
342
|
+
}
|
|
343
|
+
|
|
344
|
+
ion-ripple-effect {
|
|
345
|
+
color: var(--ripple-color);
|
|
346
|
+
}
|
|
347
|
+
|
|
1
348
|
/**
|
|
2
349
|
* Convert a pixels given value into rem
|
|
3
350
|
*
|
|
@@ -64,98 +411,45 @@
|
|
|
64
411
|
* convert to a unit other than $baselineUnit.
|
|
65
412
|
*/
|
|
66
413
|
:host {
|
|
67
|
-
/**
|
|
68
|
-
* @prop --background: Background of the item
|
|
69
|
-
* @prop --background-activated: Background of the item when pressed. Note: setting this will interfere with the Material Design ripple.
|
|
70
|
-
*
|
|
71
|
-
* @prop --border-color: Color of the item border
|
|
72
|
-
* @prop --border-style: Style of the item border
|
|
73
|
-
* @prop --border-width: Width of the item border
|
|
74
|
-
*
|
|
75
|
-
* @prop --min-height: Minimum height of the item
|
|
76
|
-
*
|
|
77
|
-
* @prop --padding-bottom: Bottom padding of the item
|
|
78
|
-
* @prop --padding-end: Right padding if direction is left-to-right, and left padding if direction is right-to-left of the item
|
|
79
|
-
* @prop --padding-start: Left padding if direction is left-to-right, and right padding if direction is right-to-left of the item
|
|
80
|
-
* @prop --padding-top: Top padding of the item
|
|
81
|
-
*
|
|
82
|
-
*/
|
|
83
414
|
--background: var(--ionic-color-base-white, #ffffff);
|
|
84
415
|
--background-activated: var(--ionic-color-neutral-200, #e7e7e7);
|
|
85
416
|
--border-color: var(--ionic-color-neutral-300, #cfcfcf);
|
|
86
417
|
--border-style: var(--ionic-border-style-solid, solid);
|
|
87
|
-
--border-width: var(--ionic-border-size-025, 1px);
|
|
418
|
+
--border-width: 0 0 var(--ionic-border-size-025, 1px) 0;
|
|
88
419
|
--min-height: var(--ionic-scale-1800, 72px);
|
|
89
420
|
--padding-top: var(--ionic-space-200, 8px);
|
|
90
421
|
--padding-end: var(--ionic-space-400, 16px);
|
|
91
422
|
--padding-bottom: var(--ionic-space-200, 8px);
|
|
92
423
|
--padding-start: var(--ionic-space-400, 16px);
|
|
93
|
-
-moz-osx-font-smoothing: grayscale;
|
|
94
|
-
-webkit-font-smoothing: antialiased;
|
|
95
|
-
display: flex;
|
|
96
|
-
position: relative;
|
|
97
|
-
align-items: center;
|
|
98
|
-
justify-content: space-between;
|
|
99
|
-
outline: none;
|
|
100
424
|
font-family: var(--ionic-font-family, "Inter", sans-serif);
|
|
101
|
-
text-align: initial;
|
|
102
|
-
text-decoration: none;
|
|
103
|
-
overflow: hidden;
|
|
104
|
-
box-sizing: border-box;
|
|
105
425
|
}
|
|
106
426
|
|
|
107
|
-
.item-
|
|
108
|
-
-
|
|
109
|
-
padding-inline-start: var(--padding-start);
|
|
110
|
-
-webkit-padding-end: var(--padding-end);
|
|
111
|
-
padding-inline-end: var(--padding-end);
|
|
112
|
-
padding-top: var(--padding-top);
|
|
113
|
-
padding-bottom: var(--padding-bottom);
|
|
114
|
-
display: flex;
|
|
115
|
-
align-items: center;
|
|
116
|
-
width: 100%;
|
|
117
|
-
min-height: var(--min-height);
|
|
118
|
-
border-bottom-width: var(--border-width);
|
|
119
|
-
border-bottom-style: var(--border-style);
|
|
120
|
-
border-bottom-color: var(--border-color);
|
|
121
|
-
background: var(--background);
|
|
122
|
-
overflow: inherit;
|
|
123
|
-
box-sizing: border-box;
|
|
427
|
+
.item-inner {
|
|
428
|
+
min-height: initial;
|
|
124
429
|
}
|
|
125
|
-
|
|
430
|
+
|
|
431
|
+
slot[name=start]::slotted(*) {
|
|
126
432
|
-webkit-margin-end: var(--ionic-space-400, 16px);
|
|
127
433
|
margin-inline-end: var(--ionic-space-400, 16px);
|
|
128
434
|
}
|
|
129
|
-
|
|
435
|
+
|
|
436
|
+
slot[name=end]::slotted(*) {
|
|
130
437
|
-webkit-margin-start: var(--ionic-space-400, 16px);
|
|
131
438
|
margin-inline-start: var(--ionic-space-400, 16px);
|
|
132
439
|
}
|
|
133
|
-
.item-native .item-inner,
|
|
134
|
-
.item-native .item-inner .input-wrapper {
|
|
135
|
-
display: flex;
|
|
136
|
-
flex: 1;
|
|
137
|
-
overflow: inherit;
|
|
138
|
-
box-sizing: border-box;
|
|
139
|
-
}
|
|
140
440
|
|
|
141
441
|
:host(.item-disabled) {
|
|
142
|
-
|
|
143
|
-
pointer-events: none;
|
|
144
|
-
}
|
|
145
|
-
:host(.item-disabled)::after {
|
|
146
|
-
right: 0;
|
|
147
|
-
left: 0;
|
|
148
|
-
top: 0;
|
|
149
|
-
bottom: 0;
|
|
150
|
-
position: absolute;
|
|
151
|
-
background: var(--ionic-state-disabled, rgba(255, 255, 255, 0.6));
|
|
152
|
-
content: "";
|
|
442
|
+
opacity: 0.6;
|
|
153
443
|
}
|
|
154
444
|
|
|
155
445
|
:host(.ion-activated) .item-native {
|
|
156
446
|
background: var(--background-activated);
|
|
157
447
|
}
|
|
158
448
|
|
|
449
|
+
:host(.ion-focused) .item-native {
|
|
450
|
+
overflow: visible;
|
|
451
|
+
}
|
|
452
|
+
|
|
159
453
|
:host(.ion-focused) .item-native::after {
|
|
160
454
|
right: 0;
|
|
161
455
|
left: 0;
|
|
@@ -1,42 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Convert a pixels given value into rem
|
|
3
|
-
*
|
|
4
|
-
* @param pixels - Value in pixels to be converted (i.e. px)
|
|
5
|
-
* @param context (optional) - Baseline value
|
|
6
|
-
*/
|
|
7
|
-
/**
|
|
8
|
-
* Convert a font size to a dynamic font size.
|
|
9
|
-
* Fonts that participate in Dynamic Type should use
|
|
10
|
-
* dynamic font sizes.
|
|
11
|
-
* @param size - The initial font size including the unit (i.e. px or pt)
|
|
12
|
-
* @param unit (optional) - The unit to convert to. Use this if you want to
|
|
13
|
-
* convert to a unit other than $baselineUnit.
|
|
14
|
-
*/
|
|
15
|
-
/**
|
|
16
|
-
* Convert a font size to a dynamic font size but impose
|
|
17
|
-
* a maximum font size.
|
|
18
|
-
* @param size - The initial font size including the unit (i.e. px or pt)
|
|
19
|
-
* @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
|
|
20
|
-
* @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
|
|
21
|
-
* convert to a unit other than $baselineUnit.
|
|
22
|
-
*/
|
|
23
|
-
/**
|
|
24
|
-
* Convert a font size to a dynamic font size but impose
|
|
25
|
-
* a minimum font size.
|
|
26
|
-
* @param size - The initial font size including the unit (i.e. px or pt)
|
|
27
|
-
* @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
|
|
28
|
-
* @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
|
|
29
|
-
* convert to a unit other than $baselineUnit.
|
|
30
|
-
*/
|
|
31
|
-
/**
|
|
32
|
-
* Convert a font size to a dynamic font size but impose
|
|
33
|
-
* maximum and minimum font sizes.
|
|
34
|
-
* @param size - The initial font size including the unit (i.e. px or pt)
|
|
35
|
-
* @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
|
|
36
|
-
* @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
|
|
37
|
-
* @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
|
|
38
|
-
* convert to a unit other than $baselineUnit.
|
|
39
|
-
*/
|
|
40
1
|
/**
|
|
41
2
|
* A heuristic that applies CSS to tablet
|
|
42
3
|
* viewports.
|
|
@@ -130,23 +91,12 @@
|
|
|
130
91
|
justify-content: space-between;
|
|
131
92
|
outline: none;
|
|
132
93
|
color: var(--color);
|
|
133
|
-
font-family: var(--ion-font-family, inherit);
|
|
134
94
|
text-align: initial;
|
|
135
95
|
text-decoration: none;
|
|
136
96
|
overflow: hidden;
|
|
137
97
|
box-sizing: border-box;
|
|
138
98
|
}
|
|
139
99
|
|
|
140
|
-
:host(.ion-color) .item-native {
|
|
141
|
-
background: var(--ion-color-base);
|
|
142
|
-
color: var(--ion-color-contrast);
|
|
143
|
-
}
|
|
144
|
-
|
|
145
|
-
:host(.ion-color) .item-native,
|
|
146
|
-
:host(.ion-color) .item-inner {
|
|
147
|
-
border-color: var(--ion-color-shade);
|
|
148
|
-
}
|
|
149
|
-
|
|
150
100
|
:host(.ion-activated) .item-native {
|
|
151
101
|
color: var(--color-activated);
|
|
152
102
|
}
|
|
@@ -155,10 +105,6 @@
|
|
|
155
105
|
opacity: var(--background-activated-opacity);
|
|
156
106
|
}
|
|
157
107
|
|
|
158
|
-
:host(.ion-color.ion-activated) .item-native {
|
|
159
|
-
color: var(--ion-color-contrast);
|
|
160
|
-
}
|
|
161
|
-
|
|
162
108
|
:host(.ion-focused) .item-native {
|
|
163
109
|
color: var(--color-focused);
|
|
164
110
|
}
|
|
@@ -167,13 +113,6 @@
|
|
|
167
113
|
opacity: var(--background-focused-opacity);
|
|
168
114
|
}
|
|
169
115
|
|
|
170
|
-
:host(.ion-color.ion-focused) .item-native {
|
|
171
|
-
color: var(--ion-color-contrast);
|
|
172
|
-
}
|
|
173
|
-
:host(.ion-color.ion-focused) .item-native::after {
|
|
174
|
-
background: var(--ion-color-contrast);
|
|
175
|
-
}
|
|
176
|
-
|
|
177
116
|
@media (any-hover: hover) {
|
|
178
117
|
:host(.ion-activatable:not(.ion-focused):hover) .item-native {
|
|
179
118
|
color: var(--color-hover);
|
|
@@ -182,12 +121,6 @@
|
|
|
182
121
|
background: var(--background-hover);
|
|
183
122
|
opacity: var(--background-hover-opacity);
|
|
184
123
|
}
|
|
185
|
-
:host(.ion-color.ion-activatable:not(.ion-focused):hover) .item-native {
|
|
186
|
-
color: var(--ion-color-contrast);
|
|
187
|
-
}
|
|
188
|
-
:host(.ion-color.ion-activatable:not(.ion-focused):hover) .item-native::after {
|
|
189
|
-
background: var(--ion-color-contrast);
|
|
190
|
-
}
|
|
191
124
|
}
|
|
192
125
|
:host(.item-control-needs-pointer-cursor) {
|
|
193
126
|
cursor: pointer;
|
|
@@ -412,6 +345,100 @@ ion-ripple-effect {
|
|
|
412
345
|
color: var(--ripple-color);
|
|
413
346
|
}
|
|
414
347
|
|
|
348
|
+
/**
|
|
349
|
+
* Convert a pixels given value into rem
|
|
350
|
+
*
|
|
351
|
+
* @param pixels - Value in pixels to be converted (i.e. px)
|
|
352
|
+
* @param context (optional) - Baseline value
|
|
353
|
+
*/
|
|
354
|
+
/**
|
|
355
|
+
* Convert a font size to a dynamic font size.
|
|
356
|
+
* Fonts that participate in Dynamic Type should use
|
|
357
|
+
* dynamic font sizes.
|
|
358
|
+
* @param size - The initial font size including the unit (i.e. px or pt)
|
|
359
|
+
* @param unit (optional) - The unit to convert to. Use this if you want to
|
|
360
|
+
* convert to a unit other than $baselineUnit.
|
|
361
|
+
*/
|
|
362
|
+
/**
|
|
363
|
+
* Convert a font size to a dynamic font size but impose
|
|
364
|
+
* a maximum font size.
|
|
365
|
+
* @param size - The initial font size including the unit (i.e. px or pt)
|
|
366
|
+
* @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
|
|
367
|
+
* @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
|
|
368
|
+
* convert to a unit other than $baselineUnit.
|
|
369
|
+
*/
|
|
370
|
+
/**
|
|
371
|
+
* Convert a font size to a dynamic font size but impose
|
|
372
|
+
* a minimum font size.
|
|
373
|
+
* @param size - The initial font size including the unit (i.e. px or pt)
|
|
374
|
+
* @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
|
|
375
|
+
* @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
|
|
376
|
+
* convert to a unit other than $baselineUnit.
|
|
377
|
+
*/
|
|
378
|
+
/**
|
|
379
|
+
* Convert a font size to a dynamic font size but impose
|
|
380
|
+
* maximum and minimum font sizes.
|
|
381
|
+
* @param size - The initial font size including the unit (i.e. px or pt)
|
|
382
|
+
* @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
|
|
383
|
+
* @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
|
|
384
|
+
* @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
|
|
385
|
+
* convert to a unit other than $baselineUnit.
|
|
386
|
+
*/
|
|
387
|
+
/**
|
|
388
|
+
* A heuristic that applies CSS to tablet
|
|
389
|
+
* viewports.
|
|
390
|
+
*
|
|
391
|
+
* Usage:
|
|
392
|
+
* @include tablet-viewport() {
|
|
393
|
+
* :host {
|
|
394
|
+
* background-color: green;
|
|
395
|
+
* }
|
|
396
|
+
* }
|
|
397
|
+
*/
|
|
398
|
+
/**
|
|
399
|
+
* A heuristic that applies CSS to mobile
|
|
400
|
+
* viewports (i.e. phones, not tablets).
|
|
401
|
+
*
|
|
402
|
+
* Usage:
|
|
403
|
+
* @include mobile-viewport() {
|
|
404
|
+
* :host {
|
|
405
|
+
* background-color: blue;
|
|
406
|
+
* }
|
|
407
|
+
* }
|
|
408
|
+
*/
|
|
409
|
+
:host {
|
|
410
|
+
font-family: var(--ion-font-family, inherit);
|
|
411
|
+
}
|
|
412
|
+
|
|
413
|
+
:host(.ion-color) .item-native {
|
|
414
|
+
background: var(--ion-color-base);
|
|
415
|
+
color: var(--ion-color-contrast);
|
|
416
|
+
}
|
|
417
|
+
|
|
418
|
+
:host(.ion-color) .item-native,
|
|
419
|
+
:host(.ion-color) .item-inner {
|
|
420
|
+
border-color: var(--ion-color-shade);
|
|
421
|
+
}
|
|
422
|
+
|
|
423
|
+
:host(.ion-color.ion-activated) .item-native {
|
|
424
|
+
color: var(--ion-color-contrast);
|
|
425
|
+
}
|
|
426
|
+
|
|
427
|
+
:host(.ion-color.ion-focused) .item-native {
|
|
428
|
+
color: var(--ion-color-contrast);
|
|
429
|
+
}
|
|
430
|
+
:host(.ion-color.ion-focused) .item-native::after {
|
|
431
|
+
background: var(--ion-color-contrast);
|
|
432
|
+
}
|
|
433
|
+
|
|
434
|
+
@media (any-hover: hover) {
|
|
435
|
+
:host(.ion-color.ion-activatable:not(.ion-focused):hover) .item-native {
|
|
436
|
+
color: var(--ion-color-contrast);
|
|
437
|
+
}
|
|
438
|
+
:host(.ion-color.ion-activatable:not(.ion-focused):hover) .item-native::after {
|
|
439
|
+
background: var(--ion-color-contrast);
|
|
440
|
+
}
|
|
441
|
+
}
|
|
415
442
|
/**
|
|
416
443
|
* Convert a pixels given value into rem
|
|
417
444
|
*
|