import { storiesOf, html } from '@open-wc/demoing-storybook'; import '../lion-checkbox-group.js'; import '@lion/checkbox/lion-checkbox.js'; import '@lion/form/lion-form.js'; import { localize } from '@lion/localize'; storiesOf('Forms|Checkbox Group', module) .add( 'Default', () => html`
`, ) .add( 'Pre Select', () => html`
`, ) .add( 'Disabled', () => html`
`, ) .add('Validation', () => { const submit = () => { const form = document.querySelector('#form'); if (form.errorState === false) { console.log(form.serializeGroup()); } }; return html`
`; }) .add('Validation 2 checked', () => { const hasMinTwoChecked = value => { const selectedValues = value['scientists[]'].filter(v => v.checked === true); return { hasMinTwoChecked: selectedValues.length >= 2, }; }; localize.locale = 'en-GB'; try { localize.addData('en-GB', 'lion-validate+hasMinTwoChecked', { error: { hasMinTwoChecked: 'You need to select at least 2 values', }, }); } catch (error) { // expected as it's a demo } const submit = () => { const form = document.querySelector('#form'); if (form.errorState === false) { console.log(form.serializeGroup()); } }; return html`
`; });