@remoteoss/remote-flows 1.1.1 → 1.1.2

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.
Files changed (88) hide show
  1. package/dist/PdfPreview-6C3GGXIN.js +2 -0
  2. package/dist/PdfPreview-6C3GGXIN.js.map +1 -0
  3. package/dist/{chunk-KFDCTVJC.js → chunk-3E3A3LIN.js} +2 -2
  4. package/dist/{chunk-S2OEFLVC.js → chunk-3KYIP6FF.js} +2 -2
  5. package/dist/{chunk-TWDYIXF6.js → chunk-3S3JPGGN.js} +2 -2
  6. package/dist/{chunk-HGL5ACFL.js → chunk-43JVUULE.js} +2 -2
  7. package/dist/{chunk-NORA242K.js → chunk-75QLYO7Q.js} +2 -2
  8. package/dist/{chunk-ZMJV6QZZ.js → chunk-7OHYERFX.js} +2 -2
  9. package/dist/{chunk-VGP4HT4V.js → chunk-7OTI6JXY.js} +2 -2
  10. package/dist/{chunk-AUY7BT3K.js → chunk-7ZP6I6HO.js} +2 -2
  11. package/dist/{chunk-6EYHZKFV.js → chunk-AVMBXERH.js} +2 -2
  12. package/dist/{chunk-LSOPZ4VQ.js → chunk-H2KQYDBI.js} +2 -2
  13. package/dist/{chunk-6623EJIS.js → chunk-H5ALF54Z.js} +2 -2
  14. package/dist/{chunk-33DCBJQD.js → chunk-HAPPSY4M.js} +2 -2
  15. package/dist/{chunk-UTYOP6NP.js → chunk-I5ZXDJAN.js} +2 -2
  16. package/dist/chunk-KIFLAWFQ.js +2 -0
  17. package/dist/chunk-KIFLAWFQ.js.map +1 -0
  18. package/dist/{chunk-JOQBCGW5.js → chunk-LCVAJK7F.js} +2 -2
  19. package/dist/{chunk-A45DSZA7.js → chunk-LDMTOUJT.js} +2 -2
  20. package/dist/chunk-LNV36S6D.js +2 -0
  21. package/dist/chunk-LNV36S6D.js.map +1 -0
  22. package/dist/{chunk-OAQK6CYO.js → chunk-O3IPCXFD.js} +2 -2
  23. package/dist/{chunk-SQTK4MAQ.js → chunk-QGLNP2MO.js} +2 -2
  24. package/dist/{chunk-IIZDTABX.js → chunk-RHFPRVJN.js} +2 -2
  25. package/dist/{chunk-4QQMF6QQ.js → chunk-S57MEMTM.js} +2 -2
  26. package/dist/{chunk-R6RDV7FH.js → chunk-UXQVACXI.js} +2 -2
  27. package/dist/{chunk-34HAEN6X.js → chunk-WPPOKYOE.js} +2 -2
  28. package/dist/{chunk-RYUDHXQ6.js → chunk-XJGMRPGR.js} +2 -2
  29. package/dist/flows/ContractAmendment/ContractAmendmentFlow.js +1 -1
  30. package/dist/flows/ContractAmendment/ContractAmendmentForm.js +1 -1
  31. package/dist/flows/ContractAmendment/index.js +1 -1
  32. package/dist/flows/ContractorOnboarding/ContractorOnboarding.js +1 -1
  33. package/dist/flows/ContractorOnboarding/components/BasicInformationStep.js +1 -1
  34. package/dist/flows/ContractorOnboarding/components/ContractDetailsStep.js +1 -1
  35. package/dist/flows/ContractorOnboarding/components/ContractPreviewStep.js +1 -1
  36. package/dist/flows/ContractorOnboarding/components/ContractorOnboardingForm.js +1 -1
  37. package/dist/flows/ContractorOnboarding/components/PricingPlan.js +1 -1
  38. package/dist/flows/ContractorOnboarding/components/SelectCountryStep.js +1 -1
  39. package/dist/flows/ContractorOnboarding/index.js +1 -1
  40. package/dist/flows/CostCalculator/CostCalculatorFlow.js +1 -1
  41. package/dist/flows/CostCalculator/hooks.js +1 -1
  42. package/dist/flows/CostCalculator/index.js +1 -1
  43. package/dist/flows/CostCalculator/utils.js +1 -1
  44. package/dist/flows/Onboarding/OnboardingFlow.js +1 -1
  45. package/dist/flows/Onboarding/components/BasicInformationStep.js +1 -1
  46. package/dist/flows/Onboarding/components/BenefitsStep.js +1 -1
  47. package/dist/flows/Onboarding/components/ContractDetailsStep.js +1 -1
  48. package/dist/flows/Onboarding/components/OnboardingForm.js +1 -1
  49. package/dist/flows/Onboarding/components/SelectCountryStep.js +1 -1
  50. package/dist/flows/Onboarding/index.js +1 -1
  51. package/dist/flows/Termination/AdditionalDetailsForm.js +1 -1
  52. package/dist/flows/Termination/EmployeeComunicationForm.js +1 -1
  53. package/dist/flows/Termination/PaidTimeOffForm.js +1 -1
  54. package/dist/flows/Termination/TerminationDetailsForm.js +1 -1
  55. package/dist/flows/Termination/TerminationFlow.js +1 -1
  56. package/dist/flows/Termination/TerminationForm.js +1 -1
  57. package/dist/flows/Termination/index.js +1 -1
  58. package/dist/index.css +1 -1
  59. package/dist/index.css.map +1 -1
  60. package/dist/index.js +1 -1
  61. package/dist/index.js.map +1 -1
  62. package/package.json +8 -8
  63. package/dist/chunk-H6Q65JLZ.js +0 -2
  64. package/dist/chunk-H6Q65JLZ.js.map +0 -1
  65. package/dist/chunk-VOBHJI4Q.js +0 -2
  66. package/dist/chunk-VOBHJI4Q.js.map +0 -1
  67. /package/dist/{chunk-KFDCTVJC.js.map → chunk-3E3A3LIN.js.map} +0 -0
  68. /package/dist/{chunk-S2OEFLVC.js.map → chunk-3KYIP6FF.js.map} +0 -0
  69. /package/dist/{chunk-TWDYIXF6.js.map → chunk-3S3JPGGN.js.map} +0 -0
  70. /package/dist/{chunk-HGL5ACFL.js.map → chunk-43JVUULE.js.map} +0 -0
  71. /package/dist/{chunk-NORA242K.js.map → chunk-75QLYO7Q.js.map} +0 -0
  72. /package/dist/{chunk-ZMJV6QZZ.js.map → chunk-7OHYERFX.js.map} +0 -0
  73. /package/dist/{chunk-VGP4HT4V.js.map → chunk-7OTI6JXY.js.map} +0 -0
  74. /package/dist/{chunk-AUY7BT3K.js.map → chunk-7ZP6I6HO.js.map} +0 -0
  75. /package/dist/{chunk-6EYHZKFV.js.map → chunk-AVMBXERH.js.map} +0 -0
  76. /package/dist/{chunk-LSOPZ4VQ.js.map → chunk-H2KQYDBI.js.map} +0 -0
  77. /package/dist/{chunk-6623EJIS.js.map → chunk-H5ALF54Z.js.map} +0 -0
  78. /package/dist/{chunk-33DCBJQD.js.map → chunk-HAPPSY4M.js.map} +0 -0
  79. /package/dist/{chunk-UTYOP6NP.js.map → chunk-I5ZXDJAN.js.map} +0 -0
  80. /package/dist/{chunk-JOQBCGW5.js.map → chunk-LCVAJK7F.js.map} +0 -0
  81. /package/dist/{chunk-A45DSZA7.js.map → chunk-LDMTOUJT.js.map} +0 -0
  82. /package/dist/{chunk-OAQK6CYO.js.map → chunk-O3IPCXFD.js.map} +0 -0
  83. /package/dist/{chunk-SQTK4MAQ.js.map → chunk-QGLNP2MO.js.map} +0 -0
  84. /package/dist/{chunk-IIZDTABX.js.map → chunk-RHFPRVJN.js.map} +0 -0
  85. /package/dist/{chunk-4QQMF6QQ.js.map → chunk-S57MEMTM.js.map} +0 -0
  86. /package/dist/{chunk-R6RDV7FH.js.map → chunk-UXQVACXI.js.map} +0 -0
  87. /package/dist/{chunk-34HAEN6X.js.map → chunk-WPPOKYOE.js.map} +0 -0
  88. /package/dist/{chunk-RYUDHXQ6.js.map → chunk-XJGMRPGR.js.map} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/form/validationResolver.ts"],"sourcesContent":["import { FieldErrors, FieldValues, Resolver } from 'react-hook-form';\nimport type { ValidationError } from 'yup';\nimport type {\n FormErrors,\n ValidationResult,\n} from '@remoteoss/remote-json-schema-form-kit';\n\n// TODO: deprecated only used in the CostCalculatorFlow as we're using yup there\nexport function iterateErrors(error: ValidationError) {\n const errors = (error as ValidationError).inner.reduce(\n (\n allErrors: Record<string, { type: string; message: string }>,\n currentError: ValidationError,\n ) => {\n return {\n ...allErrors,\n [currentError.path as string]: {\n type: currentError.type ?? 'validation',\n message: currentError.message,\n },\n };\n },\n {} as Record<string, { type: string; message: string }>,\n );\n\n return errors;\n}\n\nfunction iterateFormErrors(formErrors?: FormErrors): FieldErrors {\n return Object.entries(formErrors || {}).reduce(\n (allErrors: FieldErrors, [fieldName, message]) => {\n // Extract the error message string from various payload formats\n let messageString: string;\n\n if (typeof message === 'string') {\n // Case 1: Simple string error\n messageString = message;\n } else if (\n typeof message === 'object' &&\n message !== null &&\n !Array.isArray(message)\n ) {\n // Case 2: Object with 'value' property (e.g., { value: \"...\" })\n messageString =\n ((message as Record<string, string>).value as string) ||\n JSON.stringify(message);\n } else {\n // Case 3: Fallback for arrays or other structures\n messageString = JSON.stringify(message);\n }\n\n allErrors[fieldName] = {\n type: 'validation',\n message: messageString,\n };\n\n // Also add errors for nested variants (.value and .filter) in case the field is nested\n allErrors[`${fieldName}.value`] = {\n type: 'validation',\n message: messageString,\n };\n\n return allErrors;\n },\n {} as FieldErrors,\n );\n}\n\nexport const useJsonSchemasValidationFormResolver = <\n T extends FieldValues = FieldValues,\n>(\n handleValidation: (data: T) => Promise<ValidationResult | null>,\n): Resolver<T> => {\n return async (data: T) => {\n const result = await handleValidation(data);\n\n // Handle null case - return no errors\n if (!result) {\n return {\n values: data,\n errors: {},\n };\n }\n\n const formErrors = 'formErrors' in result ? result.formErrors : undefined;\n\n if (Object.keys(formErrors || {}).length > 0) {\n const errors = iterateFormErrors(formErrors);\n return {\n values: {} as T,\n errors: errors as FieldErrors<T>,\n };\n }\n return {\n values: data,\n errors: {},\n };\n };\n};\n"],"mappings":"wCAQO,SAASA,EAAcC,EAAwB,CAiBpD,OAhBgBA,EAA0B,MAAM,OAC9C,CACEC,EACAC,KAEO,CACL,GAAGD,EACH,CAACC,EAAa,IAAc,EAAG,CAC7B,KAAMA,EAAa,MAAQ,aAC3B,QAASA,EAAa,OACxB,CACF,GAEF,CAAC,CACH,CAGF,CAlBgBC,EAAAJ,EAAA,iBAoBhB,SAASK,EAAkBC,EAAsC,CAC/D,OAAO,OAAO,QAAQA,GAAc,CAAC,CAAC,EAAE,OACtC,CAACJ,EAAwB,CAACK,EAAWC,CAAO,IAAM,CAEhD,IAAIC,EAEJ,OAAI,OAAOD,GAAY,SAErBC,EAAgBD,EAEhB,OAAOA,GAAY,UACnBA,IAAY,MACZ,CAAC,MAAM,QAAQA,CAAO,EAGtBC,EACID,EAAmC,OACrC,KAAK,UAAUA,CAAO,EAGxBC,EAAgB,KAAK,UAAUD,CAAO,EAGxCN,EAAUK,CAAS,EAAI,CACrB,KAAM,aACN,QAASE,CACX,EAGAP,EAAU,GAAGK,CAAS,QAAQ,EAAI,CAChC,KAAM,aACN,QAASE,CACX,EAEOP,CACT,EACA,CAAC,CACH,CACF,CAtCSE,EAAAC,EAAA,qBAwCF,IAAMK,EAAuCN,EAGlDO,GAEO,MAAOC,GAAY,CACxB,IAAMC,EAAS,MAAMF,EAAiBC,CAAI,EAG1C,GAAI,CAACC,EACH,MAAO,CACL,OAAQD,EACR,OAAQ,CAAC,CACX,EAGF,IAAMN,EAAa,eAAgBO,EAASA,EAAO,WAAa,OAEhE,GAAI,OAAO,KAAKP,GAAc,CAAC,CAAC,EAAE,OAAS,EAAG,CAC5C,IAAMQ,EAAST,EAAkBC,CAAU,EAC3C,MAAO,CACL,OAAQ,CAAC,EACT,OAAQQ,CACV,CACF,CACA,MAAO,CACL,OAAQF,EACR,OAAQ,CAAC,CACX,CACF,EA7BkD","names":["iterateErrors","error","allErrors","currentError","__name","iterateFormErrors","formErrors","fieldName","message","messageString","useJsonSchemasValidationFormResolver","handleValidation","data","result","errors"]}
