@ionic/core 7.5.8-dev.11701806358.1ca1b519 → 7.5.8-dev.11701894917.1c1465bd

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.
Files changed (196) hide show
  1. package/components/data.js +1 -1
  2. package/components/ion-datetime.js +30 -39
  3. package/components/ion-picker-column-internal.d.ts +11 -0
  4. package/components/ion-picker-column-internal.js +9 -0
  5. package/components/ion-picker-column.js +2 -2
  6. package/components/{ion-picker-legacy.d.ts → ion-picker-internal.d.ts} +4 -4
  7. package/components/ion-picker-internal.js +9 -0
  8. package/components/ion-picker.js +309 -1
  9. package/components/overlays.js +3 -6
  10. package/components/picker-column-internal.js +390 -0
  11. package/components/picker-column.js +317 -363
  12. package/components/{picker.js → picker-internal.js} +16 -16
  13. package/dist/cjs/{data-e7526b58.js → data-36b9094e.js} +1 -1
  14. package/dist/cjs/index.cjs.js +1 -1
  15. package/dist/cjs/ion-action-sheet.cjs.entry.js +1 -1
  16. package/dist/cjs/ion-alert.cjs.entry.js +1 -1
  17. package/dist/cjs/ion-datetime-button.cjs.entry.js +1 -1
  18. package/dist/cjs/ion-datetime_3.cjs.entry.js +35 -29
  19. package/dist/cjs/ion-loading.cjs.entry.js +1 -1
  20. package/dist/cjs/ion-menu_3.cjs.entry.js +1 -1
  21. package/dist/cjs/ion-modal.cjs.entry.js +1 -1
  22. package/dist/cjs/{ion-picker-column.cjs.entry.js → ion-picker-column-internal.cjs.entry.js} +72 -105
  23. package/dist/cjs/{ion-picker.cjs.entry.js → ion-picker-internal.cjs.entry.js} +13 -13
  24. package/dist/cjs/ion-popover.cjs.entry.js +1 -1
  25. package/dist/cjs/ion-select_3.cjs.entry.js +1 -1
  26. package/dist/cjs/ion-toast.cjs.entry.js +1 -1
  27. package/dist/cjs/ionic.cjs.js +1 -1
  28. package/dist/cjs/loader.cjs.js +1 -1
  29. package/dist/cjs/{overlays-e8e05b0e.js → overlays-2c6b1072.js} +3 -6
  30. package/dist/collection/collection-manifest.json +6 -7
  31. package/dist/collection/components/datetime/datetime.ios.css +13 -0
  32. package/dist/collection/components/datetime/datetime.js +16 -19
  33. package/dist/collection/components/datetime/datetime.md.css +13 -0
  34. package/dist/collection/components/datetime/test/datetime.e2e.js +2 -2
  35. package/dist/collection/components/datetime/test/disabled/datetime.spec.js +4 -4
  36. package/dist/collection/components/datetime/test/locale/datetime.e2e.js +2 -2
  37. package/dist/collection/components/datetime/test/minmax/datetime.e2e.js +6 -6
  38. package/dist/collection/components/datetime/test/prefer-wheel/datetime.e2e.js +41 -43
  39. package/dist/collection/components/datetime/test/presentation/datetime.e2e.js +1 -1
  40. package/dist/collection/components/datetime/test/readonly/datetime.e2e.js +2 -2
  41. package/dist/collection/components/datetime/test/values/datetime.e2e.js +12 -15
  42. package/dist/collection/components/datetime/utils/data.js +1 -1
  43. package/dist/collection/components/picker/picker.ios.css +205 -100
  44. package/dist/collection/components/picker/picker.js +743 -461
  45. package/dist/collection/components/picker/picker.md.css +194 -98
  46. package/dist/collection/components/picker/test/basic/picker.e2e.js +13 -99
  47. package/dist/collection/components/{picker-legacy → picker}/test/is-open/picker.e2e.js +4 -4
  48. package/dist/collection/components/{picker-legacy → picker}/test/picker-id.spec.js +5 -5
  49. package/dist/collection/components/{picker-legacy → picker}/test/trigger/picker.e2e.js +1 -1
  50. package/dist/collection/components/picker-column/picker-column.ios.css +160 -120
  51. package/dist/collection/components/picker-column/picker-column.js +329 -514
  52. package/dist/collection/components/picker-column/picker-column.md.css +107 -134
  53. package/dist/collection/components/{picker-legacy-column → picker-column}/test/picker-column-aria.spec.js +3 -3
  54. package/dist/collection/components/{picker-legacy-column → picker-column}/test/picker-column-dynamic.spec.js +2 -2
  55. package/dist/collection/components/{picker-legacy-column → picker-column}/test/picker-column.spec.js +2 -2
  56. package/dist/collection/components/{picker-legacy-column → picker-column}/test/standalone/picker-column.e2e.js +3 -3
  57. package/dist/collection/components/{picker-column-option/picker-column-option.md.css → picker-column-internal/picker-column-internal.ios.css} +53 -6
  58. package/dist/collection/components/picker-column-internal/picker-column-internal.js +565 -0
  59. package/dist/collection/components/{picker-legacy-column/picker-column.md.css → picker-column-internal/picker-column-internal.md.css} +63 -113
  60. package/dist/collection/components/{picker-column/test/basic/picker-column.e2e.js → picker-column-internal/test/basic/picker-column-internal.e2e.js} +8 -8
  61. package/dist/collection/components/picker-column-internal/test/disabled/picker-column-internal.e2e.js +162 -0
  62. package/dist/collection/components/{picker-legacy/picker.md.css → picker-internal/picker-internal.ios.css} +100 -192
  63. package/dist/collection/components/picker-internal/picker-internal.js +544 -0
  64. package/dist/collection/components/{picker-legacy-column/picker-column.ios.css → picker-internal/picker-internal.md.css} +101 -98
  65. package/dist/collection/components/{picker/test/a11y/picker.e2e.js → picker-internal/test/a11y/picker-internal.e2e.js} +2 -2
  66. package/dist/collection/components/picker-internal/test/basic/picker-internal.e2e.js +118 -0
  67. package/dist/collection/components/{picker/test/keyboard-entry/picker.e2e.js → picker-internal/test/keyboard-entry/picker-internal.e2e.js} +22 -23
  68. package/dist/collection/utils/overlays.js +3 -6
  69. package/dist/docs.json +23 -487
  70. package/dist/esm/{data-4b9508c9.js → data-f5c75b4e.js} +1 -1
  71. package/dist/esm/index.js +1 -1
  72. package/dist/esm/ion-action-sheet.entry.js +1 -1
  73. package/dist/esm/ion-alert.entry.js +1 -1
  74. package/dist/esm/ion-datetime-button.entry.js +1 -1
  75. package/dist/esm/ion-datetime_3.entry.js +34 -28
  76. package/dist/esm/ion-loading.entry.js +1 -1
  77. package/dist/esm/ion-menu_3.entry.js +1 -1
  78. package/dist/esm/ion-modal.entry.js +1 -1
  79. package/dist/esm/{ion-picker-column.entry.js → ion-picker-column-internal.entry.js} +72 -105
  80. package/dist/esm/{ion-picker.entry.js → ion-picker-internal.entry.js} +13 -13
  81. package/dist/esm/ion-popover.entry.js +1 -1
  82. package/dist/esm/ion-select_3.entry.js +1 -1
  83. package/dist/esm/ion-toast.entry.js +1 -1
  84. package/dist/esm/ionic.js +1 -1
  85. package/dist/esm/loader.js +1 -1
  86. package/dist/esm/{overlays-fbc5cab5.js → overlays-d23ea6e1.js} +3 -6
  87. package/dist/esm-es5/index.js +1 -1
  88. package/dist/esm-es5/ion-action-sheet.entry.js +1 -1
  89. package/dist/esm-es5/ion-alert.entry.js +1 -1
  90. package/dist/esm-es5/ion-datetime-button.entry.js +1 -1
  91. package/dist/esm-es5/ion-datetime_3.entry.js +1 -1
  92. package/dist/esm-es5/ion-loading.entry.js +1 -1
  93. package/dist/esm-es5/ion-menu_3.entry.js +1 -1
  94. package/dist/esm-es5/ion-modal.entry.js +1 -1
  95. package/dist/esm-es5/ion-picker-column-internal.entry.js +4 -0
  96. package/dist/esm-es5/ion-picker-internal.entry.js +4 -0
  97. package/dist/esm-es5/ion-popover.entry.js +1 -1
  98. package/dist/esm-es5/ion-select_3.entry.js +1 -1
  99. package/dist/esm-es5/ion-toast.entry.js +1 -1
  100. package/dist/esm-es5/ionic.js +1 -1
  101. package/dist/esm-es5/loader.js +1 -1
  102. package/dist/esm-es5/overlays-d23ea6e1.js +4 -0
  103. package/dist/html.html-data.json +1 -152
  104. package/dist/ionic/index.esm.js +1 -1
  105. package/dist/ionic/ionic.esm.js +1 -1
  106. package/dist/ionic/{p-846ee227.entry.js → p-1e57bd24.entry.js} +1 -1
  107. package/dist/ionic/{p-26798a7b.system.entry.js → p-1f620cd4.system.entry.js} +1 -1
  108. package/dist/ionic/{p-5d42b6b4.entry.js → p-27ea6f4e.entry.js} +1 -1
  109. package/dist/ionic/{p-6b7c55cd.entry.js → p-2dc43d20.entry.js} +1 -1
  110. package/dist/ionic/{p-4a36430f.system.entry.js → p-2f2293da.system.entry.js} +1 -1
  111. package/dist/ionic/{p-21c3515a.entry.js → p-2f300cca.entry.js} +1 -1
  112. package/dist/ionic/{p-8017aad2.system.entry.js → p-39a335b6.system.entry.js} +1 -1
  113. package/dist/ionic/{p-4a081ea9.entry.js → p-3b568d18.entry.js} +1 -1
  114. package/dist/ionic/{p-c18de88a.system.entry.js → p-3e3d06a6.system.entry.js} +1 -1
  115. package/dist/ionic/{p-96dbbac1.system.entry.js → p-4df97e3c.system.entry.js} +1 -1
  116. package/dist/ionic/p-60502e3f.system.entry.js +4 -0
  117. package/dist/ionic/{p-563c41f0.system.entry.js → p-60b386c9.system.entry.js} +1 -1
  118. package/dist/ionic/p-67da080d.entry.js +4 -0
  119. package/dist/ionic/p-73ea8f82.system.entry.js +4 -0
  120. package/dist/ionic/p-80fa068e.entry.js +4 -0
  121. package/dist/ionic/{p-a8baa23e.entry.js → p-8780cc2a.entry.js} +1 -1
  122. package/dist/ionic/{p-f910cc73.system.entry.js → p-9eec42cc.system.entry.js} +1 -1
  123. package/dist/ionic/p-ab11130c.system.js +4 -0
  124. package/dist/ionic/p-af16fe62.entry.js +4 -0
  125. package/dist/ionic/{p-73aa7604.entry.js → p-af19a573.entry.js} +1 -1
  126. package/dist/ionic/p-c14f8ac8.js +4 -0
  127. package/dist/ionic/p-cce9f61a.system.entry.js +4 -0
  128. package/dist/ionic/{p-b133e9b4.entry.js → p-ddb30596.entry.js} +1 -1
  129. package/dist/ionic/{p-27bcbbc7.system.entry.js → p-e1e5afe1.system.entry.js} +1 -1
  130. package/dist/ionic/p-e3584231.system.js +1 -1
  131. package/dist/ionic/{p-fbf3a689.system.entry.js → p-e3ad9607.system.entry.js} +1 -1
  132. package/dist/ionic/{p-73190c5f.entry.js → p-f78efbd1.entry.js} +1 -1
  133. package/dist/ionic/{p-54dfc9b5.system.js → p-fff7a57e.system.js} +1 -1
  134. package/dist/types/components/datetime/utils/data.d.ts +2 -2
  135. package/dist/types/components/picker/picker.d.ts +131 -74
  136. package/dist/types/components/picker-column/picker-column.d.ts +39 -105
  137. package/dist/types/components/picker-column-internal/picker-column-internal.d.ts +102 -0
  138. package/dist/types/components/picker-internal/picker-internal-interfaces.d.ts +8 -0
  139. package/dist/types/components/picker-internal/picker-internal.d.ts +102 -0
  140. package/dist/types/components.d.ts +122 -163
  141. package/dist/types/interface.d.ts +1 -1
  142. package/dist/types/utils/config.d.ts +2 -2
  143. package/dist/types/utils/overlays.d.ts +2 -5
  144. package/hydrate/index.js +1151 -1287
  145. package/package.json +1 -1
  146. package/components/ion-picker-column-option.d.ts +0 -11
  147. package/components/ion-picker-column-option.js +0 -9
  148. package/components/ion-picker-legacy-column.d.ts +0 -11
  149. package/components/ion-picker-legacy-column.js +0 -9
  150. package/components/ion-picker-legacy.js +0 -309
  151. package/components/picker-column-option.js +0 -122
  152. package/components/picker-column2.js +0 -379
  153. package/dist/cjs/ion-picker-column-option.cjs.entry.js +0 -104
  154. package/dist/collection/components/picker-column/test/disabled/picker-column.e2e.js +0 -113
  155. package/dist/collection/components/picker-column/test/slots/picker-column.e2e.js +0 -39
  156. package/dist/collection/components/picker-column-option/picker-column-option.ios.css +0 -87
  157. package/dist/collection/components/picker-column-option/picker-column-option.js +0 -173
  158. package/dist/collection/components/picker-column-option/test/a11y/picker-column-option.e2e.js +0 -18
  159. package/dist/collection/components/picker-column-option/test/basic/picker-column-option.e2e.js +0 -37
  160. package/dist/collection/components/picker-legacy/picker.ios.css +0 -367
  161. package/dist/collection/components/picker-legacy/picker.js +0 -817
  162. package/dist/collection/components/picker-legacy/test/basic/picker.e2e.js +0 -25
  163. package/dist/collection/components/picker-legacy-column/picker-column.js +0 -419
  164. package/dist/esm/ion-picker-column-option.entry.js +0 -100
  165. package/dist/esm-es5/ion-picker-column-option.entry.js +0 -4
  166. package/dist/esm-es5/ion-picker-column.entry.js +0 -4
  167. package/dist/esm-es5/ion-picker.entry.js +0 -4
  168. package/dist/esm-es5/overlays-fbc5cab5.js +0 -4
  169. package/dist/ionic/p-23672c82.system.entry.js +0 -4
  170. package/dist/ionic/p-8fa6583d.system.js +0 -4
  171. package/dist/ionic/p-9282b16f.entry.js +0 -4
  172. package/dist/ionic/p-9ba90516.system.entry.js +0 -4
  173. package/dist/ionic/p-afcf4620.entry.js +0 -4
  174. package/dist/ionic/p-c2910c78.entry.js +0 -4
  175. package/dist/ionic/p-c8f0a036.entry.js +0 -4
  176. package/dist/ionic/p-ca8938f4.js +0 -4
  177. package/dist/ionic/p-ca9d1792.system.entry.js +0 -4
  178. package/dist/ionic/p-ffd5dba4.system.entry.js +0 -4
  179. package/dist/types/components/picker/picker-interfaces.d.ts +0 -8
  180. package/dist/types/components/picker-column-option/picker-column-option.d.ts +0 -66
  181. package/dist/types/components/picker-legacy/picker.d.ts +0 -158
  182. package/dist/types/components/picker-legacy-column/picker-column.d.ts +0 -46
  183. /package/dist/collection/components/{picker-legacy → picker}/animations/ios.enter.js +0 -0
  184. /package/dist/collection/components/{picker-legacy → picker}/animations/ios.leave.js +0 -0
  185. /package/dist/collection/components/picker/{picker-interfaces.js → picker-interface.js} +0 -0
  186. /package/dist/collection/components/{picker-legacy-column → picker-column}/test/test.utils.js +0 -0
  187. /package/dist/collection/components/{picker-column/picker-column-interfaces.js → picker-column-internal/picker-column-internal-interfaces.js} +0 -0
  188. /package/dist/collection/components/{picker-legacy/picker-interface.js → picker-internal/picker-internal-interfaces.js} +0 -0
  189. /package/dist/esm-es5/{data-4b9508c9.js → data-f5c75b4e.js} +0 -0
  190. /package/dist/ionic/{p-368f5215.js → p-2aea8b1e.js} +0 -0
  191. /package/dist/ionic/{p-f58981c2.system.js → p-82e3d633.system.js} +0 -0
  192. /package/dist/types/components/{picker-legacy → picker}/animations/ios.enter.d.ts +0 -0
  193. /package/dist/types/components/{picker-legacy → picker}/animations/ios.leave.d.ts +0 -0
  194. /package/dist/types/components/{picker-legacy → picker}/picker-interface.d.ts +0 -0
  195. /package/dist/types/components/{picker-legacy-column → picker-column}/test/test.utils.d.ts +0 -0
  196. /package/dist/types/components/{picker-column/picker-column-interfaces.d.ts → picker-column-internal/picker-column-internal-interfaces.d.ts} +0 -0
