{"version":3,"file":"it-supports-focus-events.mjs","sources":["../../src/shared/it-supports-focus-events.tsx"],"sourcesContent":["import { fireEvent } from '@testing-library/react';\nimport { render } from '../render';\n\ninterface Options<Props = any> {\n  component: React.ComponentType<Props>;\n  props: Props;\n  selector?: string;\n}\n\nexport function itSupportsFocusEvents<Props>(\n  options: Options<Props>,\n  name = 'supports focus events'\n) {\n  it(name, () => {\n    const onFocus = jest.fn();\n    const onBlur = jest.fn();\n\n    const { container } = render(\n      <options.component {...options.props} onFocus={onFocus} onBlur={onBlur} />\n    );\n\n    fireEvent.focus(container.querySelector(options.selector || '*:not(style)')!);\n    expect(onFocus).toHaveBeenCalled();\n\n    fireEvent.blur(container.querySelector(options.selector || '*:not(style)')!);\n    expect(onBlur).toHaveBeenCalled();\n  });\n}\n"],"names":[],"mappings":";;;;;AASO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,qBAAA,CACd,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,uBAAA,CAAA,CACP,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAG,CAAA,CAAA,CAAA,GAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA;AACb,CAAA,CAAA,CAAA,CAAA,MAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAU,CAAA,CAAA,CAAA,EAAK,EAAA,CAAA,CAAG,CAAA;AACxB,CAAA,CAAA,CAAA,CAAA,MAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAA,CAAA,CAAA,EAAK,EAAA,CAAA,CAAG,CAAA;AAEvB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,GAAU,GAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACpB,CAAA,CAAA,CAAA,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAQ,SAAA,CAAA,CAAR,CAAA,CAAmB,CAAA,CAAA,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,GAAkB,MAAA,CAAA,CAAgB,CAAA;AAAA,CAAA,CAAA,CAAA,CAAA,CAC1E,CAAA;AAEA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAU,CAAA,CAAA,CAAA,CAAA,EAAM,SAAA,CAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAc,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAc,CAAE,CAAA,CAAA;AAC5E,CAAA,CAAA,CAAA,CAAA,MAAA,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,EAAE,gBAAA,CAAA,CAAiB,CAAA;AAEjC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAU,CAAA,CAAA,CAAA,EAAK,SAAA,CAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAc,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAc,CAAE,CAAA,CAAA;AAC3E,CAAA,CAAA,CAAA,CAAA,MAAA,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,EAAE,gBAAA,CAAA,CAAiB,CAAA;AAAA,CAAA,CAClC,CAAC,CAAA,CAAA;AACH,CAAA;;"}