| // Copyright 2024 The Chromium Authors |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| import {Switch} from './switch.js'; |
| |
| export function render(container: HTMLElement) { |
| function switchExample({checked, disabled}: {checked: boolean, disabled: boolean}): HTMLElement { |
| const example = document.createElement('div'); |
| example.style.marginTop = '20px'; |
| const explanation = document.createElement('div'); |
| const disabledExplanation = document.createElement('div'); |
| const component = new Switch.Switch(); |
| component.checked = checked; |
| component.disabled = disabled; |
| explanation.textContent = `is checked? ${component.checked}`; |
| disabledExplanation.textContent = `is disabled? ${component.disabled}`; |
| component.addEventListener(Switch.SwitchChangeEvent.eventName, ev => { |
| explanation.textContent = `is checked? ${ev.checked}`; |
| }); |
| example.appendChild(component); |
| example.appendChild(explanation); |
| example.appendChild(disabledExplanation); |
| return example; |
| } |
| |
| // Basic |
| container.appendChild(switchExample({checked: false, disabled: false})); |
| |
| // Already checked |
| container.appendChild(switchExample({checked: true, disabled: false})); |
| |
| // Disabled |
| container.appendChild(switchExample({checked: false, disabled: true})); |
| |
| // Disabled & checked |
| container.appendChild(switchExample({checked: true, disabled: true})); |
| } |