{"version":3,"file":"UdpQuestionFormRenderer.mjs","names":["React","useCallback","useState","UdpQuestionFormRenderer","UdpQuestionFormRendererStencil","props","$","_c","isPublicMode","formId","formVersion","submissionId","tenantId","urlContext","history","getUserCallback","enqueueSnackbar","closeSnackbar","onSubmitted","readOnly","didSubmit","setDidSubmit","t0","e","id","detail","handleSubmitted","t1","Symbol","for","t2","ThanksPanel","minHeight","display","flexDirection","alignItems","justifyContent","gap","padding","textAlign","margin","color"],"sources":["../../../../src/udp/pages/UdpQuestionFormPrivateForm/UdpQuestionFormRenderer.jsx"],"sourcesContent":["import React, { useCallback, useState } from 'react';\nimport { UdpQuestionFormRenderer as UdpQuestionFormRendererStencil } from '@univerus/udp-react-stencil-component-library';\n\n/**\n * React wrapper around the Stencil form renderer. Owns the post-submit\n * UX layer so the Stencil component stays a pure form engine:\n *\n *   - Listens for the renderer's `submitted` event (fired only on\n *     explicit Submit, not autosaves).\n *   - If the consumer passed `onSubmitted`, calls it with the\n *     submissionId and stays mounted as the form (consumer presumably\n *     navigates away, opens a modal, etc.).\n *   - Otherwise, swaps to a built-in \"Thanks for submitting\" panel in\n *     place of the form.\n *\n * Resetting `submitted` state lives at the React layer — when the\n * Stencil component remounts (e.g. URL changes to a different submission),\n * useState resets naturally.\n */\nexport const UdpQuestionFormRenderer = (props) => {\n  const {\n    isPublicMode,\n    formId,\n    formVersion,\n    submissionId,\n    tenantId,\n    urlContext,\n    history,\n    getUserCallback,\n    enqueueSnackbar,\n    closeSnackbar,\n    onSubmitted,\n    readOnly,\n  } = props;\n\n  const [didSubmit, setDidSubmit] = useState(false);\n\n  const handleSubmitted = useCallback(\n    (e) => {\n      const id = e?.detail;\n      if (onSubmitted) {\n        onSubmitted(id);\n        return;\n      }\n      setDidSubmit(true);\n    },\n    [onSubmitted],\n  );\n\n  if (didSubmit) {\n    return <ThanksPanel />;\n  }\n\n  return (\n    <UdpQuestionFormRendererStencil\n      isPublicMode={isPublicMode}\n      formId={formId}\n      formVersion={formVersion}\n      submissionId={submissionId}\n      tenantId={tenantId}\n      urlContext={urlContext}\n      history={history}\n      getUserCallback={getUserCallback}\n      enqueueSnackbar={enqueueSnackbar}\n      closeSnackbar={closeSnackbar}\n      onSubmitted={handleSubmitted}\n      readOnly={readOnly === true}\n    />\n  );\n};\n\nconst ThanksPanel = () => (\n  <div\n    style={{\n      minHeight: '60vh',\n      display: 'flex',\n      flexDirection: 'column',\n      alignItems: 'center',\n      justifyContent: 'center',\n      gap: 'var(--spacingVerticalM)',\n      padding: 'var(--spacingVerticalXXXL) var(--spacingHorizontalL)',\n      textAlign: 'center',\n    }}\n  >\n    <h2 style={{ margin: 0 }}>Thanks for submitting</h2>\n    <p style={{ margin: 0, color: 'var(--colorNeutralForeground3)' }}>\n      Your response has been recorded.\n    </p>\n  </div>\n);\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAmBA,MAAaG,6BAA0BE,UAAA;CAAA,MAAAC,IAAAC,EAAA,GAAA;CACrC,MAAA,EAAAC,cAAAC,QAAAC,aAAAC,cAAAC,UAAAC,YAAAC,SAAAC,iBAAAC,iBAAAC,eAAAC,aAAAC,aAaId;CAEJ,MAAA,CAAAe,WAAAC,gBAAkCnB,SAAS,MAAM;CAAC,IAAAoB;AAAA,KAAAhB,EAAA,OAAAY,aAAA;AAGhDI,QAAAC,MAAA;GACE,MAAAC,KAAWD,GAACE;AACZ,OAAIP,aAAW;AACbA,gBAAYM,GAAG;AAAA;;AAGjBH,gBAAa,KAAK;;AACnBf,IAAA,KAAAY;AAAAZ,IAAA,KAAAgB;OAAAA,MAAAhB,EAAA;CARH,MAAAoB,kBAAwBJ;AAYxB,KAAIF,WAAS;EAAA,IAAAO;AAAA,MAAArB,EAAA,OAAAsB,OAAAC,IAAA,4BAAA,EAAA;AACJF,QAAA,sBAAA,cAAC,aAAA,KAAc;AAAArB,KAAA,KAAAqB;QAAAA,MAAArB,EAAA;AAAA,SAAfqB;;CAgBK,MAAAA,KAAAR,aAAa;CAAI,IAAAW;AAAA,KAAAxB,EAAA,OAAAW,iBAAAX,EAAA,OAAAU,mBAAAV,EAAA,OAAAG,UAAAH,EAAA,OAAAI,eAAAJ,EAAA,OAAAS,mBAAAT,EAAA,OAAAoB,mBAAApB,EAAA,OAAAQ,WAAAR,EAAA,QAAAE,gBAAAF,EAAA,QAAAK,gBAAAL,EAAA,QAAAqB,MAAArB,EAAA,QAAAM,YAAAN,EAAA,QAAAO,YAAA;AAZ7BiB,OAAA,sBAAA,cAAC,yBAAD;GACgBtB;GACNC;GACKC;GACCC;GACJC;GACEC;GACHC;GACQC;GACAC;GACFC;GACFS,aAAAA;GACH,UAAAC;GACV,CAAA;AAAArB,IAAA,KAAAW;AAAAX,IAAA,KAAAU;AAAAV,IAAA,KAAAG;AAAAH,IAAA,KAAAI;AAAAJ,IAAA,KAAAS;AAAAT,IAAA,KAAAoB;AAAApB,IAAA,KAAAQ;AAAAR,IAAA,MAAAE;AAAAF,IAAA,MAAAK;AAAAL,IAAA,MAAAqB;AAAArB,IAAA,MAAAM;AAAAN,IAAA,MAAAO;AAAAP,IAAA,MAAAwB;OAAAA,MAAAxB,EAAA;AAAA,QAbFwB;;AAiBJ,MAAMC,oBAAc;CAAA,MAAAzB,IAAAC,EAAA,EAAA;CAAA,IAAAe;AAAA,KAAAhB,EAAA,OAAAsB,OAAAC,IAAA,4BAAA,EAAA;AAClBP,OAAA,sBAAA,cAAA,OAAA,EACS,OAAA;GAAAU,WACM;GAAMC,SACR;GAAMC,eACA;GAAQC,YACX;GAAQC,gBACJ;GAAQC,KACnB;GAAyBC,SACrB;GAAsDC,WACpD;GACb,EAMI,EAJJ,sBAAA,cAAA,MAAA,EAAW,OAAA,EAAAC,QAAU,GAAE,EACvB,EAD0B,wBAC1B,EAAA,sBAAA,cAAA,KAAA,EAAU,OAAA;GAAAA,QAAU;GAACC,OAAS;GAAiC,EAGjE,EAHoE,mCAGpE,CAAM;AAAAnC,IAAA,KAAAgB;OAAAA,MAAAhB,EAAA;AAAA,QAhBNgB"}