{"version":3,"file":"index.cjs","sources":["../Teaser.tsx"],"sourcesContent":["import React from \"react\";\nimport { registerTeaserWebComponent, renderServerSide, ITeaserProps, TeaserRegion } from \"@talkfurther/elements\";\nimport { version as REACT_VERSION } from \"./package.json\";\n\ndeclare module \"react\" {\n  namespace JSX {\n    interface IntrinsicElements {\n      \"further-teaser\": any;\n    }\n  }\n}\n\ninterface TeaserComponentProps extends ITeaserProps {\n  region?: TeaserRegion;\n}\n\ninterface TeaserComponentState {\n  isClient: boolean;\n}\n\nexport class Teaser extends React.Component<TeaserComponentProps, TeaserComponentState> {\n  constructor(props: TeaserComponentProps) {\n    super(props);\n    this.state = { isClient: false };\n  }\n\n  componentDidMount() {\n    // componentDidMount only runs in the client,\n    // so when it runs, we know for sure it's client-side\n    this.setState({ isClient: true });\n    const { region } = this.props;\n    registerTeaserWebComponent({ region });\n  }\n\n  render() {\n    const props = this.props;\n    const { isClient } = this.state;\n    const html = isClient ? \"\" : renderServerSide(props);\n\n    return (\n      <further-teaser\n        suppressHydrationWarning={true}\n        dangerouslySetInnerHTML={{ __html: html }}\n        vsa-instance={props.vsaInstance}\n        data-sdk-framework=\"react\"\n        data-sdk-react-version={REACT_VERSION}\n        title={props.title}\n        subtitle={props.subtitle}\n        options={JSON.stringify(props.options)}\n        show-recent-tour-inquiries={props.showRecentTourInquiries}\n        theme={JSON.stringify(props.theme || {})}\n        custom-css={props.customCss}\n      ></further-teaser>\n    );\n  }\n}\n\nexport default Teaser;\n"],"names":["Teaser","React","Component","constructor","props","state","isClient","componentDidMount","setState","region","registerTeaserWebComponent","render","html","renderServerSide","createElement","suppressHydrationWarning","dangerouslySetInnerHTML","__html","vsaInstance","REACT_VERSION","title","subtitle","options","JSON","stringify","showRecentTourInquiries","theme","customCss"],"mappings":";;;;;;;;;AAoBa,MAAAA,MAAO,SAAQC,yBAAK,CAACC,SAAqD,CAAA;EACrFC,WAAAA,CAAYC,KAA2B,EAAA;IACrC,KAAK,CAACA,KAAK,CAAC,CAAA;IACZ,IAAI,CAACC,KAAK,GAAG;AAAEC,MAAAA,QAAQ,EAAE,KAAA;KAAO,CAAA;AAClC,GAAA;AAEAC,EAAAA,iBAAiBA,GAAA;AACf;AACA;IACA,IAAI,CAACC,QAAQ,CAAC;AAAEF,MAAAA,QAAQ,EAAE,IAAA;AAAM,KAAA,CAAC,CAAA;AACjC,IAAA,MAAQG,MAAM,GAAK,IAAI,CAACL,KAAK,CAArBK,MAAM,CAAA;AACdC,IAAAA,mCAA0B,CAAC;AAAED,MAAAA,MAAAA;AAAM,KAAE,CAAC,CAAA;AACxC,GAAA;AAEAE,EAAAA,MAAMA,GAAA;AACJ,IAAA,MAAMP,KAAK,GAAG,IAAI,CAACA,KAAK,CAAA;AACxB,IAAA,MAAQE,QAAQ,GAAK,IAAI,CAACD,KAAK,CAAvBC,QAAQ,CAAA;IAChB,MAAMM,IAAI,GAAGN,QAAQ,GAAG,EAAE,GAAGO,yBAAgB,CAACT,KAAK,CAAC,CAAA;AAEpD,IAAA,OACEH,yBAAA,CAAAa,aAAA,CAAA,gBAAA,EAAA;AACEC,MAAAA,wBAAwB,EAAE,IAAI;AAC9BC,MAAAA,uBAAuB,EAAE;AAAEC,QAAAA,MAAM,EAAEL,IAAAA;OAAM;MAC3B,cAAA,EAAAR,KAAK,CAACc,WAAW;AACZ,MAAA,oBAAA,EAAA,OAAO;AACF,MAAA,wBAAA,EAAAC,OAAa;MACrCC,KAAK,EAAEhB,KAAK,CAACgB,KAAK;MAClBC,QAAQ,EAAEjB,KAAK,CAACiB,QAAQ;MACxBC,OAAO,EAAEC,IAAI,CAACC,SAAS,CAACpB,KAAK,CAACkB,OAAO,CAAC;MACV,4BAAA,EAAAlB,KAAK,CAACqB,uBAAuB;MACzDC,KAAK,EAAEH,IAAI,CAACC,SAAS,CAACpB,KAAK,CAACsB,KAAK,IAAI,EAAE,CAAC;MAAA,YAAA,EAC5BtB,KAAK,CAACuB,SAAAA;AAAS,KAAA,CACX,CAAA;AAEtB,GAAA;AACD;;;;"}