@@ -1,87 +0,0 @@
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
- button {
57
- padding-left: 0;
58
- padding-right: 0;
59
- padding-top: 0;
60
- padding-bottom: 0;
61
- margin-left: 0;
62
- margin-right: 0;
63
- margin-top: 0;
64
- margin-bottom: 0;
65
- width: 100%;
66
- height: 34px;
67
- border: 0px;
68
- outline: none;
69
- background: transparent;
70
- color: inherit;
71
- font-family: var(--ion-font-family, inherit);
72
- font-size: inherit;
73
- line-height: 34px;
74
- text-align: inherit;
75
- text-overflow: ellipsis;
76
- white-space: nowrap;
77
- cursor: pointer;
78
- overflow: hidden;
79
- }
80
-
81
- :host(.option-disabled) {
82
- opacity: 0.4;
83
- }
84
-
85
- :host(.option-disabled) button {
86
- cursor: default;
87
- }
@@ -1,173 +0,0 @@
1
- /*!
2
- * (C) Ionic http://ionicframework.com - MIT License
3
- */
4
- import { Host, h } from "@stencil/core";
5
- import { inheritAttributes } from "../../utils/helpers";
6
- import { createColorClasses } from "../../utils/theme";
7
- import { getIonMode } from "../../global/ionic-global";
8
- export class PickerColumnOption {
9
- constructor() {
10
- /**
11
- * We keep track of the parent picker column
12
- * so we can update the value of it when
13
- * clicking an enable option.
14
- */
15
- this.pickerColumn = null;
16
- this.ariaLabel = null;
17
- this.disabled = false;
18
- this.value = undefined;
19
- this.color = 'primary';
20
- }
21
- /**
22
- * The aria-label of the option has changed after the
23
- * first render and needs to be updated within the component.
24
- *
25
- * @param ariaLbl The new aria-label value.
26
- */
27
- onAriaLabelChange(ariaLbl) {
28
- this.ariaLabel = ariaLbl;
29
- }
30
- componentWillLoad() {
31
- const inheritedAttributes = inheritAttributes(this.el, ['aria-label']);
32
- /**
33
- * The initial value of `aria-label` needs to be set for
34
- * the first render.
35
-
36
- */
37
- this.ariaLabel = inheritedAttributes['aria-label'] || null;
38
- }
39
- connectedCallback() {
40
- this.pickerColumn = this.el.closest('ion-picker-column');
41
- }
42
- disconnectedCallback() {
43
- this.pickerColumn = null;
44
- }
45
- /**
46
- * The column options can load at any time
47
- * so the options needs to tell the
48
- * parent picker column when it is loaded
49
- * so the picker column can ensure it is
50
- * centered in the view.
51
- *
52
- * We intentionally run this for every
53
- * option. If we only ran this from
54
- * the selected option then if the newly
55
- * loaded options were not selected then
56
- * scrollActiveItemIntoView would not be called.
57
- */
58
- componentDidLoad() {
59
- const { pickerColumn } = this;
60
- if (pickerColumn !== null) {
61
- pickerColumn.scrollActiveItemIntoView();
62
- }
63
- }
64
- /**
65
- * When an option is clicked update the
66
- * parent picker column value. This
67
- * component will handle centering the option
68
- * in the column view.
69
- */
70
- onClick() {
71
- const { pickerColumn } = this;
72
- if (pickerColumn !== null) {
73
- pickerColumn.setValue(this.value);
74
- }
75
- }
76
- render() {
77
- const { color, disabled, ariaLabel } = this;
78
- const mode = getIonMode(this);
79
- return (h(Host, { class: createColorClasses(color, {
80
- [mode]: true,
81
- ['option-disabled']: disabled,
82
- }) }, h("button", { tabindex: "-1", "aria-label": ariaLabel, disabled: disabled, onClick: () => this.onClick() }, h("slot", null))));
83
- }
84
- static get is() { return "ion-picker-column-option"; }
85
- static get encapsulation() { return "shadow"; }
86
- static get originalStyleUrls() {
87
- return {
88
- "ios": ["picker-column-option.ios.scss"],
89
- "md": ["picker-column-option.md.scss"]
90
- };
91
- }
92
- static get styleUrls() {
93
- return {
94
- "ios": ["picker-column-option.ios.css"],
95
- "md": ["picker-column-option.md.css"]
96
- };
97
- }
98
- static get properties() {
99
- return {
100
- "disabled": {
101
- "type": "boolean",
102
- "mutable": false,
103
- "complexType": {
104
- "original": "boolean",
105
- "resolved": "boolean",
106
- "references": {}
107
- },
108
- "required": false,
109
- "optional": false,
110
- "docs": {
111
- "tags": [],
112
- "text": "If `true`, the user cannot interact with the picker column option."
113
- },
114
- "attribute": "disabled",
115
- "reflect": false,
116
- "defaultValue": "false"
117
- },
118
- "value": {
119
- "type": "any",
120
- "mutable": false,
121
- "complexType": {
122
- "original": "any | null",
123
- "resolved": "any",
124
- "references": {}
125
- },
126
- "required": false,
127
- "optional": true,
128
- "docs": {
129
- "tags": [],
130
- "text": "The text value of the option."
131
- },
132
- "attribute": "value",
133
- "reflect": false
134
- },
135
- "color": {
136
- "type": "string",
137
- "mutable": false,
138
- "complexType": {
139
- "original": "Color",
140
- "resolved": "\"danger\" | \"dark\" | \"light\" | \"medium\" | \"primary\" | \"secondary\" | \"success\" | \"tertiary\" | \"warning\" | string & Record<never, never> | undefined",
141
- "references": {
142
- "Color": {
143
- "location": "import",
144
- "path": "../../interface",
145
- "id": "src/interface.d.ts::Color"
146
- }
147
- }
148
- },
149
- "required": false,
150
- "optional": true,
151
- "docs": {
152
- "tags": [],
153
- "text": "The color to use from your application's color palette.\nDefault options are: `\"primary\"`, `\"secondary\"`, `\"tertiary\"`, `\"success\"`, `\"warning\"`, `\"danger\"`, `\"light\"`, `\"medium\"`, and `\"dark\"`.\nFor more information on colors, see [theming](/docs/theming/basics)."
154
- },
155
- "attribute": "color",
156
- "reflect": true,
157
- "defaultValue": "'primary'"
158
- }
159
- };
160
- }
161
- static get states() {
162
- return {
163
- "ariaLabel": {}
164
- };
165
- }
166
- static get elementRef() { return "el"; }
167
- static get watchers() {
168
- return [{
169
- "propName": "aria-label",
170
- "methodName": "onAriaLabelChange"
171
- }];
172
- }
173
- }
@@ -1,18 +0,0 @@
1
- /*!
2
- * (C) Ionic http://ionicframework.com - MIT License
3
- */
4
- import AxeBuilder from "@axe-core/playwright";
5
- import { expect } from "@playwright/test";
6
- import { configs, test } from "../../../../utils/test/playwright/index";
7
- /**
8
- * This behavior does not vary across directions
9
- */
10
- configs({ directions: ['ltr'] }).forEach(({ config, title }) => {
11
- test.describe(title('picker column option: a11y'), () => {
12
- test('should not have accessibility violations', async ({ page }) => {
13
- await page.goto(`/src/components/picker-column-option/test/a11y`, config);
14
- const results = await new AxeBuilder({ page }).analyze();
15
- expect(results.violations).toEqual([]);
16
- });
17
- });
18
- });
@@ -1,37 +0,0 @@
1
- /*!
2
- * (C) Ionic http://ionicframework.com - MIT License
3
- */
4
- import { expect } from "@playwright/test";
5
- import { configs, test } from "../../../../utils/test/playwright/index";
6
- configs({ directions: ['ltr'] }).forEach(({ title, screenshot, config }) => {
7
- test.describe(title('picker-column-option: rendering'), () => {
8
- test('picker option should not have visual regressions', async ({ page }) => {
9
- await page.setContent(`
10
- <ion-picker-column-option value="option">My Option</ion-picker-column-option>
11
- `, config);
12
- const option = page.locator('ion-picker-column-option');
13
- await expect(option).toHaveScreenshot(screenshot('picker-column-option'));
14
- });
15
- test('disabled picker option should not have visual regressions', async ({ page }) => {
16
- await page.setContent(`
17
- <ion-picker-column-option disabled="true" value="option">My Option</ion-picker-column-option>
18
- `, config);
19
- const option = page.locator('ion-picker-column-option');
20
- await expect(option).toHaveScreenshot(screenshot('disabled-picker-column-option'));
21
- });
22
- test('active picker option should not have visual regressions', async ({ page }) => {
23
- await page.setContent(`
24
- <ion-picker-column-option class="option-active" value="option">My Option</ion-picker-column-option>
25
- `, config);
26
- const option = page.locator('ion-picker-column-option');
27
- await expect(option).toHaveScreenshot(screenshot('active-picker-column-option'));
28
- });
29
- test('disabled active picker option should not have visual regressions', async ({ page }) => {
30
- await page.setContent(`
31
- <ion-picker-column-option class="option-active" disabled="true" value="option">My Option</ion-picker-column-option>
32
- `, config);
33
- const option = page.locator('ion-picker-column-option');
34
- await expect(option).toHaveScreenshot(screenshot('disabled-active-picker-column-option'));
35
- });
36
- });
37
- });
@@ -1,367 +0,0 @@
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
- :host {
57
- /**
58
- * @prop --background: Background of the picker
59
- * @prop --background-rgb: Background of the picker in rgb format
60
- *
61
- * @prop --border-radius: Border radius of the picker
62
- * @prop --border-color: Border color of the picker
63
- * @prop --border-width: Border width of the picker
64
- * @prop --border-style: Border style of the picker
65
- *
66
- * @prop --min-width: Minimum width of the picker
67
- * @prop --width: Width of the picker
68
- * @prop --max-width: Maximum width of the picker
69
- *
70
- * @prop --min-height: Minimum height of the picker
71
- * @prop --height: Height of the picker
72
- * @prop --max-height: Maximum height of the picker
73
- *
74
- * @prop --backdrop-opacity: Opacity of the backdrop
75
- */
76
- --border-radius: 0;
77
- --border-style: solid;
78
- --min-width: auto;
79
- --width: 100%;
80
- --max-width: 500px;
81
- --min-height: auto;
82
- --max-height: auto;
83
- -moz-osx-font-smoothing: grayscale;
84
- -webkit-font-smoothing: antialiased;
85
- top: 0;
86
- display: block;
87
- position: absolute;
88
- width: 100%;
89
- height: 100%;
90
- outline: none;
91
- font-family: var(--ion-font-family, inherit);
92
- contain: strict;
93
- user-select: none;
94
- z-index: 1001;
95
- }
96
- @supports (inset-inline-start: 0) {
97
- :host {
98
- inset-inline-start: 0;
99
- }
100
- }
101
- @supports not (inset-inline-start: 0) {
102
- :host {
103
- left: 0;
104
- }
105
- :host-context([dir=rtl]) {
106
- left: unset;
107
- right: unset;
108
- right: 0;
109
- }
110
- @supports selector(:dir(rtl)) {
111
- :host(:dir(rtl)) {
112
- left: unset;
113
- right: unset;
114
- right: 0;
115
- }
116
- }
117
- }
118
-
119
- :host(.overlay-hidden) {
120
- display: none;
121
- }
122
-
123
- .picker-wrapper {
124
- border-radius: var(--border-radius);
125
- left: 0;
126
- right: 0;
127
- bottom: 0;
128
- -webkit-margin-start: auto;
129
- margin-inline-start: auto;
130
- -webkit-margin-end: auto;
131
- margin-inline-end: auto;
132
- margin-top: auto;
133
- margin-bottom: auto;
134
- transform: translate3d(0, 100%, 0);
135
- display: flex;
136
- position: absolute;
137
- flex-direction: column;
138
- width: var(--width);
139
- min-width: var(--min-width);
140
- max-width: var(--max-width);
141
- height: var(--height);
142
- min-height: var(--min-height);
143
- max-height: var(--max-height);
144
- border-width: var(--border-width);
145
- border-style: var(--border-style);
146
- border-color: var(--border-color);
147
- background: var(--background);
148
- contain: strict;
149
- overflow: hidden;
150
- z-index: 10;
151
- }
152
-
153
- .picker-toolbar {
154
- width: 100%;
155
- background: transparent;
156
- contain: strict;
157
- z-index: 1;
158
- }
159
-
160
- .picker-button {
161
- border: 0;
162
- font-family: inherit;
163
- }
164
-
165
- .picker-button:active, .picker-button:focus {
166
- outline: none;
167
- }
168
-
169
- .picker-columns {
170
- display: flex;
171
- position: relative;
172
- justify-content: center;
173
- margin-bottom: var(--ion-safe-area-bottom, 0);
174
- contain: strict;
175
- overflow: hidden;
176
- }
177
-
178
- .picker-above-highlight,
179
- .picker-below-highlight {
180
- display: none;
181
- pointer-events: none;
182
- }
183
-
184
- /**
185
- * Convert a font size to a dynamic font size.
186
- * Fonts that participate in Dynamic Type should use
187
- * dynamic font sizes.
188
- * @param size - The initial font size including the unit (i.e. px or pt)
189
- * @param unit (optional) - The unit to convert to. Use this if you want to
190
- * convert to a unit other than $baselineUnit.
191
- */
192
- /**
193
- * Convert a font size to a dynamic font size but impose
194
- * a maximum font size.
195
- * @param size - The initial font size including the unit (i.e. px or pt)
196
- * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
197
- * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
198
- * convert to a unit other than $baselineUnit.
199
- */
200
- /**
201
- * Convert a font size to a dynamic font size but impose
202
- * a minimum font size.
203
- * @param size - The initial font size including the unit (i.e. px or pt)
204
- * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
205
- * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
206
- * convert to a unit other than $baselineUnit.
207
- */
208
- /**
209
- * Convert a font size to a dynamic font size but impose
210
- * maximum and minimum font sizes.
211
- * @param size - The initial font size including the unit (i.e. px or pt)
212
- * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
213
- * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
214
- * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
215
- * convert to a unit other than $baselineUnit.
216
- */
217
- /**
218
- * A heuristic that applies CSS to tablet
219
- * viewports.
220
- *
221
- * Usage:
222
- * @include tablet-viewport() {
223
- * :host {
224
- * background-color: green;
225
- * }
226
- * }
227
- */
228
- /**
229
- * A heuristic that applies CSS to mobile
230
- * viewports (i.e. phones, not tablets).
231
- *
232
- * Usage:
233
- * @include mobile-viewport() {
234
- * :host {
235
- * background-color: blue;
236
- * }
237
- * }
238
- */
239
- :host {
240
- --background: var(--ion-background-color, #fff);
241
- --border-width: 1px 0 0;
242
- --border-color: var(--ion-item-border-color, var(--ion-border-color, var(--ion-color-step-250, #c8c7cc)));
243
- --height: 260px;
244
- --backdrop-opacity: var(--ion-backdrop-opacity, 0.26);
245
- color: var(--ion-item-color, var(--ion-text-color, #000));
246
- }
247
-
248
- .picker-toolbar {
249
- display: flex;
250
- height: 44px;
251
- border-bottom: 0.55px solid var(--border-color);
252
- }
253
-
254
- .picker-toolbar-button {
255
- flex: 1;
256
- text-align: end;
257
- }
258
-
259
- .picker-toolbar-button:last-child .picker-button {
260
- font-weight: 600;
261
- }
262
-
263
- .picker-toolbar-button:first-child {
264
- font-weight: normal;
265
- text-align: start;
266
- }
267
-
268
- .picker-button,
269
- .picker-button.ion-activated {
270
- margin-left: 0;
271
- margin-right: 0;
272
- margin-top: 0;
273
- margin-bottom: 0;
274
- -webkit-padding-start: 1em;
275
- padding-inline-start: 1em;
276
- -webkit-padding-end: 1em;
277
- padding-inline-end: 1em;
278
- padding-top: 0;
279
- padding-bottom: 0;
280
- height: 44px;
281
- background: transparent;
282
- color: var(--ion-color-primary, #3880ff);
283
- font-size: 16px;
284
- }
285
-
286
- .picker-columns {
287
- height: 215px;
288
- perspective: 1000px;
289
- }
290
-
291
- .picker-above-highlight {
292
- top: 0;
293
- transform: translate3d(0, 0, 90px);
294
- display: block;
295
- position: absolute;
296
- width: 100%;
297
- height: 81px;
298
- border-bottom: 1px solid var(--border-color);
299
- background: linear-gradient(to bottom, var(--background, var(--ion-background-color, #fff)) 20%, rgba(var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255)), 0.8) 100%);
300
- z-index: 10;
301
- }
302
- @supports (inset-inline-start: 0) {
303
- .picker-above-highlight {
304
- inset-inline-start: 0;
305
- }
306
- }
307
- @supports not (inset-inline-start: 0) {
308
- .picker-above-highlight {
309
- left: 0;
310
- }
311
- :host-context([dir=rtl]) .picker-above-highlight {
312
- left: unset;
313
- right: unset;
314
- right: 0;
315
- }
316
- [dir=rtl] .picker-above-highlight {
317
- left: unset;
318
- right: unset;
319
- right: 0;
320
- }
321
- @supports selector(:dir(rtl)) {
322
- .picker-above-highlight:dir(rtl) {
323
- left: unset;
324
- right: unset;
325
- right: 0;
326
- }
327
- }
328
- }
329
-
330
- .picker-below-highlight {
331
- top: 115px;
332
- transform: translate3d(0, 0, 90px);
333
- display: block;
334
- position: absolute;
335
- width: 100%;
336
- height: 119px;
337
- border-top: 1px solid var(--border-color);
338
- background: linear-gradient(to top, var(--background, var(--ion-background-color, #fff)) 30%, rgba(var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255)), 0.8) 100%);
339
- z-index: 11;
340
- }
341
- @supports (inset-inline-start: 0) {
342
- .picker-below-highlight {
343
- inset-inline-start: 0;
344
- }
345
- }
346
- @supports not (inset-inline-start: 0) {
347
- .picker-below-highlight {
348
- left: 0;
349
- }
350
- :host-context([dir=rtl]) .picker-below-highlight {
351
- left: unset;
352
- right: unset;
353
- right: 0;
354
- }
355
- [dir=rtl] .picker-below-highlight {
356
- left: unset;
357
- right: unset;
358
- right: 0;
359
- }
360
- @supports selector(:dir(rtl)) {
361
- .picker-below-highlight:dir(rtl) {
362
- left: unset;
363
- right: unset;
364
- right: 0;
365
- }
366
- }
367
- }