()
| 534 | }; |
| 535 | |
| 536 | render() { |
| 537 | return ( |
| 538 | <Host onPointerDown={(ev: PointerEvent) => this.onPointerDown(ev)} onClick={() => this.onClick()}> |
| 539 | <input |
| 540 | aria-hidden="true" |
| 541 | tabindex={-1} |
| 542 | inputmode="numeric" |
| 543 | type="number" |
| 544 | onKeyDown={(ev: KeyboardEvent) => { |
| 545 | /** |
| 546 | * The "Enter" key represents |
| 547 | * the user submitting their time |
| 548 | * selection, so we should blur the |
| 549 | * input (and therefore close the keyboard) |
| 550 | * |
| 551 | * Updating the picker's state to no longer |
| 552 | * be in input mode is handled in the onBlur |
| 553 | * callback below. |
| 554 | */ |
| 555 | if (ev.key === 'Enter') { |
| 556 | this.inputEl?.blur(); |
| 557 | } |
| 558 | }} |
| 559 | ref={(el) => (this.inputEl = el)} |
| 560 | onInput={() => this.onInputChange()} |
| 561 | onBlur={() => this.exitInputMode()} |
| 562 | /> |
| 563 | <div class="picker-before"></div> |
| 564 | <div class="picker-after"></div> |
| 565 | <div class="picker-highlight" ref={(el) => (this.highlightEl = el)}></div> |
| 566 | <slot></slot> |
| 567 | </Host> |
| 568 | ); |
| 569 | } |
| 570 | } |
nothing calls this directly
no test coverage detected