| 24 | shadow: true, |
| 25 | }) |
| 26 | export class PickerColumn implements ComponentInterface { |
| 27 | private scrollEl?: HTMLDivElement | null; |
| 28 | private destroyScrollListener?: () => void; |
| 29 | private isScrolling = false; |
| 30 | private scrollEndCallback?: () => void; |
| 31 | private isColumnVisible = false; |
| 32 | private parentEl?: HTMLIonPickerElement | null; |
| 33 | private canExitInputMode = true; |
| 34 | private assistiveFocusable?: HTMLElement; |
| 35 | private updateValueTextOnScroll = false; |
| 36 | |
| 37 | @State() ariaLabel: string | null = null; |
| 38 | |
| 39 | @Watch('aria-label') |
| 40 | ariaLabelChanged(newValue: string) { |
| 41 | this.ariaLabel = newValue; |
| 42 | } |
| 43 | |
| 44 | @State() isActive = false; |
| 45 | |
| 46 | @Element() el!: HTMLIonPickerColumnElement; |
| 47 | |
| 48 | /** |
| 49 | * If `true`, the user cannot interact with the picker. |
| 50 | */ |
| 51 | @Prop() disabled = false; |
| 52 | |
| 53 | /** |
| 54 | * The selected option in the picker. |
| 55 | */ |
| 56 | @Prop({ mutable: true }) value?: string | number; |
| 57 | |
| 58 | /** |
| 59 | * The color to use from your application's color palette. |
| 60 | * Default options are: `"primary"`, `"secondary"`, `"tertiary"`, `"success"`, `"warning"`, `"danger"`, `"light"`, `"medium"`, and `"dark"`. |
| 61 | * For more information on colors, see [theming](/docs/theming/basics). |
| 62 | */ |
| 63 | @Prop({ reflect: true }) color?: Color = 'primary'; |
| 64 | |
| 65 | /** |
| 66 | * If `true`, tapping the picker will |
| 67 | * reveal a number input keyboard that lets |
| 68 | * the user type in values for each picker |
| 69 | * column. This is useful when working |
| 70 | * with time pickers. |
| 71 | * |
| 72 | * @internal |
| 73 | */ |
| 74 | @Prop() numericInput = false; |
| 75 | |
| 76 | /** |
| 77 | * Emitted when the value has changed. |
| 78 | * |
| 79 | * This event will not emit when programmatically setting the `value` property. |
| 80 | */ |
| 81 | @Event() ionChange!: EventEmitter<PickerColumnChangeEventDetail>; |
| 82 | |
| 83 | @Watch('value') |
nothing calls this directly
no test coverage detected