@ionic/core 8.2.2-dev.11717790867.100c8d5e → 8.2.2-dev.11717796763.1aa87d5c
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 +1 -1
- package/components/ghost-duotone.js +6 -0
- package/components/ion-back-button.js +17 -12
- package/components/ion-searchbar.js +33 -16
- package/components/item.js +1 -1
- package/dist/cjs/ghost-duotone-cd930d5c.js +8 -0
- package/dist/cjs/ion-back-button.cjs.entry.js +17 -12
- package/dist/cjs/ion-checkbox.cjs.entry.js +1 -1
- package/dist/cjs/ion-item_8.cjs.entry.js +1 -1
- package/dist/cjs/ion-searchbar.cjs.entry.js +33 -16
- package/dist/collection/components/back-button/back-button.js +17 -12
- package/dist/collection/components/checkbox/checkbox.ionic.css +204 -92
- package/dist/collection/components/input/input.js +1 -1
- package/dist/collection/components/item/item.ionic.css +0 -32
- package/dist/collection/components/item/test/disabled/item.e2e.js +1 -1
- package/dist/collection/components/item/test/states/item.e2e.js +1 -1
- package/dist/collection/components/nav/nav.js +1 -1
- package/dist/collection/components/router/router.js +2 -2
- package/dist/collection/components/router-outlet/router-outlet.js +1 -1
- package/dist/collection/components/searchbar/searchbar.js +33 -17
- package/dist/collection/index.js +1 -0
- package/dist/docs.json +90 -30
- package/dist/esm/ghost-duotone-157f18b8.js +6 -0
- package/dist/esm/ion-back-button.entry.js +17 -12
- package/dist/esm/ion-checkbox.entry.js +1 -1
- package/dist/esm/ion-item_8.entry.js +1 -1
- package/dist/esm/ion-searchbar.entry.js +33 -16
- package/dist/esm-es5/ghost-duotone-157f18b8.js +4 -0
- package/dist/esm-es5/ion-back-button.entry.js +1 -1
- package/dist/esm-es5/ion-checkbox.entry.js +1 -1
- package/dist/esm-es5/ion-item_8.entry.js +1 -1
- package/dist/esm-es5/ion-searchbar.entry.js +1 -1
- package/dist/html.html-data.json +14 -14
- package/dist/ionic/ionic.esm.js +1 -1
- package/dist/ionic/p-1a5d178f.entry.js +4 -0
- package/dist/ionic/p-22388c4d.entry.js +4 -0
- package/dist/ionic/p-25732faa.system.entry.js +4 -0
- package/dist/ionic/p-2efee8e9.entry.js +4 -0
- package/dist/ionic/p-3c93f058.system.entry.js +4 -0
- package/dist/ionic/p-3df9b7f5.js +4 -0
- package/dist/ionic/p-5436c152.system.entry.js +4 -0
- package/dist/ionic/p-5b5f7a34.entry.js +4 -0
- package/dist/ionic/p-7b590e46.system.js +1 -1
- package/dist/ionic/p-b8ce15f6.system.entry.js +4 -0
- package/dist/ionic/p-c859a8da.system.js +4 -0
- package/dist/types/index.d.ts +1 -0
- package/dist/types/utils/platform.d.ts +2 -2
- package/hydrate/index.js +52 -30
- package/package.json +2 -1
- package/dist/ionic/p-12c07c03.system.entry.js +0 -4
- package/dist/ionic/p-1745dc66.system.entry.js +0 -4
- package/dist/ionic/p-2fdc82b4.entry.js +0 -4
- package/dist/ionic/p-3c6eae03.system.entry.js +0 -4
- package/dist/ionic/p-89efe86f.entry.js +0 -4
- package/dist/ionic/p-cce8c245.entry.js +0 -4
- package/dist/ionic/p-cdc9a11c.system.entry.js +0 -4
- package/dist/ionic/p-eb72562c.entry.js +0 -4
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* (C) Ionic http://ionicframework.com - MIT License
|
|
3
3
|
*/
|
|
4
|
+
import ghostDuotone from "@phosphor-icons/core/assets/duotone/ghost-duotone.svg";
|
|
4
5
|
import { Host, h } from "@stencil/core";
|
|
5
6
|
import { inheritAriaAttributes } from "../../utils/helpers";
|
|
6
7
|
import { createColorClasses, hostContext, openURL } from "../../utils/theme";
|
|
@@ -41,17 +42,21 @@ export class BackButton {
|
|
|
41
42
|
}
|
|
42
43
|
}
|
|
43
44
|
get backButtonIcon() {
|
|
44
|
-
|
|
45
|
-
if (icon
|
|
46
|
-
|
|
47
|
-
return icon;
|
|
45
|
+
// Return the icon if it is explicitly set
|
|
46
|
+
if (this.icon) {
|
|
47
|
+
return this.icon;
|
|
48
48
|
}
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
49
|
+
// Determine the theme and map to default icons
|
|
50
|
+
const theme = getIonTheme(this);
|
|
51
|
+
const defaultIcons = {
|
|
52
|
+
ios: chevronBack,
|
|
53
|
+
ionic: ghostDuotone,
|
|
54
|
+
md: arrowBackSharp,
|
|
55
|
+
};
|
|
56
|
+
// Get the default icon based on the theme, falling back to 'md' icon if necessary
|
|
57
|
+
const defaultIcon = defaultIcons[theme] || defaultIcons.md;
|
|
58
|
+
// Return the configured back button icon or the default icon
|
|
59
|
+
return config.get('backButtonIcon', defaultIcon);
|
|
55
60
|
}
|
|
56
61
|
get backButtonText() {
|
|
57
62
|
const defaultBackButtonText = getIonTheme(this) === 'ios' ? 'Back' : null;
|
|
@@ -73,7 +78,7 @@ export class BackButton {
|
|
|
73
78
|
const showBackButton = defaultHref !== undefined;
|
|
74
79
|
const theme = getIonTheme(this);
|
|
75
80
|
const ariaLabel = inheritedAttributes['aria-label'] || backButtonText || 'back';
|
|
76
|
-
return (h(Host, { key: '
|
|
81
|
+
return (h(Host, { key: '2312557fad91c04bc77bc79feb55dc83e7820429', onClick: this.onClick, class: createColorClasses(color, {
|
|
77
82
|
[theme]: true,
|
|
78
83
|
button: true, // ion-buttons target .button
|
|
79
84
|
'back-button-disabled': disabled,
|
|
@@ -83,7 +88,7 @@ export class BackButton {
|
|
|
83
88
|
'ion-activatable': true,
|
|
84
89
|
'ion-focusable': true,
|
|
85
90
|
'show-back-button': showBackButton,
|
|
86
|
-
}) }, h("button", { key: '
|
|
91
|
+
}) }, h("button", { key: '309ba8ef79ac364a065a69aa9df9980b0acc9ce0', type: type, disabled: disabled, class: "button-native", part: "native", "aria-label": ariaLabel }, h("span", { key: 'c1aabce609fd6a6d4474bd2a76a011c461b5f5f8', class: "button-inner" }, backButtonIcon && (h("ion-icon", { key: 'f372b3d13faaa5c2e2f5b1a6c4468c708176cf27', part: "icon", icon: backButtonIcon, "aria-hidden": "true", lazy: false, "flip-rtl": icon === undefined })), backButtonText && (h("span", { key: '4cfa2579dbb36b85cfd30a17ab2c93fdeef621dc', part: "text", "aria-hidden": "true", class: "button-text" }, backButtonText))), theme === 'md' && h("ion-ripple-effect", { key: '1a18479d6c3130cf19188f1422639f953724c913', type: this.rippleType }))));
|
|
87
92
|
}
|
|
88
93
|
static get is() { return "ion-back-button"; }
|
|
89
94
|
static get encapsulation() { return "shadow"; }
|
|
@@ -4,32 +4,6 @@
|
|
|
4
4
|
* @param pixels - Value in pixels to be converted (i.e. px)
|
|
5
5
|
* @param context (optional) - Baseline value
|
|
6
6
|
*/
|
|
7
|
-
/**
|
|
8
|
-
* This is an auto-generated file, please do not change it directly.
|
|
9
|
-
* Ionic Design System
|
|
10
|
-
*/
|
|
11
|
-
/**
|
|
12
|
-
* A heuristic that applies CSS to tablet
|
|
13
|
-
* viewports.
|
|
14
|
-
*
|
|
15
|
-
* Usage:
|
|
16
|
-
* @include tablet-viewport() {
|
|
17
|
-
* :host {
|
|
18
|
-
* background-color: green;
|
|
19
|
-
* }
|
|
20
|
-
* }
|
|
21
|
-
*/
|
|
22
|
-
/**
|
|
23
|
-
* A heuristic that applies CSS to mobile
|
|
24
|
-
* viewports (i.e. phones, not tablets).
|
|
25
|
-
*
|
|
26
|
-
* Usage:
|
|
27
|
-
* @include mobile-viewport() {
|
|
28
|
-
* :host {
|
|
29
|
-
* background-color: blue;
|
|
30
|
-
* }
|
|
31
|
-
* }
|
|
32
|
-
*/
|
|
33
7
|
/**
|
|
34
8
|
* Convert a font size to a dynamic font size.
|
|
35
9
|
* Fonts that participate in Dynamic Type should use
|
|
@@ -63,18 +37,49 @@
|
|
|
63
37
|
* @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
|
|
64
38
|
* convert to a unit other than $baselineUnit.
|
|
65
39
|
*/
|
|
40
|
+
/**
|
|
41
|
+
* A heuristic that applies CSS to tablet
|
|
42
|
+
* viewports.
|
|
43
|
+
*
|
|
44
|
+
* Usage:
|
|
45
|
+
* @include tablet-viewport() {
|
|
46
|
+
* :host {
|
|
47
|
+
* background-color: green;
|
|
48
|
+
* }
|
|
49
|
+
* }
|
|
50
|
+
*/
|
|
51
|
+
/**
|
|
52
|
+
* A heuristic that applies CSS to mobile
|
|
53
|
+
* viewports (i.e. phones, not tablets).
|
|
54
|
+
*
|
|
55
|
+
* Usage:
|
|
56
|
+
* @include mobile-viewport() {
|
|
57
|
+
* :host {
|
|
58
|
+
* background-color: blue;
|
|
59
|
+
* }
|
|
60
|
+
* }
|
|
61
|
+
*/
|
|
66
62
|
:host {
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
63
|
+
/**
|
|
64
|
+
* @prop --size: Size of the checkbox icon
|
|
65
|
+
*
|
|
66
|
+
* @prop --checkbox-background: Background of the checkbox icon
|
|
67
|
+
* @prop --checkbox-background-checked: Background of the checkbox icon when checked
|
|
68
|
+
*
|
|
69
|
+
* @prop --border-color: Border color of the checkbox icon
|
|
70
|
+
* @prop --border-radius: Border radius of the checkbox icon
|
|
71
|
+
* @prop --border-width: Border width of the checkbox icon
|
|
72
|
+
* @prop --border-style: Border style of the checkbox icon
|
|
73
|
+
* @prop --border-color-checked: Border color of the checkbox icon when checked
|
|
74
|
+
*
|
|
75
|
+
* @prop --transition: Transition of the checkbox icon
|
|
76
|
+
*
|
|
77
|
+
* @prop --checkmark-color: Color of the checkbox checkmark when checked
|
|
78
|
+
* @prop --checkmark-width: Stroke width of the checkbox checkmark
|
|
79
|
+
*/
|
|
80
|
+
--checkbox-background-checked: var(--ion-color-primary, #0054e9);
|
|
81
|
+
--border-color-checked: var(--ion-color-primary, #0054e9);
|
|
82
|
+
--checkmark-color: var(--ion-color-primary-contrast, #fff);
|
|
78
83
|
--transition: none;
|
|
79
84
|
display: inline-block;
|
|
80
85
|
position: relative;
|
|
@@ -82,21 +87,6 @@
|
|
|
82
87
|
user-select: none;
|
|
83
88
|
z-index: 2;
|
|
84
89
|
}
|
|
85
|
-
:host::after {
|
|
86
|
-
right: 0;
|
|
87
|
-
left: 0;
|
|
88
|
-
top: 50%;
|
|
89
|
-
position: absolute;
|
|
90
|
-
height: 100%;
|
|
91
|
-
min-height: var(--ionic-scale-1200, 48px);
|
|
92
|
-
transform: translateY(-50%);
|
|
93
|
-
content: "";
|
|
94
|
-
cursor: pointer;
|
|
95
|
-
z-index: 1;
|
|
96
|
-
}
|
|
97
|
-
:host .native-wrapper {
|
|
98
|
-
position: relative;
|
|
99
|
-
}
|
|
100
90
|
|
|
101
91
|
:host(.in-item) {
|
|
102
92
|
flex: 1 1 0;
|
|
@@ -116,6 +106,12 @@
|
|
|
116
106
|
width: auto;
|
|
117
107
|
}
|
|
118
108
|
|
|
109
|
+
:host(.ion-color) {
|
|
110
|
+
--checkbox-background-checked: var(--ion-color-base);
|
|
111
|
+
--border-color-checked: var(--ion-color-base);
|
|
112
|
+
--checkmark-color: var(--ion-color-contrast);
|
|
113
|
+
}
|
|
114
|
+
|
|
119
115
|
.checkbox-wrapper {
|
|
120
116
|
display: flex;
|
|
121
117
|
flex-grow: 1;
|
|
@@ -131,17 +127,17 @@
|
|
|
131
127
|
}
|
|
132
128
|
|
|
133
129
|
:host(.in-item) .label-text-wrapper {
|
|
134
|
-
margin-top:
|
|
135
|
-
margin-bottom:
|
|
130
|
+
margin-top: 10px;
|
|
131
|
+
margin-bottom: 10px;
|
|
136
132
|
}
|
|
137
133
|
|
|
138
134
|
:host(.in-item.checkbox-label-placement-stacked) .label-text-wrapper {
|
|
139
|
-
margin-top:
|
|
140
|
-
margin-bottom:
|
|
135
|
+
margin-top: 10px;
|
|
136
|
+
margin-bottom: 16px;
|
|
141
137
|
}
|
|
142
138
|
|
|
143
139
|
:host(.in-item.checkbox-label-placement-stacked) .native-wrapper {
|
|
144
|
-
margin-bottom:
|
|
140
|
+
margin-bottom: 10px;
|
|
145
141
|
}
|
|
146
142
|
|
|
147
143
|
/**
|
|
@@ -233,8 +229,8 @@ input {
|
|
|
233
229
|
*/
|
|
234
230
|
-webkit-margin-start: 0;
|
|
235
231
|
margin-inline-start: 0;
|
|
236
|
-
-webkit-margin-end:
|
|
237
|
-
margin-inline-end:
|
|
232
|
+
-webkit-margin-end: 16px;
|
|
233
|
+
margin-inline-end: 16px;
|
|
238
234
|
}
|
|
239
235
|
|
|
240
236
|
/**
|
|
@@ -251,8 +247,8 @@ input {
|
|
|
251
247
|
* when the label sits at the end.
|
|
252
248
|
*/
|
|
253
249
|
:host(.checkbox-label-placement-end) .label-text-wrapper {
|
|
254
|
-
-webkit-margin-start:
|
|
255
|
-
margin-inline-start:
|
|
250
|
+
-webkit-margin-start: 16px;
|
|
251
|
+
margin-inline-start: 16px;
|
|
256
252
|
-webkit-margin-end: 0;
|
|
257
253
|
margin-inline-end: 0;
|
|
258
254
|
}
|
|
@@ -265,8 +261,8 @@ input {
|
|
|
265
261
|
*/
|
|
266
262
|
-webkit-margin-start: 0;
|
|
267
263
|
margin-inline-start: 0;
|
|
268
|
-
-webkit-margin-end:
|
|
269
|
-
margin-inline-end:
|
|
264
|
+
-webkit-margin-end: 16px;
|
|
265
|
+
margin-inline-end: 16px;
|
|
270
266
|
}
|
|
271
267
|
|
|
272
268
|
/**
|
|
@@ -296,16 +292,38 @@ input {
|
|
|
296
292
|
*/
|
|
297
293
|
margin-left: 0;
|
|
298
294
|
margin-right: 0;
|
|
299
|
-
margin-bottom:
|
|
295
|
+
margin-bottom: 16px;
|
|
300
296
|
/**
|
|
301
297
|
* Label text should not extend
|
|
302
298
|
* beyond the bounds of the checkbox.
|
|
303
299
|
*/
|
|
304
|
-
max-width:
|
|
300
|
+
max-width: calc(100% / 0.75);
|
|
305
301
|
}
|
|
306
302
|
|
|
307
|
-
:host(.checkbox-
|
|
308
|
-
|
|
303
|
+
:host(.checkbox-label-placement-stacked.checkbox-alignment-start) .label-text-wrapper {
|
|
304
|
+
transform-origin: left top;
|
|
305
|
+
}
|
|
306
|
+
:host-context([dir=rtl]):host(.checkbox-label-placement-stacked.checkbox-alignment-start) .label-text-wrapper, :host-context([dir=rtl]).checkbox-label-placement-stacked.checkbox-alignment-start .label-text-wrapper {
|
|
307
|
+
transform-origin: right top;
|
|
308
|
+
}
|
|
309
|
+
|
|
310
|
+
@supports selector(:dir(rtl)) {
|
|
311
|
+
:host(.checkbox-label-placement-stacked.checkbox-alignment-start:dir(rtl)) .label-text-wrapper {
|
|
312
|
+
transform-origin: right top;
|
|
313
|
+
}
|
|
314
|
+
}
|
|
315
|
+
|
|
316
|
+
:host(.checkbox-label-placement-stacked.checkbox-alignment-center) .label-text-wrapper {
|
|
317
|
+
transform-origin: center top;
|
|
318
|
+
}
|
|
319
|
+
:host-context([dir=rtl]):host(.checkbox-label-placement-stacked.checkbox-alignment-center) .label-text-wrapper, :host-context([dir=rtl]).checkbox-label-placement-stacked.checkbox-alignment-center .label-text-wrapper {
|
|
320
|
+
transform-origin: calc(100% - center) top;
|
|
321
|
+
}
|
|
322
|
+
|
|
323
|
+
@supports selector(:dir(rtl)) {
|
|
324
|
+
:host(.checkbox-label-placement-stacked.checkbox-alignment-center:dir(rtl)) .label-text-wrapper {
|
|
325
|
+
transform-origin: calc(100% - center) top;
|
|
326
|
+
}
|
|
309
327
|
}
|
|
310
328
|
|
|
311
329
|
:host(.checkbox-checked) .checkbox-icon,
|
|
@@ -319,68 +337,162 @@ input {
|
|
|
319
337
|
opacity: 1;
|
|
320
338
|
}
|
|
321
339
|
|
|
322
|
-
:host(.
|
|
323
|
-
|
|
340
|
+
:host(.checkbox-disabled) {
|
|
341
|
+
pointer-events: none;
|
|
324
342
|
}
|
|
325
|
-
|
|
326
|
-
|
|
343
|
+
|
|
344
|
+
/**
|
|
345
|
+
* Convert a pixels given value into rem
|
|
346
|
+
*
|
|
347
|
+
* @param pixels - Value in pixels to be converted (i.e. px)
|
|
348
|
+
* @param context (optional) - Baseline value
|
|
349
|
+
*/
|
|
350
|
+
/**
|
|
351
|
+
* Convert a font size to a dynamic font size.
|
|
352
|
+
* Fonts that participate in Dynamic Type should use
|
|
353
|
+
* dynamic font sizes.
|
|
354
|
+
* @param size - The initial font size including the unit (i.e. px or pt)
|
|
355
|
+
* @param unit (optional) - The unit to convert to. Use this if you want to
|
|
356
|
+
* convert to a unit other than $baselineUnit.
|
|
357
|
+
*/
|
|
358
|
+
/**
|
|
359
|
+
* Convert a font size to a dynamic font size but impose
|
|
360
|
+
* a maximum font size.
|
|
361
|
+
* @param size - The initial font size including the unit (i.e. px or pt)
|
|
362
|
+
* @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
|
|
363
|
+
* @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
|
|
364
|
+
* convert to a unit other than $baselineUnit.
|
|
365
|
+
*/
|
|
366
|
+
/**
|
|
367
|
+
* Convert a font size to a dynamic font size but impose
|
|
368
|
+
* a minimum font size.
|
|
369
|
+
* @param size - The initial font size including the unit (i.e. px or pt)
|
|
370
|
+
* @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
|
|
371
|
+
* @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
|
|
372
|
+
* convert to a unit other than $baselineUnit.
|
|
373
|
+
*/
|
|
374
|
+
/**
|
|
375
|
+
* Convert a font size to a dynamic font size but impose
|
|
376
|
+
* maximum and minimum font sizes.
|
|
377
|
+
* @param size - The initial font size including the unit (i.e. px or pt)
|
|
378
|
+
* @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
|
|
379
|
+
* @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
|
|
380
|
+
* @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
|
|
381
|
+
* convert to a unit other than $baselineUnit.
|
|
382
|
+
*/
|
|
383
|
+
/**
|
|
384
|
+
* A heuristic that applies CSS to tablet
|
|
385
|
+
* viewports.
|
|
386
|
+
*
|
|
387
|
+
* Usage:
|
|
388
|
+
* @include tablet-viewport() {
|
|
389
|
+
* :host {
|
|
390
|
+
* background-color: green;
|
|
391
|
+
* }
|
|
392
|
+
* }
|
|
393
|
+
*/
|
|
394
|
+
/**
|
|
395
|
+
* A heuristic that applies CSS to mobile
|
|
396
|
+
* viewports (i.e. phones, not tablets).
|
|
397
|
+
*
|
|
398
|
+
* Usage:
|
|
399
|
+
* @include mobile-viewport() {
|
|
400
|
+
* :host {
|
|
401
|
+
* background-color: blue;
|
|
402
|
+
* }
|
|
403
|
+
* }
|
|
404
|
+
*/
|
|
405
|
+
/* Rectangular */
|
|
406
|
+
:host {
|
|
407
|
+
--border-radius: calc(var(--size) / 4 - 2px);
|
|
408
|
+
--border-width: 1px;
|
|
409
|
+
--border-style: solid;
|
|
410
|
+
--border-color: var(--ion-color-step-400, var(--ion-background-color-step-400, #999999));
|
|
411
|
+
--checkmark-width: 3;
|
|
412
|
+
--focus-ring-color: #9ec4fd;
|
|
413
|
+
--focus-ring-width: 2px;
|
|
414
|
+
--focus-ring-offset: 2px;
|
|
415
|
+
--size: 24px;
|
|
416
|
+
}
|
|
417
|
+
:host::after {
|
|
418
|
+
right: 0;
|
|
419
|
+
left: 0;
|
|
420
|
+
top: 50%;
|
|
421
|
+
position: absolute;
|
|
422
|
+
height: 100%;
|
|
423
|
+
min-height: 48px;
|
|
424
|
+
transform: translateY(-50%);
|
|
425
|
+
content: "";
|
|
426
|
+
cursor: pointer;
|
|
427
|
+
z-index: 1;
|
|
428
|
+
}
|
|
429
|
+
:host .native-wrapper {
|
|
430
|
+
position: relative;
|
|
327
431
|
}
|
|
328
432
|
|
|
329
|
-
:host(.checkbox-
|
|
330
|
-
|
|
433
|
+
:host(.checkbox-size-small) {
|
|
434
|
+
--size: 16px;
|
|
435
|
+
}
|
|
436
|
+
|
|
437
|
+
:host(.ion-invalid) {
|
|
438
|
+
--focus-ring-color: #ffafaf;
|
|
439
|
+
}
|
|
440
|
+
:host(.ion-invalid) .checkbox-icon {
|
|
441
|
+
border-color: #f72c2c;
|
|
331
442
|
}
|
|
332
443
|
|
|
333
444
|
:host(.checkbox-disabled.checkbox-indeterminate) .checkbox-icon {
|
|
334
|
-
|
|
335
|
-
|
|
445
|
+
/* TODO(FW-6183): Use design token variables */
|
|
446
|
+
border-width: 0;
|
|
447
|
+
background-color: var(--ion-color-step-600, var(--ion-background-color-step-600, #666666));
|
|
336
448
|
}
|
|
337
449
|
|
|
338
450
|
:host(.checkbox-disabled) .checkbox-icon {
|
|
339
|
-
|
|
340
|
-
|
|
451
|
+
/* TODO(FW-6183): Use design token variables */
|
|
452
|
+
border-color: #c9c9c9;
|
|
453
|
+
background-color: #f5f5f5;
|
|
341
454
|
}
|
|
342
455
|
|
|
343
456
|
:host(.checkbox-disabled.checkbox-checked) .checkbox-icon {
|
|
344
|
-
border-width:
|
|
345
|
-
background-color: var(--
|
|
346
|
-
opacity: 0.6;
|
|
457
|
+
border-width: 0;
|
|
458
|
+
background-color: var(--ion-color-step-100, var(--ion-background-color-step-100, #e6e6e6));
|
|
347
459
|
}
|
|
348
460
|
|
|
349
461
|
@media (any-hover: hover) {
|
|
350
462
|
:host(:hover) .checkbox-icon {
|
|
351
|
-
|
|
463
|
+
/* TODO(FW-6183): Use design token variables */
|
|
464
|
+
background-color: #ececec;
|
|
352
465
|
}
|
|
353
466
|
:host(:hover.checkbox-checked) .checkbox-icon,
|
|
354
467
|
:host(:hover.checkbox-indeterminate) .checkbox-icon {
|
|
355
|
-
|
|
468
|
+
/* TODO(FW-6183): Use design token variables */
|
|
469
|
+
background-color: #1061da;
|
|
356
470
|
}
|
|
357
471
|
}
|
|
358
472
|
:host(.ion-focused:not(.checkbox-disabled)) .checkbox-icon {
|
|
359
|
-
outline: var(--focus-ring-width)
|
|
473
|
+
outline: var(--focus-ring-width) solid var(--focus-ring-color);
|
|
360
474
|
outline-offset: var(--focus-ring-offset);
|
|
361
475
|
}
|
|
362
476
|
|
|
363
477
|
:host(.ion-activated) .checkbox-icon {
|
|
364
|
-
|
|
478
|
+
/* TODO(FW-6183): Use design token variables */
|
|
479
|
+
background-color: #e3e3e3;
|
|
365
480
|
}
|
|
366
481
|
|
|
367
482
|
:host(.ion-activated.checkbox-checked) .checkbox-icon,
|
|
368
483
|
:host(.ion-activated.checkbox-indeterminate) .checkbox-icon {
|
|
369
|
-
|
|
484
|
+
/* TODO(FW-6183): Use design token variables */
|
|
485
|
+
background-color: #105ed1;
|
|
370
486
|
}
|
|
371
487
|
|
|
372
488
|
:host(.checkbox-shape-soft) {
|
|
373
|
-
--border-radius: var(--
|
|
374
|
-
}
|
|
375
|
-
|
|
376
|
-
:host(.checkbox-size-small.checkbox-shape-soft) {
|
|
377
|
-
--border-radius: var(--ionic-border-radius-050, 2px);
|
|
489
|
+
--border-radius: calc(var(--size) / 4 - 2px);
|
|
378
490
|
}
|
|
379
491
|
|
|
380
492
|
:host(.checkbox-shape-rectangular) {
|
|
381
|
-
--border-radius:
|
|
493
|
+
--border-radius: 0;
|
|
382
494
|
}
|
|
383
495
|
|
|
384
496
|
.checkbox-wrapper {
|
|
385
|
-
min-height:
|
|
497
|
+
min-height: 48px;
|
|
386
498
|
}
|
|
@@ -569,7 +569,7 @@ export class Input {
|
|
|
569
569
|
"mutable": false,
|
|
570
570
|
"complexType": {
|
|
571
571
|
"original": "AutocompleteTypes",
|
|
572
|
-
"resolved": "\"name\" | \"email\" | \"
|
|
572
|
+
"resolved": "\"name\" | \"email\" | \"country\" | \"on\" | \"off\" | \"tel\" | \"url\" | \"honorific-prefix\" | \"given-name\" | \"additional-name\" | \"family-name\" | \"honorific-suffix\" | \"nickname\" | \"username\" | \"new-password\" | \"current-password\" | \"one-time-code\" | \"organization-title\" | \"organization\" | \"street-address\" | \"address-line1\" | \"address-line2\" | \"address-line3\" | \"address-level4\" | \"address-level3\" | \"address-level2\" | \"address-level1\" | \"country-name\" | \"postal-code\" | \"cc-name\" | \"cc-given-name\" | \"cc-additional-name\" | \"cc-family-name\" | \"cc-number\" | \"cc-exp\" | \"cc-exp-month\" | \"cc-exp-year\" | \"cc-csc\" | \"cc-type\" | \"transaction-currency\" | \"transaction-amount\" | \"language\" | \"bday\" | \"bday-day\" | \"bday-month\" | \"bday-year\" | \"sex\" | \"tel-country-code\" | \"tel-national\" | \"tel-area-code\" | \"tel-local\" | \"tel-extension\" | \"impp\" | \"photo\"",
|
|
573
573
|
"references": {
|
|
574
574
|
"AutocompleteTypes": {
|
|
575
575
|
"location": "import",
|
|
@@ -66,7 +66,6 @@
|
|
|
66
66
|
:host {
|
|
67
67
|
/**
|
|
68
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
69
|
*
|
|
71
70
|
* @prop --border-color: Color of the item border
|
|
72
71
|
* @prop --border-style: Style of the item border
|
|
@@ -81,7 +80,6 @@
|
|
|
81
80
|
*
|
|
82
81
|
*/
|
|
83
82
|
--background: var(--ionic-color-base-white, #ffffff);
|
|
84
|
-
--background-activated: var(--ionic-color-neutral-200, #e7e7e7);
|
|
85
83
|
--border-color: var(--ionic-color-neutral-300, #cfcfcf);
|
|
86
84
|
--border-style: var(--ionic-border-style-solid, solid);
|
|
87
85
|
--border-width: var(--ionic-border-size-025, 1px);
|
|
@@ -136,34 +134,4 @@
|
|
|
136
134
|
flex: 1;
|
|
137
135
|
overflow: inherit;
|
|
138
136
|
box-sizing: border-box;
|
|
139
|
-
}
|
|
140
|
-
|
|
141
|
-
:host(.item-disabled) {
|
|
142
|
-
cursor: default;
|
|
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: "";
|
|
153
|
-
}
|
|
154
|
-
|
|
155
|
-
:host(.ion-activated) .item-native {
|
|
156
|
-
background: var(--background-activated);
|
|
157
|
-
}
|
|
158
|
-
|
|
159
|
-
:host(.ion-focused) .item-native::after {
|
|
160
|
-
right: 0;
|
|
161
|
-
left: 0;
|
|
162
|
-
top: 0;
|
|
163
|
-
bottom: 0;
|
|
164
|
-
position: absolute;
|
|
165
|
-
border-width: var(--ionic-border-size-050, 2px);
|
|
166
|
-
border-style: var(--ionic-border-style-solid, solid);
|
|
167
|
-
border-color: var(--ionic-state-focus-1, #9ec4fd);
|
|
168
|
-
content: "";
|
|
169
137
|
}
|
|
@@ -6,7 +6,7 @@ import { configs, test } from "../../../../utils/test/playwright/index";
|
|
|
6
6
|
/**
|
|
7
7
|
* This behavior does not vary across directions
|
|
8
8
|
*/
|
|
9
|
-
configs({
|
|
9
|
+
configs({ directions: ['ltr'] }).forEach(({ title, screenshot, config }) => {
|
|
10
10
|
test.describe(title('item: disabled state'), () => {
|
|
11
11
|
test('should not have visual regressions', async ({ page }) => {
|
|
12
12
|
await page.goto(`/src/components/item/test/disabled`, config);
|
|
@@ -6,7 +6,7 @@ import { configs, test } from "../../../../utils/test/playwright/index";
|
|
|
6
6
|
/**
|
|
7
7
|
* This behavior does not vary across directions
|
|
8
8
|
*/
|
|
9
|
-
configs({
|
|
9
|
+
configs({ directions: ['ltr'] }).forEach(({ title, screenshot, config }) => {
|
|
10
10
|
test.describe(title('item: states'), () => {
|
|
11
11
|
test('should not have visual regressions', async ({ page }) => {
|
|
12
12
|
await page.goto(`/src/components/item/test/states`, config);
|
|
@@ -1576,7 +1576,7 @@ export class Nav {
|
|
|
1576
1576
|
"docs": "The component params."
|
|
1577
1577
|
}, {
|
|
1578
1578
|
"name": "direction",
|
|
1579
|
-
"type": "\"root\" | \"
|
|
1579
|
+
"type": "\"root\" | \"forward\" | \"back\"",
|
|
1580
1580
|
"docs": "A direction hint."
|
|
1581
1581
|
}, {
|
|
1582
1582
|
"name": "animation",
|
|
@@ -387,7 +387,7 @@ export class Router {
|
|
|
387
387
|
"docs": "The path to navigate to."
|
|
388
388
|
}, {
|
|
389
389
|
"name": "direction",
|
|
390
|
-
"type": "\"root\" | \"
|
|
390
|
+
"type": "\"root\" | \"forward\" | \"back\"",
|
|
391
391
|
"docs": "The direction of the animation. Defaults to `\"forward\"`."
|
|
392
392
|
}, {
|
|
393
393
|
"name": "animation",
|
|
@@ -465,7 +465,7 @@ export class Router {
|
|
|
465
465
|
"signature": "(direction: RouterDirection) => Promise<boolean>",
|
|
466
466
|
"parameters": [{
|
|
467
467
|
"name": "direction",
|
|
468
|
-
"type": "\"root\" | \"
|
|
468
|
+
"type": "\"root\" | \"forward\" | \"back\"",
|
|
469
469
|
"docs": ""
|
|
470
470
|
}],
|
|
471
471
|
"references": {
|