@@ -1,2 +0,0 @@
1
- import{a as b}from"./chunk-ZMJV6QZZ.js";import{b as P}from"./chunk-TOA3JILU.js";import{b as g}from"./chunk-2YTBWEC7.js";import{b as m}from"./chunk-LJGCFFAT.js";import{a}from"./chunk-P37U34EQ.js";import{useState as w,useMemo as S}from"react";import{Document as k,Page as C,pdfjs as x}from"react-pdf";import{jsx as r,jsxs as i}from"react/jsx-runtime";x.GlobalWorkerOptions.workerSrc=`//unpkg.com/pdfjs-dist@${x.version}/build/pdf.worker.min.mjs`;function N({base64Data:c,fileName:l="document.pdf"}){let[n,t]=w(0),[d,u]=w(1),[p,s]=w(!0),[o,v]=w(""),f=S(()=>{if(!c)return"";let e=c.trim();return e.startsWith("data:application/pdf;base64,")||e.startsWith("data:")?e:`data:application/pdf;base64,${e}`},[c]),h=a(({numPages:e})=>{t(e),s(!1),v("")},"onDocumentLoadSuccess"),y=a(e=>{console.error("Error loading PDF:",e),v("Failed to load PDF document"),s(!1)},"onDocumentLoadError"),E=a(()=>{u(e=>Math.max(1,e-1))},"goToPrevPage"),D=a(()=>{u(e=>Math.min(n,e+1))},"goToNextPage");return f?i("div",{className:"w-full space-y-4",children:[i("div",{children:[i("div",{className:"flex justify-center items-center min-h-[600px] p-4 bg-gray-50",children:[p&&i("div",{className:"text-center",children:[r("div",{className:"animate-spin rounded-full h-12 w-12 border-b-2 border-gray-900 mx-auto mb-4"}),r("p",{className:"text-gray-600",children:"Loading PDF..."})]}),o&&i("div",{className:"text-center space-y-4",children:[r("p",{className:"text-red-600",children:o}),r(m,{asChild:!0,children:r("a",{href:f,download:l,children:"Download PDF Instead"})})]}),!o&&r(k,{file:f,onLoadSuccess:h,onLoadError:y,loading:"",className:"flex flex-col items-center",children:r(C,{pageNumber:d,renderTextLayer:!0,renderAnnotationLayer:!0,className:"shadow-lg",width:Math.min(window.innerWidth-100,800)})})]}),n>0&&!o&&r("div",{className:"border-t bg-white px-4 py-3",children:i("div",{className:"flex items-center justify-between",children:[r(m,{onClick:E,disabled:d<=1,variant:"outline",size:"sm",children:"\u2190 Previous"}),i("div",{className:"text-sm text-gray-600",children:["Page ",d," of ",n]}),r(m,{onClick:D,disabled:d>=n,variant:"outline",size:"sm",children:"Next \u2192"})]})})]}),i("div",{className:"flex justify-between items-center text-sm",children:[r("p",{className:"text-gray-600",children:l}),r(m,{variant:"link",size:"link",asChild:!0,children:i("a",{href:f,download:l,className:"flex items-center gap-1",children:[r("svg",{className:"w-4 h-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:r("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M4 16v1a3 3 0 003 3h10a3 3 0 003-3v-1m-4-4l-4 4m0 0l-4-4m4 4V4"})}),"Download PDF"]})})]})]}):r("div",{className:"w-full border rounded p-8 text-center bg-gray-50",children:r("p",{className:"text-gray-500",children:"No PDF data available"})})}a(N,"PDFPreview");import{jsx as F,jsxs as L}from"react/jsx-runtime";function I({onSubmit:c,onSuccess:l,onError:n}){let{contractorOnboardingBag:t}=P(),d=a(async p=>{try{let s=await t.parseFormValues(p);await c?.(s);let o=await t.onSubmit(p);if(o?.data){await l?.(o?.data),t?.next();return}if(o?.error){let v=g(o?.fieldErrors||[],t.meta?.fields?.contract_preview);n?.({error:o?.error,rawError:o?.rawError,fieldErrors:v})}}catch(s){n?.({error:s,rawError:s,fieldErrors:[]})}},"handleSubmit"),u=t.stepState.values?.contract_preview||t.initialValues.contract_preview;return L("div",{className:"space-y-4",children:[F(N,{base64Data:t.documentPreviewPdf?.contract_document.content}),F(b,{defaultValues:u,onSubmit:d})]})}a(I,"ContractPreviewStep");export{I as a};
2
- //# sourceMappingURL=chunk-VOBHJI4Q.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/shared/pdf-preview/PdfPreview.tsx","../src/flows/ContractorOnboarding/components/ContractPreviewStep.tsx"],"sourcesContent":["import { useState, useMemo } from 'react';\nimport { Document, Page, pdfjs } from 'react-pdf';\nimport { Button } from '@/src/components/ui/button';\n\n// Configure the worker\npdfjs.GlobalWorkerOptions.workerSrc = `//unpkg.com/pdfjs-dist@${pdfjs.version}/build/pdf.worker.min.mjs`;\n\ninterface PDFPreviewProps {\n base64Data: string;\n fileName?: string;\n}\n\nexport function PDFPreview({\n base64Data,\n fileName = 'document.pdf',\n}: PDFPreviewProps) {\n const [numPages, setNumPages] = useState<number>(0);\n const [pageNumber, setPageNumber] = useState<number>(1);\n const [isLoading, setIsLoading] = useState<boolean>(true);\n const [error, setError] = useState<string>('');\n\n const pdfDataUri = useMemo(() => {\n if (!base64Data) return '';\n\n const cleanedData = base64Data.trim();\n\n if (cleanedData.startsWith('data:application/pdf;base64,')) {\n return cleanedData;\n }\n\n if (cleanedData.startsWith('data:')) {\n return cleanedData;\n }\n\n return `data:application/pdf;base64,${cleanedData}`;\n }, [base64Data]);\n\n const onDocumentLoadSuccess = ({ numPages }: { numPages: number }) => {\n setNumPages(numPages);\n setIsLoading(false);\n setError('');\n };\n\n const onDocumentLoadError = (error: Error) => {\n console.error('Error loading PDF:', error);\n setError('Failed to load PDF document');\n setIsLoading(false);\n };\n\n const goToPrevPage = () => {\n setPageNumber((prev) => Math.max(1, prev - 1));\n };\n\n const goToNextPage = () => {\n setPageNumber((prev) => Math.min(numPages, prev + 1));\n };\n\n if (!pdfDataUri) {\n return (\n <div className='w-full border rounded p-8 text-center bg-gray-50'>\n <p className='text-gray-500'>No PDF data available</p>\n </div>\n );\n }\n\n return (\n <div className='w-full space-y-4'>\n <div>\n {/* PDF Viewer */}\n <div className='flex justify-center items-center min-h-[600px] p-4 bg-gray-50'>\n {isLoading && (\n <div className='text-center'>\n <div className='animate-spin rounded-full h-12 w-12 border-b-2 border-gray-900 mx-auto mb-4'></div>\n <p className='text-gray-600'>Loading PDF...</p>\n </div>\n )}\n\n {error && (\n <div className='text-center space-y-4'>\n <p className='text-red-600'>{error}</p>\n <Button asChild>\n <a href={pdfDataUri} download={fileName}>\n Download PDF Instead\n </a>\n </Button>\n </div>\n )}\n\n {!error && (\n <Document\n file={pdfDataUri}\n onLoadSuccess={onDocumentLoadSuccess}\n onLoadError={onDocumentLoadError}\n loading=''\n className='flex flex-col items-center'\n >\n <Page\n pageNumber={pageNumber}\n renderTextLayer={true}\n renderAnnotationLayer={true}\n className='shadow-lg'\n width={Math.min(window.innerWidth - 100, 800)}\n />\n </Document>\n )}\n </div>\n\n {/* Navigation Controls */}\n {numPages > 0 && !error && (\n <div className='border-t bg-white px-4 py-3'>\n <div className='flex items-center justify-between'>\n <Button\n onClick={goToPrevPage}\n disabled={pageNumber <= 1}\n variant='outline'\n size='sm'\n >\n ← Previous\n </Button>\n\n <div className='text-sm text-gray-600'>\n Page {pageNumber} of {numPages}\n </div>\n\n <Button\n onClick={goToNextPage}\n disabled={pageNumber >= numPages}\n variant='outline'\n size='sm'\n >\n Next →\n </Button>\n </div>\n </div>\n )}\n </div>\n\n {/* Download Link */}\n <div className='flex justify-between items-center text-sm'>\n <p className='text-gray-600'>{fileName}</p>\n <Button variant='link' size='link' asChild>\n <a\n href={pdfDataUri}\n download={fileName}\n className='flex items-center gap-1'\n >\n <svg\n className='w-4 h-4'\n fill='none'\n stroke='currentColor'\n viewBox='0 0 24 24'\n >\n <path\n strokeLinecap='round'\n strokeLinejoin='round'\n strokeWidth={2}\n d='M4 16v1a3 3 0 003 3h10a3 3 0 003-3v-1m-4-4l-4 4m0 0l-4-4m4 4V4'\n />\n </svg>\n Download PDF\n </a>\n </Button>\n </div>\n </div>\n );\n}\n","import { useContractorOnboardingContext } from '@/src/flows/ContractorOnboarding/context';\nimport { PDFPreview } from '@/src/components/shared/pdf-preview/PdfPreview';\nimport { ContractorOnboardingForm } from '@/src/flows/ContractorOnboarding/components/ContractorOnboardingForm';\nimport {\n NormalizedFieldError,\n normalizeFieldErrors,\n} from '@/src/lib/mutations';\nimport { $TSFixMe } from '@/src/types/remoteFlows';\nimport {\n ContractPreviewFormPayload,\n ContractPreviewResponse,\n} from '@/src/flows/ContractorOnboarding/types';\n\ntype ContractPreviewStepProps = {\n /*\n * The function is called when the form is submitted. It receives the form values as an argument.\n */\n onSubmit?: (payload: ContractPreviewFormPayload) => void | Promise<void>;\n /*\n * The function is called when the form submission is successful.\n */\n onSuccess?: (data: ContractPreviewResponse) => void | Promise<void>;\n /*\n * The function is called when an error occurs during form submission.\n */\n onError?: ({\n error,\n rawError,\n fieldErrors,\n }: {\n error: Error;\n rawError: Record<string, unknown>;\n fieldErrors: NormalizedFieldError[];\n }) => void;\n};\n\nexport function ContractPreviewStep({\n onSubmit,\n onSuccess,\n onError,\n}: ContractPreviewStepProps) {\n const { contractorOnboardingBag } = useContractorOnboardingContext();\n\n const handleSubmit = async (payload: $TSFixMe) => {\n try {\n const parsedValues =\n await contractorOnboardingBag.parseFormValues(payload);\n await onSubmit?.(parsedValues as $TSFixMe);\n const response = await contractorOnboardingBag.onSubmit(payload);\n if (response?.data) {\n await onSuccess?.(response?.data as $TSFixMe); // TODO: add type\n contractorOnboardingBag?.next();\n return;\n }\n if (response?.error) {\n const normalizedFieldErrors = normalizeFieldErrors(\n response?.fieldErrors || [],\n contractorOnboardingBag.meta?.fields?.contract_preview,\n );\n\n onError?.({\n error: response?.error,\n rawError: response?.rawError,\n fieldErrors: normalizedFieldErrors,\n });\n }\n } catch (error: unknown) {\n onError?.({\n error: error as Error,\n rawError: error as Record<string, unknown>,\n fieldErrors: [],\n });\n }\n };\n\n const initialValues =\n contractorOnboardingBag.stepState.values?.contract_preview ||\n contractorOnboardingBag.initialValues.contract_preview;\n\n return (\n <div className='space-y-4'>\n <PDFPreview\n base64Data={\n contractorOnboardingBag.documentPreviewPdf?.contract_document\n .content as unknown as string\n }\n />\n <ContractorOnboardingForm\n defaultValues={initialValues}\n onSubmit={handleSubmit}\n />\n </div>\n );\n}\n"],"mappings":"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","names":["useState","useMemo","Document","Page","pdfjs","jsx","jsxs","pdfjs","PDFPreview","base64Data","fileName","numPages","setNumPages","useState","pageNumber","setPageNumber","isLoading","setIsLoading","error","setError","pdfDataUri","useMemo","cleanedData","onDocumentLoadSuccess","__name","onDocumentLoadError","goToPrevPage","prev","goToNextPage","Button","Document","Page","jsx","jsxs","ContractPreviewStep","onSubmit","onSuccess","onError","contractorOnboardingBag","useContractorOnboardingContext","handleSubmit","__name","payload","parsedValues","response","normalizedFieldErrors","normalizeFieldErrors","error","initialValues","PDFPreview","ContractorOnboardingForm"]}