q2-tecton-elements 1.56.6 → 1.56.7

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.
@@ -1 +1 @@
1
- {"version":3,"file":"q2-checkbox-test.e2e.js","sourceRoot":"","sources":["../../../../../src/components/q2-checkbox/test/q2-checkbox-test.e2e.ts"],"names":[],"mappings":"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","sourcesContent":["import { E2EPage } from '@stencil/core/testing';\nimport {\n setTestStrings,\n setup,\n dispatchEvent,\n testDeprecatedAriaLabel,\n getActiveElementTestId,\n getListOfStyleCompilationIssues,\n evaluateA11y,\n} from '@/utils/helpers';\n\ndescribe('q2-checkbox', () => {\n let page: E2EPage;\n let normalStyle;\n let hoverStyle;\n const label = 'My Checkbox';\n\n const setupPage = async (props: string = '') => {\n props = props ? ` ${props}` : '';\n page = await setup({\n html: `<q2-checkbox ${props}></q2-checkbox>`,\n });\n await page.waitForChanges();\n\n return page;\n };\n\n const isChecked = async (page: E2EPage) => {\n return page.$eval('q2-checkbox', el => el.shadowRoot.querySelector('input')?.checked ?? false);\n };\n\n it('properly compiles CSS vars and functions', async () => {\n const page = await setupPage(`label=\"${label}\"`);\n expect(await getListOfStyleCompilationIssues(page, 'q2-checkbox')).toHaveLength(0);\n });\n\n it('renders checkbox with label and unchecked checkbox', async () => {\n const page = await setupPage(`label=\"${label}\" value=\"1\"`);\n const foundLabel = await page.find('q2-checkbox >>> .label-text');\n const innerCheckbox = await page.find('q2-checkbox >>> input');\n\n expect(foundLabel).not.toBeNull();\n expect(foundLabel.innerText).toEqual('My Checkbox');\n expect(await innerCheckbox.getProperty('value')).toEqual('1');\n });\n\n describe('Methods', () => {\n describe('click', () => {\n it('selects the checkbox when called', async () => {\n page = await setupPage('label=\"My Checkbox\"');\n const checkbox = await page.find('q2-checkbox');\n const changeSpy = await checkbox.spyOnEvent('change');\n\n expect(await getActiveElementTestId(page)).toBeNull();\n expect(await isChecked(page)).toBe(false);\n expect(checkbox).not.toHaveAttribute('checked');\n\n await page.$eval('q2-checkbox', el => el.click());\n await page.waitForChanges();\n\n expect(await isChecked(page)).toBe(true);\n expect(checkbox).toHaveAttribute('checked');\n expect(changeSpy).toHaveReceivedEventDetail({ checked: true, value: 'on' });\n expect(await getActiveElementTestId(page)).toEqual('q2CheckboxInnerCheckBox');\n });\n\n it('does not select the checkbox when readonly', async () => {\n const page = await setup({\n html: `<q2-checkbox label=\"Label\" readonly></q2-checkbox>`,\n });\n const checkbox = await page.find('q2-checkbox');\n const innerCheckbox = await page.find('q2-checkbox >>> input');\n\n expect(await getActiveElementTestId(page)).toBeNull();\n expect(checkbox).not.toHaveAttribute('checked');\n expect(innerCheckbox).not.toHaveAttribute('checked');\n\n await page.$eval('q2-checkbox', el => el.click());\n await page.waitForChanges();\n\n expect(checkbox).not.toHaveAttribute('checked');\n expect(innerCheckbox).not.toHaveAttribute('checked');\n });\n\n it('does not select the checkbox when disabled', async () => {\n const page = await setup({\n html: `<q2-checkbox label=\"Label\" disabled></q2-checkbox>`,\n });\n const checkbox = await page.find('q2-checkbox');\n const innerCheckbox = await page.find('q2-checkbox >>> input');\n\n expect(checkbox).not.toHaveAttribute('checked');\n expect(innerCheckbox).not.toHaveAttribute('checked');\n\n await page.$eval('q2-checkbox', (el: HTMLQ2CheckboxElement) => el.click());\n await page.waitForChanges();\n\n expect(checkbox).not.toHaveAttribute('checked');\n expect(innerCheckbox).not.toHaveAttribute('checked');\n expect(await getActiveElementTestId(page)).toBeNull();\n });\n });\n });\n\n describe('Props', () => {\n describe('description', () => {\n describe('when not provided', () => {\n it('adds the description markup', async () => {\n page = await setupPage('label=\"My Checkbox\"');\n const description = await page.find('q2-checkbox >>> .description-text');\n const input = await page.find('q2-checkbox >>> input');\n\n expect(description).toBeNull();\n expect(input).not.toHaveAttribute('aria-describedby');\n });\n });\n describe('when provided', () => {\n it('adds the description markup', async () => {\n page = await setupPage('label=\"My Checkbox\" description=\"Hello world\"');\n const description = await page.find('q2-checkbox >>> .description-text');\n const input = await page.find('q2-checkbox >>> input');\n\n expect(description).toEqualText('Hello world');\n expect(input).toEqualAttribute('aria-describedby', 'description');\n });\n });\n });\n describe('groupDisabled', () => {\n it('adds the disabled attribute to the checkbox when present', async () => {\n page = await setupPage('label=\"My Checkbox\" group-disabled');\n const innerInput = await page.find('q2-checkbox >>> input');\n\n expect(innerInput).toHaveAttribute('disabled');\n });\n });\n describe('hasError', () => {\n describe('when provided', () => {\n it('sets aria-invalid to true', async () => {\n page = await setupPage('has-error');\n const innerCheckbox = await page.find('q2-checkbox >>> input');\n\n expect(innerCheckbox.getAttribute('aria-invalid')).toBe('true');\n });\n });\n describe('when not provided', () => {\n it('sets aria-invalid to false', async () => {\n page = await setupPage();\n const innerCheckbox = await page.find('q2-checkbox >>> input');\n\n expect(innerCheckbox.getAttribute('aria-invalid')).toBe('false');\n });\n });\n });\n describe('readonly', () => {\n const clickCheckbox = async (page: E2EPage) => {\n await page.$eval('q2-checkbox', (el: HTMLQ2CheckboxElement) => el.click());\n await page.waitForChanges();\n };\n\n describe('set to true', () => {\n it('click check icon should not work', async () => {\n page = await setupPage('label=\"My Checkbox\" value=\"1\"');\n const element = await page.find('q2-checkbox');\n await element.setProperty('readonly', true);\n await page.waitForChanges();\n const checkbox = await page.find('q2-checkbox >>> .checkbox-icon');\n await checkbox.click();\n await page.waitForChanges();\n\n expect(await element.getProperty('checked')).toBeFalsy();\n });\n it('click label text should not work', async () => {\n page = await setupPage('label=\"My Checkbox\" value=\"1\"');\n const element = await page.find('q2-checkbox');\n await element.setProperty('readonly', true);\n await page.waitForChanges();\n const checkLabelText = await page.find('q2-checkbox >>> .label-text');\n await checkLabelText.click();\n await page.waitForChanges();\n\n expect(await element.getProperty('checked')).toBeFalsy();\n });\n it('on load does not check the checkbox when clicked', async () => {\n page = await setupPage('label=\"My Checkbox\" readonly');\n const checkbox = await page.find('q2-checkbox');\n\n expect(await isChecked(page)).toBe(false);\n expect(checkbox).not.toHaveAttribute('checked');\n\n await clickCheckbox(page);\n\n expect(await isChecked(page)).toBe(false);\n expect(checkbox).not.toHaveAttribute('checked');\n });\n it('after load does not check the checkbox when clicked', async () => {\n page = await setupPage('label=\"My Checkbox\"');\n const checkbox = await page.find('q2-checkbox');\n\n expect(await isChecked(page)).toBe(false);\n expect(checkbox).not.toHaveAttribute('checked');\n\n checkbox.setProperty('readonly', true);\n await page.waitForChanges();\n await clickCheckbox(page);\n\n expect(await isChecked(page)).toBe(false);\n expect(checkbox).not.toHaveAttribute('checked');\n });\n });\n describe('set to false', () => {\n it('on load checks the checkbox when clicked', async () => {\n page = await setupPage('label=\"My Checkbox\"');\n const checkbox = await page.find('q2-checkbox');\n\n expect(await isChecked(page)).toBe(false);\n expect(checkbox).not.toHaveAttribute('checked');\n\n await clickCheckbox(page);\n\n expect(await isChecked(page)).toBe(true);\n expect(checkbox).toHaveAttribute('checked');\n });\n it('after load checks the checkbox when clicked', async () => {\n page = await setupPage('label=\"My Checkbox\" readonly');\n const checkbox = await page.find('q2-checkbox');\n\n expect(await isChecked(page)).toBe(false);\n expect(checkbox).not.toHaveAttribute('checked');\n\n checkbox.setProperty('readonly', false);\n await page.waitForChanges();\n await clickCheckbox(page);\n\n expect(await isChecked(page)).toBe(true);\n expect(checkbox).toHaveAttribute('checked');\n });\n });\n });\n\n describe('label', () => {\n describe('when overflows width,', () => {\n it('hyphenates label content', async () => {\n const page = await setup({\n html: `<q2-checkbox label=\"Short Label, Hey\"></q2-checkbox>`,\n });\n const checkbox = await page.find('q2-checkbox ');\n\n const { shortLabelHeight } = await page.$eval('q2-checkbox', element => {\n const labelText = element.shadowRoot.querySelector<HTMLElement>('.label-text');\n return {\n shortLabelHeight: labelText.clientHeight,\n };\n });\n\n checkbox.setProperty(\n 'label',\n 'Life-forms living together for mutual advantage. Without the midi-chlorians, life could not exist and we would have no knowledge of the Force. They continually speak to us, telling us the will of the Force. When you learn to quiet your mind, youll hear them speaking to you.'\n );\n\n await page.waitForChanges();\n\n const { longLabelHeight } = await page.$eval('q2-checkbox', element => {\n const labelText = element.shadowRoot.querySelector<HTMLElement>('.label-text');\n return {\n longLabelHeight: labelText.clientHeight,\n };\n });\n\n expect(shortLabelHeight).toBeLessThan(longLabelHeight);\n });\n });\n });\n\n describe('type', () => {\n describe('when not set (default)', () => {\n it('renders the unchecked state', async () => {\n page = await setupPage();\n const label = await (await page.find('q2-checkbox >>> .label-text')).getComputedStyle();\n const checkboxFill = await page.find('q2-checkbox >>> .checkbox-fill');\n expect(label.fontWeight).toBe('400');\n expect(checkboxFill).toBeNull();\n });\n\n describe('when \"checked\" attribute is present', () => {\n it('renders the checked state', async () => {\n page = await setupPage('checked');\n const label = await (await page.find('q2-checkbox >>> .label-text')).getComputedStyle();\n const checkboxFill = await page.find('q2-checkbox >>> .checkbox-fill');\n expect(label.fontWeight).toBe('600');\n expect(checkboxFill).toBeTruthy();\n });\n\n it('applies necessary styles when hovered', async () => {\n page = await setupPage('checked');\n await page.hover('q2-checkbox >>> .checkbox-fill');\n await page.waitForChanges();\n const label = await (await page.find('q2-checkbox >>> .label-text')).getComputedStyle();\n const checkboxFill = await page.find('q2-checkbox >>> .checkbox-fill');\n expect(label.fontWeight).toBe('600');\n expect(checkboxFill).toBeTruthy();\n });\n\n it('renders the unchecked state when checked=\"false\"', async () => {\n page = await setupPage('checked=\"false\"');\n const label = await (await page.find('q2-checkbox >>> .label-text')).getComputedStyle();\n const checkboxFill = await page.find('q2-checkbox >>> .checkbox-fill');\n expect(label.fontWeight).toBe('400');\n expect(checkboxFill).toBeNull();\n });\n });\n });\n\n describe('when type is \"favorite\"', () => {\n it('renders the star icon for type=\"favorite\"', async () => {\n page = await setupPage();\n let svg = await page.find('q2-checkbox >>> .checkbox-icon');\n\n expect(svg.tagName).toEqual('svg');\n\n const checkbox = await page.find('q2-checkbox');\n checkbox.setProperty('type', 'favorite');\n await page.waitForChanges();\n svg = await page.find('q2-checkbox >>> .checkbox-icon');\n\n expect(svg.tagName).toEqual('Q2-ICON');\n expect(svg.getAttribute('type')).toEqual('star');\n });\n });\n\n describe(\"when type is 'toggle'\", () => {\n it('renders the toggle for type=\"toggle\"', async () => {\n page = await setupPage();\n let toggleSVG = await page.find('q2-checkbox >>> .toggle-svg-container');\n\n expect(toggleSVG).toBeNull();\n\n const checkbox = await page.find('q2-checkbox');\n checkbox.setProperty('type', 'toggle');\n await page.waitForChanges();\n toggleSVG = await page.find('q2-checkbox >>> .toggle-svg-container');\n\n expect(toggleSVG).not.toBeNull();\n });\n describe('\"unchecked\" toggle styles', () => {\n it('sets proper label styles', async () => {\n page = await setupPage('type=\"toggle\"');\n\n const labelStyles = await (await page.find('q2-checkbox >>> .label-text')).getComputedStyle();\n expect(labelStyles.fontWeight).toBe('400');\n });\n it('sets proper toggle-svg-container styles', async () => {\n page = await setupPage('type=\"toggle\"');\n const toggleStyles = await (\n await page.find('q2-checkbox >>> .toggle-svg-container')\n ).getComputedStyle();\n expect(toggleStyles.height).toBe('30px');\n expect(toggleStyles.width).toBe('38px');\n });\n it('sets proper toggle-indicator styles', async () => {\n page = await setupPage('type=\"toggle\"');\n const toggleIndicator = await (\n await page.find('q2-checkbox >>> .toggle-indicator')\n ).getComputedStyle();\n expect(toggleIndicator.height).toBe('16px');\n expect(toggleIndicator.width).toBe('16px');\n expect(toggleIndicator.left).toBe('4px');\n });\n it('sets proper toggle-track styles', async () => {\n page = await setupPage('type=\"toggle\"');\n const toggleTrack = await (await page.find('q2-checkbox >>> .toggle-track')).getComputedStyle();\n\n expect(toggleTrack.height).toBe('24px');\n expect(toggleTrack.width).toBe('38px');\n expect(toggleTrack.borderRadius).toBe('12px');\n expect(toggleTrack.boxShadow).toBe('rgb(128, 128, 128) 0px 0px 0px 1px inset');\n });\n\n it('sets proper toggle-circle styles', async () => {\n page = await setupPage('type=\"toggle\"');\n const toggleCircle = await (\n await page.find('q2-checkbox >>> .toggle-circle')\n ).getComputedStyle();\n expect(toggleCircle.mask).toBe('url(\"#xMask\")');\n });\n\n it('sets proper toggle-icon styles', async () => {\n page = await setupPage('type=\"toggle\"');\n const toggleIcon = await (await page.find('q2-checkbox >>> .toggle-icon')).getComputedStyle();\n expect(toggleIcon.strokeLinecap).toBe('round');\n expect(toggleIcon.strokeLinejoin).toBe('round');\n expect(toggleIcon.strokeWidth).toBe('2px');\n expect(toggleIcon.stroke).toBe('rgb(0, 0, 0)');\n });\n });\n\n describe('\"checked\" toggle styles', () => {\n it('sets proper label styles', async () => {\n page = await setupPage('type=\"toggle\" checked');\n const label = await (await page.find('q2-checkbox >>> .label-text')).getComputedStyle();\n expect(label.fontWeight).toBe('600');\n });\n it('sets proper toggle-track styles', async () => {\n page = await setupPage('type=\"toggle\" checked');\n const toggleTrack = await (await page.find('q2-checkbox >>> .toggle-track')).getComputedStyle();\n expect(toggleTrack.border).toBe('0px none rgb(0, 0, 0)');\n expect(toggleTrack.fill).toBe('rgb(106, 74, 158)');\n });\n it('sets proper toggle-indicator styles', async () => {\n page = await setupPage('type=\"toggle\" checked');\n const toggleIndicator = await (\n await page.find('q2-checkbox >>> .toggle-indicator')\n ).getComputedStyle();\n expect(toggleIndicator.left).toBe('18px');\n });\n it('sets proper toggle-circle styles', async () => {\n page = await setupPage('type=\"toggle\" checked');\n const toggleCircle = await (\n await page.find('q2-checkbox >>> .toggle-circle')\n ).getComputedStyle();\n expect(toggleCircle.mask).toBe('url(\"#checkMask\")');\n expect(toggleCircle.fill).toBe('rgb(255, 255, 255)');\n });\n });\n });\n });\n\n describe('checked', () => {\n it('toggles the checked attribute when clicked', async () => {\n page = await setupPage('label=\"My Checkbox\"');\n const checkbox = await page.find('q2-checkbox');\n\n expect(checkbox).not.toHaveAttribute('checked');\n const innerInput = await page.find('q2-checkbox >>> input');\n await innerInput.press('Space');\n await page.waitForChanges();\n expect(checkbox).toHaveAttribute('checked');\n });\n\n it('handles checked state', async () => {\n page = await setupPage('checked');\n const innerCheckbox = await page.find('q2-checkbox >>> input');\n\n expect(await innerCheckbox.getProperty('checked')).toEqual(true);\n\n let checkboxFill = await page.find('q2-checkbox >>> .checkbox-fill');\n\n expect(checkboxFill).not.toBeNull();\n expect(checkboxFill).toHaveClass('checked-fill');\n\n const checkbox = await page.find('q2-checkbox');\n checkbox.setProperty('checked', false);\n await page.waitForChanges();\n checkboxFill = await page.find('q2-checkbox >>> .checkbox-fill');\n\n expect(checkboxFill).toBeNull();\n });\n });\n\n describe('name', () => {\n it('binds the name property', async () => {\n page = await setupPage();\n const innerCheckbox = await page.find('q2-checkbox >>> input');\n const innerCheckboxId = innerCheckbox.getAttribute('id');\n\n expect(innerCheckbox.getAttribute('name')).toEqual(innerCheckboxId);\n\n const checkbox = await page.find('q2-checkbox');\n checkbox.setProperty('name', 'checkboxname');\n await page.waitForChanges();\n\n expect(innerCheckbox.getAttribute('name')).toEqual('checkboxname');\n });\n });\n\n describe('indeterminate', () => {\n it('handles indeterminate state', async () => {\n page = await setupPage('indeterminate');\n const innerCheckbox = await page.find('q2-checkbox >>> input');\n\n expect(await innerCheckbox.getProperty('checked')).toEqual(true);\n\n let checkboxFill = await page.find('q2-checkbox >>> .checkbox-fill');\n\n expect(checkboxFill).not.toBeNull();\n expect(checkboxFill).toHaveClass('indeterminate-fill');\n\n const checkbox = await page.find('q2-checkbox');\n checkbox.setProperty('checked', true);\n await page.waitForChanges();\n checkboxFill = await page.find('q2-checkbox >>> .checkbox-fill');\n\n // indeterminance takes precedence over checked\n expect(checkboxFill).not.toBeNull();\n expect(checkboxFill).toHaveClass('indeterminate-fill');\n expect(checkboxFill).not.toHaveClass('checked-fill');\n\n checkbox.setProperty('indeterminate', false);\n checkbox.setProperty('checked', false);\n await page.waitForChanges();\n checkboxFill = await page.find('q2-checkbox >>> .checkbox-fill');\n\n expect(checkboxFill).toBeNull();\n });\n });\n });\n\n describe('Localization', () => {\n it('localizes appropriate attribute strings', async () => {\n page = await setupPage();\n await setTestStrings(page, {\n 'q2-checkbox.label': 'Label Text',\n 'q2-checkbox.ariaLabel': 'Aria-Label Text',\n });\n const checkbox = await page.find('q2-checkbox');\n checkbox.setProperty('ariaLabel', 'q2-checkbox.ariaLabel');\n await page.waitForChanges();\n const innerLabel = await page.find('q2-checkbox >>> .label-text');\n\n expect(innerLabel).toEqualText('Aria-Label Text');\n\n checkbox.setProperty('label', 'q2-checkbox.label');\n checkbox.setProperty('hideLabel', false);\n await page.waitForChanges();\n\n expect(innerLabel.innerText).toEqual('Label Text');\n });\n });\n\n describe('focus transferring', () => {\n it('focuses when focus event dispatched ', async () => {\n page = await setupPage();\n await dispatchEvent(page, ['q2-checkbox'], 'focus');\n const innerActiveTestId = async (page: E2EPage) => {\n return page.$eval('q2-checkbox', el => {\n return el.shadowRoot.activeElement?.getAttribute('test-id');\n });\n };\n\n expect(await innerActiveTestId(page)).toEqual('q2CheckboxInnerCheckBox');\n });\n\n it('focuses when focus method called ', async () => {\n page = await setupPage();\n await dispatchEvent(page, ['q2-checkbox'], 'focus');\n const checkbox = await page.find('q2-checkbox');\n await checkbox.triggerEvent('focus');\n await page.waitForChanges();\n const innerActiveTestId = async (page: E2EPage) => {\n return page.$eval('q2-checkbox', el => {\n return el.shadowRoot.activeElement?.getAttribute('test-id');\n });\n };\n\n expect(await innerActiveTestId(page)).toEqual('q2CheckboxInnerCheckBox');\n });\n });\n\n describe('Hover behavior', () => {\n describe('checkbox type=\"toggle\" hover state', () => {\n it('sets proper hover styles when \"unchecked\"', async () => {\n page = await setupPage('type=\"toggle\"');\n await page.hover('q2-checkbox >>> .toggle-svg-container');\n await page.waitForChanges();\n\n const label = await (await page.find('q2-checkbox >>> .label-text')).getComputedStyle();\n const toggleTrack = await (await page.find('q2-checkbox >>> .toggle-track')).getComputedStyle();\n const toggleCircle = await (await page.find('q2-checkbox >>> .toggle-circle')).getComputedStyle();\n const toggleIndicator = await (await page.find('q2-checkbox >>> .toggle-indicator')).getComputedStyle();\n const boxShadowWidth = toggleTrack.boxShadow.split(' ').find(value => {\n return value.endsWith('px') && Number(value.replace('px', ''));\n });\n expect(label.fontWeight).toBe('400');\n expect(toggleCircle.fill).not.toBe('rgb(128, 128, 128)');\n expect(Number(boxShadowWidth.replace('px', ''))).toBeGreaterThan(1);\n expect(Math.round(Number(toggleIndicator.height.replace('px', '')))).toBe(18);\n expect(Math.round(Number(toggleIndicator.width.replace('px', '')))).toBe(18);\n });\n it('sets proper hover styles when \"checked\"', async () => {\n page = await setupPage('type=\"toggle\" checked');\n await page.hover('q2-checkbox >>> .toggle-svg-container');\n await page.waitForChanges();\n const label = await (await page.find('q2-checkbox >>> .label-text')).getComputedStyle();\n const toggleTrack = await (await page.find('q2-checkbox >>> .toggle-track')).getComputedStyle();\n const toggleIndicator = await (await page.find('q2-checkbox >>> .toggle-indicator')).getComputedStyle();\n\n expect(label.fontWeight).toBe('600');\n expect(toggleTrack.fill).not.toBe('rgb(106, 74, 158)');\n expect(Math.round(Number(toggleIndicator.height.replace('px', '')))).toBe(18);\n expect(Math.round(Number(toggleIndicator.width.replace('px', '')))).toBe(18);\n });\n });\n describe('default checkbox hover state', () => {\n describe('when not provided custom variables', () => {\n it('does not alter stroke color', async () => {\n page = await setupPage('label=\"My Checkbox\"');\n const box = await page.find('q2-checkbox >>> .checkbox-icon');\n normalStyle = await box.getComputedStyle();\n\n await page.hover('q2-checkbox');\n await page.waitForChanges();\n hoverStyle = await box.getComputedStyle();\n\n expect(normalStyle.stroke).toEqual(hoverStyle.stroke);\n });\n it('does not alter label font-weight', async () => {\n page = await setupPage('label=\"My Checkbox\"');\n const label = await page.find('q2-checkbox >>> .label-text');\n normalStyle = await label.getComputedStyle();\n\n expect(normalStyle.fontWeight).toEqual('400');\n\n await page.hover('q2-checkbox');\n await page.waitForChanges();\n hoverStyle = await label.getComputedStyle();\n\n expect(normalStyle.fontWeight).toEqual(hoverStyle.fontWeight);\n });\n });\n describe('when provided custom variables', () => {\n it('applies altered stroke color ', async () => {\n page = await setupPage('label=\"My Checkbox\"');\n const box = await page.find('q2-checkbox >>> .checkbox-icon');\n normalStyle = await box.getComputedStyle();\n\n expect(normalStyle.stroke).toEqual('rgb(148, 148, 148)');\n\n await page.$eval('q2-checkbox', (el: HTMLElement) => {\n el.style.setProperty('--tct-checkbox-hover-outer-stroke-color', 'rgb(0, 0, 255)');\n });\n await page.hover('q2-checkbox');\n await page.waitForChanges();\n hoverStyle = await box.getComputedStyle();\n\n expect(hoverStyle.stroke).toEqual('rgb(0, 0, 255)');\n });\n it('applies altered label font-weight', async () => {\n page = await setupPage('label=\"My Checkbox\"');\n const label = await page.find('q2-checkbox >>> .label-text');\n normalStyle = await label.getComputedStyle();\n\n expect(normalStyle.fontWeight).toEqual('400');\n\n await page.$eval('q2-checkbox', (el: HTMLElement) => {\n el.style.setProperty('--tct-checkbox-hover-label-font-weight', '800');\n });\n await page.hover('q2-checkbox');\n await page.waitForChanges();\n hoverStyle = await label.getComputedStyle();\n\n expect(hoverStyle.fontWeight).toEqual('800');\n });\n });\n });\n describe('checkbox type=\"favorite\" hover state', () => {\n describe('when not provided custom variables', () => {\n it('does not alter stroke color', async () => {\n page = await setupPage('label=\"My Checkbox\" type=\"favorite\"');\n const box = await page.find('q2-checkbox >>> q2-icon');\n normalStyle = await box.getComputedStyle();\n\n await page.hover('q2-checkbox');\n await page.waitForChanges();\n hoverStyle = await box.getComputedStyle();\n\n expect(normalStyle.stroke).toEqual(hoverStyle.stroke);\n });\n it('does not alter label font-weight', async () => {\n page = await setupPage('label=\"My Checkbox\" type=\"favorite\"');\n const label = await page.find('q2-checkbox >>> .label-text');\n normalStyle = await label.getComputedStyle();\n\n expect(normalStyle.fontWeight).toEqual('400');\n\n await page.hover('q2-checkbox');\n await page.waitForChanges();\n hoverStyle = await label.getComputedStyle();\n\n expect(normalStyle.fontWeight).toEqual(hoverStyle.fontWeight);\n });\n });\n describe('when provided custom variables', () => {\n it('applies altered stroke color ', async () => {\n page = await setupPage('label=\"My Checkbox\" type=\"favorite\"');\n const box = await page.find('q2-checkbox >>> .checkbox-icon');\n await page.waitForChanges();\n normalStyle = await box.getComputedStyle();\n\n expect(normalStyle.stroke).toEqual('rgb(148, 148, 148)');\n\n await page.$eval('q2-checkbox', (el: HTMLElement) => {\n el.style.setProperty('--tct-checkbox-favorite-hover-stroke-color', 'rgb(0, 0, 255)');\n });\n\n await page.hover('q2-checkbox');\n await page.waitForChanges();\n hoverStyle = await page.$eval('q2-checkbox >>> q2-icon', e => {\n const svg = e.shadowRoot.querySelector('svg');\n const path = svg.querySelector('path');\n const style = window.getComputedStyle(path);\n return style.stroke;\n });\n\n expect(hoverStyle).toEqual('rgb(0, 0, 255)');\n });\n it('applies altered label font-weight', async () => {\n page = await setupPage('label=\"My Checkbox\" type=\"favorite\"');\n const label = await page.find('q2-checkbox >>> .label-text');\n await page.waitForChanges();\n normalStyle = await label.getComputedStyle();\n\n expect(normalStyle.fontWeight).toEqual('400');\n\n await page.$eval('q2-checkbox', (el: HTMLElement) => {\n el.style.setProperty('--tct-checkbox-hover-label-font-weight', '800');\n });\n await page.hover('q2-checkbox');\n await page.waitForChanges();\n hoverStyle = await label.getComputedStyle();\n\n expect(hoverStyle.fontWeight).toEqual('800');\n });\n });\n });\n });\n\n describe('Events', () => {\n describe('change', () => {\n describe('when event is added as a property', () => {\n it('does not update checked attribute if preventDefault is called', async () => {\n page = await setup({\n html: `\n <script>\n function onClick(event) {\n event.preventDefault();\n }\n </script>\n <q2-checkbox value=\"foo-onchange-dummy\" onclick=\"onClick(event)\"></q2-checkbox>\n `,\n });\n const checkbox = await page.find('q2-checkbox');\n const changeSpy = await checkbox.spyOnEvent('change');\n const innerLabel = await page.find('q2-checkbox >>> label');\n\n expect(await isChecked(page)).toBe(false);\n\n await innerLabel.click();\n await page.waitForChanges();\n\n expect(await isChecked(page)).toBe(false);\n expect(await checkbox.getProperty('checked')).toEqual(false);\n expect(changeSpy).not.toHaveReceivedEvent();\n });\n\n it('does not update checked property if not done in the handler', async () => {\n page = await setup({\n html: `\n <script>\n function onChange() {}\n </script>\n <q2-checkbox value=\"foo-onchange-dummy\" onchange=\"onChange(event)\"></q2-checkbox>\n `,\n });\n const checkbox = await page.find('q2-checkbox');\n const changeSpy = await checkbox.spyOnEvent('change');\n const innerLabel = await page.find('q2-checkbox >>> label');\n\n expect(await isChecked(page)).toBe(false);\n expect(await checkbox.getProperty('checked')).toBe(false);\n\n await innerLabel.click();\n await page.waitForChanges();\n\n expect(await isChecked(page)).toBe(false);\n expect(await checkbox.getProperty('checked')).toEqual(false);\n expect(changeSpy).toHaveReceivedEventDetail({ checked: true, value: 'foo-onchange-dummy' });\n });\n\n it('updates the checked attribute when done in the handler', async () => {\n page = await setup({\n html: `\n <script>\n function onChange(event) {\n event.target.checked = event.detail.checked;\n }\n </script>\n <q2-checkbox value=\"foo-onchange-dummy\" onchange=\"onChange(event)\"></q2-checkbox>\n `,\n });\n const checkbox = await page.find('q2-checkbox');\n const changeSpy = await checkbox.spyOnEvent('change');\n const innerLabel = await page.find('q2-checkbox >>> label');\n\n expect(await isChecked(page)).toBe(false);\n\n await innerLabel.click();\n await page.waitForChanges();\n\n expect(await isChecked(page)).toBe(true);\n expect(await checkbox.getProperty('checked')).toEqual(true);\n expect(changeSpy).toHaveReceivedEventDetail({ checked: true, value: 'foo-onchange-dummy' });\n });\n\n it('forces the checked attribute to false when done in the handler', async () => {\n page = await setup({\n html: `\n <script>\n function onChange(event) {\n event.target.checked = false;\n }\n </script>\n <q2-checkbox value=\"foo-onchange-dummy\" onchange=\"onChange(event)\"></q2-checkbox>\n `,\n });\n\n const checkbox = await page.find('q2-checkbox');\n const changeSpy = await checkbox.spyOnEvent('change');\n const innerLabel = await page.find('q2-checkbox >>> label');\n\n expect(await isChecked(page)).toBe(false);\n\n await innerLabel.click();\n await page.waitForChanges();\n\n expect(await isChecked(page)).toBe(false);\n expect(await checkbox.getProperty('checked')).toEqual(false);\n expect(changeSpy).toHaveReceivedEventDetail({ checked: true, value: 'foo-onchange-dummy' });\n });\n });\n\n describe('when event is added via addEventListener', () => {\n it('mutates the value when event is added via addEventListener but does not call preventDefault', async () => {\n page = await setup({\n html: `\n <q2-checkbox value=\"foo-onchange-dummy\"></q2-checkbox>\n <script>\n function onChange() {\n }\n document.querySelector(\"q2-checkbox\").addEventListener(\"change\", onChange);\n </script>\n `,\n });\n const checkbox = await page.find('q2-checkbox');\n const changeSpy = await checkbox.spyOnEvent('change');\n const innerLabel = await page.find('q2-checkbox >>> label');\n\n expect(await isChecked(page)).toBe(false);\n\n await innerLabel.click();\n await page.waitForChanges();\n\n expect(await isChecked(page)).toBe(true);\n expect(await checkbox.getProperty('checked')).toEqual(true);\n expect(changeSpy).toHaveReceivedEventDetail({ checked: true, value: 'foo-onchange-dummy' });\n });\n\n it('does not update checked attribute if preventDefault is called', async () => {\n page = await setup({\n html: `\n <q2-checkbox value=\"foo-onchange-dummy\"></q2-checkbox>\n <script>\n function onChange(event) {\n event.preventDefault();\n }\n document.querySelector(\"q2-checkbox\").addEventListener(\"change\", onChange);\n </script>\n `,\n });\n const checkbox = await page.find('q2-checkbox');\n const changeSpy = await checkbox.spyOnEvent('change');\n const innerLabel = await page.find('q2-checkbox >>> label');\n\n expect(await isChecked(page)).toBe(false);\n\n await innerLabel.click();\n await page.waitForChanges();\n\n expect(await isChecked(page)).toBe(false);\n expect(await checkbox.getProperty('checked')).toEqual(false);\n expect(changeSpy).toHaveReceivedEventDetail({ checked: true, value: 'foo-onchange-dummy' });\n });\n });\n });\n });\n\n describe('Slots', () => {\n it('allows slotted content', async () => {\n page = await setup({\n html: `\n <q2-checkbox value=\"1\" label=\"Label\">\n <p>A yielded label</p>\n </q2-checkbox>\n `,\n });\n const { slottedText, slottedTag } = await page.$eval('q2-checkbox', element => {\n const slottedNode = element.shadowRoot.querySelector('slot').assignedElements()[0];\n return {\n slottedText: slottedNode.textContent,\n slottedTag: slottedNode.localName,\n };\n });\n\n expect(slottedText).toEqual('A yielded label');\n expect(slottedTag).toEqual('p');\n });\n });\n\n describe('Regressions', () => {\n it('applies font-weight to label when CSS property is updated (TCT-2246)', async () => {\n page = await setupPage('label=\"My Checkbox\"');\n const label = await page.find('q2-checkbox >>> .label-text');\n let styledLabel = await label.getComputedStyle();\n\n expect(styledLabel.fontWeight).toEqual('400');\n\n await page.$eval('q2-checkbox', (el: HTMLElement) => {\n el.style.setProperty('--tct-checkbox-label-font-weight', '800');\n });\n await page.waitForChanges();\n styledLabel = await label.getComputedStyle();\n\n expect(styledLabel.fontWeight).toEqual('800');\n });\n });\n\n describe('Deprecations', () => {\n it('handles deprecated `ariaLabel` prop', async () => {\n const label = 'My Label';\n page = await setupPage(`aria-label=\"${label}\"`);\n\n await testDeprecatedAriaLabel(await page.find('q2-checkbox'), label);\n const innerLabel = await page.find('q2-checkbox >>> .label-text');\n\n expect(innerLabel).toHaveClass('sr');\n });\n });\n\n describe('Accessibility', () => {\n describe('aXe DevTools', () => {\n it('does not have accessibility violations', async () => {\n const page = await setupPage(`label=\"${label}\"`);\n const hasViolations = await evaluateA11y(page);\n expect(hasViolations).toBe(false);\n });\n });\n describe('Accessibility Tree', () => {});\n describe('Keyboard Controls', () => {});\n describe('Other', () => {\n it('binds aria-label when provided and no label present', async () => {\n page = await setupPage('aria-label=\"Aria-Label Text\"');\n const checkbox = await page.find('q2-checkbox');\n const labelContent = await page.find('q2-checkbox >>> .label-text');\n\n expect(labelContent).toHaveClass('sr');\n expect(labelContent).toEqualText('Aria-Label Text');\n\n checkbox.setProperty('label', 'Label Text');\n checkbox.setProperty('hideLabel', false);\n await page.waitForChanges();\n\n expect(labelContent).not.toHaveClass('sr');\n expect(labelContent).toEqualText('Label Text');\n });\n });\n });\n});\n"]}
1
+ {"version":3,"file":"q2-checkbox-test.e2e.js","sourceRoot":"","sources":["../../../../../src/components/q2-checkbox/test/q2-checkbox-test.e2e.ts"],"names":[],"mappings":"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","sourcesContent":["import { E2EPage } from '@stencil/core/testing';\nimport {\n setTestStrings,\n setup,\n dispatchEvent,\n testDeprecatedAriaLabel,\n getActiveElementTestId,\n getListOfStyleCompilationIssues,\n evaluateA11y,\n} from '@/utils/helpers';\n\ndescribe('q2-checkbox', () => {\n let page: E2EPage;\n let normalStyle;\n let hoverStyle;\n const label = 'My Checkbox';\n\n const setupPage = async (props: string = '') => {\n props = props ? ` ${props}` : '';\n page = await setup({\n html: `<q2-checkbox ${props}></q2-checkbox>`,\n });\n await page.waitForChanges();\n\n return page;\n };\n\n const isChecked = async (page: E2EPage) => {\n return page.$eval('q2-checkbox', el => el.shadowRoot.querySelector('input')?.checked ?? false);\n };\n\n it('properly compiles CSS vars and functions', async () => {\n const page = await setupPage(`label=\"${label}\"`);\n expect(await getListOfStyleCompilationIssues(page, 'q2-checkbox')).toHaveLength(0);\n });\n\n it('renders checkbox with label and unchecked checkbox', async () => {\n const page = await setupPage(`label=\"${label}\" value=\"1\"`);\n const foundLabel = await page.find('q2-checkbox >>> .label-text');\n const innerCheckbox = await page.find('q2-checkbox >>> input');\n\n expect(foundLabel).not.toBeNull();\n expect(foundLabel.innerText).toEqual('My Checkbox');\n expect(await innerCheckbox.getProperty('value')).toEqual('1');\n });\n\n describe('Methods', () => {\n describe('click', () => {\n it('selects the checkbox when called', async () => {\n page = await setupPage('label=\"My Checkbox\"');\n const checkbox = await page.find('q2-checkbox');\n const changeSpy = await checkbox.spyOnEvent('change');\n\n expect(await getActiveElementTestId(page)).toBeNull();\n expect(await isChecked(page)).toBe(false);\n expect(checkbox).not.toHaveAttribute('checked');\n\n await page.$eval('q2-checkbox', el => el.click());\n await page.waitForChanges();\n\n expect(await isChecked(page)).toBe(true);\n expect(checkbox).toHaveAttribute('checked');\n expect(changeSpy).toHaveReceivedEventDetail({ checked: true, value: 'on' });\n expect(await getActiveElementTestId(page)).toEqual('q2CheckboxInnerCheckBox');\n });\n\n it('does not select the checkbox when readonly', async () => {\n const page = await setup({\n html: `<q2-checkbox label=\"Label\" readonly></q2-checkbox>`,\n });\n const checkbox = await page.find('q2-checkbox');\n const innerCheckbox = await page.find('q2-checkbox >>> input');\n\n expect(await getActiveElementTestId(page)).toBeNull();\n expect(checkbox).not.toHaveAttribute('checked');\n expect(innerCheckbox).not.toHaveAttribute('checked');\n\n await page.$eval('q2-checkbox', el => el.click());\n await page.waitForChanges();\n\n expect(checkbox).not.toHaveAttribute('checked');\n expect(innerCheckbox).not.toHaveAttribute('checked');\n });\n\n it('does not select the checkbox when disabled', async () => {\n const page = await setup({\n html: `<q2-checkbox label=\"Label\" disabled></q2-checkbox>`,\n });\n const checkbox = await page.find('q2-checkbox');\n const innerCheckbox = await page.find('q2-checkbox >>> input');\n\n expect(checkbox).not.toHaveAttribute('checked');\n expect(innerCheckbox).not.toHaveAttribute('checked');\n\n await page.$eval('q2-checkbox', (el: HTMLQ2CheckboxElement) => el.click());\n await page.waitForChanges();\n\n expect(checkbox).not.toHaveAttribute('checked');\n expect(innerCheckbox).not.toHaveAttribute('checked');\n expect(await getActiveElementTestId(page)).toBeNull();\n });\n });\n });\n\n describe('Props', () => {\n describe('description', () => {\n describe('when not provided', () => {\n it('adds the description markup', async () => {\n page = await setupPage('label=\"My Checkbox\"');\n const description = await page.find('q2-checkbox >>> .description-text');\n const input = await page.find('q2-checkbox >>> input');\n\n expect(description).toBeNull();\n expect(input).not.toHaveAttribute('aria-describedby');\n });\n });\n describe('when provided', () => {\n it('adds the description markup', async () => {\n page = await setupPage('label=\"My Checkbox\" description=\"Hello world\"');\n const description = await page.find('q2-checkbox >>> .description-text');\n const input = await page.find('q2-checkbox >>> input');\n\n expect(description).toEqualText('Hello world');\n expect(input).toEqualAttribute('aria-describedby', 'description');\n });\n });\n });\n describe('groupDisabled', () => {\n it('adds the disabled attribute to the checkbox when present', async () => {\n page = await setupPage('label=\"My Checkbox\" group-disabled');\n const innerInput = await page.find('q2-checkbox >>> input');\n\n expect(innerInput).toHaveAttribute('disabled');\n });\n });\n describe('hasError', () => {\n describe('when provided', () => {\n it('sets aria-invalid to true', async () => {\n page = await setupPage('has-error');\n const innerCheckbox = await page.find('q2-checkbox >>> input');\n\n expect(innerCheckbox.getAttribute('aria-invalid')).toBe('true');\n });\n });\n describe('when not provided', () => {\n it('sets aria-invalid to false', async () => {\n page = await setupPage();\n const innerCheckbox = await page.find('q2-checkbox >>> input');\n\n expect(innerCheckbox.getAttribute('aria-invalid')).toBe('false');\n });\n });\n });\n describe('readonly', () => {\n const clickCheckbox = async (page: E2EPage) => {\n await page.$eval('q2-checkbox', (el: HTMLQ2CheckboxElement) => el.click());\n await page.waitForChanges();\n };\n\n describe('set to true', () => {\n it('click check icon should not work', async () => {\n page = await setupPage('label=\"My Checkbox\" value=\"1\"');\n const element = await page.find('q2-checkbox');\n await element.setProperty('readonly', true);\n await page.waitForChanges();\n const checkbox = await page.find('q2-checkbox >>> .checkbox-icon');\n await checkbox.click();\n await page.waitForChanges();\n\n expect(await element.getProperty('checked')).toBeFalsy();\n });\n it('click label text should not work', async () => {\n page = await setupPage('label=\"My Checkbox\" value=\"1\"');\n const element = await page.find('q2-checkbox');\n await element.setProperty('readonly', true);\n await page.waitForChanges();\n const checkLabelText = await page.find('q2-checkbox >>> .label-text');\n await checkLabelText.click();\n await page.waitForChanges();\n\n expect(await element.getProperty('checked')).toBeFalsy();\n });\n it('on load does not check the checkbox when clicked', async () => {\n page = await setupPage('label=\"My Checkbox\" readonly');\n const checkbox = await page.find('q2-checkbox');\n\n expect(await isChecked(page)).toBe(false);\n expect(checkbox).not.toHaveAttribute('checked');\n\n await clickCheckbox(page);\n\n expect(await isChecked(page)).toBe(false);\n expect(checkbox).not.toHaveAttribute('checked');\n });\n it('after load does not check the checkbox when clicked', async () => {\n page = await setupPage('label=\"My Checkbox\"');\n const checkbox = await page.find('q2-checkbox');\n\n expect(await isChecked(page)).toBe(false);\n expect(checkbox).not.toHaveAttribute('checked');\n\n checkbox.setProperty('readonly', true);\n await page.waitForChanges();\n await clickCheckbox(page);\n\n expect(await isChecked(page)).toBe(false);\n expect(checkbox).not.toHaveAttribute('checked');\n });\n });\n describe('set to false', () => {\n it('on load checks the checkbox when clicked', async () => {\n page = await setupPage('label=\"My Checkbox\"');\n const checkbox = await page.find('q2-checkbox');\n\n expect(await isChecked(page)).toBe(false);\n expect(checkbox).not.toHaveAttribute('checked');\n\n await clickCheckbox(page);\n\n expect(await isChecked(page)).toBe(true);\n expect(checkbox).toHaveAttribute('checked');\n });\n it('after load checks the checkbox when clicked', async () => {\n page = await setupPage('label=\"My Checkbox\" readonly');\n const checkbox = await page.find('q2-checkbox');\n\n expect(await isChecked(page)).toBe(false);\n expect(checkbox).not.toHaveAttribute('checked');\n\n checkbox.setProperty('readonly', false);\n await page.waitForChanges();\n await clickCheckbox(page);\n\n expect(await isChecked(page)).toBe(true);\n expect(checkbox).toHaveAttribute('checked');\n });\n });\n });\n\n describe('label', () => {\n describe('when overflows width,', () => {\n it('hyphenates label content', async () => {\n const page = await setup({\n html: `<q2-checkbox label=\"Short Label, Hey\"></q2-checkbox>`,\n });\n const checkbox = await page.find('q2-checkbox ');\n\n const { shortLabelHeight } = await page.$eval('q2-checkbox', element => {\n const labelText = element.shadowRoot.querySelector<HTMLElement>('.label-text');\n return {\n shortLabelHeight: labelText.clientHeight,\n };\n });\n\n checkbox.setProperty(\n 'label',\n 'Life-forms living together for mutual advantage. Without the midi-chlorians, life could not exist and we would have no knowledge of the Force. They continually speak to us, telling us the will of the Force. When you learn to quiet your mind, youll hear them speaking to you.'\n );\n\n await page.waitForChanges();\n\n const { longLabelHeight } = await page.$eval('q2-checkbox', element => {\n const labelText = element.shadowRoot.querySelector<HTMLElement>('.label-text');\n return {\n longLabelHeight: labelText.clientHeight,\n };\n });\n\n expect(shortLabelHeight).toBeLessThan(longLabelHeight);\n });\n });\n });\n\n describe('type', () => {\n describe('when not set (default)', () => {\n it('renders the unchecked state', async () => {\n page = await setupPage();\n const label = await (await page.find('q2-checkbox >>> .label-text')).getComputedStyle();\n const checkboxFill = await page.find('q2-checkbox >>> .checkbox-fill');\n expect(label.fontWeight).toBe('400');\n expect(checkboxFill).toBeNull();\n });\n\n describe('when \"checked\" attribute is present', () => {\n it('renders the checked state', async () => {\n page = await setupPage('checked');\n const label = await (await page.find('q2-checkbox >>> .label-text')).getComputedStyle();\n const checkboxFill = await page.find('q2-checkbox >>> .checkbox-fill');\n expect(label.fontWeight).toBe('600');\n expect(checkboxFill).toBeTruthy();\n });\n\n it('applies necessary styles when hovered', async () => {\n page = await setupPage('checked');\n await page.hover('q2-checkbox >>> .checkbox-fill');\n await page.waitForChanges();\n const label = await (await page.find('q2-checkbox >>> .label-text')).getComputedStyle();\n const checkboxFill = await page.find('q2-checkbox >>> .checkbox-fill');\n expect(label.fontWeight).toBe('600');\n expect(checkboxFill).toBeTruthy();\n });\n\n it('renders the unchecked state when checked=\"false\"', async () => {\n page = await setupPage('checked=\"false\"');\n const label = await (await page.find('q2-checkbox >>> .label-text')).getComputedStyle();\n const checkboxFill = await page.find('q2-checkbox >>> .checkbox-fill');\n expect(label.fontWeight).toBe('400');\n expect(checkboxFill).toBeNull();\n });\n });\n });\n\n describe('when type is \"favorite\"', () => {\n it('renders the star icon for type=\"favorite\"', async () => {\n page = await setupPage();\n let svg = await page.find('q2-checkbox >>> .checkbox-icon');\n\n expect(svg.tagName).toEqual('svg');\n\n const checkbox = await page.find('q2-checkbox');\n checkbox.setProperty('type', 'favorite');\n await page.waitForChanges();\n svg = await page.find('q2-checkbox >>> .checkbox-icon');\n\n expect(svg.tagName).toEqual('Q2-ICON');\n expect(svg.getAttribute('type')).toEqual('star');\n });\n });\n\n describe(\"when type is 'toggle'\", () => {\n it('renders the toggle for type=\"toggle\"', async () => {\n page = await setupPage();\n let toggleSVG = await page.find('q2-checkbox >>> .toggle-svg-container');\n\n expect(toggleSVG).toBeNull();\n\n const checkbox = await page.find('q2-checkbox');\n checkbox.setProperty('type', 'toggle');\n await page.waitForChanges();\n toggleSVG = await page.find('q2-checkbox >>> .toggle-svg-container');\n\n expect(toggleSVG).not.toBeNull();\n });\n describe('\"unchecked\" toggle styles', () => {\n it('sets proper label styles', async () => {\n page = await setupPage('type=\"toggle\"');\n\n const labelStyles = await (await page.find('q2-checkbox >>> .label-text')).getComputedStyle();\n expect(labelStyles.fontWeight).toBe('400');\n });\n it('sets proper toggle-svg-container styles', async () => {\n page = await setupPage('type=\"toggle\"');\n const toggleStyles = await (\n await page.find('q2-checkbox >>> .toggle-svg-container')\n ).getComputedStyle();\n expect(toggleStyles.height).toBe('30px');\n expect(toggleStyles.width).toBe('38px');\n });\n it('sets proper toggle-indicator styles', async () => {\n page = await setupPage('type=\"toggle\"');\n const toggleIndicator = await (\n await page.find('q2-checkbox >>> .toggle-indicator')\n ).getComputedStyle();\n expect(toggleIndicator.height).toBe('16px');\n expect(toggleIndicator.width).toBe('16px');\n expect(toggleIndicator.left).toBe('4px');\n });\n it('sets proper toggle-track styles', async () => {\n page = await setupPage('type=\"toggle\"');\n const toggleTrack = await (await page.find('q2-checkbox >>> .toggle-track')).getComputedStyle();\n\n expect(toggleTrack.height).toBe('24px');\n expect(toggleTrack.width).toBe('38px');\n expect(toggleTrack.borderRadius).toBe('12px');\n expect(toggleTrack.boxShadow).toBe('rgb(128, 128, 128) 0px 0px 0px 1px inset');\n });\n\n it('sets proper toggle-circle styles', async () => {\n page = await setupPage('type=\"toggle\"');\n const toggleCircle = await (\n await page.find('q2-checkbox >>> .toggle-circle')\n ).getComputedStyle();\n expect(toggleCircle.mask).toBe('url(\"#xMask\")');\n });\n\n it('sets proper toggle-icon styles', async () => {\n page = await setupPage('type=\"toggle\"');\n const toggleIcon = await (await page.find('q2-checkbox >>> .toggle-icon')).getComputedStyle();\n expect(toggleIcon.strokeLinecap).toBe('round');\n expect(toggleIcon.strokeLinejoin).toBe('round');\n expect(toggleIcon.strokeWidth).toBe('2px');\n expect(toggleIcon.stroke).toBe('rgb(0, 0, 0)');\n });\n });\n\n describe('\"checked\" toggle styles', () => {\n it('sets proper label styles', async () => {\n page = await setupPage('type=\"toggle\" checked');\n const label = await (await page.find('q2-checkbox >>> .label-text')).getComputedStyle();\n expect(label.fontWeight).toBe('600');\n });\n it('sets proper toggle-track styles', async () => {\n page = await setupPage('type=\"toggle\" checked');\n const toggleTrack = await (await page.find('q2-checkbox >>> .toggle-track')).getComputedStyle();\n expect(toggleTrack.border).toBe('0px none rgb(0, 0, 0)');\n expect(toggleTrack.fill).toBe('rgb(106, 74, 158)');\n });\n it('sets proper toggle-indicator styles', async () => {\n page = await setupPage('type=\"toggle\" checked');\n const toggleIndicator = await (\n await page.find('q2-checkbox >>> .toggle-indicator')\n ).getComputedStyle();\n expect(toggleIndicator.left).toBe('18px');\n });\n it('sets proper toggle-circle styles', async () => {\n page = await setupPage('type=\"toggle\" checked');\n const toggleCircle = await (\n await page.find('q2-checkbox >>> .toggle-circle')\n ).getComputedStyle();\n expect(toggleCircle.mask).toBe('url(\"#checkMask\")');\n expect(toggleCircle.fill).toBe('rgb(255, 255, 255)');\n });\n it('sets proper toggle-circle mask with checked and disabled', async () => {\n page = await setupPage('type=\"toggle\" checked disabled');\n const toggleCircle = await (\n await page.find('q2-checkbox >>> .toggle-circle')\n ).getComputedStyle();\n expect(toggleCircle.mask).toBe('url(\"#checkMask\")');\n });\n it('sets proper toggle-circle mask with unchecked and disabled', async () => {\n page = await setupPage('type=\"toggle\" disabled');\n const toggleCircle = await (\n await page.find('q2-checkbox >>> .toggle-circle')\n ).getComputedStyle();\n expect(toggleCircle.mask).toBe('url(\"#xMask\")');\n });\n });\n });\n });\n\n describe('checked', () => {\n it('toggles the checked attribute when clicked', async () => {\n page = await setupPage('label=\"My Checkbox\"');\n const checkbox = await page.find('q2-checkbox');\n\n expect(checkbox).not.toHaveAttribute('checked');\n const innerInput = await page.find('q2-checkbox >>> input');\n await innerInput.press('Space');\n await page.waitForChanges();\n expect(checkbox).toHaveAttribute('checked');\n });\n\n it('handles checked state', async () => {\n page = await setupPage('checked');\n const innerCheckbox = await page.find('q2-checkbox >>> input');\n\n expect(await innerCheckbox.getProperty('checked')).toEqual(true);\n\n let checkboxFill = await page.find('q2-checkbox >>> .checkbox-fill');\n\n expect(checkboxFill).not.toBeNull();\n expect(checkboxFill).toHaveClass('checked-fill');\n\n const checkbox = await page.find('q2-checkbox');\n checkbox.setProperty('checked', false);\n await page.waitForChanges();\n checkboxFill = await page.find('q2-checkbox >>> .checkbox-fill');\n\n expect(checkboxFill).toBeNull();\n });\n });\n\n describe('name', () => {\n it('binds the name property', async () => {\n page = await setupPage();\n const innerCheckbox = await page.find('q2-checkbox >>> input');\n const innerCheckboxId = innerCheckbox.getAttribute('id');\n\n expect(innerCheckbox.getAttribute('name')).toEqual(innerCheckboxId);\n\n const checkbox = await page.find('q2-checkbox');\n checkbox.setProperty('name', 'checkboxname');\n await page.waitForChanges();\n\n expect(innerCheckbox.getAttribute('name')).toEqual('checkboxname');\n });\n });\n\n describe('indeterminate', () => {\n it('handles indeterminate state', async () => {\n page = await setupPage('indeterminate');\n const innerCheckbox = await page.find('q2-checkbox >>> input');\n\n expect(await innerCheckbox.getProperty('checked')).toEqual(true);\n\n let checkboxFill = await page.find('q2-checkbox >>> .checkbox-fill');\n\n expect(checkboxFill).not.toBeNull();\n expect(checkboxFill).toHaveClass('indeterminate-fill');\n\n const checkbox = await page.find('q2-checkbox');\n checkbox.setProperty('checked', true);\n await page.waitForChanges();\n checkboxFill = await page.find('q2-checkbox >>> .checkbox-fill');\n\n // indeterminance takes precedence over checked\n expect(checkboxFill).not.toBeNull();\n expect(checkboxFill).toHaveClass('indeterminate-fill');\n expect(checkboxFill).not.toHaveClass('checked-fill');\n\n checkbox.setProperty('indeterminate', false);\n checkbox.setProperty('checked', false);\n await page.waitForChanges();\n checkboxFill = await page.find('q2-checkbox >>> .checkbox-fill');\n\n expect(checkboxFill).toBeNull();\n });\n });\n });\n\n describe('Localization', () => {\n it('localizes appropriate attribute strings', async () => {\n page = await setupPage();\n await setTestStrings(page, {\n 'q2-checkbox.label': 'Label Text',\n 'q2-checkbox.ariaLabel': 'Aria-Label Text',\n });\n const checkbox = await page.find('q2-checkbox');\n checkbox.setProperty('ariaLabel', 'q2-checkbox.ariaLabel');\n await page.waitForChanges();\n const innerLabel = await page.find('q2-checkbox >>> .label-text');\n\n expect(innerLabel).toEqualText('Aria-Label Text');\n\n checkbox.setProperty('label', 'q2-checkbox.label');\n checkbox.setProperty('hideLabel', false);\n await page.waitForChanges();\n\n expect(innerLabel.innerText).toEqual('Label Text');\n });\n });\n\n describe('focus transferring', () => {\n it('focuses when focus event dispatched ', async () => {\n page = await setupPage();\n await dispatchEvent(page, ['q2-checkbox'], 'focus');\n const innerActiveTestId = async (page: E2EPage) => {\n return page.$eval('q2-checkbox', el => {\n return el.shadowRoot.activeElement?.getAttribute('test-id');\n });\n };\n\n expect(await innerActiveTestId(page)).toEqual('q2CheckboxInnerCheckBox');\n });\n\n it('focuses when focus method called ', async () => {\n page = await setupPage();\n await dispatchEvent(page, ['q2-checkbox'], 'focus');\n const checkbox = await page.find('q2-checkbox');\n await checkbox.triggerEvent('focus');\n await page.waitForChanges();\n const innerActiveTestId = async (page: E2EPage) => {\n return page.$eval('q2-checkbox', el => {\n return el.shadowRoot.activeElement?.getAttribute('test-id');\n });\n };\n\n expect(await innerActiveTestId(page)).toEqual('q2CheckboxInnerCheckBox');\n });\n });\n\n describe('Hover behavior', () => {\n describe('checkbox type=\"toggle\" hover state', () => {\n it('sets proper hover styles when \"unchecked\"', async () => {\n page = await setupPage('type=\"toggle\"');\n await page.hover('q2-checkbox >>> .toggle-svg-container');\n await page.waitForChanges();\n\n const label = await (await page.find('q2-checkbox >>> .label-text')).getComputedStyle();\n const toggleTrack = await (await page.find('q2-checkbox >>> .toggle-track')).getComputedStyle();\n const toggleCircle = await (await page.find('q2-checkbox >>> .toggle-circle')).getComputedStyle();\n const toggleIndicator = await (await page.find('q2-checkbox >>> .toggle-indicator')).getComputedStyle();\n const boxShadowWidth = toggleTrack.boxShadow.split(' ').find(value => {\n return value.endsWith('px') && Number(value.replace('px', ''));\n });\n expect(label.fontWeight).toBe('400');\n expect(toggleCircle.fill).not.toBe('rgb(128, 128, 128)');\n expect(Number(boxShadowWidth.replace('px', ''))).toBeGreaterThan(1);\n expect(Math.round(Number(toggleIndicator.height.replace('px', '')))).toBe(18);\n expect(Math.round(Number(toggleIndicator.width.replace('px', '')))).toBe(18);\n });\n it('sets proper hover styles when \"checked\"', async () => {\n page = await setupPage('type=\"toggle\" checked');\n await page.hover('q2-checkbox >>> .toggle-svg-container');\n await page.waitForChanges();\n const label = await (await page.find('q2-checkbox >>> .label-text')).getComputedStyle();\n const toggleTrack = await (await page.find('q2-checkbox >>> .toggle-track')).getComputedStyle();\n const toggleIndicator = await (await page.find('q2-checkbox >>> .toggle-indicator')).getComputedStyle();\n\n expect(label.fontWeight).toBe('600');\n expect(toggleTrack.fill).not.toBe('rgb(106, 74, 158)');\n expect(Math.round(Number(toggleIndicator.height.replace('px', '')))).toBe(18);\n expect(Math.round(Number(toggleIndicator.width.replace('px', '')))).toBe(18);\n });\n });\n describe('default checkbox hover state', () => {\n describe('when not provided custom variables', () => {\n it('does not alter stroke color', async () => {\n page = await setupPage('label=\"My Checkbox\"');\n const box = await page.find('q2-checkbox >>> .checkbox-icon');\n normalStyle = await box.getComputedStyle();\n\n await page.hover('q2-checkbox');\n await page.waitForChanges();\n hoverStyle = await box.getComputedStyle();\n\n expect(normalStyle.stroke).toEqual(hoverStyle.stroke);\n });\n it('does not alter label font-weight', async () => {\n page = await setupPage('label=\"My Checkbox\"');\n const label = await page.find('q2-checkbox >>> .label-text');\n normalStyle = await label.getComputedStyle();\n\n expect(normalStyle.fontWeight).toEqual('400');\n\n await page.hover('q2-checkbox');\n await page.waitForChanges();\n hoverStyle = await label.getComputedStyle();\n\n expect(normalStyle.fontWeight).toEqual(hoverStyle.fontWeight);\n });\n });\n describe('when provided custom variables', () => {\n it('applies altered stroke color ', async () => {\n page = await setupPage('label=\"My Checkbox\"');\n const box = await page.find('q2-checkbox >>> .checkbox-icon');\n normalStyle = await box.getComputedStyle();\n\n expect(normalStyle.stroke).toEqual('rgb(148, 148, 148)');\n\n await page.$eval('q2-checkbox', (el: HTMLElement) => {\n el.style.setProperty('--tct-checkbox-hover-outer-stroke-color', 'rgb(0, 0, 255)');\n });\n await page.hover('q2-checkbox');\n await page.waitForChanges();\n hoverStyle = await box.getComputedStyle();\n\n expect(hoverStyle.stroke).toEqual('rgb(0, 0, 255)');\n });\n it('applies altered label font-weight', async () => {\n page = await setupPage('label=\"My Checkbox\"');\n const label = await page.find('q2-checkbox >>> .label-text');\n normalStyle = await label.getComputedStyle();\n\n expect(normalStyle.fontWeight).toEqual('400');\n\n await page.$eval('q2-checkbox', (el: HTMLElement) => {\n el.style.setProperty('--tct-checkbox-hover-label-font-weight', '800');\n });\n await page.hover('q2-checkbox');\n await page.waitForChanges();\n hoverStyle = await label.getComputedStyle();\n\n expect(hoverStyle.fontWeight).toEqual('800');\n });\n });\n });\n describe('checkbox type=\"favorite\" hover state', () => {\n describe('when not provided custom variables', () => {\n it('does not alter stroke color', async () => {\n page = await setupPage('label=\"My Checkbox\" type=\"favorite\"');\n const box = await page.find('q2-checkbox >>> q2-icon');\n normalStyle = await box.getComputedStyle();\n\n await page.hover('q2-checkbox');\n await page.waitForChanges();\n hoverStyle = await box.getComputedStyle();\n\n expect(normalStyle.stroke).toEqual(hoverStyle.stroke);\n });\n it('does not alter label font-weight', async () => {\n page = await setupPage('label=\"My Checkbox\" type=\"favorite\"');\n const label = await page.find('q2-checkbox >>> .label-text');\n normalStyle = await label.getComputedStyle();\n\n expect(normalStyle.fontWeight).toEqual('400');\n\n await page.hover('q2-checkbox');\n await page.waitForChanges();\n hoverStyle = await label.getComputedStyle();\n\n expect(normalStyle.fontWeight).toEqual(hoverStyle.fontWeight);\n });\n });\n describe('when provided custom variables', () => {\n it('applies altered stroke color ', async () => {\n page = await setupPage('label=\"My Checkbox\" type=\"favorite\"');\n const box = await page.find('q2-checkbox >>> .checkbox-icon');\n await page.waitForChanges();\n normalStyle = await box.getComputedStyle();\n\n expect(normalStyle.stroke).toEqual('rgb(148, 148, 148)');\n\n await page.$eval('q2-checkbox', (el: HTMLElement) => {\n el.style.setProperty('--tct-checkbox-favorite-hover-stroke-color', 'rgb(0, 0, 255)');\n });\n\n await page.hover('q2-checkbox');\n await page.waitForChanges();\n hoverStyle = await page.$eval('q2-checkbox >>> q2-icon', e => {\n const svg = e.shadowRoot.querySelector('svg');\n const path = svg.querySelector('path');\n const style = window.getComputedStyle(path);\n return style.stroke;\n });\n\n expect(hoverStyle).toEqual('rgb(0, 0, 255)');\n });\n it('applies altered label font-weight', async () => {\n page = await setupPage('label=\"My Checkbox\" type=\"favorite\"');\n const label = await page.find('q2-checkbox >>> .label-text');\n await page.waitForChanges();\n normalStyle = await label.getComputedStyle();\n\n expect(normalStyle.fontWeight).toEqual('400');\n\n await page.$eval('q2-checkbox', (el: HTMLElement) => {\n el.style.setProperty('--tct-checkbox-hover-label-font-weight', '800');\n });\n await page.hover('q2-checkbox');\n await page.waitForChanges();\n hoverStyle = await label.getComputedStyle();\n\n expect(hoverStyle.fontWeight).toEqual('800');\n });\n });\n });\n });\n\n describe('Events', () => {\n describe('change', () => {\n describe('when event is added as a property', () => {\n it('does not update checked attribute if preventDefault is called', async () => {\n page = await setup({\n html: `\n <script>\n function onClick(event) {\n event.preventDefault();\n }\n </script>\n <q2-checkbox value=\"foo-onchange-dummy\" onclick=\"onClick(event)\"></q2-checkbox>\n `,\n });\n const checkbox = await page.find('q2-checkbox');\n const changeSpy = await checkbox.spyOnEvent('change');\n const innerLabel = await page.find('q2-checkbox >>> label');\n\n expect(await isChecked(page)).toBe(false);\n\n await innerLabel.click();\n await page.waitForChanges();\n\n expect(await isChecked(page)).toBe(false);\n expect(await checkbox.getProperty('checked')).toEqual(false);\n expect(changeSpy).not.toHaveReceivedEvent();\n });\n\n it('does not update checked property if not done in the handler', async () => {\n page = await setup({\n html: `\n <script>\n function onChange() {}\n </script>\n <q2-checkbox value=\"foo-onchange-dummy\" onchange=\"onChange(event)\"></q2-checkbox>\n `,\n });\n const checkbox = await page.find('q2-checkbox');\n const changeSpy = await checkbox.spyOnEvent('change');\n const innerLabel = await page.find('q2-checkbox >>> label');\n\n expect(await isChecked(page)).toBe(false);\n expect(await checkbox.getProperty('checked')).toBe(false);\n\n await innerLabel.click();\n await page.waitForChanges();\n\n expect(await isChecked(page)).toBe(false);\n expect(await checkbox.getProperty('checked')).toEqual(false);\n expect(changeSpy).toHaveReceivedEventDetail({ checked: true, value: 'foo-onchange-dummy' });\n });\n\n it('updates the checked attribute when done in the handler', async () => {\n page = await setup({\n html: `\n <script>\n function onChange(event) {\n event.target.checked = event.detail.checked;\n }\n </script>\n <q2-checkbox value=\"foo-onchange-dummy\" onchange=\"onChange(event)\"></q2-checkbox>\n `,\n });\n const checkbox = await page.find('q2-checkbox');\n const changeSpy = await checkbox.spyOnEvent('change');\n const innerLabel = await page.find('q2-checkbox >>> label');\n\n expect(await isChecked(page)).toBe(false);\n\n await innerLabel.click();\n await page.waitForChanges();\n\n expect(await isChecked(page)).toBe(true);\n expect(await checkbox.getProperty('checked')).toEqual(true);\n expect(changeSpy).toHaveReceivedEventDetail({ checked: true, value: 'foo-onchange-dummy' });\n });\n\n it('forces the checked attribute to false when done in the handler', async () => {\n page = await setup({\n html: `\n <script>\n function onChange(event) {\n event.target.checked = false;\n }\n </script>\n <q2-checkbox value=\"foo-onchange-dummy\" onchange=\"onChange(event)\"></q2-checkbox>\n `,\n });\n\n const checkbox = await page.find('q2-checkbox');\n const changeSpy = await checkbox.spyOnEvent('change');\n const innerLabel = await page.find('q2-checkbox >>> label');\n\n expect(await isChecked(page)).toBe(false);\n\n await innerLabel.click();\n await page.waitForChanges();\n\n expect(await isChecked(page)).toBe(false);\n expect(await checkbox.getProperty('checked')).toEqual(false);\n expect(changeSpy).toHaveReceivedEventDetail({ checked: true, value: 'foo-onchange-dummy' });\n });\n });\n\n describe('when event is added via addEventListener', () => {\n it('mutates the value when event is added via addEventListener but does not call preventDefault', async () => {\n page = await setup({\n html: `\n <q2-checkbox value=\"foo-onchange-dummy\"></q2-checkbox>\n <script>\n function onChange() {\n }\n document.querySelector(\"q2-checkbox\").addEventListener(\"change\", onChange);\n </script>\n `,\n });\n const checkbox = await page.find('q2-checkbox');\n const changeSpy = await checkbox.spyOnEvent('change');\n const innerLabel = await page.find('q2-checkbox >>> label');\n\n expect(await isChecked(page)).toBe(false);\n\n await innerLabel.click();\n await page.waitForChanges();\n\n expect(await isChecked(page)).toBe(true);\n expect(await checkbox.getProperty('checked')).toEqual(true);\n expect(changeSpy).toHaveReceivedEventDetail({ checked: true, value: 'foo-onchange-dummy' });\n });\n\n it('does not update checked attribute if preventDefault is called', async () => {\n page = await setup({\n html: `\n <q2-checkbox value=\"foo-onchange-dummy\"></q2-checkbox>\n <script>\n function onChange(event) {\n event.preventDefault();\n }\n document.querySelector(\"q2-checkbox\").addEventListener(\"change\", onChange);\n </script>\n `,\n });\n const checkbox = await page.find('q2-checkbox');\n const changeSpy = await checkbox.spyOnEvent('change');\n const innerLabel = await page.find('q2-checkbox >>> label');\n\n expect(await isChecked(page)).toBe(false);\n\n await innerLabel.click();\n await page.waitForChanges();\n\n expect(await isChecked(page)).toBe(false);\n expect(await checkbox.getProperty('checked')).toEqual(false);\n expect(changeSpy).toHaveReceivedEventDetail({ checked: true, value: 'foo-onchange-dummy' });\n });\n });\n });\n });\n\n describe('Slots', () => {\n it('allows slotted content', async () => {\n page = await setup({\n html: `\n <q2-checkbox value=\"1\" label=\"Label\">\n <p>A yielded label</p>\n </q2-checkbox>\n `,\n });\n const { slottedText, slottedTag } = await page.$eval('q2-checkbox', element => {\n const slottedNode = element.shadowRoot.querySelector('slot').assignedElements()[0];\n return {\n slottedText: slottedNode.textContent,\n slottedTag: slottedNode.localName,\n };\n });\n\n expect(slottedText).toEqual('A yielded label');\n expect(slottedTag).toEqual('p');\n });\n });\n\n describe('Regressions', () => {\n it('applies font-weight to label when CSS property is updated (TCT-2246)', async () => {\n page = await setupPage('label=\"My Checkbox\"');\n const label = await page.find('q2-checkbox >>> .label-text');\n let styledLabel = await label.getComputedStyle();\n\n expect(styledLabel.fontWeight).toEqual('400');\n\n await page.$eval('q2-checkbox', (el: HTMLElement) => {\n el.style.setProperty('--tct-checkbox-label-font-weight', '800');\n });\n await page.waitForChanges();\n styledLabel = await label.getComputedStyle();\n\n expect(styledLabel.fontWeight).toEqual('800');\n });\n });\n\n describe('Deprecations', () => {\n it('handles deprecated `ariaLabel` prop', async () => {\n const label = 'My Label';\n page = await setupPage(`aria-label=\"${label}\"`);\n\n await testDeprecatedAriaLabel(await page.find('q2-checkbox'), label);\n const innerLabel = await page.find('q2-checkbox >>> .label-text');\n\n expect(innerLabel).toHaveClass('sr');\n });\n });\n\n describe('Accessibility', () => {\n describe('aXe DevTools', () => {\n it('does not have accessibility violations', async () => {\n const page = await setupPage(`label=\"${label}\"`);\n const hasViolations = await evaluateA11y(page);\n expect(hasViolations).toBe(false);\n });\n });\n describe('Accessibility Tree', () => {});\n describe('Keyboard Controls', () => {});\n describe('Other', () => {\n it('binds aria-label when provided and no label present', async () => {\n page = await setupPage('aria-label=\"Aria-Label Text\"');\n const checkbox = await page.find('q2-checkbox');\n const labelContent = await page.find('q2-checkbox >>> .label-text');\n\n expect(labelContent).toHaveClass('sr');\n expect(labelContent).toEqualText('Aria-Label Text');\n\n checkbox.setProperty('label', 'Label Text');\n checkbox.setProperty('hideLabel', false);\n await page.waitForChanges();\n\n expect(labelContent).not.toHaveClass('sr');\n expect(labelContent).toEqualText('Label Text');\n });\n });\n });\n});\n"]}
@@ -2,7 +2,7 @@ import { proxyCustomElement, HTMLElement, createEvent, h } from '@stencil/core/i
2
2
  import { c as createGuid, h as handleAriaLabel, o as overrideFocus, i as isEventFromElement, l as loc } from './index2.js';
3
3
  import { d as defineCustomElement$1 } from './q2-icon2.js';
4
4
 
5
- const q2CheckboxCss = "*{box-sizing:border-box}*:active{outline:none}*:focus{outline:none;box-shadow:var(--const-double-focus-ring, 0 0 0 2px #ffffff, 0 0 0 4px #0066cc)}:host{box-shadow:none !important}::-moz-focus-inner{border:none}input,textarea,button{font-family:inherit;font-size:inherit;font-stretch:inherit}:host(.sr),:host(.sr) button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.sr,.sr button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.hidden{display:none}:host([hidden]){display:none}.invisible{visibility:hidden}:host{--comp-checkbox-padding:var(--tct-checkbox-padding, var(--tct-checkbox-vertical-padding, var(--t-checkbox-vertical-padding, 8px)) 0);display:block;position:relative;padding:var(--comp-checkbox-padding);--comp-default-checkbox-margin:var(--tct-checkbox-margin-top, var(--t-checkbox-margin-top, 0px)) 0 var(--tct-checkbox-margin-bottom, var(--t-checkbox-margin-bottom, 0px));margin:var(--tct-checkbox-margin, var(--comp-default-checkbox-margin))}.container{--comp-checkbox-size:var(--tct-checkbox-size, var(--t-checkbox-size, 24px));--comp-checkbox-default-column-gap:var(--app-scale-2x, 10px);--comp-checkbox-default-row-gap:0;--comp-checkbox-default-gap:var(--comp-checkbox-default-row-gap) var(--comp-checkbox-default-column-gap);--comp-checkbox-tween:var(--tct-tween-1, var(--app-tween-1, 0.2s ease));--comp-checkbox-toggle-width:var(--tct-checkbox-toggle-width, var(--t-checkbox-toggle-width, 38px));--comp-checkbox-toggle-error-color:var(--tct-checkbox-toggle-error-color, var(--comp-checkbox-error-color));--comp-checkbox-toggle-color:var(--tct-checkbox-toggle-color, var(--t-gray-8, #808080));--comp-checkbox-gap:var(--tct-checkbox-gap, var(--t-checkbox-gap, var(--comp-checkbox-default-gap)));--comp-checkbox-outer-stroke-color:var(--tct-checkbox-outer-stroke-color, var(--t-checkbox-outer-stroke-color, var(--t-a11y-gray-color-AA, #949494)));--comp-checkbox-outer-fill-color:var(--tct-checkbox-outer-fill-color, var(--t-checkbox-outer-fill-color, var(--tct-white, var(--app-white, #ffffff))));--comp-checkbox-checked-color:var(--tct-checkbox-check-stroke-color, var(--t-checkbox-check-stroke-color, var(--t-checkbox-fill, var(--t-a11y-active-gray-color-AA, #404040))));--comp-control-width:var(--comp-checkbox-size);--comp-checkbox-error-color:var(--tct-stoplight-error, var(--const-stoplight-alert, #d20a0a));display:grid;grid-template-areas:\"svg label\" \"svg description\";align-items:center;gap:var(--comp-checkbox-gap);grid-template-columns:var(--comp-control-width) calc(100% - var(--comp-control-width) - var(--comp-checkbox-default-column-gap))}:host([type=favorite]) .container{--comp-checkbox-favorite-stroke-color:var(--tct-checkbox-favorite-stroke-color, var(--t-checkbox-favorite-stroke-color, var(--t-a11y-gray-color-AA, #949494)));--comp-checkbox-favorite-fill-color:var(--tct-checkbox-favorite-fill-color, var(--t-checkbox-favorite-fill-color, #db7d24))}:host([hide-label]:not([hide-label=false])) .container{grid-template-areas:\"svg\";grid-template-columns:var(--comp-control-width)}:host([type=toggle]) .container{--comp-control-width:var(--comp-checkbox-toggle-width)}:host([alignment=right]) .container,:host([type=toggle]:not([alignment])) .container{grid-template-areas:\"label svg\" \"description svg\";grid-template-columns:calc(100% - var(--comp-control-width) - var(--comp-checkbox-default-column-gap)) var(--comp-control-width)}.label-control{align-items:center;display:flex}.label-text{grid-area:label;font-weight:var(--tct-checkbox-label-font-weight, var(--t-checkbox-label-font-weight, 400))}:host([description]) .label-text{font-weight:var(--tct-checkbox-label-font-weight, var(--t-checkbox-label-font-weight, 600))}:host([checked]:not([checked=false])) .label-text{font-weight:var(--tct-checkbox-checked-label-font-weight, var(--t-checkbox-checked-label-font-weight, 600))}:host(:hover) .label-text{font-weight:var(--tct-checkbox-hover-label-font-weight, var(--tct-checkbox-label-font-weight, var(--t-checkbox-label-font-weight, 400)))}:host(:focus-within) .label-text{font-weight:var(--tct-checkbox-focused-label-font-weight, var(--tct-checkbox-label-font-weight, var(--t-checkbox-label-font-weight, 400)))}:host([description]:hover) .label-text{font-weight:var(--tct-checkbox-hover-label-font-weight, var(--tct-checkbox-label-font-weight, var(--t-checkbox-label-font-weight, 600)))}:host([checked]:not([checked=false]):hover) .label-text{font-weight:var(--tct-checkbox-checked-hover-label-font-weight, var(--tct-checkbox-checked-label-font-weight, var(--t-checkbox-checked-label-font-weight, 600)))}:host([description]:focus-within) .label-text{font-weight:var(--tct-checkbox-focused-label-font-weight, var(--tct-checkbox-label-font-weight, var(--t-checkbox-label-font-weight, 600)))}:host([checked]:not([checked=false]):focus-within) .label-text{font-weight:var(--tct-checkbox-checked-focused-label-font-weight, var(--tct-checkbox-checked-label-font-weight, var(--t-checkbox-checked-label-font-weight, 600)))}.label-text label{line-height:var(--tct-checkbox-label-line-height, 24px)}.description-text{grid-area:description;font-weight:var(--tct-checkbox-description-font-weight, var(--t-checkbox-description-font-weight, 400))}:host(:hover) .description-text{font-weight:var(--tct-checkbox-hover-description-font-weight, var(--tct-checkbox-description-font-weight, var(--t-checkbox-description-font-weight, 400)))}label{color:var(--tct-checkbox-label-color);cursor:pointer;hyphens:var(--tct-checkbox-label-hyphens, auto);word-break:var(--tct-checkbox-label-word-break, break-word);word-wrap:var(--tct-checkbox-label-word-wrap, break-word)}.checkbox-icon{width:var(--comp-checkbox-size);height:var(--comp-checkbox-size);border-radius:var(--tct-checkbox-outer-border-radius, var(--t-checkbox-outer-border-radius, var(--tct-border-radius-1, var(--app-border-radius-1, 4px))));stroke:var(--comp-checkbox-outer-stroke-color);fill:var(--comp-checkbox-outer-fill-color);stroke-width:var(--tct-checkbox-outer-stroke-width, var(--t-checkbox-outer-stroke-width, 2));flex-shrink:0}:host([checked]:not([checked=false]):not([type=favorite])) .checkbox-icon{stroke:var(--tct-checkbox-checked-outer-stroke-color, var(--t-checkbox-checked-outer-stroke-color, var(--comp-checkbox-outer-stroke-color)));fill:var(--tct-checkbox-checked-outer-fill-color, var(--t-checkbox-checked-outer-fill-color, var(--comp-checkbox-outer-fill-color)))}:host([has-error]:not([type=favorite])) .checkbox-icon{stroke:var(--tct-checkbox-error-outer-stroke-color, var(--comp-checkbox-error-color));fill:var(--tct-checkbox-error-outer-fill-color, var(--comp-checkbox-outer-fill-color));box-shadow:var(--tct-checkbox-error-box-shadow)}:host(:hover:not([type=favorite])) .checkbox-icon{stroke:var(--tct-checkbox-hover-outer-stroke-color, var(--comp-checkbox-outer-stroke-color));fill:var(--tct-checkbox-hover-outer-fill-color, var(--comp-checkbox-outer-fill-color));box-shadow:var(--tct-checkbox-hover-box-shadow)}:host(:hover[has-error]:not([type=favorite])) .checkbox-icon{stroke:var(--tct-checkbox-error-hover-outer-stroke-color, var(--tct-checkbox-error-outer-stroke-color, var(--comp-checkbox-error-color)));fill:var(--tct-checkbox-error-hover-outer-fill-color, var(--tct-checkbox-error-outer-fill-color, var(--comp-checkbox-outer-fill-color)));box-shadow:var(--tct-checkbox-error-hover-box-shadow, var(--tct-checkbox-error-box-shadow, var(--tct-checkbox-hover-box-shadow)))}:host(:focus-within:not([type=favorite])) .checkbox-icon{--comp-checkbox-focused-box-shadow:var(--const-double-focus-ring), var(--tct-global-focus, 0 0 0 2px #33b4ff);stroke:var(--tct-checkbox-focused-outer-stroke-color, var(--t-checkbox-focused-outer-stroke-color, var(--comp-checkbox-checked-color)));fill:var(--tct-checkbox-focused-outer-fill-color, var(--comp-checkbox-outer-fill-color));box-shadow:var(--comp-checkbox-focused-box-shadow)}:host(:focus-within[has-error]:not([type=favorite])) .checkbox-icon{stroke:var(--tct-checkbox-error-focused-outer-stroke-color, var(--tct-checkbox-error-outer-stroke-color, var(--comp-checkbox-error-color)));fill:var(--tct-checkbox-error-focused-outer-fill-color, var(--tct-checkbox-error-outer-fill-color, var(--comp-checkbox-outer-fill-color)));box-shadow:var(--tct-checkbox-error-focused-box-shadow, var(--tct-checkbox-error-box-shadow, var(--comp-checkbox-focused-box-shadow)))}:host([type=favorite]) .checkbox-icon{--tct-icon-stroke-width:var(--tct-checkbox-favorite-stroke-width, var(--t-checkbox-favorite-stroke-width, 1));--tct-icon-stroke-primary:var(--comp-checkbox-favorite-stroke-color);transition:fill var(--comp-checkbox-tween), color var(--comp-checkbox-tween), stroke var(--comp-checkbox-tween)}:host(:hover[type=favorite]) .checkbox-icon{--tct-icon-stroke-primary:var(--tct-checkbox-favorite-hover-stroke-color, var(--comp-checkbox-favorite-fill-color));--tct-icon-stroke-width:var(--tct-checkbox-favorite-hover-stroke-width, var(--t-checkbox-favorite-hover-stroke-width, 2))}:host([type=favorite]:focus-within) .checkbox-icon{--tct-icon-stroke-primary:var(--tct-checkbox-favorite-focused-stroke-color, var(--comp-checkbox-favorite-fill-color));--tct-icon-stroke-width:var(--tct-checkbox-favorite-hover-stroke-width, var(--t-checkbox-favorite-hover-stroke-width, 2))}:host([checked]:not([checked=false])[type=favorite]) .checkbox-icon{--tct-icon-stroke-primary:var(--tct-checkbox-favorite-checked-stroke-color, var(--tct-checkbox-favorite-stroke-color, var(--comp-checkbox-favorite-fill-color)));fill:var(--tct-checkbox-favorite-checked-fill-color, var(--comp-checkbox-favorite-fill-color));transition:fill var(--comp-checkbox-tween), color var(--comp-checkbox-tween), stroke var(--comp-checkbox-tween)}:host([checked]:not([checked=false])[type=favorite]:hover) .checkbox-icon{--tct-icon-stroke-primary:var(--tct-checkbox-favorite-checked-hover-stroke-color, var(--tct-checkbox-favorite-hover-stroke-color, var(--comp-checkbox-favorite-stroke-color)));--tct-icon-fill-primary:var(--tct-checkbox-favorite-checked-fill-color, var(--comp-checkbox-favorite-fill-color));--tct-icon-stroke-width:var(--tct-checkbox-favorite-hover-stroke-width, var(--t-checkbox-favorite-hover-stroke-width, 2))}:host([checked]:not([checked=false])[type=favorite]:focus-within) .checkbox-icon{--tct-icon-stroke-primary:var(--tct-checkbox-favorite-checked-focused-stroke-color, var(--tct-checkbox-favorite-focused-stroke-color, var(--comp-checkbox-favorite-stroke-color)));--tct-icon-stroke-width:var(--tct-checkbox-favorite-hover-stroke-width, var(--t-checkbox-favorite-hover-stroke-width, 2))}:host([has-error][type=favorite]) .checkbox-icon{--tct-icon-stroke-primary:var(--tct-checkbox-favorite-error-stroke-color, var(--comp-checkbox-error-color))}:host([has-error][type=favorite][checked]:not([checked=false])) .checkbox-icon{--tct-icon-stroke-primary:var(--tct-checkbox-favorite-error-stroke-color, var(--comp-checkbox-error-color))}.checkbox-fill{stroke:var(--tct-checkbox-checkmark-stroke-color, var(--comp-checkbox-checked-color));stroke-width:var(--tct-checkbox-check-stroke-width, var(--t-checkbox-check-stroke-width, 2.5));stroke-linecap:round;stroke-linejoin:round}.indeterminate-fill{stroke-width:var(--tct-checkbox-indeterminate-stroke-width, var(--t-checkbox-indeterminate-stroke-width, 3.5))}.toggle-svg-container{height:30px;width:var(--comp-checkbox-toggle-width);position:relative;text-align:initial}.toggle-indicator,.toggle-track{position:absolute;top:50%;transform:translateY(-50%)}.toggle-indicator{transition:left var(--comp-checkbox-tween), height var(--comp-checkbox-tween), width var(--comp-checkbox-tween);height:16px;width:16px;left:4px;border-radius:50%}.toggle-track{height:24px;width:38px;fill:transparent;border-radius:var(--app-border-radius-3, 12px);box-shadow:inset 0 0 0 1px var(--comp-checkbox-toggle-color);transition:fill var(--comp-checkbox-tween), box-shadow var(--comp-checkbox-tween)}.toggle-circle{mask:url(#xMask);fill:var(--comp-checkbox-toggle-color);transition:fill var(--comp-checkbox-tween)}.toggle-icon{stroke-linecap:round;stroke-linejoin:round;stroke-width:var(--tct-checkbox-toggle-icon-stroke-width, 2);stroke:black}:host(:is(:not([checked]),[checked=false])):host(:is(:not([disabled]),[disabled=false]):is(:not([group-disabled]),[group-disabled=false])) :hover .toggle-track,:host(:is(:not([checked]),[checked=false])):host(:is(:not([disabled]),[disabled=false]):is(:not([group-disabled]),[group-disabled=false])) :focus-within .toggle-track{box-shadow:inset 0 0 0 2px var(--comp-checkbox-toggle-color)}:host(:is(:not([checked]),[checked=false])):host(:is(:not([disabled]),[disabled=false]):is(:not([group-disabled]),[group-disabled=false])) :hover .toggle-indicator,:host(:is(:not([checked]),[checked=false])):host(:is(:not([disabled]),[disabled=false]):is(:not([group-disabled]),[group-disabled=false])) :focus-within .toggle-indicator{height:18px;width:18px}:host(:is(:not([checked]),[checked=false])):host(:is(:not([disabled]),[disabled=false]):is(:not([group-disabled]),[group-disabled=false])) :hover .toggle-circle,:host(:is(:not([checked]),[checked=false])):host(:is(:not([disabled]),[disabled=false]):is(:not([group-disabled]),[group-disabled=false])) :focus-within .toggle-circle{fill:var(--tct-checkbox-toggle-hover-circle-color, var(--t-primary-d1, var(--t-gray-6, #4d4d4d)))}:host(:is(:not([checked]),[checked=false])):host(:is(:not([disabled]),[disabled=false]):is(:not([group-disabled]),[group-disabled=false])) :active .toggle-circle{fill:var(--tct-checkbox-toggle-active-color, var(--t-primary-l1, #7755af))}:host(:is(:not([checked]),[checked=false])):host([has-error]:not([has-error=false])) .toggle-track{box-shadow:inset 0 0 0 1px var(--comp-checkbox-toggle-error-color)}:host(:is(:not([checked]),[checked=false])):host([has-error]:not([has-error=false])) .toggle-circle{fill:var(--comp-checkbox-toggle-error-color)}:host(:is(:not([checked]),[checked=false])):host([has-error]:not([has-error=false])):host(:is(:not([disabled]),[disabled=false]):is(:not([group-disabled]),[group-disabled=false])) :hover .toggle-track,:host(:is(:not([checked]),[checked=false])):host([has-error]:not([has-error=false])):host(:is(:not([disabled]),[disabled=false]):is(:not([group-disabled]),[group-disabled=false])) :focus-within .toggle-track{box-shadow:inset 0 0 0 2px var(--comp-checkbox-toggle-error-color)}:host(:is(:not([checked]),[checked=false])):host([has-error]:not([has-error=false])):host(:is(:not([disabled]),[disabled=false]):is(:not([group-disabled]),[group-disabled=false])) :hover .toggle-circle,:host(:is(:not([checked]),[checked=false])):host([has-error]:not([has-error=false])):host(:is(:not([disabled]),[disabled=false]):is(:not([group-disabled]),[group-disabled=false])) :focus-within .toggle-circle{fill:var(--tct-checkbox-toggle-error-hover-color, var(--comp-checkbox-toggle-error-color))}:host(:is(:not([checked]),[checked=false])):host([has-error]:not([has-error=false])):host(:is(:not([disabled]),[disabled=false]):is(:not([group-disabled]),[group-disabled=false])) :active .toggle-circle{fill:var(--tct-checkbox-toggle-error-active-color, var(--comp-checkbox-toggle-error-color))}:host([checked]:not([checked=false])):host(:is(:not([disabled]),[disabled=false]):is(:not([group-disabled]),[group-disabled=false])) .toggle-track{fill:var(--tct-checkbox-toggle-checked-track-color, var(--t-primary, #6a4a9e));border:none}:host([checked]:not([checked=false])):host(:is(:not([disabled]),[disabled=false]):is(:not([group-disabled]),[group-disabled=false])) .toggle-indicator{left:18px}:host([checked]:not([checked=false])):host(:is(:not([disabled]),[disabled=false]):is(:not([group-disabled]),[group-disabled=false])) .toggle-circle{mask:url(#checkMask);fill:var(--tct-checkbox-toggle-checked-circle-color, var(--t-base, #ffffff))}:host([checked]:not([checked=false])):host(:is(:not([disabled]),[disabled=false]):is(:not([group-disabled]),[group-disabled=false])) :hover .toggle-track,:host([checked]:not([checked=false])):host(:is(:not([disabled]),[disabled=false]):is(:not([group-disabled]),[group-disabled=false])) :focus-within .toggle-track{fill:var(--tct-checkbox-toggle-checked-hover-track-color, var(--t-primary-d1, #5f438e))}:host([checked]:not([checked=false])):host(:is(:not([disabled]),[disabled=false]):is(:not([group-disabled]),[group-disabled=false])) :hover .toggle-indicator,:host([checked]:not([checked=false])):host(:is(:not([disabled]),[disabled=false]):is(:not([group-disabled]),[group-disabled=false])) :focus-within .toggle-indicator{height:18px;width:18px}:host([checked]:not([checked=false])):host(:is(:not([disabled]),[disabled=false]):is(:not([group-disabled]),[group-disabled=false])) :active .toggle-track{fill:var(--tct-checkbox-toggle-checked-active-track-color, var(--t-primary-l1, #7755af))}:host([checked]:not([checked=false])):host(:is(:not([disabled]),[disabled=false]):is(:not([group-disabled]),[group-disabled=false])) :active .toggle-indicator{height:18px;width:18px}:host([checked]:not([checked=false])):host([has-error]:not([has-error=false])) .toggle-track{fill:var(--tct-checkbox-toggle-checked-error-track-color, var(--comp-checkbox-toggle-error-color))}:host([checked]:not([checked=false])):host([has-error]:not([has-error=false])):host(:is(:not([disabled]),[disabled=false]):is(:not([group-disabled]),[group-disabled=false])) :hover .toggle-track,:host([checked]:not([checked=false])):host([has-error]:not([has-error=false])):host(:is(:not([disabled]),[disabled=false]):is(:not([group-disabled]),[group-disabled=false])) :focus-within .toggle-track{fill:var(--tct-checkbox-toggle-checked-error-hover-track-color, var(--comp-checkbox-toggle-error-color))}:host([checked]:not([checked=false])):host([has-error]:not([has-error=false])):host(:is(:not([disabled]),[disabled=false]):is(:not([group-disabled]),[group-disabled=false])) :active .toggle-track{fill:var(--tct-checkbox-toggle-checked-error-active-track-color, var(--comp-checkbox-toggle-error-color))}:host(:is([disabled]:not([disabled=false]),[group-disabled]:not([group-disabled=false]))){cursor:not-allowed;opacity:var(--tct-checkbox-disabled-opacity, var(--t-checkbox-disabled-opacity, var(--tct-disabled-opacity, var(--app-disabled-opacity, 0.4))))}:host(:is([disabled]:not([disabled=false]),[group-disabled]:not([group-disabled=false]))) label{cursor:not-allowed}";
5
+ const q2CheckboxCss = "*{box-sizing:border-box}*:active{outline:none}*:focus{outline:none;box-shadow:var(--const-double-focus-ring, 0 0 0 2px #ffffff, 0 0 0 4px #0066cc)}:host{box-shadow:none !important}::-moz-focus-inner{border:none}input,textarea,button{font-family:inherit;font-size:inherit;font-stretch:inherit}:host(.sr),:host(.sr) button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.sr,.sr button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.hidden{display:none}:host([hidden]){display:none}.invisible{visibility:hidden}:host{--comp-checkbox-padding:var(--tct-checkbox-padding, var(--tct-checkbox-vertical-padding, var(--t-checkbox-vertical-padding, 8px)) 0);display:block;position:relative;padding:var(--comp-checkbox-padding);--comp-default-checkbox-margin:var(--tct-checkbox-margin-top, var(--t-checkbox-margin-top, 0px)) 0 var(--tct-checkbox-margin-bottom, var(--t-checkbox-margin-bottom, 0px));margin:var(--tct-checkbox-margin, var(--comp-default-checkbox-margin))}.container{--comp-checkbox-size:var(--tct-checkbox-size, var(--t-checkbox-size, 24px));--comp-checkbox-default-column-gap:var(--app-scale-2x, 10px);--comp-checkbox-default-row-gap:0;--comp-checkbox-default-gap:var(--comp-checkbox-default-row-gap) var(--comp-checkbox-default-column-gap);--comp-checkbox-tween:var(--tct-tween-1, var(--app-tween-1, 0.2s ease));--comp-checkbox-toggle-width:var(--tct-checkbox-toggle-width, var(--t-checkbox-toggle-width, 38px));--comp-checkbox-toggle-error-color:var(--tct-checkbox-toggle-error-color, var(--comp-checkbox-error-color));--comp-checkbox-toggle-color:var(--tct-checkbox-toggle-color, var(--t-gray-8, #808080));--comp-checkbox-gap:var(--tct-checkbox-gap, var(--t-checkbox-gap, var(--comp-checkbox-default-gap)));--comp-checkbox-outer-stroke-color:var(--tct-checkbox-outer-stroke-color, var(--t-checkbox-outer-stroke-color, var(--t-a11y-gray-color-AA, #949494)));--comp-checkbox-outer-fill-color:var(--tct-checkbox-outer-fill-color, var(--t-checkbox-outer-fill-color, var(--tct-white, var(--app-white, #ffffff))));--comp-checkbox-checked-color:var(--tct-checkbox-check-stroke-color, var(--t-checkbox-check-stroke-color, var(--t-checkbox-fill, var(--t-a11y-active-gray-color-AA, #404040))));--comp-control-width:var(--comp-checkbox-size);--comp-checkbox-error-color:var(--tct-stoplight-error, var(--const-stoplight-alert, #d20a0a));display:grid;grid-template-areas:\"svg label\" \"svg description\";align-items:center;gap:var(--comp-checkbox-gap);grid-template-columns:var(--comp-control-width) calc(100% - var(--comp-control-width) - var(--comp-checkbox-default-column-gap))}:host([type=favorite]) .container{--comp-checkbox-favorite-stroke-color:var(--tct-checkbox-favorite-stroke-color, var(--t-checkbox-favorite-stroke-color, var(--t-a11y-gray-color-AA, #949494)));--comp-checkbox-favorite-fill-color:var(--tct-checkbox-favorite-fill-color, var(--t-checkbox-favorite-fill-color, #db7d24))}:host([hide-label]:not([hide-label=false])) .container{grid-template-areas:\"svg\";grid-template-columns:var(--comp-control-width)}:host([type=toggle]) .container{--comp-control-width:var(--comp-checkbox-toggle-width)}:host([alignment=right]) .container,:host([type=toggle]:not([alignment])) .container{grid-template-areas:\"label svg\" \"description svg\";grid-template-columns:calc(100% - var(--comp-control-width) - var(--comp-checkbox-default-column-gap)) var(--comp-control-width)}.label-control{align-items:center;display:flex}.label-text{grid-area:label;font-weight:var(--tct-checkbox-label-font-weight, var(--t-checkbox-label-font-weight, 400))}:host([description]) .label-text{font-weight:var(--tct-checkbox-label-font-weight, var(--t-checkbox-label-font-weight, 600))}:host([checked]:not([checked=false])) .label-text{font-weight:var(--tct-checkbox-checked-label-font-weight, var(--t-checkbox-checked-label-font-weight, 600))}:host(:hover) .label-text{font-weight:var(--tct-checkbox-hover-label-font-weight, var(--tct-checkbox-label-font-weight, var(--t-checkbox-label-font-weight, 400)))}:host(:focus-within) .label-text{font-weight:var(--tct-checkbox-focused-label-font-weight, var(--tct-checkbox-label-font-weight, var(--t-checkbox-label-font-weight, 400)))}:host([description]:hover) .label-text{font-weight:var(--tct-checkbox-hover-label-font-weight, var(--tct-checkbox-label-font-weight, var(--t-checkbox-label-font-weight, 600)))}:host([checked]:not([checked=false]):hover) .label-text{font-weight:var(--tct-checkbox-checked-hover-label-font-weight, var(--tct-checkbox-checked-label-font-weight, var(--t-checkbox-checked-label-font-weight, 600)))}:host([description]:focus-within) .label-text{font-weight:var(--tct-checkbox-focused-label-font-weight, var(--tct-checkbox-label-font-weight, var(--t-checkbox-label-font-weight, 600)))}:host([checked]:not([checked=false]):focus-within) .label-text{font-weight:var(--tct-checkbox-checked-focused-label-font-weight, var(--tct-checkbox-checked-label-font-weight, var(--t-checkbox-checked-label-font-weight, 600)))}.label-text label{line-height:var(--tct-checkbox-label-line-height, 24px)}.description-text{grid-area:description;font-weight:var(--tct-checkbox-description-font-weight, var(--t-checkbox-description-font-weight, 400))}:host(:hover) .description-text{font-weight:var(--tct-checkbox-hover-description-font-weight, var(--tct-checkbox-description-font-weight, var(--t-checkbox-description-font-weight, 400)))}label{color:var(--tct-checkbox-label-color);cursor:pointer;hyphens:var(--tct-checkbox-label-hyphens, auto);word-break:var(--tct-checkbox-label-word-break, break-word);word-wrap:var(--tct-checkbox-label-word-wrap, break-word)}.checkbox-icon{width:var(--comp-checkbox-size);height:var(--comp-checkbox-size);border-radius:var(--tct-checkbox-outer-border-radius, var(--t-checkbox-outer-border-radius, var(--tct-border-radius-1, var(--app-border-radius-1, 4px))));stroke:var(--comp-checkbox-outer-stroke-color);fill:var(--comp-checkbox-outer-fill-color);stroke-width:var(--tct-checkbox-outer-stroke-width, var(--t-checkbox-outer-stroke-width, 2));flex-shrink:0}:host([checked]:not([checked=false]):not([type=favorite])) .checkbox-icon{stroke:var(--tct-checkbox-checked-outer-stroke-color, var(--t-checkbox-checked-outer-stroke-color, var(--comp-checkbox-outer-stroke-color)));fill:var(--tct-checkbox-checked-outer-fill-color, var(--t-checkbox-checked-outer-fill-color, var(--comp-checkbox-outer-fill-color)))}:host([has-error]:not([type=favorite])) .checkbox-icon{stroke:var(--tct-checkbox-error-outer-stroke-color, var(--comp-checkbox-error-color));fill:var(--tct-checkbox-error-outer-fill-color, var(--comp-checkbox-outer-fill-color));box-shadow:var(--tct-checkbox-error-box-shadow)}:host(:hover:not([type=favorite])) .checkbox-icon{stroke:var(--tct-checkbox-hover-outer-stroke-color, var(--comp-checkbox-outer-stroke-color));fill:var(--tct-checkbox-hover-outer-fill-color, var(--comp-checkbox-outer-fill-color));box-shadow:var(--tct-checkbox-hover-box-shadow)}:host(:hover[has-error]:not([type=favorite])) .checkbox-icon{stroke:var(--tct-checkbox-error-hover-outer-stroke-color, var(--tct-checkbox-error-outer-stroke-color, var(--comp-checkbox-error-color)));fill:var(--tct-checkbox-error-hover-outer-fill-color, var(--tct-checkbox-error-outer-fill-color, var(--comp-checkbox-outer-fill-color)));box-shadow:var(--tct-checkbox-error-hover-box-shadow, var(--tct-checkbox-error-box-shadow, var(--tct-checkbox-hover-box-shadow)))}:host(:focus-within:not([type=favorite])) .checkbox-icon{--comp-checkbox-focused-box-shadow:var(--const-double-focus-ring), var(--tct-global-focus, 0 0 0 2px #33b4ff);stroke:var(--tct-checkbox-focused-outer-stroke-color, var(--t-checkbox-focused-outer-stroke-color, var(--comp-checkbox-checked-color)));fill:var(--tct-checkbox-focused-outer-fill-color, var(--comp-checkbox-outer-fill-color));box-shadow:var(--comp-checkbox-focused-box-shadow)}:host(:focus-within[has-error]:not([type=favorite])) .checkbox-icon{stroke:var(--tct-checkbox-error-focused-outer-stroke-color, var(--tct-checkbox-error-outer-stroke-color, var(--comp-checkbox-error-color)));fill:var(--tct-checkbox-error-focused-outer-fill-color, var(--tct-checkbox-error-outer-fill-color, var(--comp-checkbox-outer-fill-color)));box-shadow:var(--tct-checkbox-error-focused-box-shadow, var(--tct-checkbox-error-box-shadow, var(--comp-checkbox-focused-box-shadow)))}:host([type=favorite]) .checkbox-icon{--tct-icon-stroke-width:var(--tct-checkbox-favorite-stroke-width, var(--t-checkbox-favorite-stroke-width, 1));--tct-icon-stroke-primary:var(--comp-checkbox-favorite-stroke-color);transition:fill var(--comp-checkbox-tween), color var(--comp-checkbox-tween), stroke var(--comp-checkbox-tween)}:host(:hover[type=favorite]) .checkbox-icon{--tct-icon-stroke-primary:var(--tct-checkbox-favorite-hover-stroke-color, var(--comp-checkbox-favorite-fill-color));--tct-icon-stroke-width:var(--tct-checkbox-favorite-hover-stroke-width, var(--t-checkbox-favorite-hover-stroke-width, 2))}:host([type=favorite]:focus-within) .checkbox-icon{--tct-icon-stroke-primary:var(--tct-checkbox-favorite-focused-stroke-color, var(--comp-checkbox-favorite-fill-color));--tct-icon-stroke-width:var(--tct-checkbox-favorite-hover-stroke-width, var(--t-checkbox-favorite-hover-stroke-width, 2))}:host([checked]:not([checked=false])[type=favorite]) .checkbox-icon{--tct-icon-stroke-primary:var(--tct-checkbox-favorite-checked-stroke-color, var(--tct-checkbox-favorite-stroke-color, var(--comp-checkbox-favorite-fill-color)));fill:var(--tct-checkbox-favorite-checked-fill-color, var(--comp-checkbox-favorite-fill-color));transition:fill var(--comp-checkbox-tween), color var(--comp-checkbox-tween), stroke var(--comp-checkbox-tween)}:host([checked]:not([checked=false])[type=favorite]:hover) .checkbox-icon{--tct-icon-stroke-primary:var(--tct-checkbox-favorite-checked-hover-stroke-color, var(--tct-checkbox-favorite-hover-stroke-color, var(--comp-checkbox-favorite-stroke-color)));--tct-icon-fill-primary:var(--tct-checkbox-favorite-checked-fill-color, var(--comp-checkbox-favorite-fill-color));--tct-icon-stroke-width:var(--tct-checkbox-favorite-hover-stroke-width, var(--t-checkbox-favorite-hover-stroke-width, 2))}:host([checked]:not([checked=false])[type=favorite]:focus-within) .checkbox-icon{--tct-icon-stroke-primary:var(--tct-checkbox-favorite-checked-focused-stroke-color, var(--tct-checkbox-favorite-focused-stroke-color, var(--comp-checkbox-favorite-stroke-color)));--tct-icon-stroke-width:var(--tct-checkbox-favorite-hover-stroke-width, var(--t-checkbox-favorite-hover-stroke-width, 2))}:host([has-error][type=favorite]) .checkbox-icon{--tct-icon-stroke-primary:var(--tct-checkbox-favorite-error-stroke-color, var(--comp-checkbox-error-color))}:host([has-error][type=favorite][checked]:not([checked=false])) .checkbox-icon{--tct-icon-stroke-primary:var(--tct-checkbox-favorite-error-stroke-color, var(--comp-checkbox-error-color))}.checkbox-fill{stroke:var(--tct-checkbox-checkmark-stroke-color, var(--comp-checkbox-checked-color));stroke-width:var(--tct-checkbox-check-stroke-width, var(--t-checkbox-check-stroke-width, 2.5));stroke-linecap:round;stroke-linejoin:round}.indeterminate-fill{stroke-width:var(--tct-checkbox-indeterminate-stroke-width, var(--t-checkbox-indeterminate-stroke-width, 3.5))}.toggle-svg-container{height:30px;width:var(--comp-checkbox-toggle-width);position:relative;text-align:initial}.toggle-indicator,.toggle-track{position:absolute;top:50%;transform:translateY(-50%)}.toggle-indicator{transition:left var(--comp-checkbox-tween), height var(--comp-checkbox-tween), width var(--comp-checkbox-tween);height:16px;width:16px;left:4px;border-radius:50%}.toggle-track{height:24px;width:38px;fill:transparent;border-radius:var(--app-border-radius-3, 12px);box-shadow:inset 0 0 0 1px var(--comp-checkbox-toggle-color);transition:fill var(--comp-checkbox-tween), box-shadow var(--comp-checkbox-tween)}.toggle-circle{mask:url(#xMask);fill:var(--comp-checkbox-toggle-color);transition:fill var(--comp-checkbox-tween)}.toggle-icon{stroke-linecap:round;stroke-linejoin:round;stroke-width:var(--tct-checkbox-toggle-icon-stroke-width, 2);stroke:black}:host(:is(:not([checked]),[checked=false])):host(:is(:not([disabled]),[disabled=false]):is(:not([group-disabled]),[group-disabled=false])) :hover .toggle-track,:host(:is(:not([checked]),[checked=false])):host(:is(:not([disabled]),[disabled=false]):is(:not([group-disabled]),[group-disabled=false])) :focus-within .toggle-track{box-shadow:inset 0 0 0 2px var(--comp-checkbox-toggle-color)}:host(:is(:not([checked]),[checked=false])):host(:is(:not([disabled]),[disabled=false]):is(:not([group-disabled]),[group-disabled=false])) :hover .toggle-indicator,:host(:is(:not([checked]),[checked=false])):host(:is(:not([disabled]),[disabled=false]):is(:not([group-disabled]),[group-disabled=false])) :focus-within .toggle-indicator{height:18px;width:18px}:host(:is(:not([checked]),[checked=false])):host(:is(:not([disabled]),[disabled=false]):is(:not([group-disabled]),[group-disabled=false])) :hover .toggle-circle,:host(:is(:not([checked]),[checked=false])):host(:is(:not([disabled]),[disabled=false]):is(:not([group-disabled]),[group-disabled=false])) :focus-within .toggle-circle{fill:var(--tct-checkbox-toggle-hover-circle-color, var(--t-primary-d1, var(--t-gray-6, #4d4d4d)))}:host(:is(:not([checked]),[checked=false])):host(:is(:not([disabled]),[disabled=false]):is(:not([group-disabled]),[group-disabled=false])) :active .toggle-circle{fill:var(--tct-checkbox-toggle-active-color, var(--t-primary-l1, #7755af))}:host(:is(:not([checked]),[checked=false])):host([has-error]:not([has-error=false])) .toggle-track{box-shadow:inset 0 0 0 1px var(--comp-checkbox-toggle-error-color)}:host(:is(:not([checked]),[checked=false])):host([has-error]:not([has-error=false])) .toggle-circle{fill:var(--comp-checkbox-toggle-error-color)}:host(:is(:not([checked]),[checked=false])):host([has-error]:not([has-error=false])):host(:is(:not([disabled]),[disabled=false]):is(:not([group-disabled]),[group-disabled=false])) :hover .toggle-track,:host(:is(:not([checked]),[checked=false])):host([has-error]:not([has-error=false])):host(:is(:not([disabled]),[disabled=false]):is(:not([group-disabled]),[group-disabled=false])) :focus-within .toggle-track{box-shadow:inset 0 0 0 2px var(--comp-checkbox-toggle-error-color)}:host(:is(:not([checked]),[checked=false])):host([has-error]:not([has-error=false])):host(:is(:not([disabled]),[disabled=false]):is(:not([group-disabled]),[group-disabled=false])) :hover .toggle-circle,:host(:is(:not([checked]),[checked=false])):host([has-error]:not([has-error=false])):host(:is(:not([disabled]),[disabled=false]):is(:not([group-disabled]),[group-disabled=false])) :focus-within .toggle-circle{fill:var(--tct-checkbox-toggle-error-hover-color, var(--comp-checkbox-toggle-error-color))}:host(:is(:not([checked]),[checked=false])):host([has-error]:not([has-error=false])):host(:is(:not([disabled]),[disabled=false]):is(:not([group-disabled]),[group-disabled=false])) :active .toggle-circle{fill:var(--tct-checkbox-toggle-error-active-color, var(--comp-checkbox-toggle-error-color))}:host([checked]:not([checked=false])) .toggle-indicator{left:18px}:host([checked]:not([checked=false])) .toggle-track{fill:var(--tct-checkbox-toggle-checked-track-color, var(--t-primary, #6a4a9e));border:none}:host([checked]:not([checked=false])) .toggle-circle{mask:url(#checkMask);fill:var(--tct-checkbox-toggle-checked-circle-color, var(--t-base, #ffffff))}:host([checked]:not([checked=false])):host(:is(:not([disabled]),[disabled=false]):is(:not([group-disabled]),[group-disabled=false])) :hover .toggle-track,:host([checked]:not([checked=false])):host(:is(:not([disabled]),[disabled=false]):is(:not([group-disabled]),[group-disabled=false])) :focus-within .toggle-track{fill:var(--tct-checkbox-toggle-checked-hover-track-color, var(--t-primary-d1, #5f438e))}:host([checked]:not([checked=false])):host(:is(:not([disabled]),[disabled=false]):is(:not([group-disabled]),[group-disabled=false])) :hover .toggle-indicator,:host([checked]:not([checked=false])):host(:is(:not([disabled]),[disabled=false]):is(:not([group-disabled]),[group-disabled=false])) :focus-within .toggle-indicator{height:18px;width:18px}:host([checked]:not([checked=false])):host(:is(:not([disabled]),[disabled=false]):is(:not([group-disabled]),[group-disabled=false])) :active .toggle-track{fill:var(--tct-checkbox-toggle-checked-active-track-color, var(--t-primary-l1, #7755af))}:host([checked]:not([checked=false])):host(:is(:not([disabled]),[disabled=false]):is(:not([group-disabled]),[group-disabled=false])) :active .toggle-indicator{height:18px;width:18px}:host([checked]:not([checked=false])):host([has-error]:not([has-error=false])) .toggle-track{fill:var(--tct-checkbox-toggle-checked-error-track-color, var(--comp-checkbox-toggle-error-color))}:host([checked]:not([checked=false])):host([has-error]:not([has-error=false])):host(:is(:not([disabled]),[disabled=false]):is(:not([group-disabled]),[group-disabled=false])) :hover .toggle-track,:host([checked]:not([checked=false])):host([has-error]:not([has-error=false])):host(:is(:not([disabled]),[disabled=false]):is(:not([group-disabled]),[group-disabled=false])) :focus-within .toggle-track{fill:var(--tct-checkbox-toggle-checked-error-hover-track-color, var(--comp-checkbox-toggle-error-color))}:host([checked]:not([checked=false])):host([has-error]:not([has-error=false])):host(:is(:not([disabled]),[disabled=false]):is(:not([group-disabled]),[group-disabled=false])) :active .toggle-track{fill:var(--tct-checkbox-toggle-checked-error-active-track-color, var(--comp-checkbox-toggle-error-color))}:host(:is([disabled]:not([disabled=false]),[group-disabled]:not([group-disabled=false]))){cursor:not-allowed;opacity:var(--tct-checkbox-disabled-opacity, var(--t-checkbox-disabled-opacity, var(--tct-disabled-opacity, var(--app-disabled-opacity, 0.4))))}:host(:is([disabled]:not([disabled=false]),[group-disabled]:not([group-disabled=false]))) label{cursor:not-allowed}";
6
6
  const Q2CheckboxStyle0 = q2CheckboxCss;
7
7
 
8
8
  const Q2Checkbox = /*@__PURE__*/ proxyCustomElement(class Q2Checkbox extends HTMLElement {