@unite-us/app-create-referral 0.15.170 → 0.15.171
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.
- package/dist/AppReferrals.js.map +1 -1
- package/dist/AppReferrals.scss +2 -2
- package/dist/AppReferrals.test.js +6 -6
- package/dist/AppReferrals.test.js.map +1 -1
- package/dist/__testUtils__/mockServer/handlers.js +6 -6
- package/dist/__testUtils__/mockServer/handlers.js.map +1 -1
- package/dist/__testUtils__/mockServer/server.js.map +1 -1
- package/dist/__testUtils__/test-utils.js +5 -5
- package/dist/__testUtils__/test-utils.js.map +1 -1
- package/dist/actions/Document/Contact/Group/fetchCaseDocuments.js.map +1 -1
- package/dist/actions/Document/Contact/Group/fetchContactDocuments.js.map +1 -1
- package/dist/actions/Document/Contact/Group/fileUploadUtils.js.map +1 -1
- package/dist/actions/Group/fetchCoreGroupForms.js.map +1 -1
- package/dist/actions/Referral/cannotMoveToReferralReasons.js.map +1 -1
- package/dist/actions/Referral/fetchCoreServices.js.map +1 -1
- package/dist/actions/Referral/fetchPrimaryWorkers.js +0 -1
- package/dist/actions/Referral/fetchPrimaryWorkers.js.map +1 -1
- package/dist/actions/Referral/removeReferralProgram.js.map +1 -1
- package/dist/api/ApiHooks.js.map +1 -1
- package/dist/api/config.js.map +1 -1
- package/dist/common/form/DocumentUploader/components/ContactDocumentsSelector.js.map +1 -1
- package/dist/common/form/DocumentUploader/components/DocumentsListView.js.map +1 -1
- package/dist/common/form/ErrorMessage/index.js.map +1 -1
- package/dist/common/form/FileUploadV2/FileUpload.js.map +1 -1
- package/dist/common/form/FileUploadV2/FileUpload.test.js.map +1 -1
- package/dist/common/form/FileUploadV2/components/FilePreviewWrapper.js.map +1 -1
- package/dist/common/form/FileUploadV2/components/FilePreviewWrapper.test.js.map +1 -1
- package/dist/common/form/FileUploadV2/stylesheets/FileUpload.scss +8 -6
- package/dist/common/form/FormForm/index.js.map +1 -1
- package/dist/common/utils/utils.js.map +1 -1
- package/dist/components/Card.js.map +1 -1
- package/dist/components/CreateReferralContainer.js +1 -2
- package/dist/components/CreateReferralContainer.js.map +1 -1
- package/dist/components/DollarAmount.js.map +1 -1
- package/dist/components/ExpandableButton.js.map +1 -1
- package/dist/components/LineItem.js.map +1 -1
- package/dist/components/NavButtons.js +8 -8
- package/dist/components/NavButtons.js.map +1 -1
- package/dist/components/NoReferralsDisplay.js +3 -4
- package/dist/components/NoReferralsDisplay.js.map +1 -1
- package/dist/components/ReferralStepper.js.map +1 -1
- package/dist/components/SearchableField.js.map +1 -1
- package/dist/components/StepHeader.js.map +1 -1
- package/dist/components/Stepper.js +10 -10
- package/dist/components/Stepper.js.map +1 -1
- package/dist/components/modal/Dialog.js +1 -1
- package/dist/components/modal/Dialog.js.map +1 -1
- package/dist/components/modal/Dialog.scss +7 -4
- package/dist/components/service_authorization/AuthorizationSpendCard.js.map +1 -1
- package/dist/components/service_authorization/CapsInfo.js.map +1 -1
- package/dist/components/service_authorization/CaseStatus.js.map +1 -1
- package/dist/components/service_authorization/PreviousAuthorizationRequestsDetails.js +1 -1
- package/dist/components/service_authorization/PreviousAuthorizationRequestsDetails.js.map +1 -1
- package/dist/components/service_authorization/PreviousAuthorizationRequestsDetails.scss +1 -1
- package/dist/components/service_authorization/ReferralAuthSpendExpandable.js.map +1 -1
- package/dist/components/service_authorization/ReferralAuthorizationRequestSummary.js +2 -2
- package/dist/components/service_authorization/ReferralAuthorizationRequestSummary.js.map +1 -1
- package/dist/components/service_authorization/Spend.js +0 -1
- package/dist/components/service_authorization/Spend.js.map +1 -1
- package/dist/components/service_authorization/formatShortDate.js.map +1 -1
- package/dist/components/service_authorization/messageConstants.js.map +1 -1
- package/dist/components/spinners/OverlaySpinner/OverlaySpinner.js.map +1 -1
- package/dist/components/spinners/Spinner/Spinner.js.map +1 -1
- package/dist/components/spinners/Spinner/Spinner.scss +28 -12
- package/dist/constants/callOrLog.js.map +1 -1
- package/dist/constants/enums.js +8 -8
- package/dist/constants/enums.js.map +1 -1
- package/dist/constants/eventConstants.js.map +1 -1
- package/dist/constants.js.map +1 -1
- package/dist/context/AppCreateReferralProvider.js +4 -4
- package/dist/context/AppCreateReferralProvider.js.map +1 -1
- package/dist/context/state.js.map +1 -1
- package/dist/context/withAppCreateReferralContext.js +1 -1
- package/dist/context/withAppCreateReferralContext.js.map +1 -1
- package/dist/hooks/__tests__/useCreateReferrals.test.js +5 -5
- package/dist/hooks/__tests__/useCreateReferrals.test.js.map +1 -1
- package/dist/hooks/sendReferral.js +3 -3
- package/dist/hooks/sendReferral.js.map +1 -1
- package/dist/hooks/useClinicalModificationOptions.js.map +1 -1
- package/dist/hooks/useCreateReferrals.js +4 -5
- package/dist/hooks/useCreateReferrals.js.map +1 -1
- package/dist/hooks/useCreateResourceList.js +2 -2
- package/dist/hooks/useCreateResourceList.js.map +1 -1
- package/dist/hooks/useCreateShareEvent.js +1 -1
- package/dist/hooks/useCreateShareEvent.js.map +1 -1
- package/dist/hooks/useForwardReferral.js +3 -4
- package/dist/hooks/useForwardReferral.js.map +1 -1
- package/dist/hooks/usePerson.js +5 -5
- package/dist/hooks/usePerson.js.map +1 -1
- package/dist/hooks/useUpdateResourceList.js +1 -1
- package/dist/hooks/useUpdateResourceList.js.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/pages/builder/ReferralBuilder.js.map +1 -1
- package/dist/pages/builder/ReferralBuilderForm.js.map +1 -1
- package/dist/pages/builder/ReferralBuilderForm.scss +0 -1
- package/dist/pages/builder/ReferralBuilderFormContent.js +1 -1
- package/dist/pages/builder/ReferralBuilderFormContent.js.map +1 -1
- package/dist/pages/builder/__tests__/AuthRequiredClinicalCodes.test.js +8 -8
- package/dist/pages/builder/__tests__/AuthRequiredClinicalCodes.test.js.map +1 -1
- package/dist/pages/builder/__tests__/AuthRequiredNonFundedPrograms.test.js +8 -8
- package/dist/pages/builder/__tests__/AuthRequiredNonFundedPrograms.test.js.map +1 -1
- package/dist/pages/builder/__tests__/AuthorizationRequiredPrograms.test.js +7 -7
- package/dist/pages/builder/__tests__/AuthorizationRequiredPrograms.test.js.map +1 -1
- package/dist/pages/builder/__tests__/NonSensitiveGroupedPrograms.test.js +26 -26
- package/dist/pages/builder/__tests__/NonSensitiveGroupedPrograms.test.js.map +1 -1
- package/dist/pages/builder/__tests__/NonSensitiveSingleProgram.test.js +21 -21
- package/dist/pages/builder/__tests__/NonSensitiveSingleProgram.test.js.map +1 -1
- package/dist/pages/builder/__tests__/ReferralBuilder.test.js +12 -12
- package/dist/pages/builder/__tests__/ReferralBuilder.test.js.map +1 -1
- package/dist/pages/builder/__tests__/ReferralBuilderForm.attachments.test.js.map +1 -1
- package/dist/pages/builder/__tests__/SensitiveProviderGroupedPrograms.test.js +17 -17
- package/dist/pages/builder/__tests__/SensitiveProviderGroupedPrograms.test.js.map +1 -1
- package/dist/pages/builder/__tests__/SensitiveServiceGroupedPrograms.test.js +10 -10
- package/dist/pages/builder/__tests__/SensitiveServiceGroupedPrograms.test.js.map +1 -1
- package/dist/pages/builder/__tests__/SensitiveServiceSensitiveProviderGroupedPrograms.test.js +13 -13
- package/dist/pages/builder/__tests__/SensitiveServiceSensitiveProviderGroupedPrograms.test.js.map +1 -1
- package/dist/pages/builder/__tests__/SensitiveSingleProgram.test.js +18 -18
- package/dist/pages/builder/__tests__/SensitiveSingleProgram.test.js.map +1 -1
- package/dist/pages/builder/__tests__/buildDraftState.test.js.map +1 -1
- package/dist/pages/builder/__tests__/buildGroupedReferrals.networkBug.test.js.map +1 -1
- package/dist/pages/builder/buildDraftState.js +2 -3
- package/dist/pages/builder/buildDraftState.js.map +1 -1
- package/dist/pages/builder/clearDraftState.js +0 -1
- package/dist/pages/builder/clearDraftState.js.map +1 -1
- package/dist/pages/builder/components/AboutGroupedReferralsModal.js.map +1 -1
- package/dist/pages/builder/components/AuthorizationSubform.js.map +1 -1
- package/dist/pages/builder/components/ChooseOneServiceTypeModal.js +1 -1
- package/dist/pages/builder/components/ChooseOneServiceTypeModal.js.map +1 -1
- package/dist/pages/builder/components/DetailsDrawer.js.map +1 -1
- package/dist/pages/builder/components/ProgramHeader.js +4 -4
- package/dist/pages/builder/components/ProgramHeader.js.map +1 -1
- package/dist/pages/builder/components/ProgramMenu.js +3 -3
- package/dist/pages/builder/components/ProgramMenu.js.map +1 -1
- package/dist/pages/builder/components/ReferralBuilderContent.js +1 -1
- package/dist/pages/builder/components/ReferralBuilderContent.js.map +1 -1
- package/dist/pages/builder/components/ReferralCard.js +4 -5
- package/dist/pages/builder/components/ReferralCard.js.map +1 -1
- package/dist/pages/builder/components/ReferralClientNeedsField.js.map +1 -1
- package/dist/pages/builder/components/ReferralProgramCard.js +1 -1
- package/dist/pages/builder/components/ReferralProgramCard.js.map +1 -1
- package/dist/pages/builder/components/ReferralProgramMenu.js +0 -1
- package/dist/pages/builder/components/ReferralProgramMenu.js.map +1 -1
- package/dist/pages/builder/constants.js.map +1 -1
- package/dist/pages/builder/hooks/useBuildReferrals.js +2 -2
- package/dist/pages/builder/hooks/useBuildReferrals.js.map +1 -1
- package/dist/pages/builder/hooks/useReferralMutations.js.map +1 -1
- package/dist/pages/builder/utils/buildGroupedReferrals.js.map +1 -1
- package/dist/pages/builder/utils/buildGroupedReferralsHelpers.js.map +1 -1
- package/dist/pages/builder/utils/formatProgramDetail.js.map +1 -1
- package/dist/pages/builder/utils/referralBuilderFormDraftAuth.js.map +1 -1
- package/dist/pages/builder/utils/referralBuilderFormUtils.js.map +1 -1
- package/dist/pages/builder/utils/referralBuilderFormValidation.js.map +1 -1
- package/dist/pages/builder/utils/referralBuilderUtils.js.map +1 -1
- package/dist/pages/builder/utils.js +0 -1
- package/dist/pages/builder/utils.js.map +1 -1
- package/dist/pages/review/DeleteReferralModal.js +0 -1
- package/dist/pages/review/DeleteReferralModal.js.map +1 -1
- package/dist/pages/review/DropdownMultiplesReferrals.js +1 -2
- package/dist/pages/review/DropdownMultiplesReferrals.js.map +1 -1
- package/dist/pages/review/ReferralsSent.js +5 -5
- package/dist/pages/review/ReferralsSent.js.map +1 -1
- package/dist/pages/review/Review.js +5 -6
- package/dist/pages/review/Review.js.map +1 -1
- package/dist/pages/review/SuccessReferralRedesign.js.map +1 -1
- package/dist/pages/review/__tests__/CallbackNotifications.test.js +8 -8
- package/dist/pages/review/__tests__/CallbackNotifications.test.js.map +1 -1
- package/dist/pages/review/__tests__/ReferralsSent.test.js +11 -11
- package/dist/pages/review/__tests__/ReferralsSent.test.js.map +1 -1
- package/dist/pages/review/__tests__/Review.test.js +61 -61
- package/dist/pages/review/__tests__/Review.test.js.map +1 -1
- package/dist/pages/review/__tests__/data.js +1336 -1336
- package/dist/pages/review/__tests__/data.js.map +1 -1
- package/dist/pages/review/__tests__/referralStatusRedesign.test.js.map +1 -1
- package/dist/pages/review/constants.js.map +1 -1
- package/dist/pages/review/referralStatusRedesign.js +1 -1
- package/dist/pages/review/referralStatusRedesign.js.map +1 -1
- package/dist/pages/supporting-info/SupportingInfo.js +0 -3
- package/dist/pages/supporting-info/SupportingInfo.js.map +1 -1
- package/dist/pages/supporting-info/SupportingInfo.scss +2 -3
- package/dist/pages/supporting-info/__tests__/SupportingInfo.test.js +17 -17
- package/dist/pages/supporting-info/__tests__/SupportingInfo.test.js.map +1 -1
- package/dist/pages/supporting-info/__tests__/data.js +8 -8
- package/dist/pages/supporting-info/__tests__/data.js.map +1 -1
- package/dist/reportWebVitals.js.map +1 -1
- package/dist/setupTests.js.map +1 -1
- package/dist/styles/mixins.scss +46 -39
- package/dist/styles/variables.scss +5 -4
- package/dist/utils/__tests__/addHttpIfNeeded.test.js +6 -6
- package/dist/utils/__tests__/addHttpIfNeeded.test.js.map +1 -1
- package/dist/utils/__tests__/attachmentUtils.test.js.map +1 -1
- package/dist/utils/__tests__/canChangeHoldReason.test.js.map +1 -1
- package/dist/utils/__tests__/checkRoles.test.js +15 -15
- package/dist/utils/__tests__/checkRoles.test.js.map +1 -1
- package/dist/utils/attachmentUtils.js.map +1 -1
- package/dist/utils/canAccept.js +4 -4
- package/dist/utils/canAccept.js.map +1 -1
- package/dist/utils/canChangeHoldReason.js +1 -1
- package/dist/utils/canChangeHoldReason.js.map +1 -1
- package/dist/utils/canHoldForReview.js +4 -4
- package/dist/utils/canHoldForReview.js.map +1 -1
- package/dist/utils/canReject.js.map +1 -1
- package/dist/utils/checkRoles.js +7 -7
- package/dist/utils/checkRoles.js.map +1 -1
- package/dist/utils/getProgramServicesPayload.js +1 -1
- package/dist/utils/getProgramServicesPayload.js.map +1 -1
- package/dist/utils/handleDraftSaveResponse.js.map +1 -1
- package/dist/utils/hasUserRole.js.map +1 -1
- package/dist/utils/isReferralForwarded.js +2 -2
- package/dist/utils/isReferralForwarded.js.map +1 -1
- package/dist/utils/referralToConsent.js +1 -1
- package/dist/utils/referralToConsent.js.map +1 -1
- package/dist/utils/useDebounce.js +1 -1
- package/dist/utils/useDebounce.js.map +1 -1
- package/dist/utils/validateCostAmount.js.map +1 -1
- package/dist/utils/validateUnitAmount.js.map +1 -1
- package/package.json +7 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ContactDocumentsSelector.js","names":["React","useState","useEffect","PropTypes","isEmpty","CheckBoxField","Table","TableBody","TableHeader","TableHeaderColumn","TableRow","TableRowColumn","jsx","_jsx","jsxs","_jsxs","ContactDocumentsSelector","_ref","documentFields","initialDocumentFields","setDocumentFields","HEADERS","openInNewWindow","url","window","open","handleOnCheck","index","updatedDocumentFields","attached","rows","map","field","i","documentTitle","document","title","documentUrl","rowIndex","clickable","children","columnIndex","className","id","label","checked","hideLabel","showError","showHint","onChange","onClick","header","propTypes","array","defaultProps"],"sources":["../../../../../src/common/form/DocumentUploader/components/ContactDocumentsSelector.js"],"sourcesContent":["import React, { useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport { isEmpty } from 'lodash';\nimport {\n CheckBoxField,\n Table,\n TableBody,\n TableHeader,\n TableHeaderColumn,\n TableRow,\n TableRowColumn,\n} from '@unite-us/app-components';\n\nfunction ContactDocumentsSelector({ documentFields: initialDocumentFields = [] }) {\n const [documentFields, setDocumentFields] = useState(initialDocumentFields);\n const HEADERS = ['', 'File Name', 'Uploaded By', 'Date Modified'];\n\n useEffect(() => {\n setDocumentFields(initialDocumentFields);\n }, [initialDocumentFields]);\n\n const openInNewWindow = (url) => {\n window.open(url);\n };\n\n const handleOnCheck = (index) => {\n const updatedDocumentFields = [...documentFields];\n updatedDocumentFields[index].attached = !updatedDocumentFields[index].attached;\n setDocumentFields(updatedDocumentFields);\n };\n\n if (isEmpty(documentFields)) {\n return null;\n }\n\n const rows = documentFields.map((field, i) => {\n const documentTitle = field.document.title;\n const documentUrl = field.document.url;\n\n return (\n <TableRow key={i} rowIndex={i} clickable={false}>\n <TableRowColumn columnIndex={0} className=\"contact-documents-selector__checkboxes\">\n <div data-test-element={`document-${i}-checkbox`}>\n <CheckBoxField\n id={`document-${i}-checkbox`}\n label={`Attach ${documentTitle}`}\n checked={field.attached}\n hideLabel\n showError={false}\n showHint={false}\n onChange={() => handleOnCheck(i)}\n />\n </div>\n </TableRowColumn>\n <TableRowColumn columnIndex={1}>\n {documentUrl ? (\n <a onClick={() => openInNewWindow(documentUrl)}>{documentTitle}</a>\n ) : (\n documentTitle\n )}\n </TableRowColumn>\n <TableRowColumn columnIndex={2}
|
|
1
|
+
{"version":3,"file":"ContactDocumentsSelector.js","names":["React","useState","useEffect","PropTypes","isEmpty","CheckBoxField","Table","TableBody","TableHeader","TableHeaderColumn","TableRow","TableRowColumn","jsx","_jsx","jsxs","_jsxs","ContactDocumentsSelector","_ref","documentFields","initialDocumentFields","setDocumentFields","HEADERS","openInNewWindow","url","window","open","handleOnCheck","index","updatedDocumentFields","attached","rows","map","field","i","documentTitle","document","title","documentUrl","rowIndex","clickable","children","columnIndex","className","id","label","checked","hideLabel","showError","showHint","onChange","onClick","header","propTypes","array","defaultProps"],"sources":["../../../../../src/common/form/DocumentUploader/components/ContactDocumentsSelector.js"],"sourcesContent":["import React, { useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport { isEmpty } from 'lodash';\nimport {\n CheckBoxField,\n Table,\n TableBody,\n TableHeader,\n TableHeaderColumn,\n TableRow,\n TableRowColumn,\n} from '@unite-us/app-components';\n\nfunction ContactDocumentsSelector({ documentFields: initialDocumentFields = [] }) {\n const [documentFields, setDocumentFields] = useState(initialDocumentFields);\n const HEADERS = ['', 'File Name', 'Uploaded By', 'Date Modified'];\n\n useEffect(() => {\n setDocumentFields(initialDocumentFields);\n }, [initialDocumentFields]);\n\n const openInNewWindow = (url) => {\n window.open(url);\n };\n\n const handleOnCheck = (index) => {\n const updatedDocumentFields = [...documentFields];\n updatedDocumentFields[index].attached = !updatedDocumentFields[index].attached;\n setDocumentFields(updatedDocumentFields);\n };\n\n if (isEmpty(documentFields)) {\n return null;\n }\n\n const rows = documentFields.map((field, i) => {\n const documentTitle = field.document.title;\n const documentUrl = field.document.url;\n\n return (\n <TableRow key={i} rowIndex={i} clickable={false}>\n <TableRowColumn columnIndex={0} className=\"contact-documents-selector__checkboxes\">\n <div data-test-element={`document-${i}-checkbox`}>\n <CheckBoxField\n id={`document-${i}-checkbox`}\n label={`Attach ${documentTitle}`}\n checked={field.attached}\n hideLabel\n showError={false}\n showHint={false}\n onChange={() => handleOnCheck(i)}\n />\n </div>\n </TableRowColumn>\n <TableRowColumn columnIndex={1}>\n {documentUrl ? (\n <a onClick={() => openInNewWindow(documentUrl)}>{documentTitle}</a>\n ) : (\n documentTitle\n )}\n </TableRowColumn>\n <TableRowColumn columnIndex={2}></TableRowColumn>\n <TableRowColumn columnIndex={3}></TableRowColumn>\n </TableRow>\n );\n });\n\n return (\n <Table id=\"contact-documents-selector-table\" className=\"contact-documents-selector\">\n <TableHeader>\n <TableRow rowIndex={0}>\n {HEADERS.map((header, index) => (\n <TableHeaderColumn key={index} columnIndex={index}>\n {header}\n </TableHeaderColumn>\n ))}\n </TableRow>\n </TableHeader>\n <TableBody>{rows}</TableBody>\n </Table>\n );\n}\n\nContactDocumentsSelector.propTypes = {\n documentFields: PropTypes.array,\n};\n\nContactDocumentsSelector.defaultProps = {\n documentFields: [],\n};\n\nexport default ContactDocumentsSelector;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DocumentsListView.js","names":["React","PropTypes","ListViewDocument","jsx","_jsx","DocumentsListView","_ref","documents","className","children","map","doc","i","id","propTypes","array","defaultProps"],"sources":["../../../../../src/common/form/DocumentUploader/components/DocumentsListView.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport ListViewDocument from './ListViewDocument';\n\nfunction DocumentsListView({ documents }) {\n return (\n <div className=\"documents-list-view detail-info__relationship\">\n <ul className=\"detail-info__relationship-files list-unstyled\"
|
|
1
|
+
{"version":3,"file":"DocumentsListView.js","names":["React","PropTypes","ListViewDocument","jsx","_jsx","DocumentsListView","_ref","documents","className","children","map","doc","i","id","propTypes","array","defaultProps"],"sources":["../../../../../src/common/form/DocumentUploader/components/DocumentsListView.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport ListViewDocument from './ListViewDocument';\n\nfunction DocumentsListView({ documents }) {\n return (\n <div className=\"documents-list-view detail-info__relationship\">\n <ul className=\"detail-info__relationship-files list-unstyled\">\n {documents.map((doc, i) => (\n <ListViewDocument id={`document-${i}`} key={i} doc={doc} />\n ))}\n </ul>\n </div>\n );\n}\n\nDocumentsListView.propTypes = {\n documents: PropTypes.array,\n};\n\nDocumentsListView.defaultProps = {\n documents: [],\n};\n\nexport default DocumentsListView;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,YAAY;AAClC,OAAOC,gBAAgB,MAAM,oBAAoB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAElD,SAASC,iBAAiBA,CAAAC,IAAA,EAAgB;EAAA,IAAf;IAAEC;EAAU,CAAC,GAAAD,IAAA;EACtC,oBACEF,IAAA;IAAKI,SAAS,EAAC,+CAA+C;IAAAC,QAAA,eAC5DL,IAAA;MAAII,SAAS,EAAC,+CAA+C;MAAAC,QAAA,EAC1DF,SAAS,CAACG,GAAG,CAAC,CAACC,GAAG,EAAEC,CAAC,kBACpBR,IAAA,CAACF,gBAAgB;QAACW,EAAE,EAAE,YAAYD,CAAC,EAAG;QAASD,GAAG,EAAEA;MAAI,GAAZC,CAAc,CAC3D;IAAC,CACA;EAAC,CACF,CAAC;AAEV;AAEAP,iBAAiB,CAACS,SAAS,GAAG;EAC5BP,SAAS,EAAEN,SAAS,CAACc;AACvB,CAAC;AAEDV,iBAAiB,CAACW,YAAY,GAAG;EAC/BT,SAAS,EAAE;AACb,CAAC;AAED,eAAeF,iBAAiB","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["React","PropTypes","Icon","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","ErrorMessage","_ref","children","className","icon","size","propTypes","node","isRequired"],"sources":["../../../../src/common/form/ErrorMessage/index.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Icon } from '@unite-us/app-components';\n\nconst ErrorMessage = ({ children }) => (\n <>\n <div>\n <Icon
|
|
1
|
+
{"version":3,"file":"index.js","names":["React","PropTypes","Icon","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","ErrorMessage","_ref","children","className","icon","size","propTypes","node","isRequired"],"sources":["../../../../src/common/form/ErrorMessage/index.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Icon } from '@unite-us/app-components';\n\nconst ErrorMessage = ({ children }) => (\n <>\n <div>\n <Icon className=\"fill-current text-red mr-1\" icon=\"ExclamationCircle\" size={16} />\n </div>\n <p className=\"text-red text-13px\">{children}</p>\n </>\n);\n\nErrorMessage.propTypes = {\n children: PropTypes.node.isRequired,\n};\n\nexport default ErrorMessage;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,YAAY;AAClC,SAASC,IAAI,QAAQ,0BAA0B;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,QAAA,IAAAC,SAAA,EAAAC,IAAA,IAAAC,KAAA;AAEhD,MAAMC,YAAY,GAAGC,IAAA;EAAA,IAAC;IAAEC;EAAS,CAAC,GAAAD,IAAA;EAAA,oBAChCF,KAAA,CAAAF,SAAA;IAAAK,QAAA,gBACEP,IAAA;MAAAO,QAAA,eACEP,IAAA,CAACF,IAAI;QAACU,SAAS,EAAC,4BAA4B;QAACC,IAAI,EAAC,mBAAmB;QAACC,IAAI,EAAE;MAAG,CAAE;IAAC,CAC/E,CAAC,eACNV,IAAA;MAAGQ,SAAS,EAAC,oBAAoB;MAAAD,QAAA,EAAEA;IAAQ,CAAI,CAAC;EAAA,CAChD,CAAC;AAAA,CACJ;AAEDF,YAAY,CAACM,SAAS,GAAG;EACvBJ,QAAQ,EAAEV,SAAS,CAACe,IAAI,CAACC;AAC3B,CAAC;AAED,eAAeR,YAAY","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FileUpload.js","names":["React","PropTypes","useDropzone","Icon","generateUUID","FilePreviewWrapper","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","ACCEPTED_FILE_TYPES","MAX_FILE_SIZE","FileUpload","_ref","rejectedFiles","uploadedFiles","existingFiles","setRejectedFiles","setUploadedFiles","onRemovePendingFile","onRemovePersistedFile","onDrop","acceptedFiles","fileUploadWithIdAndPreview","map","file","tempId","preview","URL","createObjectURL","filesTooBig","filesWrongType","currentFiles","onDropRejected","fileRejections","filesTooBigAndWrongType","reduce","acc","rejectedFile","size","includes","type","name","getRootProps","getInputProps","accept","maxSize","children","length","className","icon","color","propTypes","object","isRequired","array","func","defaultProps","undefined"],"sources":["../../../../src/common/form/FileUploadV2/FileUpload.jsx"],"sourcesContent":["import React from 'react';\nimport { PropTypes } from 'prop-types';\nimport { useDropzone } from 'react-dropzone';\nimport { Icon } from '@unite-us/app-components';\nimport { generateUUID } from '../../utils/utils';\nimport FilePreviewWrapper from './components/FilePreviewWrapper';\nimport './stylesheets/FileUpload.scss';\n\nconst ACCEPTED_FILE_TYPES = `text/csv, application/msword,\napplication/vnd.openxmlformats-officedocument.wordprocessingml.document,\napplication/pdf, application/rtf, text/rtf, application/x-rtf, text/plain,\napplication/excel, application/vnd.ms-excel, application/x-excel, application/x-msexcel,\napplication/vnd.openxmlformats-officedocument.spreadsheetml.sheet,\napplication/vnd.ms-excel.sheet.binary.macroEnabled.12,\napplication/vnd.ms-excel,\napplication/vnd.ms-excel.sheet.macroEnabled.12,\nimage/gif, image/jpg, image/jpeg, image/png, audio/mpeg, audio/m4a,\naudio/x-m4a, audio/wav, audio/x-wav, audio/x-ms-wma, video/x-ms-wma`;\nconst MAX_FILE_SIZE = 10000000;\n\nexport const FileUpload = ({\n rejectedFiles,\n uploadedFiles,\n existingFiles,\n setRejectedFiles,\n setUploadedFiles,\n onRemovePendingFile,\n onRemovePersistedFile,\n}) => {\n const onDrop = (acceptedFiles) => {\n const fileUploadWithIdAndPreview = acceptedFiles.map((file) => ({\n file,\n tempId: generateUUID(),\n preview: URL.createObjectURL(file),\n }));\n\n setRejectedFiles({ filesTooBig: [], filesWrongType: [] });\n setUploadedFiles((currentFiles) => [...currentFiles, ...fileUploadWithIdAndPreview]);\n };\n\n const onDropRejected = (fileRejections) => {\n const { filesTooBig, filesWrongType, filesTooBigAndWrongType } = fileRejections.reduce((acc, rejectedFile) => {\n if (rejectedFile.size > MAX_FILE_SIZE && !ACCEPTED_FILE_TYPES.includes(rejectedFile.type)) {\n return { ...acc, filesTooBigAndWrongType: [...acc.filesTooBigAndWrongType, rejectedFile.name] };\n }\n\n if (rejectedFile.size > MAX_FILE_SIZE) {\n return { ...acc, filesTooBig: [...acc.filesTooBig, rejectedFile.name] };\n }\n\n if (!ACCEPTED_FILE_TYPES.includes(rejectedFile.type)) {\n return { ...acc, filesWrongType: [...acc.filesWrongType, rejectedFile.name] };\n }\n\n return acc;\n }, { filesTooBig: [], filesWrongType: [], filesTooBigAndWrongType: [] });\n\n setRejectedFiles({ filesTooBig, filesWrongType, filesTooBigAndWrongType });\n };\n\n const { getRootProps, getInputProps } = useDropzone({\n accept: ACCEPTED_FILE_TYPES,\n maxSize: MAX_FILE_SIZE,\n onDrop,\n onDropRejected,\n });\n\n const { filesTooBig = [], filesWrongType = [], filesTooBigAndWrongType = [] } = rejectedFiles;\n\n return (\n <>\n {\n filesTooBigAndWrongType.length ? (\n <div>\n <div className=\"flex\">\n <div>\n <Icon\n className=\"mr-2 text-validation-red fill-current pb-1\"\n icon={'Warning'}\n size={14}\n />\n </div>\n <div>\n <div className={'text-sm text-validation-red'}>\n This file type is not supported and exceeds the maximum upload size of 10MB.\n </div>\n <div className={'text-sm text-validation-red mt-2'}>\n Accepted formats are CSV .DOC .DOCX .PDF .RTF .TXT .XLS .XLSX .GIF .JPG .JPEG .PNG .MP3 .M4A .WAV .WMA\n </div>\n </div>\n </div>\n <ul>\n {\n filesTooBigAndWrongType.map(\n (file) => <li key={file} className={'text-sm text-validation-red list-disc mt-1'}>{file}</li>,\n )\n }\n </ul>\n </div>\n ) : null\n }\n {\n filesWrongType.length ? (\n <div className={`${filesTooBigAndWrongType.length ? 'mt-3' : ''}`}>\n <div className=\"flex\">\n <div>\n <Icon\n className=\"mr-2 text-validation-red fill-current pb-1\"\n icon={'Warning'}\n size={14}\n />\n </div>\n <span className={'text-sm text-validation-red'}>\n This file type is not supported. Accepted formats are CSV .DOC .DOCX .PDF .RTF\n .TXT .XLS .XLSX .GIF .JPG .JPEG .PNG .MP3 .M4A .WAV .WMA\n </span>\n </div>\n <ul>\n {\n filesWrongType.map(\n (file) => <li key={file} className={'text-sm text-validation-red list-disc mt-1'}>{file}</li>,\n )\n }\n </ul>\n </div>\n ) : null\n }\n {\n filesTooBig.length ? (\n <div className={`${(filesWrongType.length || filesTooBigAndWrongType.length) ? 'mt-3' : ''}`}>\n <div className=\"flex\">\n <div>\n <Icon\n className=\"mr-2 text-validation-red fill-current pb-1\"\n icon={'Warning'}\n size={14}\n />\n </div>\n <span className={'text-sm text-validation-red'}>\n The following file exceeds the maximum upload size of 10MB\n </span>\n </div>\n <ul>\n {\n filesTooBig.map((file) => (\n <li key={file} className={'text-sm text-validation-red list-disc mt-1'}>{file}</li>\n ))\n }\n </ul>\n </div>\n ) : null\n }\n <div {...getRootProps()} className=\"file-upload-dropzone mb-3 mt-5 w-full\">\n <div className=\"file-upload-dropzone__preview\">\n <div className=\"text-center\">\n <div>\n <Icon\n className=\"mb-3 text-dark-blue\"\n icon={'Upload'}\n size={16}\n color={'none'}\n />\n </div>\n <div\n className=\"mb-2 text-base text-dark-blue\"\n >\n Drag and drop files or <button className=\"text-current-blue text-base\">Browse</button>\n </div>\n <p className=\"text-xs\">\n Supported: csv, doc, docx, pdf, rtf, txt, xls, xlsx, gif, jpg, jpeg, png, mp3, m4a, wav, wma\n </p>\n <p className=\"text-xs\">Maximum file size: 10mb</p>\n </div>\n <FilePreviewWrapper\n existingFiles={existingFiles}\n uploadedFiles={uploadedFiles}\n onRemovePendingFile={onRemovePendingFile}\n onRemovePersistedFile={onRemovePersistedFile}\n />\n <input {...getInputProps()} />\n </div>\n </div>\n </>\n );\n};\n\nFileUpload.propTypes = {\n rejectedFiles: PropTypes.object.isRequired,\n uploadedFiles: PropTypes.array.isRequired,\n existingFiles: PropTypes.array,\n setRejectedFiles: PropTypes.func.isRequired,\n setUploadedFiles: PropTypes.func.isRequired,\n onRemovePendingFile: PropTypes.func,\n onRemovePersistedFile: PropTypes.func,\n};\n\nFileUpload.defaultProps = {\n existingFiles: [],\n onRemovePendingFile: undefined,\n onRemovePersistedFile: undefined,\n};\n\nexport default FileUpload;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"FileUpload.js","names":["React","PropTypes","useDropzone","Icon","generateUUID","FilePreviewWrapper","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","ACCEPTED_FILE_TYPES","MAX_FILE_SIZE","FileUpload","_ref","rejectedFiles","uploadedFiles","existingFiles","setRejectedFiles","setUploadedFiles","onRemovePendingFile","onRemovePersistedFile","onDrop","acceptedFiles","fileUploadWithIdAndPreview","map","file","tempId","preview","URL","createObjectURL","filesTooBig","filesWrongType","currentFiles","onDropRejected","fileRejections","filesTooBigAndWrongType","reduce","acc","rejectedFile","size","includes","type","name","getRootProps","getInputProps","accept","maxSize","children","length","className","icon","color","propTypes","object","isRequired","array","func","defaultProps","undefined"],"sources":["../../../../src/common/form/FileUploadV2/FileUpload.jsx"],"sourcesContent":["import React from 'react';\nimport { PropTypes } from 'prop-types';\nimport { useDropzone } from 'react-dropzone';\nimport { Icon } from '@unite-us/app-components';\nimport { generateUUID } from '../../utils/utils';\nimport FilePreviewWrapper from './components/FilePreviewWrapper';\nimport './stylesheets/FileUpload.scss';\n\nconst ACCEPTED_FILE_TYPES = `text/csv, application/msword,\napplication/vnd.openxmlformats-officedocument.wordprocessingml.document,\napplication/pdf, application/rtf, text/rtf, application/x-rtf, text/plain,\napplication/excel, application/vnd.ms-excel, application/x-excel, application/x-msexcel,\napplication/vnd.openxmlformats-officedocument.spreadsheetml.sheet,\napplication/vnd.ms-excel.sheet.binary.macroEnabled.12,\napplication/vnd.ms-excel,\napplication/vnd.ms-excel.sheet.macroEnabled.12,\nimage/gif, image/jpg, image/jpeg, image/png, audio/mpeg, audio/m4a,\naudio/x-m4a, audio/wav, audio/x-wav, audio/x-ms-wma, video/x-ms-wma`;\nconst MAX_FILE_SIZE = 10000000;\n\nexport const FileUpload = ({\n rejectedFiles,\n uploadedFiles,\n existingFiles,\n setRejectedFiles,\n setUploadedFiles,\n onRemovePendingFile,\n onRemovePersistedFile,\n}) => {\n const onDrop = (acceptedFiles) => {\n const fileUploadWithIdAndPreview = acceptedFiles.map((file) => ({\n file,\n tempId: generateUUID(),\n preview: URL.createObjectURL(file),\n }));\n\n setRejectedFiles({ filesTooBig: [], filesWrongType: [] });\n setUploadedFiles((currentFiles) => [...currentFiles, ...fileUploadWithIdAndPreview]);\n };\n\n const onDropRejected = (fileRejections) => {\n const { filesTooBig, filesWrongType, filesTooBigAndWrongType } = fileRejections.reduce(\n (acc, rejectedFile) => {\n if (rejectedFile.size > MAX_FILE_SIZE && !ACCEPTED_FILE_TYPES.includes(rejectedFile.type)) {\n return {\n ...acc,\n filesTooBigAndWrongType: [...acc.filesTooBigAndWrongType, rejectedFile.name],\n };\n }\n\n if (rejectedFile.size > MAX_FILE_SIZE) {\n return { ...acc, filesTooBig: [...acc.filesTooBig, rejectedFile.name] };\n }\n\n if (!ACCEPTED_FILE_TYPES.includes(rejectedFile.type)) {\n return { ...acc, filesWrongType: [...acc.filesWrongType, rejectedFile.name] };\n }\n\n return acc;\n },\n { filesTooBig: [], filesWrongType: [], filesTooBigAndWrongType: [] },\n );\n\n setRejectedFiles({ filesTooBig, filesWrongType, filesTooBigAndWrongType });\n };\n\n const { getRootProps, getInputProps } = useDropzone({\n accept: ACCEPTED_FILE_TYPES,\n maxSize: MAX_FILE_SIZE,\n onDrop,\n onDropRejected,\n });\n\n const { filesTooBig = [], filesWrongType = [], filesTooBigAndWrongType = [] } = rejectedFiles;\n\n return (\n <>\n {filesTooBigAndWrongType.length ? (\n <div>\n <div className=\"flex\">\n <div>\n <Icon\n className=\"mr-2 text-validation-red fill-current pb-1\"\n icon={'Warning'}\n size={14}\n />\n </div>\n <div>\n <div className={'text-sm text-validation-red'}>\n This file type is not supported and exceeds the maximum upload size of 10MB.\n </div>\n <div className={'text-sm text-validation-red mt-2'}>\n Accepted formats are CSV .DOC .DOCX .PDF .RTF .TXT .XLS .XLSX .GIF .JPG .JPEG .PNG\n .MP3 .M4A .WAV .WMA\n </div>\n </div>\n </div>\n <ul>\n {filesTooBigAndWrongType.map((file) => (\n <li key={file} className={'text-sm text-validation-red list-disc mt-1'}>\n {file}\n </li>\n ))}\n </ul>\n </div>\n ) : null}\n {filesWrongType.length ? (\n <div className={`${filesTooBigAndWrongType.length ? 'mt-3' : ''}`}>\n <div className=\"flex\">\n <div>\n <Icon\n className=\"mr-2 text-validation-red fill-current pb-1\"\n icon={'Warning'}\n size={14}\n />\n </div>\n <span className={'text-sm text-validation-red'}>\n This file type is not supported. Accepted formats are CSV .DOC .DOCX .PDF .RTF .TXT\n .XLS .XLSX .GIF .JPG .JPEG .PNG .MP3 .M4A .WAV .WMA\n </span>\n </div>\n <ul>\n {filesWrongType.map((file) => (\n <li key={file} className={'text-sm text-validation-red list-disc mt-1'}>\n {file}\n </li>\n ))}\n </ul>\n </div>\n ) : null}\n {filesTooBig.length ? (\n <div className={`${filesWrongType.length || filesTooBigAndWrongType.length ? 'mt-3' : ''}`}>\n <div className=\"flex\">\n <div>\n <Icon\n className=\"mr-2 text-validation-red fill-current pb-1\"\n icon={'Warning'}\n size={14}\n />\n </div>\n <span className={'text-sm text-validation-red'}>\n The following file exceeds the maximum upload size of 10MB\n </span>\n </div>\n <ul>\n {filesTooBig.map((file) => (\n <li key={file} className={'text-sm text-validation-red list-disc mt-1'}>\n {file}\n </li>\n ))}\n </ul>\n </div>\n ) : null}\n <div {...getRootProps()} className=\"file-upload-dropzone mb-3 mt-5 w-full\">\n <div className=\"file-upload-dropzone__preview\">\n <div className=\"text-center\">\n <div>\n <Icon className=\"mb-3 text-dark-blue\" icon={'Upload'} size={16} color={'none'} />\n </div>\n <div className=\"mb-2 text-base text-dark-blue\">\n Drag and drop files or <button className=\"text-current-blue text-base\">Browse</button>\n </div>\n <p className=\"text-xs\">\n Supported: csv, doc, docx, pdf, rtf, txt, xls, xlsx, gif, jpg, jpeg, png, mp3, m4a,\n wav, wma\n </p>\n <p className=\"text-xs\">Maximum file size: 10mb</p>\n </div>\n <FilePreviewWrapper\n existingFiles={existingFiles}\n uploadedFiles={uploadedFiles}\n onRemovePendingFile={onRemovePendingFile}\n onRemovePersistedFile={onRemovePersistedFile}\n />\n <input {...getInputProps()} />\n </div>\n </div>\n </>\n );\n};\n\nFileUpload.propTypes = {\n rejectedFiles: PropTypes.object.isRequired,\n uploadedFiles: PropTypes.array.isRequired,\n existingFiles: PropTypes.array,\n setRejectedFiles: PropTypes.func.isRequired,\n setUploadedFiles: PropTypes.func.isRequired,\n onRemovePendingFile: PropTypes.func,\n onRemovePersistedFile: PropTypes.func,\n};\n\nFileUpload.defaultProps = {\n existingFiles: [],\n onRemovePendingFile: undefined,\n onRemovePersistedFile: undefined,\n};\n\nexport default FileUpload;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FileUpload.test.js","names":["render","act","jsx","_jsx","mockDropzoneOptions","loadFileUpload","jest","resetModules","undefined","doMock","useDropzone","options","getRootProps","getInputProps","Icon","_ref","icon","props","React","require","createElement","generateUUID","fn","FileUpload","describe","beforeEach","global","URL","createObjectURL","afterEach","dontMock","it","setRejectedFiles","setUploadedFiles","rejectedFiles","existingFiles","uploadedFiles","droppedFile","File","type","onDrop","expect","toHaveBeenCalledWith","filesTooBig","filesWrongType","any","Function","updater","mock","calls","toEqual","file","tempId","preview"],"sources":["../../../../src/common/form/FileUploadV2/FileUpload.test.jsx"],"sourcesContent":["import { render, act } from '@testing-library/react';\n\nlet mockDropzoneOptions;\n\nconst loadFileUpload = () => {\n jest.resetModules();\n mockDropzoneOptions = undefined;\n\n jest.doMock('react-dropzone', () => ({\n useDropzone: (options) => {\n mockDropzoneOptions = options;\n return {\n getRootProps: () => ({ 'data-testid': 'dropzone-root' }),\n getInputProps: () => ({ 'data-testid': 'dropzone-input' }),\n };\n },\n }));\n\n jest.doMock('@unite-us/app-components', () => ({\n Icon: ({ icon, ...props }) => {\n const React = require('react');\n\n return React.createElement('span', {\n ...props,\n 'data-icon': icon,\n });\n },\n }));\n\n jest.doMock('./components/FilePreviewWrapper', () => {\n const React = require('react');\n\n return () => React.createElement('div', { 'data-testid': 'file-preview-wrapper' });\n });\n\n jest.doMock('../../utils/utils', () => ({\n generateUUID: jest.fn(() => 'generated-temp-id'),\n }));\n\n
|
|
1
|
+
{"version":3,"file":"FileUpload.test.js","names":["render","act","jsx","_jsx","mockDropzoneOptions","loadFileUpload","jest","resetModules","undefined","doMock","useDropzone","options","getRootProps","getInputProps","Icon","_ref","icon","props","React","require","createElement","generateUUID","fn","FileUpload","describe","beforeEach","global","URL","createObjectURL","afterEach","dontMock","it","setRejectedFiles","setUploadedFiles","rejectedFiles","existingFiles","uploadedFiles","droppedFile","File","type","onDrop","expect","toHaveBeenCalledWith","filesTooBig","filesWrongType","any","Function","updater","mock","calls","toEqual","file","tempId","preview"],"sources":["../../../../src/common/form/FileUploadV2/FileUpload.test.jsx"],"sourcesContent":["import { render, act } from '@testing-library/react';\n\nlet mockDropzoneOptions;\n\nconst loadFileUpload = () => {\n jest.resetModules();\n mockDropzoneOptions = undefined;\n\n jest.doMock('react-dropzone', () => ({\n useDropzone: (options) => {\n mockDropzoneOptions = options;\n return {\n getRootProps: () => ({ 'data-testid': 'dropzone-root' }),\n getInputProps: () => ({ 'data-testid': 'dropzone-input' }),\n };\n },\n }));\n\n jest.doMock('@unite-us/app-components', () => ({\n Icon: ({ icon, ...props }) => {\n const React = require('react');\n\n return React.createElement('span', {\n ...props,\n 'data-icon': icon,\n });\n },\n }));\n\n jest.doMock('./components/FilePreviewWrapper', () => {\n const React = require('react');\n\n return () => React.createElement('div', { 'data-testid': 'file-preview-wrapper' });\n });\n\n jest.doMock('../../utils/utils', () => ({\n generateUUID: jest.fn(() => 'generated-temp-id'),\n }));\n\n return require('./FileUpload').FileUpload;\n};\n\ndescribe('FileUpload', () => {\n beforeEach(() => {\n global.URL.createObjectURL = jest.fn(() => 'blob:preview');\n });\n\n afterEach(() => {\n jest.dontMock('react-dropzone');\n jest.dontMock('@unite-us/app-components');\n jest.dontMock('./components/FilePreviewWrapper');\n jest.dontMock('../../utils/utils');\n });\n\n it('appends only new uploaded files on drop', async () => {\n const FileUpload = loadFileUpload();\n const setRejectedFiles = jest.fn();\n const setUploadedFiles = jest.fn();\n\n render(\n <FileUpload\n rejectedFiles={{}}\n existingFiles={[]}\n uploadedFiles={[]}\n setRejectedFiles={setRejectedFiles}\n setUploadedFiles={setUploadedFiles}\n />,\n );\n\n const droppedFile = new File(['file contents'], 'new.pdf', { type: 'application/pdf' });\n\n await act(async () => {\n mockDropzoneOptions.onDrop([droppedFile]);\n });\n\n expect(setRejectedFiles).toHaveBeenCalledWith({ filesTooBig: [], filesWrongType: [] });\n expect(setUploadedFiles).toHaveBeenCalledWith(expect.any(Function));\n\n const updater = setUploadedFiles.mock.calls[0][0];\n expect(updater([])).toEqual([\n {\n file: droppedFile,\n tempId: 'generated-temp-id',\n preview: 'blob:preview',\n },\n ]);\n });\n});\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FilePreviewWrapper.js","names":["PropTypes","React","isNil","Icon","FilePreview","jsx","_jsx","jsxs","_jsxs","RemoveFileButton","_ref","index","file","name","onRemoveFile","type","className","onClick","event","stopPropagation","children","icon","size","propTypes","number","isRequired","object","string","func","defaultProps","undefined","renderFile","isNewAttachment","tempId","id","contentType","content_type","preview","pdf_url","filename","FilePreviewWrapper","_ref2","existingFiles","uploadedFiles","onRemovePendingFile","onRemovePersistedFile","persistedFiles","pendingFiles","map","array"],"sources":["../../../../../src/common/form/FileUploadV2/components/FilePreviewWrapper.jsx"],"sourcesContent":["import PropTypes from 'prop-types';\nimport React from 'react';\nimport { isNil } from 'lodash';\nimport { Icon } from '@unite-us/app-components';\nimport FilePreview from './FilePreview';\n\nconst RemoveFileButton = ({ index, file, name, onRemoveFile }) => {\n if (!onRemoveFile) {\n return null;\n }\n\n return (\n <button\n type=\"button\"\n aria-label={`Remove file ${name}`}\n className=\"file-upload-dropzone__preview__remove-btn\"\n onClick={(event) => {\n event.stopPropagation();\n onRemoveFile(index, file);\n }}\n >\n <Icon icon=\"Cross\" size={12} />\n </button>\n );\n};\n\nRemoveFileButton.propTypes = {\n index: PropTypes.number.isRequired,\n file: PropTypes.object.isRequired,\n name: PropTypes.string,\n onRemoveFile: PropTypes.func,\n};\n\nRemoveFileButton.defaultProps = {\n name: undefined,\n onRemoveFile: undefined,\n};\n\nconst renderFile = (file, index, onRemoveFile) => {\n const isNewAttachment = !isNil(file?.tempId);\n const id = isNewAttachment ? file?.tempId : file?.id;\n const contentType = isNewAttachment ? file?.file?.type : file?.content_type;\n const preview = isNewAttachment ? file?.preview : file?.pdf_url;\n const name = isNewAttachment ? file?.file?.name : file?.filename;\n\n return (\n <div key={id} className=\"file-upload-dropzone__preview__preview-item\">\n <FilePreview contentType={contentType} preview={preview} />\n <div className=\"file-upload-dropzone__preview__file-name\"
|
|
1
|
+
{"version":3,"file":"FilePreviewWrapper.js","names":["PropTypes","React","isNil","Icon","FilePreview","jsx","_jsx","jsxs","_jsxs","RemoveFileButton","_ref","index","file","name","onRemoveFile","type","className","onClick","event","stopPropagation","children","icon","size","propTypes","number","isRequired","object","string","func","defaultProps","undefined","renderFile","isNewAttachment","tempId","id","contentType","content_type","preview","pdf_url","filename","FilePreviewWrapper","_ref2","existingFiles","uploadedFiles","onRemovePendingFile","onRemovePersistedFile","persistedFiles","pendingFiles","map","array"],"sources":["../../../../../src/common/form/FileUploadV2/components/FilePreviewWrapper.jsx"],"sourcesContent":["import PropTypes from 'prop-types';\nimport React from 'react';\nimport { isNil } from 'lodash';\nimport { Icon } from '@unite-us/app-components';\nimport FilePreview from './FilePreview';\n\nconst RemoveFileButton = ({ index, file, name, onRemoveFile }) => {\n if (!onRemoveFile) {\n return null;\n }\n\n return (\n <button\n type=\"button\"\n aria-label={`Remove file ${name}`}\n className=\"file-upload-dropzone__preview__remove-btn\"\n onClick={(event) => {\n event.stopPropagation();\n onRemoveFile(index, file);\n }}\n >\n <Icon icon=\"Cross\" size={12} />\n </button>\n );\n};\n\nRemoveFileButton.propTypes = {\n index: PropTypes.number.isRequired,\n file: PropTypes.object.isRequired,\n name: PropTypes.string,\n onRemoveFile: PropTypes.func,\n};\n\nRemoveFileButton.defaultProps = {\n name: undefined,\n onRemoveFile: undefined,\n};\n\nconst renderFile = (file, index, onRemoveFile) => {\n const isNewAttachment = !isNil(file?.tempId);\n const id = isNewAttachment ? file?.tempId : file?.id;\n const contentType = isNewAttachment ? file?.file?.type : file?.content_type;\n const preview = isNewAttachment ? file?.preview : file?.pdf_url;\n const name = isNewAttachment ? file?.file?.name : file?.filename;\n\n return (\n <div key={id} className=\"file-upload-dropzone__preview__preview-item\">\n <FilePreview contentType={contentType} preview={preview} />\n <div className=\"file-upload-dropzone__preview__file-name\">{name}</div>\n <RemoveFileButton index={index} file={file} name={name} onRemoveFile={onRemoveFile} />\n </div>\n );\n};\n\nconst FilePreviewWrapper = ({\n existingFiles,\n uploadedFiles,\n onRemovePendingFile,\n onRemovePersistedFile,\n}) => {\n const persistedFiles = existingFiles || [];\n const pendingFiles = uploadedFiles || [];\n\n return (\n <div className=\"file-upload-dropzone__preview\">\n {persistedFiles.map((file, index) => renderFile(file, index, onRemovePersistedFile))}\n {pendingFiles.map((file, index) => renderFile(file, index, onRemovePendingFile))}\n </div>\n );\n};\n\nFilePreviewWrapper.propTypes = {\n existingFiles: PropTypes.array,\n uploadedFiles: PropTypes.array,\n onRemovePendingFile: PropTypes.func,\n onRemovePersistedFile: PropTypes.func,\n};\n\nFilePreviewWrapper.defaultProps = {\n existingFiles: [],\n uploadedFiles: [],\n onRemovePendingFile: undefined,\n onRemovePersistedFile: undefined,\n};\n\nexport default FilePreviewWrapper;\n"],"mappings":"AAAA,OAAOA,SAAS,MAAM,YAAY;AAClC,OAAOC,KAAK,MAAM,OAAO;AACzB,SAASC,KAAK,QAAQ,QAAQ;AAC9B,SAASC,IAAI,QAAQ,0BAA0B;AAC/C,OAAOC,WAAW,MAAM,eAAe;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAExC,MAAMC,gBAAgB,GAAGC,IAAA,IAAyC;EAAA,IAAxC;IAAEC,KAAK;IAAEC,IAAI;IAAEC,IAAI;IAAEC;EAAa,CAAC,GAAAJ,IAAA;EAC3D,IAAI,CAACI,YAAY,EAAE;IACjB,OAAO,IAAI;EACb;EAEA,oBACER,IAAA;IACES,IAAI,EAAC,QAAQ;IACb,cAAY,eAAeF,IAAI,EAAG;IAClCG,SAAS,EAAC,2CAA2C;IACrDC,OAAO,EAAGC,KAAK,IAAK;MAClBA,KAAK,CAACC,eAAe,CAAC,CAAC;MACvBL,YAAY,CAACH,KAAK,EAAEC,IAAI,CAAC;IAC3B,CAAE;IAAAQ,QAAA,eAEFd,IAAA,CAACH,IAAI;MAACkB,IAAI,EAAC,OAAO;MAACC,IAAI,EAAE;IAAG,CAAE;EAAC,CACzB,CAAC;AAEb,CAAC;AAEDb,gBAAgB,CAACc,SAAS,GAAG;EAC3BZ,KAAK,EAAEX,SAAS,CAACwB,MAAM,CAACC,UAAU;EAClCb,IAAI,EAAEZ,SAAS,CAAC0B,MAAM,CAACD,UAAU;EACjCZ,IAAI,EAAEb,SAAS,CAAC2B,MAAM;EACtBb,YAAY,EAAEd,SAAS,CAAC4B;AAC1B,CAAC;AAEDnB,gBAAgB,CAACoB,YAAY,GAAG;EAC9BhB,IAAI,EAAEiB,SAAS;EACfhB,YAAY,EAAEgB;AAChB,CAAC;AAED,MAAMC,UAAU,GAAGA,CAACnB,IAAI,EAAED,KAAK,EAAEG,YAAY,KAAK;EAChD,MAAMkB,eAAe,GAAG,CAAC9B,KAAK,CAACU,IAAI,EAAEqB,MAAM,CAAC;EAC5C,MAAMC,EAAE,GAAGF,eAAe,GAAGpB,IAAI,EAAEqB,MAAM,GAAGrB,IAAI,EAAEsB,EAAE;EACpD,MAAMC,WAAW,GAAGH,eAAe,GAAGpB,IAAI,EAAEA,IAAI,EAAEG,IAAI,GAAGH,IAAI,EAAEwB,YAAY;EAC3E,MAAMC,OAAO,GAAGL,eAAe,GAAGpB,IAAI,EAAEyB,OAAO,GAAGzB,IAAI,EAAE0B,OAAO;EAC/D,MAAMzB,IAAI,GAAGmB,eAAe,GAAGpB,IAAI,EAAEA,IAAI,EAAEC,IAAI,GAAGD,IAAI,EAAE2B,QAAQ;EAEhE,oBACE/B,KAAA;IAAcQ,SAAS,EAAC,6CAA6C;IAAAI,QAAA,gBACnEd,IAAA,CAACF,WAAW;MAAC+B,WAAW,EAAEA,WAAY;MAACE,OAAO,EAAEA;IAAQ,CAAE,CAAC,eAC3D/B,IAAA;MAAKU,SAAS,EAAC,0CAA0C;MAAAI,QAAA,EAAEP;IAAI,CAAM,CAAC,eACtEP,IAAA,CAACG,gBAAgB;MAACE,KAAK,EAAEA,KAAM;MAACC,IAAI,EAAEA,IAAK;MAACC,IAAI,EAAEA,IAAK;MAACC,YAAY,EAAEA;IAAa,CAAE,CAAC;EAAA,GAH9EoB,EAIL,CAAC;AAEV,CAAC;AAED,MAAMM,kBAAkB,GAAGC,KAAA,IAKrB;EAAA,IALsB;IAC1BC,aAAa;IACbC,aAAa;IACbC,mBAAmB;IACnBC;EACF,CAAC,GAAAJ,KAAA;EACC,MAAMK,cAAc,GAAGJ,aAAa,IAAI,EAAE;EAC1C,MAAMK,YAAY,GAAGJ,aAAa,IAAI,EAAE;EAExC,oBACEnC,KAAA;IAAKQ,SAAS,EAAC,+BAA+B;IAAAI,QAAA,GAC3C0B,cAAc,CAACE,GAAG,CAAC,CAACpC,IAAI,EAAED,KAAK,KAAKoB,UAAU,CAACnB,IAAI,EAAED,KAAK,EAAEkC,qBAAqB,CAAC,CAAC,EACnFE,YAAY,CAACC,GAAG,CAAC,CAACpC,IAAI,EAAED,KAAK,KAAKoB,UAAU,CAACnB,IAAI,EAAED,KAAK,EAAEiC,mBAAmB,CAAC,CAAC;EAAA,CAC7E,CAAC;AAEV,CAAC;AAEDJ,kBAAkB,CAACjB,SAAS,GAAG;EAC7BmB,aAAa,EAAE1C,SAAS,CAACiD,KAAK;EAC9BN,aAAa,EAAE3C,SAAS,CAACiD,KAAK;EAC9BL,mBAAmB,EAAE5C,SAAS,CAAC4B,IAAI;EACnCiB,qBAAqB,EAAE7C,SAAS,CAAC4B;AACnC,CAAC;AAEDY,kBAAkB,CAACX,YAAY,GAAG;EAChCa,aAAa,EAAE,EAAE;EACjBC,aAAa,EAAE,EAAE;EACjBC,mBAAmB,EAAEd,SAAS;EAC9Be,qBAAqB,EAAEf;AACzB,CAAC;AAED,eAAeU,kBAAkB","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FilePreviewWrapper.test.js","names":["React","render","screen","fireEvent","FilePreviewWrapper","jsx","_jsx","jest","mock","require","_ref","contentType","preview","createElement","describe","it","onRemovePendingFile","fn","onRemovePersistedFile","existingFiles","id","filename","pdf_url","content_type","uploadedFiles","tempId","file","name","type","expect","getByText","toBeInTheDocument","click","getByRole","toHaveBeenCalledWith","objectContaining"],"sources":["../../../../../src/common/form/FileUploadV2/components/FilePreviewWrapper.test.jsx"],"sourcesContent":["import React from 'react';\nimport { render, screen, fireEvent } from '@testing-library/react';\nimport FilePreviewWrapper from './FilePreviewWrapper';\n\njest.mock('./FilePreview', () => {\n const React = require('react');\n\n return ({ contentType, preview })
|
|
1
|
+
{"version":3,"file":"FilePreviewWrapper.test.js","names":["React","render","screen","fireEvent","FilePreviewWrapper","jsx","_jsx","jest","mock","require","_ref","contentType","preview","createElement","describe","it","onRemovePendingFile","fn","onRemovePersistedFile","existingFiles","id","filename","pdf_url","content_type","uploadedFiles","tempId","file","name","type","expect","getByText","toBeInTheDocument","click","getByRole","toHaveBeenCalledWith","objectContaining"],"sources":["../../../../../src/common/form/FileUploadV2/components/FilePreviewWrapper.test.jsx"],"sourcesContent":["import React from 'react';\nimport { render, screen, fireEvent } from '@testing-library/react';\nimport FilePreviewWrapper from './FilePreviewWrapper';\n\njest.mock('./FilePreview', () => {\n const React = require('react');\n\n return ({ contentType, preview }) =>\n React.createElement('div', {\n 'data-testid': 'file-preview',\n 'data-content-type': contentType,\n 'data-preview': preview,\n });\n});\n\ndescribe('FilePreviewWrapper', () => {\n it('renders remove controls for persisted and pending files', () => {\n const onRemovePendingFile = jest.fn();\n const onRemovePersistedFile = jest.fn();\n\n render(\n <FilePreviewWrapper\n existingFiles={[\n {\n id: 'attachment-1',\n filename: 'existing.pdf',\n pdf_url: '/files/existing.pdf',\n content_type: 'application/pdf',\n },\n ]}\n uploadedFiles={[\n {\n tempId: 'temp-1',\n preview: 'blob:preview',\n file: {\n name: 'new.pdf',\n type: 'application/pdf',\n },\n },\n ]}\n onRemovePendingFile={onRemovePendingFile}\n onRemovePersistedFile={onRemovePersistedFile}\n />,\n );\n\n expect(screen.getByText('existing.pdf')).toBeInTheDocument();\n expect(screen.getByText('new.pdf')).toBeInTheDocument();\n\n fireEvent.click(screen.getByRole('button', { name: 'Remove file existing.pdf' }));\n fireEvent.click(screen.getByRole('button', { name: 'Remove file new.pdf' }));\n\n expect(onRemovePersistedFile).toHaveBeenCalledWith(\n 0,\n expect.objectContaining({ id: 'attachment-1' }),\n );\n expect(onRemovePendingFile).toHaveBeenCalledWith(\n 0,\n expect.objectContaining({ tempId: 'temp-1' }),\n );\n });\n});\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,MAAM,EAAEC,MAAM,EAAEC,SAAS,QAAQ,wBAAwB;AAClE,OAAOC,kBAAkB,MAAM,sBAAsB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAEtDC,IAAI,CAACC,IAAI,CAAC,eAAe,EAAE,MAAM;EAC/B,MAAMR,KAAK,GAAGS,OAAO,CAAC,OAAO,CAAC;EAE9B,OAAOC,IAAA;IAAA,IAAC;MAAEC,WAAW;MAAEC;IAAQ,CAAC,GAAAF,IAAA;IAAA,OAC9BV,KAAK,CAACa,aAAa,CAAC,KAAK,EAAE;MACzB,aAAa,EAAE,cAAc;MAC7B,mBAAmB,EAAEF,WAAW;MAChC,cAAc,EAAEC;IAClB,CAAC,CAAC;EAAA;AACN,CAAC,CAAC;AAEFE,QAAQ,CAAC,oBAAoB,EAAE,MAAM;EACnCC,EAAE,CAAC,yDAAyD,EAAE,MAAM;IAClE,MAAMC,mBAAmB,GAAGT,IAAI,CAACU,EAAE,CAAC,CAAC;IACrC,MAAMC,qBAAqB,GAAGX,IAAI,CAACU,EAAE,CAAC,CAAC;IAEvChB,MAAM,cACJK,IAAA,CAACF,kBAAkB;MACjBe,aAAa,EAAE,CACb;QACEC,EAAE,EAAE,cAAc;QAClBC,QAAQ,EAAE,cAAc;QACxBC,OAAO,EAAE,qBAAqB;QAC9BC,YAAY,EAAE;MAChB,CAAC,CACD;MACFC,aAAa,EAAE,CACb;QACEC,MAAM,EAAE,QAAQ;QAChBb,OAAO,EAAE,cAAc;QACvBc,IAAI,EAAE;UACJC,IAAI,EAAE,SAAS;UACfC,IAAI,EAAE;QACR;MACF,CAAC,CACD;MACFZ,mBAAmB,EAAEA,mBAAoB;MACzCE,qBAAqB,EAAEA;IAAsB,CAC9C,CACH,CAAC;IAEDW,MAAM,CAAC3B,MAAM,CAAC4B,SAAS,CAAC,cAAc,CAAC,CAAC,CAACC,iBAAiB,CAAC,CAAC;IAC5DF,MAAM,CAAC3B,MAAM,CAAC4B,SAAS,CAAC,SAAS,CAAC,CAAC,CAACC,iBAAiB,CAAC,CAAC;IAEvD5B,SAAS,CAAC6B,KAAK,CAAC9B,MAAM,CAAC+B,SAAS,CAAC,QAAQ,EAAE;MAAEN,IAAI,EAAE;IAA2B,CAAC,CAAC,CAAC;IACjFxB,SAAS,CAAC6B,KAAK,CAAC9B,MAAM,CAAC+B,SAAS,CAAC,QAAQ,EAAE;MAAEN,IAAI,EAAE;IAAsB,CAAC,CAAC,CAAC;IAE5EE,MAAM,CAACX,qBAAqB,CAAC,CAACgB,oBAAoB,CAChD,CAAC,EACDL,MAAM,CAACM,gBAAgB,CAAC;MAAEf,EAAE,EAAE;IAAe,CAAC,CAChD,CAAC;IACDS,MAAM,CAACb,mBAAmB,CAAC,CAACkB,oBAAoB,CAC9C,CAAC,EACDL,MAAM,CAACM,gBAAgB,CAAC;MAAEV,MAAM,EAAE;IAAS,CAAC,CAC9C,CAAC;EACH,CAAC,CAAC;AACJ,CAAC,CAAC","ignoreList":[]}
|
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
|
|
3
3
|
.file-upload-dropzone {
|
|
4
4
|
position: relative;
|
|
5
|
-
|
|
6
|
-
background: #
|
|
7
|
-
border: 1px dashed #
|
|
5
|
+
|
|
6
|
+
background: #eef5fc;
|
|
7
|
+
border: 1px dashed #c2d8ea;
|
|
8
8
|
box-sizing: border-box;
|
|
9
9
|
border-radius: 4px;
|
|
10
10
|
|
|
@@ -19,13 +19,15 @@
|
|
|
19
19
|
text-align: center;
|
|
20
20
|
|
|
21
21
|
&__uploader-link {
|
|
22
|
-
|
|
23
|
-
|
|
22
|
+
color: var(--color-united-blue);
|
|
23
|
+
text-decoration: underline;
|
|
24
24
|
}
|
|
25
25
|
|
|
26
26
|
&__preview-item {
|
|
27
27
|
background: var(--color-white);
|
|
28
|
-
box-shadow:
|
|
28
|
+
box-shadow:
|
|
29
|
+
rgba(0, 0, 0, 0.12) 0px 1px 6px,
|
|
30
|
+
var(--color-medium-border-blue) 0px 1px 4px;
|
|
29
31
|
display: inline-block;
|
|
30
32
|
margin: 8px;
|
|
31
33
|
min-width: 100px;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["PropTypes","React","useEffect","useState","useRef","memo","SurveyJSFormRenderer","buildResponses","Icon","Expandable","get","isEqual","coreApi","useFeatureFlag","jsx","_jsx","jsxs","_jsxs","EXPANDABLE_HEADER_CLASS","EXPANDABLE_BODY_CLASS","StableSurveyRenderer","_ref","formData","formSubmission","handleSetSurveyModel","formDataRef","formSubmissionRef","children","current","editMode","onSurveyModelSet","prevProps","nextProps","FormForm","_ref2","formId","groupId","expanded","handleExpandChange","setRef","currentEmployee","hasErrors","contextType","context","contextPerson","response","usage_type","state","setState","form","formSubmissionsData","formUsageData","isFetching","surveyRef","setSurveyRef","responsesForEdit","setResponsesForEdit","crtb1121HideFieldInFormEnabled","getData","formResponse","findRecord","apiResponses","Promise","all","query","page","number","size","provider","isSensitive","populateRelationship","error","featureFlagQuestion","configuration","pages","elements","find","e","name","questionIdToHide","html","map","element","id","visible","formUsage","buildRequestBody","responses","submitter","ref","surveyJSON","title","description","handleSetSurvey","survey","data","header","onExpandChange","className","headerClassName","bodyClassName","color","icon","showFormSubmission","propTypes","object","isRequired","bool","string","func","defaultProps","undefined"],"sources":["../../../../src/common/form/FormForm/index.jsx"],"sourcesContent":["import PropTypes from 'prop-types';\nimport React, { useEffect, useState, useRef, memo } from 'react';\nimport { SurveyJSFormRenderer, buildResponses } from '@unite-us/ui-surveyjs2';\nimport {\n Icon,\n Expandable,\n} from '@unite-us/app-components';\nimport { get, isEqual } from 'lodash';\nimport './index.scss';\nimport { coreApi } from '../../../api/config';\nimport { useFeatureFlag } from '../../../utils/useFeatureFlag';\n\nconst EXPANDABLE_HEADER_CLASS = 'bg-light-border-grey hover:bg-light-border-grey';\nconst EXPANDABLE_BODY_CLASS = 'form-form__expandable-body';\n\nconst StableSurveyRenderer = memo(({ formData, formSubmission, handleSetSurveyModel }) => {\n const formDataRef = useRef(formData);\n const formSubmissionRef = useRef(formSubmission);\n \n return (\n <div data-testid=\"stable-survey-renderer\">\n <SurveyJSFormRenderer\n formData={formDataRef.current}\n formSubmission={formSubmissionRef.current}\n editMode\n onSurveyModelSet={handleSetSurveyModel}\n />\n </div>\n );\n}, (prevProps, nextProps) => {\n return isEqual(prevProps.formData, nextProps.formData);\n});\n\nfunction FormForm({\n formId,\n groupId,\n expanded,\n handleExpandChange,\n setRef,\n currentEmployee,\n hasErrors,\n contextType,\n context,\n contextPerson,\n response,\n usage_type,\n}) {\n const [state, setState] = useState({\n form: null,\n formSubmissionsData: null,\n formUsageData: null,\n isFetching: true,\n });\n const [surveyRef, setSurveyRef] = useState();\n const [responsesForEdit, setResponsesForEdit] = useState(response);\n\n const crtb1121HideFieldInFormEnabled = useFeatureFlag('crtb1121HideFieldInFormEnabled', false);\n\n useEffect(() => {\n setResponsesForEdit(response);\n }, [response]);\n\n useEffect(() => {\n const getData = async () => {\n let isFetching = true;\n const formResponse = await coreApi.findRecord('form', formId);\n const form = get(formResponse, 'data.data');\n\n const apiResponses = await Promise.all([\n coreApi.query('form_submission', {\n 'context.type': contextType,\n context: contextPerson ? null : context,\n 'context.person': contextPerson,\n form: formId,\n 'form.form_usages.provider': groupId,\n }, {\n page: {\n number: 1,\n size: 1,\n },\n }),\n coreApi.query('form_usage', {\n form: formId,\n provider: groupId,\n usage_type,\n }, {\n page: {\n number: 1,\n size: 1,\n },\n }),\n ]);\n const [formSubmissionsData, formUsageData] = apiResponses;\n\n const formSubmission = responsesForEdit || get(formSubmissionsData, 'data.data[0]');\n let isSensitive = false;\n if (contextType === 'case') {\n // Check for sensitive form submission\n try {\n await coreApi.populateRelationship('context', 'case', formSubmission);\n } catch (error) {\n isSensitive = get(error, 'response.status') === 403;\n }\n }\n isFetching = false;\n\n if (crtb1121HideFieldInFormEnabled && usage_type === 'referral_assessment') {\n const featureFlagQuestion = form.configuration.pages[0].elements.find((e) => (\n e.name === 'crtb-1121-hide-field-in-form'\n ));\n\n if (featureFlagQuestion) {\n const questionIdToHide = featureFlagQuestion.html;\n form.configuration.pages = form.configuration.pages.map((page) => ({\n ...page,\n elements: page.elements.map((element) => {\n if (element.id === questionIdToHide) {\n return { ...element, visible: false };\n }\n return element;\n }),\n }));\n }\n }\n\n setState({\n form,\n formSubmissionsData,\n formUsageData,\n isSensitive,\n isFetching,\n });\n };\n\n getData();\n }, []);\n\n const {\n form,\n formSubmissionsData,\n formUsageData,\n isSensitive,\n isFetching,\n } = state;\n const formUsage = get(formUsageData, 'data.data[0]');\n\n // If response is inherited from props, it means that a form that haven't been submitted is being edited.\n const formSubmission = responsesForEdit || get(formSubmissionsData, 'data.data[0]');\n\n if (!form || !formSubmissionsData || !formUsageData) {\n return null;\n }\n\n const buildRequestBody = () => ({\n responses: buildResponses(surveyRef),\n form: form.id,\n provider: groupId,\n contextType,\n context,\n submitter: currentEmployee.id,\n });\n\n setRef({\n ref: surveyRef,\n buildRequestBody,\n });\n\n const surveyJSON = {\n configuration: {\n title: form.name,\n description: form.description,\n ...form.configuration,\n },\n };\n\n const handleSetSurvey = (survey) => {\n if (!surveyRef || !isEqual(survey.data, surveyRef.data)) {\n setSurveyRef(survey);\n }\n };\n\n if (isFetching) {\n return (\n <Expandable\n expanded={expanded}\n header=\"Loading...\"\n onExpandChange={handleExpandChange}\n className=\"form-form expandable-app-create-referral\"\n headerClassName={EXPANDABLE_HEADER_CLASS}\n bodyClassName={EXPANDABLE_BODY_CLASS}\n />\n );\n }\n\n const title = (\n <span>\n {get(form, 'name', '')}\n {\n hasErrors && (\n <Icon\n className=\"ml-one\"\n color=\"#D0021B\"\n icon=\"ExclamationTriangle\"\n size={12}\n id={`error-icon-${formId}`}\n />\n )\n }\n </span>\n );\n const showFormSubmission = get(formUsage, 'prepopulate') ? formSubmission : null;\n\n return (\n <Expandable\n className=\"form-form expandable-app-create-referral\"\n expanded={expanded}\n header={title}\n onExpandChange={handleExpandChange}\n headerClassName={EXPANDABLE_HEADER_CLASS}\n bodyClassName={EXPANDABLE_BODY_CLASS}\n >\n {(!isFetching) && (\n <div className=\"px-4 py-3\">\n <StableSurveyRenderer\n formData={surveyJSON}\n formSubmission={isSensitive ? null : showFormSubmission}\n handleSetSurveyModel={handleSetSurvey}\n />\n </div>\n )}\n </Expandable>\n );\n}\n\nFormForm.propTypes = {\n currentEmployee: PropTypes.object.isRequired,\n expanded: PropTypes.bool.isRequired,\n formId: PropTypes.string.isRequired,\n groupId: PropTypes.string.isRequired,\n handleExpandChange: PropTypes.func.isRequired,\n setRef: PropTypes.func.isRequired,\n hasErrors: PropTypes.bool.isRequired,\n contextType: PropTypes.string.isRequired,\n context: PropTypes.string,\n contextPerson: PropTypes.string,\n response: PropTypes.object,\n usage_type: PropTypes.string.isRequired,\n};\n\nFormForm.defaultProps = {\n response: undefined,\n contextPerson: null,\n};\n\nexport default FormForm;\n"],"mappings":"AAAA,OAAOA,SAAS,MAAM,YAAY;AAClC,OAAOC,KAAK,IAAIC,SAAS,EAAEC,QAAQ,EAAEC,MAAM,EAAEC,IAAI,QAAQ,OAAO;AAChE,SAASC,oBAAoB,EAAEC,cAAc,QAAQ,wBAAwB;AAC7E,SACEC,IAAI,EACJC,UAAU,QACL,0BAA0B;AACjC,SAASC,GAAG,EAAEC,OAAO,QAAQ,QAAQ;AACrC,OAAO,cAAc;AACrB,SAASC,OAAO,QAAQ,qBAAqB;AAC7C,SAASC,cAAc,QAAQ,+BAA+B;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAE/D,MAAMC,uBAAuB,GAAG,iDAAiD;AACjF,MAAMC,qBAAqB,GAAG,4BAA4B;AAE1D,MAAMC,oBAAoB,gBAAGf,IAAI,CAACgB,IAAA,IAAwD;EAAA,IAAvD;IAAEC,QAAQ;IAAEC,cAAc;IAAEC;EAAqB,CAAC,GAAAH,IAAA;EACnF,MAAMI,WAAW,GAAGrB,MAAM,CAACkB,QAAQ,CAAC;EACpC,MAAMI,iBAAiB,GAAGtB,MAAM,CAACmB,cAAc,CAAC;EAEhD,oBACER,IAAA;IAAK,eAAY,wBAAwB;IAAAY,QAAA,eACvCZ,IAAA,CAACT,oBAAoB;MACnBgB,QAAQ,EAAEG,WAAW,CAACG,OAAQ;MAC9BL,cAAc,EAAEG,iBAAiB,CAACE,OAAQ;MAC1CC,QAAQ;MACRC,gBAAgB,EAAEN;IAAqB,CACxC;EAAC,CACC,CAAC;AAEV,CAAC,EAAE,CAACO,SAAS,EAAEC,SAAS,KAAK;EAC3B,OAAOrB,OAAO,CAACoB,SAAS,CAACT,QAAQ,EAAEU,SAAS,CAACV,QAAQ,CAAC;AACxD,CAAC,CAAC;AAEF,SAASW,QAAQA,CAAAC,KAAA,EAad;EAAA,IAbe;IAChBC,MAAM;IACNC,OAAO;IACPC,QAAQ;IACRC,kBAAkB;IAClBC,MAAM;IACNC,eAAe;IACfC,SAAS;IACTC,WAAW;IACXC,OAAO;IACPC,aAAa;IACbC,QAAQ;IACRC;EACF,CAAC,GAAAZ,KAAA;EACC,MAAM,CAACa,KAAK,EAAEC,QAAQ,CAAC,GAAG7C,QAAQ,CAAC;IACjC8C,IAAI,EAAE,IAAI;IACVC,mBAAmB,EAAE,IAAI;IACzBC,aAAa,EAAE,IAAI;IACnBC,UAAU,EAAE;EACd,CAAC,CAAC;EACF,MAAM,CAACC,SAAS,EAAEC,YAAY,CAAC,GAAGnD,QAAQ,CAAC,CAAC;EAC5C,MAAM,CAACoD,gBAAgB,EAAEC,mBAAmB,CAAC,GAAGrD,QAAQ,CAAC0C,QAAQ,CAAC;EAElE,MAAMY,8BAA8B,GAAG5C,cAAc,CAAC,gCAAgC,EAAE,KAAK,CAAC;EAE9FX,SAAS,CAAC,MAAM;IACdsD,mBAAmB,CAACX,QAAQ,CAAC;EAC/B,CAAC,EAAE,CAACA,QAAQ,CAAC,CAAC;EAEd3C,SAAS,CAAC,MAAM;IACd,MAAMwD,OAAO,GAAG,MAAAA,CAAA,KAAY;MAC1B,IAAIN,UAAU,GAAG,IAAI;MACrB,MAAMO,YAAY,GAAG,MAAM/C,OAAO,CAACgD,UAAU,CAAC,MAAM,EAAEzB,MAAM,CAAC;MAC7D,MAAMc,IAAI,GAAGvC,GAAG,CAACiD,YAAY,EAAE,WAAW,CAAC;MAE3C,MAAME,YAAY,GAAG,MAAMC,OAAO,CAACC,GAAG,CAAC,CACrCnD,OAAO,CAACoD,KAAK,CAAC,iBAAiB,EAAE;QAC/B,cAAc,EAAEtB,WAAW;QAC3BC,OAAO,EAAEC,aAAa,GAAG,IAAI,GAAGD,OAAO;QACvC,gBAAgB,EAAEC,aAAa;QAC/BK,IAAI,EAAEd,MAAM;QACZ,2BAA2B,EAAEC;MAC/B,CAAC,EAAE;QACD6B,IAAI,EAAE;UACJC,MAAM,EAAE,CAAC;UACTC,IAAI,EAAE;QACR;MACF,CAAC,CAAC,EACFvD,OAAO,CAACoD,KAAK,CAAC,YAAY,EAAE;QAC1Bf,IAAI,EAAEd,MAAM;QACZiC,QAAQ,EAAEhC,OAAO;QACjBU;MACF,CAAC,EAAE;QACDmB,IAAI,EAAE;UACJC,MAAM,EAAE,CAAC;UACTC,IAAI,EAAE;QACR;MACF,CAAC,CAAC,CACH,CAAC;MACF,MAAM,CAACjB,mBAAmB,EAAEC,aAAa,CAAC,GAAGU,YAAY;MAEzD,MAAMtC,cAAc,GAAGgC,gBAAgB,IAAI7C,GAAG,CAACwC,mBAAmB,EAAE,cAAc,CAAC;MACnF,IAAImB,WAAW,GAAG,KAAK;MACvB,IAAI3B,WAAW,KAAK,MAAM,EAAE;QAC1B;QACA,IAAI;UACF,MAAM9B,OAAO,CAAC0D,oBAAoB,CAAC,SAAS,EAAE,MAAM,EAAE/C,cAAc,CAAC;QACvE,CAAC,CAAC,OAAOgD,KAAK,EAAE;UACdF,WAAW,GAAG3D,GAAG,CAAC6D,KAAK,EAAE,iBAAiB,CAAC,KAAK,GAAG;QACrD;MACF;MACAnB,UAAU,GAAG,KAAK;MAElB,IAAIK,8BAA8B,IAAIX,UAAU,KAAK,qBAAqB,EAAE;QAC1E,MAAM0B,mBAAmB,GAAGvB,IAAI,CAACwB,aAAa,CAACC,KAAK,CAAC,CAAC,CAAC,CAACC,QAAQ,CAACC,IAAI,CAAEC,CAAC,IACtEA,CAAC,CAACC,IAAI,KAAK,8BACZ,CAAC;QAEF,IAAIN,mBAAmB,EAAE;UACvB,MAAMO,gBAAgB,GAAGP,mBAAmB,CAACQ,IAAI;UACjD/B,IAAI,CAACwB,aAAa,CAACC,KAAK,GAAGzB,IAAI,CAACwB,aAAa,CAACC,KAAK,CAACO,GAAG,CAAEhB,IAAI,KAAM;YACjE,GAAGA,IAAI;YACPU,QAAQ,EAAEV,IAAI,CAACU,QAAQ,CAACM,GAAG,CAAEC,OAAO,IAAK;cACvC,IAAIA,OAAO,CAACC,EAAE,KAAKJ,gBAAgB,EAAE;gBACnC,OAAO;kBAAE,GAAGG,OAAO;kBAAEE,OAAO,EAAE;gBAAM,CAAC;cACvC;cACA,OAAOF,OAAO;YAChB,CAAC;UACH,CAAC,CAAC,CAAC;QACL;MACF;MAEAlC,QAAQ,CAAC;QACPC,IAAI;QACJC,mBAAmB;QACnBC,aAAa;QACbkB,WAAW;QACXjB;MACF,CAAC,CAAC;IACJ,CAAC;IAEDM,OAAO,CAAC,CAAC;EACX,CAAC,EAAE,EAAE,CAAC;EAEN,MAAM;IACJT,IAAI;IACJC,mBAAmB;IACnBC,aAAa;IACbkB,WAAW;IACXjB;EACF,CAAC,GAAGL,KAAK;EACT,MAAMsC,SAAS,GAAG3E,GAAG,CAACyC,aAAa,EAAE,cAAc,CAAC;;EAEpD;EACA,MAAM5B,cAAc,GAAGgC,gBAAgB,IAAI7C,GAAG,CAACwC,mBAAmB,EAAE,cAAc,CAAC;EAEnF,IAAI,CAACD,IAAI,IAAI,CAACC,mBAAmB,IAAI,CAACC,aAAa,EAAE;IACnD,OAAO,IAAI;EACb;EAEA,MAAMmC,gBAAgB,GAAGA,CAAA,MAAO;IAC9BC,SAAS,EAAEhF,cAAc,CAAC8C,SAAS,CAAC;IACpCJ,IAAI,EAAEA,IAAI,CAACkC,EAAE;IACbf,QAAQ,EAAEhC,OAAO;IACjBM,WAAW;IACXC,OAAO;IACP6C,SAAS,EAAEhD,eAAe,CAAC2C;EAC7B,CAAC,CAAC;EAEF5C,MAAM,CAAC;IACLkD,GAAG,EAAEpC,SAAS;IACdiC;EACF,CAAC,CAAC;EAEF,MAAMI,UAAU,GAAG;IACjBjB,aAAa,EAAE;MACbkB,KAAK,EAAE1C,IAAI,CAAC6B,IAAI;MAChBc,WAAW,EAAE3C,IAAI,CAAC2C,WAAW;MAC7B,GAAG3C,IAAI,CAACwB;IACV;EACF,CAAC;EAED,MAAMoB,eAAe,GAAIC,MAAM,IAAK;IAClC,IAAI,CAACzC,SAAS,IAAI,CAAC1C,OAAO,CAACmF,MAAM,CAACC,IAAI,EAAE1C,SAAS,CAAC0C,IAAI,CAAC,EAAE;MACvDzC,YAAY,CAACwC,MAAM,CAAC;IACtB;EACF,CAAC;EAED,IAAI1C,UAAU,EAAE;IACd,oBACErC,IAAA,CAACN,UAAU;MACT4B,QAAQ,EAAEA,QAAS;MACnB2D,MAAM,EAAC,YAAY;MACnBC,cAAc,EAAE3D,kBAAmB;MACnC4D,SAAS,EAAC,0CAA0C;MACpDC,eAAe,EAAEjF,uBAAwB;MACzCkF,aAAa,EAAEjF;IAAsB,CACtC,CAAC;EAEN;EAEA,MAAMwE,KAAK,gBACT1E,KAAA;IAAAU,QAAA,GACGjB,GAAG,CAACuC,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,EAEpBR,SAAS,iBACP1B,IAAA,CAACP,IAAI;MACH0F,SAAS,EAAC,QAAQ;MAClBG,KAAK,EAAC,SAAS;MACfC,IAAI,EAAC,qBAAqB;MAC1BnC,IAAI,EAAE,EAAG;MACTgB,EAAE,EAAE,cAAchD,MAAM;IAAG,CAC5B,CACF;EAAA,CAEC,CACP;EACD,MAAMoE,kBAAkB,GAAG7F,GAAG,CAAC2E,SAAS,EAAE,aAAa,CAAC,GAAG9D,cAAc,GAAG,IAAI;EAEhF,oBACER,IAAA,CAACN,UAAU;IACTyF,SAAS,EAAC,0CAA0C;IACpD7D,QAAQ,EAAEA,QAAS;IACnB2D,MAAM,EAAEL,KAAM;IACdM,cAAc,EAAE3D,kBAAmB;IACnC6D,eAAe,EAAEjF,uBAAwB;IACzCkF,aAAa,EAAEjF,qBAAsB;IAAAQ,QAAA,EAEnC,CAACyB,UAAU,iBACXrC,IAAA;MAAKmF,SAAS,EAAC,WAAW;MAAAvE,QAAA,eAC1BZ,IAAA,CAACK,oBAAoB;QACnBE,QAAQ,EAAEoE,UAAW;QACrBnE,cAAc,EAAE8C,WAAW,GAAG,IAAI,GAAGkC,kBAAmB;QACxD/E,oBAAoB,EAAEqE;MAAgB,CACvC;IAAC,CACG;EACN,CACS,CAAC;AAEjB;AAEA5D,QAAQ,CAACuE,SAAS,GAAG;EACnBhE,eAAe,EAAExC,SAAS,CAACyG,MAAM,CAACC,UAAU;EAC5CrE,QAAQ,EAAErC,SAAS,CAAC2G,IAAI,CAACD,UAAU;EACnCvE,MAAM,EAAEnC,SAAS,CAAC4G,MAAM,CAACF,UAAU;EACnCtE,OAAO,EAAEpC,SAAS,CAAC4G,MAAM,CAACF,UAAU;EACpCpE,kBAAkB,EAAEtC,SAAS,CAAC6G,IAAI,CAACH,UAAU;EAC7CnE,MAAM,EAAEvC,SAAS,CAAC6G,IAAI,CAACH,UAAU;EACjCjE,SAAS,EAAEzC,SAAS,CAAC2G,IAAI,CAACD,UAAU;EACpChE,WAAW,EAAE1C,SAAS,CAAC4G,MAAM,CAACF,UAAU;EACxC/D,OAAO,EAAE3C,SAAS,CAAC4G,MAAM;EACzBhE,aAAa,EAAE5C,SAAS,CAAC4G,MAAM;EAC/B/D,QAAQ,EAAE7C,SAAS,CAACyG,MAAM;EAC1B3D,UAAU,EAAE9C,SAAS,CAAC4G,MAAM,CAACF;AAC/B,CAAC;AAEDzE,QAAQ,CAAC6E,YAAY,GAAG;EACtBjE,QAAQ,EAAEkE,SAAS;EACnBnE,aAAa,EAAE;AACjB,CAAC;AAED,eAAeX,QAAQ","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["PropTypes","React","useEffect","useState","useRef","memo","SurveyJSFormRenderer","buildResponses","Icon","Expandable","get","isEqual","coreApi","useFeatureFlag","jsx","_jsx","jsxs","_jsxs","EXPANDABLE_HEADER_CLASS","EXPANDABLE_BODY_CLASS","StableSurveyRenderer","_ref","formData","formSubmission","handleSetSurveyModel","formDataRef","formSubmissionRef","children","current","editMode","onSurveyModelSet","prevProps","nextProps","FormForm","_ref2","formId","groupId","expanded","handleExpandChange","setRef","currentEmployee","hasErrors","contextType","context","contextPerson","response","usage_type","state","setState","form","formSubmissionsData","formUsageData","isFetching","surveyRef","setSurveyRef","responsesForEdit","setResponsesForEdit","crtb1121HideFieldInFormEnabled","getData","formResponse","findRecord","apiResponses","Promise","all","query","page","number","size","provider","isSensitive","populateRelationship","error","featureFlagQuestion","configuration","pages","elements","find","e","name","questionIdToHide","html","map","element","id","visible","formUsage","buildRequestBody","responses","submitter","ref","surveyJSON","title","description","handleSetSurvey","survey","data","header","onExpandChange","className","headerClassName","bodyClassName","color","icon","showFormSubmission","propTypes","object","isRequired","bool","string","func","defaultProps","undefined"],"sources":["../../../../src/common/form/FormForm/index.jsx"],"sourcesContent":["import PropTypes from 'prop-types';\nimport React, { useEffect, useState, useRef, memo } from 'react';\nimport { SurveyJSFormRenderer, buildResponses } from '@unite-us/ui-surveyjs2';\nimport { Icon, Expandable } from '@unite-us/app-components';\nimport { get, isEqual } from 'lodash';\nimport './index.scss';\nimport { coreApi } from '../../../api/config';\nimport { useFeatureFlag } from '../../../utils/useFeatureFlag';\n\nconst EXPANDABLE_HEADER_CLASS = 'bg-light-border-grey hover:bg-light-border-grey';\nconst EXPANDABLE_BODY_CLASS = 'form-form__expandable-body';\n\nconst StableSurveyRenderer = memo(\n ({ formData, formSubmission, handleSetSurveyModel }) => {\n const formDataRef = useRef(formData);\n const formSubmissionRef = useRef(formSubmission);\n\n return (\n <div data-testid=\"stable-survey-renderer\">\n <SurveyJSFormRenderer\n formData={formDataRef.current}\n formSubmission={formSubmissionRef.current}\n editMode\n onSurveyModelSet={handleSetSurveyModel}\n />\n </div>\n );\n },\n (prevProps, nextProps) => {\n return isEqual(prevProps.formData, nextProps.formData);\n },\n);\n\nfunction FormForm({\n formId,\n groupId,\n expanded,\n handleExpandChange,\n setRef,\n currentEmployee,\n hasErrors,\n contextType,\n context,\n contextPerson,\n response,\n usage_type,\n}) {\n const [state, setState] = useState({\n form: null,\n formSubmissionsData: null,\n formUsageData: null,\n isFetching: true,\n });\n const [surveyRef, setSurveyRef] = useState();\n const [responsesForEdit, setResponsesForEdit] = useState(response);\n\n const crtb1121HideFieldInFormEnabled = useFeatureFlag('crtb1121HideFieldInFormEnabled', false);\n\n useEffect(() => {\n setResponsesForEdit(response);\n }, [response]);\n\n useEffect(() => {\n const getData = async () => {\n let isFetching = true;\n const formResponse = await coreApi.findRecord('form', formId);\n const form = get(formResponse, 'data.data');\n\n const apiResponses = await Promise.all([\n coreApi.query(\n 'form_submission',\n {\n 'context.type': contextType,\n context: contextPerson ? null : context,\n 'context.person': contextPerson,\n form: formId,\n 'form.form_usages.provider': groupId,\n },\n {\n page: {\n number: 1,\n size: 1,\n },\n },\n ),\n coreApi.query(\n 'form_usage',\n {\n form: formId,\n provider: groupId,\n usage_type,\n },\n {\n page: {\n number: 1,\n size: 1,\n },\n },\n ),\n ]);\n const [formSubmissionsData, formUsageData] = apiResponses;\n\n const formSubmission = responsesForEdit || get(formSubmissionsData, 'data.data[0]');\n let isSensitive = false;\n if (contextType === 'case') {\n // Check for sensitive form submission\n try {\n await coreApi.populateRelationship('context', 'case', formSubmission);\n } catch (error) {\n isSensitive = get(error, 'response.status') === 403;\n }\n }\n isFetching = false;\n\n if (crtb1121HideFieldInFormEnabled && usage_type === 'referral_assessment') {\n const featureFlagQuestion = form.configuration.pages[0].elements.find(\n (e) => e.name === 'crtb-1121-hide-field-in-form',\n );\n\n if (featureFlagQuestion) {\n const questionIdToHide = featureFlagQuestion.html;\n form.configuration.pages = form.configuration.pages.map((page) => ({\n ...page,\n elements: page.elements.map((element) => {\n if (element.id === questionIdToHide) {\n return { ...element, visible: false };\n }\n return element;\n }),\n }));\n }\n }\n\n setState({\n form,\n formSubmissionsData,\n formUsageData,\n isSensitive,\n isFetching,\n });\n };\n\n getData();\n }, []);\n\n const { form, formSubmissionsData, formUsageData, isSensitive, isFetching } = state;\n const formUsage = get(formUsageData, 'data.data[0]');\n\n // If response is inherited from props, it means that a form that haven't been submitted is being edited.\n const formSubmission = responsesForEdit || get(formSubmissionsData, 'data.data[0]');\n\n if (!form || !formSubmissionsData || !formUsageData) {\n return null;\n }\n\n const buildRequestBody = () => ({\n responses: buildResponses(surveyRef),\n form: form.id,\n provider: groupId,\n contextType,\n context,\n submitter: currentEmployee.id,\n });\n\n setRef({\n ref: surveyRef,\n buildRequestBody,\n });\n\n const surveyJSON = {\n configuration: {\n title: form.name,\n description: form.description,\n ...form.configuration,\n },\n };\n\n const handleSetSurvey = (survey) => {\n if (!surveyRef || !isEqual(survey.data, surveyRef.data)) {\n setSurveyRef(survey);\n }\n };\n\n if (isFetching) {\n return (\n <Expandable\n expanded={expanded}\n header=\"Loading...\"\n onExpandChange={handleExpandChange}\n className=\"form-form expandable-app-create-referral\"\n headerClassName={EXPANDABLE_HEADER_CLASS}\n bodyClassName={EXPANDABLE_BODY_CLASS}\n />\n );\n }\n\n const title = (\n <span>\n {get(form, 'name', '')}\n {hasErrors && (\n <Icon\n className=\"ml-one\"\n color=\"#D0021B\"\n icon=\"ExclamationTriangle\"\n size={12}\n id={`error-icon-${formId}`}\n />\n )}\n </span>\n );\n const showFormSubmission = get(formUsage, 'prepopulate') ? formSubmission : null;\n\n return (\n <Expandable\n className=\"form-form expandable-app-create-referral\"\n expanded={expanded}\n header={title}\n onExpandChange={handleExpandChange}\n headerClassName={EXPANDABLE_HEADER_CLASS}\n bodyClassName={EXPANDABLE_BODY_CLASS}\n >\n {!isFetching && (\n <div className=\"px-4 py-3\">\n <StableSurveyRenderer\n formData={surveyJSON}\n formSubmission={isSensitive ? null : showFormSubmission}\n handleSetSurveyModel={handleSetSurvey}\n />\n </div>\n )}\n </Expandable>\n );\n}\n\nFormForm.propTypes = {\n currentEmployee: PropTypes.object.isRequired,\n expanded: PropTypes.bool.isRequired,\n formId: PropTypes.string.isRequired,\n groupId: PropTypes.string.isRequired,\n handleExpandChange: PropTypes.func.isRequired,\n setRef: PropTypes.func.isRequired,\n hasErrors: PropTypes.bool.isRequired,\n contextType: PropTypes.string.isRequired,\n context: PropTypes.string,\n contextPerson: PropTypes.string,\n response: PropTypes.object,\n usage_type: PropTypes.string.isRequired,\n};\n\nFormForm.defaultProps = {\n response: undefined,\n contextPerson: null,\n};\n\nexport default FormForm;\n"],"mappings":"AAAA,OAAOA,SAAS,MAAM,YAAY;AAClC,OAAOC,KAAK,IAAIC,SAAS,EAAEC,QAAQ,EAAEC,MAAM,EAAEC,IAAI,QAAQ,OAAO;AAChE,SAASC,oBAAoB,EAAEC,cAAc,QAAQ,wBAAwB;AAC7E,SAASC,IAAI,EAAEC,UAAU,QAAQ,0BAA0B;AAC3D,SAASC,GAAG,EAAEC,OAAO,QAAQ,QAAQ;AACrC,OAAO,cAAc;AACrB,SAASC,OAAO,QAAQ,qBAAqB;AAC7C,SAASC,cAAc,QAAQ,+BAA+B;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAE/D,MAAMC,uBAAuB,GAAG,iDAAiD;AACjF,MAAMC,qBAAqB,GAAG,4BAA4B;AAE1D,MAAMC,oBAAoB,gBAAGf,IAAI,CAC/BgB,IAAA,IAAwD;EAAA,IAAvD;IAAEC,QAAQ;IAAEC,cAAc;IAAEC;EAAqB,CAAC,GAAAH,IAAA;EACjD,MAAMI,WAAW,GAAGrB,MAAM,CAACkB,QAAQ,CAAC;EACpC,MAAMI,iBAAiB,GAAGtB,MAAM,CAACmB,cAAc,CAAC;EAEhD,oBACER,IAAA;IAAK,eAAY,wBAAwB;IAAAY,QAAA,eACvCZ,IAAA,CAACT,oBAAoB;MACnBgB,QAAQ,EAAEG,WAAW,CAACG,OAAQ;MAC9BL,cAAc,EAAEG,iBAAiB,CAACE,OAAQ;MAC1CC,QAAQ;MACRC,gBAAgB,EAAEN;IAAqB,CACxC;EAAC,CACC,CAAC;AAEV,CAAC,EACD,CAACO,SAAS,EAAEC,SAAS,KAAK;EACxB,OAAOrB,OAAO,CAACoB,SAAS,CAACT,QAAQ,EAAEU,SAAS,CAACV,QAAQ,CAAC;AACxD,CACF,CAAC;AAED,SAASW,QAAQA,CAAAC,KAAA,EAad;EAAA,IAbe;IAChBC,MAAM;IACNC,OAAO;IACPC,QAAQ;IACRC,kBAAkB;IAClBC,MAAM;IACNC,eAAe;IACfC,SAAS;IACTC,WAAW;IACXC,OAAO;IACPC,aAAa;IACbC,QAAQ;IACRC;EACF,CAAC,GAAAZ,KAAA;EACC,MAAM,CAACa,KAAK,EAAEC,QAAQ,CAAC,GAAG7C,QAAQ,CAAC;IACjC8C,IAAI,EAAE,IAAI;IACVC,mBAAmB,EAAE,IAAI;IACzBC,aAAa,EAAE,IAAI;IACnBC,UAAU,EAAE;EACd,CAAC,CAAC;EACF,MAAM,CAACC,SAAS,EAAEC,YAAY,CAAC,GAAGnD,QAAQ,CAAC,CAAC;EAC5C,MAAM,CAACoD,gBAAgB,EAAEC,mBAAmB,CAAC,GAAGrD,QAAQ,CAAC0C,QAAQ,CAAC;EAElE,MAAMY,8BAA8B,GAAG5C,cAAc,CAAC,gCAAgC,EAAE,KAAK,CAAC;EAE9FX,SAAS,CAAC,MAAM;IACdsD,mBAAmB,CAACX,QAAQ,CAAC;EAC/B,CAAC,EAAE,CAACA,QAAQ,CAAC,CAAC;EAEd3C,SAAS,CAAC,MAAM;IACd,MAAMwD,OAAO,GAAG,MAAAA,CAAA,KAAY;MAC1B,IAAIN,UAAU,GAAG,IAAI;MACrB,MAAMO,YAAY,GAAG,MAAM/C,OAAO,CAACgD,UAAU,CAAC,MAAM,EAAEzB,MAAM,CAAC;MAC7D,MAAMc,IAAI,GAAGvC,GAAG,CAACiD,YAAY,EAAE,WAAW,CAAC;MAE3C,MAAME,YAAY,GAAG,MAAMC,OAAO,CAACC,GAAG,CAAC,CACrCnD,OAAO,CAACoD,KAAK,CACX,iBAAiB,EACjB;QACE,cAAc,EAAEtB,WAAW;QAC3BC,OAAO,EAAEC,aAAa,GAAG,IAAI,GAAGD,OAAO;QACvC,gBAAgB,EAAEC,aAAa;QAC/BK,IAAI,EAAEd,MAAM;QACZ,2BAA2B,EAAEC;MAC/B,CAAC,EACD;QACE6B,IAAI,EAAE;UACJC,MAAM,EAAE,CAAC;UACTC,IAAI,EAAE;QACR;MACF,CACF,CAAC,EACDvD,OAAO,CAACoD,KAAK,CACX,YAAY,EACZ;QACEf,IAAI,EAAEd,MAAM;QACZiC,QAAQ,EAAEhC,OAAO;QACjBU;MACF,CAAC,EACD;QACEmB,IAAI,EAAE;UACJC,MAAM,EAAE,CAAC;UACTC,IAAI,EAAE;QACR;MACF,CACF,CAAC,CACF,CAAC;MACF,MAAM,CAACjB,mBAAmB,EAAEC,aAAa,CAAC,GAAGU,YAAY;MAEzD,MAAMtC,cAAc,GAAGgC,gBAAgB,IAAI7C,GAAG,CAACwC,mBAAmB,EAAE,cAAc,CAAC;MACnF,IAAImB,WAAW,GAAG,KAAK;MACvB,IAAI3B,WAAW,KAAK,MAAM,EAAE;QAC1B;QACA,IAAI;UACF,MAAM9B,OAAO,CAAC0D,oBAAoB,CAAC,SAAS,EAAE,MAAM,EAAE/C,cAAc,CAAC;QACvE,CAAC,CAAC,OAAOgD,KAAK,EAAE;UACdF,WAAW,GAAG3D,GAAG,CAAC6D,KAAK,EAAE,iBAAiB,CAAC,KAAK,GAAG;QACrD;MACF;MACAnB,UAAU,GAAG,KAAK;MAElB,IAAIK,8BAA8B,IAAIX,UAAU,KAAK,qBAAqB,EAAE;QAC1E,MAAM0B,mBAAmB,GAAGvB,IAAI,CAACwB,aAAa,CAACC,KAAK,CAAC,CAAC,CAAC,CAACC,QAAQ,CAACC,IAAI,CAClEC,CAAC,IAAKA,CAAC,CAACC,IAAI,KAAK,8BACpB,CAAC;QAED,IAAIN,mBAAmB,EAAE;UACvB,MAAMO,gBAAgB,GAAGP,mBAAmB,CAACQ,IAAI;UACjD/B,IAAI,CAACwB,aAAa,CAACC,KAAK,GAAGzB,IAAI,CAACwB,aAAa,CAACC,KAAK,CAACO,GAAG,CAAEhB,IAAI,KAAM;YACjE,GAAGA,IAAI;YACPU,QAAQ,EAAEV,IAAI,CAACU,QAAQ,CAACM,GAAG,CAAEC,OAAO,IAAK;cACvC,IAAIA,OAAO,CAACC,EAAE,KAAKJ,gBAAgB,EAAE;gBACnC,OAAO;kBAAE,GAAGG,OAAO;kBAAEE,OAAO,EAAE;gBAAM,CAAC;cACvC;cACA,OAAOF,OAAO;YAChB,CAAC;UACH,CAAC,CAAC,CAAC;QACL;MACF;MAEAlC,QAAQ,CAAC;QACPC,IAAI;QACJC,mBAAmB;QACnBC,aAAa;QACbkB,WAAW;QACXjB;MACF,CAAC,CAAC;IACJ,CAAC;IAEDM,OAAO,CAAC,CAAC;EACX,CAAC,EAAE,EAAE,CAAC;EAEN,MAAM;IAAET,IAAI;IAAEC,mBAAmB;IAAEC,aAAa;IAAEkB,WAAW;IAAEjB;EAAW,CAAC,GAAGL,KAAK;EACnF,MAAMsC,SAAS,GAAG3E,GAAG,CAACyC,aAAa,EAAE,cAAc,CAAC;;EAEpD;EACA,MAAM5B,cAAc,GAAGgC,gBAAgB,IAAI7C,GAAG,CAACwC,mBAAmB,EAAE,cAAc,CAAC;EAEnF,IAAI,CAACD,IAAI,IAAI,CAACC,mBAAmB,IAAI,CAACC,aAAa,EAAE;IACnD,OAAO,IAAI;EACb;EAEA,MAAMmC,gBAAgB,GAAGA,CAAA,MAAO;IAC9BC,SAAS,EAAEhF,cAAc,CAAC8C,SAAS,CAAC;IACpCJ,IAAI,EAAEA,IAAI,CAACkC,EAAE;IACbf,QAAQ,EAAEhC,OAAO;IACjBM,WAAW;IACXC,OAAO;IACP6C,SAAS,EAAEhD,eAAe,CAAC2C;EAC7B,CAAC,CAAC;EAEF5C,MAAM,CAAC;IACLkD,GAAG,EAAEpC,SAAS;IACdiC;EACF,CAAC,CAAC;EAEF,MAAMI,UAAU,GAAG;IACjBjB,aAAa,EAAE;MACbkB,KAAK,EAAE1C,IAAI,CAAC6B,IAAI;MAChBc,WAAW,EAAE3C,IAAI,CAAC2C,WAAW;MAC7B,GAAG3C,IAAI,CAACwB;IACV;EACF,CAAC;EAED,MAAMoB,eAAe,GAAIC,MAAM,IAAK;IAClC,IAAI,CAACzC,SAAS,IAAI,CAAC1C,OAAO,CAACmF,MAAM,CAACC,IAAI,EAAE1C,SAAS,CAAC0C,IAAI,CAAC,EAAE;MACvDzC,YAAY,CAACwC,MAAM,CAAC;IACtB;EACF,CAAC;EAED,IAAI1C,UAAU,EAAE;IACd,oBACErC,IAAA,CAACN,UAAU;MACT4B,QAAQ,EAAEA,QAAS;MACnB2D,MAAM,EAAC,YAAY;MACnBC,cAAc,EAAE3D,kBAAmB;MACnC4D,SAAS,EAAC,0CAA0C;MACpDC,eAAe,EAAEjF,uBAAwB;MACzCkF,aAAa,EAAEjF;IAAsB,CACtC,CAAC;EAEN;EAEA,MAAMwE,KAAK,gBACT1E,KAAA;IAAAU,QAAA,GACGjB,GAAG,CAACuC,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,EACrBR,SAAS,iBACR1B,IAAA,CAACP,IAAI;MACH0F,SAAS,EAAC,QAAQ;MAClBG,KAAK,EAAC,SAAS;MACfC,IAAI,EAAC,qBAAqB;MAC1BnC,IAAI,EAAE,EAAG;MACTgB,EAAE,EAAE,cAAchD,MAAM;IAAG,CAC5B,CACF;EAAA,CACG,CACP;EACD,MAAMoE,kBAAkB,GAAG7F,GAAG,CAAC2E,SAAS,EAAE,aAAa,CAAC,GAAG9D,cAAc,GAAG,IAAI;EAEhF,oBACER,IAAA,CAACN,UAAU;IACTyF,SAAS,EAAC,0CAA0C;IACpD7D,QAAQ,EAAEA,QAAS;IACnB2D,MAAM,EAAEL,KAAM;IACdM,cAAc,EAAE3D,kBAAmB;IACnC6D,eAAe,EAAEjF,uBAAwB;IACzCkF,aAAa,EAAEjF,qBAAsB;IAAAQ,QAAA,EAEpC,CAACyB,UAAU,iBACVrC,IAAA;MAAKmF,SAAS,EAAC,WAAW;MAAAvE,QAAA,eACxBZ,IAAA,CAACK,oBAAoB;QACnBE,QAAQ,EAAEoE,UAAW;QACrBnE,cAAc,EAAE8C,WAAW,GAAG,IAAI,GAAGkC,kBAAmB;QACxD/E,oBAAoB,EAAEqE;MAAgB,CACvC;IAAC,CACC;EACN,CACS,CAAC;AAEjB;AAEA5D,QAAQ,CAACuE,SAAS,GAAG;EACnBhE,eAAe,EAAExC,SAAS,CAACyG,MAAM,CAACC,UAAU;EAC5CrE,QAAQ,EAAErC,SAAS,CAAC2G,IAAI,CAACD,UAAU;EACnCvE,MAAM,EAAEnC,SAAS,CAAC4G,MAAM,CAACF,UAAU;EACnCtE,OAAO,EAAEpC,SAAS,CAAC4G,MAAM,CAACF,UAAU;EACpCpE,kBAAkB,EAAEtC,SAAS,CAAC6G,IAAI,CAACH,UAAU;EAC7CnE,MAAM,EAAEvC,SAAS,CAAC6G,IAAI,CAACH,UAAU;EACjCjE,SAAS,EAAEzC,SAAS,CAAC2G,IAAI,CAACD,UAAU;EACpChE,WAAW,EAAE1C,SAAS,CAAC4G,MAAM,CAACF,UAAU;EACxC/D,OAAO,EAAE3C,SAAS,CAAC4G,MAAM;EACzBhE,aAAa,EAAE5C,SAAS,CAAC4G,MAAM;EAC/B/D,QAAQ,EAAE7C,SAAS,CAACyG,MAAM;EAC1B3D,UAAU,EAAE9C,SAAS,CAAC4G,MAAM,CAACF;AAC/B,CAAC;AAEDzE,QAAQ,CAAC6E,YAAY,GAAG;EACtBjE,QAAQ,EAAEkE,SAAS;EACnBnE,aAAa,EAAE;AACjB,CAAC;AAED,eAAeX,QAAQ","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","names":["generateUUID","replace","c","r","Math","random","v","toString","handleKeyDown","event","callback","key","preventDefault"],"sources":["../../../src/common/utils/utils.js"],"sourcesContent":["export function generateUUID() {\n return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'
|
|
1
|
+
{"version":3,"file":"utils.js","names":["generateUUID","replace","c","r","Math","random","v","toString","handleKeyDown","event","callback","key","preventDefault"],"sources":["../../../src/common/utils/utils.js"],"sourcesContent":["export function generateUUID() {\n return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, (c) => {\n const r = (Math.random() * 16) | 0;\n const v = c === 'x' ? r : (r & 0x3) | 0x8;\n return v.toString(16);\n });\n}\n\nexport function handleKeyDown(event, callback) {\n if (event.key === 'Enter' || event.key === ' ') {\n event.preventDefault();\n callback();\n }\n}\n"],"mappings":"AAAA,OAAO,SAASA,YAAYA,CAAA,EAAG;EAC7B,OAAO,sCAAsC,CAACC,OAAO,CAAC,OAAO,EAAGC,CAAC,IAAK;IACpE,MAAMC,CAAC,GAAIC,IAAI,CAACC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAI,CAAC;IAClC,MAAMC,CAAC,GAAGJ,CAAC,KAAK,GAAG,GAAGC,CAAC,GAAIA,CAAC,GAAG,GAAG,GAAI,GAAG;IACzC,OAAOG,CAAC,CAACC,QAAQ,CAAC,EAAE,CAAC;EACvB,CAAC,CAAC;AACJ;AAEA,OAAO,SAASC,aAAaA,CAACC,KAAK,EAAEC,QAAQ,EAAE;EAC7C,IAAID,KAAK,CAACE,GAAG,KAAK,OAAO,IAAIF,KAAK,CAACE,GAAG,KAAK,GAAG,EAAE;IAC9CF,KAAK,CAACG,cAAc,CAAC,CAAC;IACtBF,QAAQ,CAAC,CAAC;EACZ;AACF","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Card.js","names":["React","PropTypes","cx","jsx","_jsx","Card","_ref","borderColor","children","className","dataTestId","propTypes","string","node","isRequired","defaultProps","undefined"],"sources":["../../src/components/Card.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport cx from 'classnames';\n\nconst Card = ({
|
|
1
|
+
{"version":3,"file":"Card.js","names":["React","PropTypes","cx","jsx","_jsx","Card","_ref","borderColor","children","className","dataTestId","propTypes","string","node","isRequired","defaultProps","undefined"],"sources":["../../src/components/Card.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport cx from 'classnames';\n\nconst Card = ({ borderColor, children, className, 'data-testid': dataTestId }) => (\n <div\n className={cx('border border-solid rounded overflow-hidden', borderColor, className)}\n data-testid={dataTestId}\n >\n {children}\n </div>\n);\n\nCard.propTypes = {\n borderColor: PropTypes.string,\n children: PropTypes.node.isRequired,\n className: PropTypes.string,\n 'data-testid': PropTypes.string,\n};\n\nCard.defaultProps = {\n borderColor: 'border-dark-border-blue',\n className: '',\n 'data-testid': undefined,\n};\n\nexport default Card;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,YAAY;AAClC,OAAOC,EAAE,MAAM,YAAY;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAE5B,MAAMC,IAAI,GAAGC,IAAA;EAAA,IAAC;IAAEC,WAAW;IAAEC,QAAQ;IAAEC,SAAS;IAAE,aAAa,EAAEC;EAAW,CAAC,GAAAJ,IAAA;EAAA,oBAC3EF,IAAA;IACEK,SAAS,EAAEP,EAAE,CAAC,6CAA6C,EAAEK,WAAW,EAAEE,SAAS,CAAE;IACrF,eAAaC,UAAW;IAAAF,QAAA,EAEvBA;EAAQ,CACN,CAAC;AAAA,CACP;AAEDH,IAAI,CAACM,SAAS,GAAG;EACfJ,WAAW,EAAEN,SAAS,CAACW,MAAM;EAC7BJ,QAAQ,EAAEP,SAAS,CAACY,IAAI,CAACC,UAAU;EACnCL,SAAS,EAAER,SAAS,CAACW,MAAM;EAC3B,aAAa,EAAEX,SAAS,CAACW;AAC3B,CAAC;AAEDP,IAAI,CAACU,YAAY,GAAG;EAClBR,WAAW,EAAE,yBAAyB;EACtCE,SAAS,EAAE,EAAE;EACb,aAAa,EAAEO;AACjB,CAAC;AAED,eAAeX,IAAI","ignoreList":[]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import ReferralStepper from
|
|
2
|
+
import ReferralStepper from './ReferralStepper';
|
|
3
3
|
import { useAppCreateReferralContext } from '../context/AppCreateReferralProvider';
|
|
4
4
|
import { useNavigate, useLocation } from 'react-router-dom';
|
|
5
5
|
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
@@ -25,5 +25,4 @@ export default function CreateReferralContainer(_ref) {
|
|
|
25
25
|
}), children]
|
|
26
26
|
});
|
|
27
27
|
}
|
|
28
|
-
;
|
|
29
28
|
//# sourceMappingURL=CreateReferralContainer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CreateReferralContainer.js","names":["React","ReferralStepper","useAppCreateReferralContext","useNavigate","useLocation","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","CreateReferralContainer","_ref","children","isStepReferralSent","location","navigate","state","addSelectClient","className"],"sources":["../../src/components/CreateReferralContainer.js"],"sourcesContent":["import React from 'react';\nimport ReferralStepper from
|
|
1
|
+
{"version":3,"file":"CreateReferralContainer.js","names":["React","ReferralStepper","useAppCreateReferralContext","useNavigate","useLocation","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","CreateReferralContainer","_ref","children","isStepReferralSent","location","navigate","state","addSelectClient","className"],"sources":["../../src/components/CreateReferralContainer.js"],"sourcesContent":["import React from 'react';\nimport ReferralStepper from './ReferralStepper';\nimport { useAppCreateReferralContext } from '../context/AppCreateReferralProvider';\nimport { useNavigate, useLocation } from 'react-router-dom';\n\nexport default function CreateReferralContainer({ children, isStepReferralSent }) {\n const location = useLocation();\n const navigate = useNavigate();\n const {\n state: { addSelectClient },\n } = useAppCreateReferralContext();\n\n return (\n <>\n <ReferralStepper\n className=\"px-12 py-6\"\n navigate={navigate}\n location={location}\n isStepReferralSent={isStepReferralSent}\n addSelectClient={addSelectClient}\n />\n\n {children}\n </>\n );\n}\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,eAAe,MAAM,mBAAmB;AAC/C,SAASC,2BAA2B,QAAQ,sCAAsC;AAClF,SAASC,WAAW,EAAEC,WAAW,QAAQ,kBAAkB;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,QAAA,IAAAC,SAAA,EAAAC,IAAA,IAAAC,KAAA;AAE5D,eAAe,SAASC,uBAAuBA,CAAAC,IAAA,EAAmC;EAAA,IAAlC;IAAEC,QAAQ;IAAEC;EAAmB,CAAC,GAAAF,IAAA;EAC9E,MAAMG,QAAQ,GAAGX,WAAW,CAAC,CAAC;EAC9B,MAAMY,QAAQ,GAAGb,WAAW,CAAC,CAAC;EAC9B,MAAM;IACJc,KAAK,EAAE;MAAEC;IAAgB;EAC3B,CAAC,GAAGhB,2BAA2B,CAAC,CAAC;EAEjC,oBACEQ,KAAA,CAAAF,SAAA;IAAAK,QAAA,gBACEP,IAAA,CAACL,eAAe;MACdkB,SAAS,EAAC,YAAY;MACtBH,QAAQ,EAAEA,QAAS;MACnBD,QAAQ,EAAEA,QAAS;MACnBD,kBAAkB,EAAEA,kBAAmB;MACvCI,eAAe,EAAEA;IAAgB,CAClC,CAAC,EAEDL,QAAQ;EAAA,CACT,CAAC;AAEP","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DollarAmount.js","names":["PropTypes","React","formatNumber","isNull","isNumber","jsx","_jsx","getWholeNumber","value","arguments","length","undefined","stringValue","toString","parseInt","split","dollarAmount","convertCents","floatNum","parseFloat","toFixed","Number","isNaN","number","DollarAmount","_ref","className","dataLabel","children","propTypes","oneOfType","string","bool","defaultProps"],"sources":["../../src/components/DollarAmount.js"],"sourcesContent":["import PropTypes from 'prop-types';\nimport React from 'react';\nimport { formatNumber } from 'humanize-plus';\nimport { isNull, isNumber } from 'lodash';\n\nfunction getWholeNumber(value = '') {\n const stringValue = isNumber(value) ? value.toString() : value;\n return parseInt(stringValue.split('.')[0], 10);\n}\n\nexport function dollarAmount(value = '', convertCents) {\n if (isNull(value)) {\n return '';\n }\n if (value === 'Required') {\n return 'Required';\n }\n if (convertCents) {\n const floatNum = (parseFloat(value) / 100).toFixed(2);\n return Number.isNaN(floatNum) ? '' : `$${formatNumber(floatNum, 2)}`;\n }\n const number = getWholeNumber(value);\n return Number.isNaN(number) ? '' : `$${formatNumber(number)}`;\n}\n\nconst DollarAmount = ({
|
|
1
|
+
{"version":3,"file":"DollarAmount.js","names":["PropTypes","React","formatNumber","isNull","isNumber","jsx","_jsx","getWholeNumber","value","arguments","length","undefined","stringValue","toString","parseInt","split","dollarAmount","convertCents","floatNum","parseFloat","toFixed","Number","isNaN","number","DollarAmount","_ref","className","dataLabel","children","propTypes","oneOfType","string","bool","defaultProps"],"sources":["../../src/components/DollarAmount.js"],"sourcesContent":["import PropTypes from 'prop-types';\nimport React from 'react';\nimport { formatNumber } from 'humanize-plus';\nimport { isNull, isNumber } from 'lodash';\n\nfunction getWholeNumber(value = '') {\n const stringValue = isNumber(value) ? value.toString() : value;\n return parseInt(stringValue.split('.')[0], 10);\n}\n\nexport function dollarAmount(value = '', convertCents) {\n if (isNull(value)) {\n return '';\n }\n if (value === 'Required') {\n return 'Required';\n }\n if (convertCents) {\n const floatNum = (parseFloat(value) / 100).toFixed(2);\n return Number.isNaN(floatNum) ? '' : `$${formatNumber(floatNum, 2)}`;\n }\n const number = getWholeNumber(value);\n return Number.isNaN(number) ? '' : `$${formatNumber(number)}`;\n}\n\nconst DollarAmount = ({ value, convertCents, className, dataLabel }) => (\n <span className={className} data-test-element={dataLabel}>\n {dollarAmount(value, convertCents)}\n </span>\n);\n\nDollarAmount.propTypes = {\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n convertCents: PropTypes.bool,\n className: PropTypes.string,\n dataLabel: PropTypes.string,\n};\n\nDollarAmount.defaultProps = {\n value: '',\n convertCents: false,\n className: 'dollar-amount',\n dataLabel: '',\n};\n\nexport default DollarAmount;\n"],"mappings":"AAAA,OAAOA,SAAS,MAAM,YAAY;AAClC,OAAOC,KAAK,MAAM,OAAO;AACzB,SAASC,YAAY,QAAQ,eAAe;AAC5C,SAASC,MAAM,EAAEC,QAAQ,QAAQ,QAAQ;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAE1C,SAASC,cAAcA,CAAA,EAAa;EAAA,IAAZC,KAAK,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,EAAE;EAChC,MAAMG,WAAW,GAAGR,QAAQ,CAACI,KAAK,CAAC,GAAGA,KAAK,CAACK,QAAQ,CAAC,CAAC,GAAGL,KAAK;EAC9D,OAAOM,QAAQ,CAACF,WAAW,CAACG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;AAChD;AAEA,OAAO,SAASC,YAAYA,CAAA,EAA2B;EAAA,IAA1BR,KAAK,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,EAAE;EAAA,IAAEQ,YAAY,GAAAR,SAAA,CAAAC,MAAA,OAAAD,SAAA,MAAAE,SAAA;EACnD,IAAIR,MAAM,CAACK,KAAK,CAAC,EAAE;IACjB,OAAO,EAAE;EACX;EACA,IAAIA,KAAK,KAAK,UAAU,EAAE;IACxB,OAAO,UAAU;EACnB;EACA,IAAIS,YAAY,EAAE;IAChB,MAAMC,QAAQ,GAAG,CAACC,UAAU,CAACX,KAAK,CAAC,GAAG,GAAG,EAAEY,OAAO,CAAC,CAAC,CAAC;IACrD,OAAOC,MAAM,CAACC,KAAK,CAACJ,QAAQ,CAAC,GAAG,EAAE,GAAG,IAAIhB,YAAY,CAACgB,QAAQ,EAAE,CAAC,CAAC,EAAE;EACtE;EACA,MAAMK,MAAM,GAAGhB,cAAc,CAACC,KAAK,CAAC;EACpC,OAAOa,MAAM,CAACC,KAAK,CAACC,MAAM,CAAC,GAAG,EAAE,GAAG,IAAIrB,YAAY,CAACqB,MAAM,CAAC,EAAE;AAC/D;AAEA,MAAMC,YAAY,GAAGC,IAAA;EAAA,IAAC;IAAEjB,KAAK;IAAES,YAAY;IAAES,SAAS;IAAEC;EAAU,CAAC,GAAAF,IAAA;EAAA,oBACjEnB,IAAA;IAAMoB,SAAS,EAAEA,SAAU;IAAC,qBAAmBC,SAAU;IAAAC,QAAA,EACtDZ,YAAY,CAACR,KAAK,EAAES,YAAY;EAAC,CAC9B,CAAC;AAAA,CACR;AAEDO,YAAY,CAACK,SAAS,GAAG;EACvBrB,KAAK,EAAER,SAAS,CAAC8B,SAAS,CAAC,CAAC9B,SAAS,CAAC+B,MAAM,EAAE/B,SAAS,CAACuB,MAAM,CAAC,CAAC;EAChEN,YAAY,EAAEjB,SAAS,CAACgC,IAAI;EAC5BN,SAAS,EAAE1B,SAAS,CAAC+B,MAAM;EAC3BJ,SAAS,EAAE3B,SAAS,CAAC+B;AACvB,CAAC;AAEDP,YAAY,CAACS,YAAY,GAAG;EAC1BzB,KAAK,EAAE,EAAE;EACTS,YAAY,EAAE,KAAK;EACnBS,SAAS,EAAE,eAAe;EAC1BC,SAAS,EAAE;AACb,CAAC;AAED,eAAeH,YAAY","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExpandableButton.js","names":["React","PropTypes","Icon","cx","jsx","_jsx","jsxs","_jsxs","ExpandableButton","_ref","isOpen","onClick","dataTestId","className","children","type","icon","direction","size","propTypes","bool","isRequired","func","string","node","defaultProps"],"sources":["../../src/components/ExpandableButton.jsx"],"sourcesContent":["import React from 'react';\nimport { PropTypes } from 'prop-types';\nimport { Icon } from '@unite-us/app-components';\nimport cx from 'classnames';\n\nconst ExpandableButton = (
|
|
1
|
+
{"version":3,"file":"ExpandableButton.js","names":["React","PropTypes","Icon","cx","jsx","_jsx","jsxs","_jsxs","ExpandableButton","_ref","isOpen","onClick","dataTestId","className","children","type","icon","direction","size","propTypes","bool","isRequired","func","string","node","defaultProps"],"sources":["../../src/components/ExpandableButton.jsx"],"sourcesContent":["import React from 'react';\nimport { PropTypes } from 'prop-types';\nimport { Icon } from '@unite-us/app-components';\nimport cx from 'classnames';\n\nconst ExpandableButton = ({ isOpen, onClick, dataTestId, className, children }) => (\n <button\n type=\"button\"\n onClick={onClick}\n className={cx('flex items-center focus:outline-none z-0', className)}\n data-testid={dataTestId}\n >\n <span className=\"text-action-blue font-bold cursor-pointer\">\n {children || (isOpen ? 'Hide' : 'Show')}\n </span>\n <Icon\n aria-hidden\n className={cx(\n 'transition-transform duration-500 ease-in-out ml-2 cursor-pointer',\n isOpen && 'transform rotate-180',\n )}\n icon=\"ChevronArrow\"\n direction=\"down\"\n size={12}\n />\n </button>\n);\n\nExpandableButton.propTypes = {\n isOpen: PropTypes.bool.isRequired,\n onClick: PropTypes.func.isRequired,\n dataTestId: PropTypes.string.isRequired,\n className: PropTypes.string,\n children: PropTypes.node,\n};\n\nExpandableButton.defaultProps = {\n className: '',\n children: null,\n};\n\nexport default ExpandableButton;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,SAAS,QAAQ,YAAY;AACtC,SAASC,IAAI,QAAQ,0BAA0B;AAC/C,OAAOC,EAAE,MAAM,YAAY;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAE5B,MAAMC,gBAAgB,GAAGC,IAAA;EAAA,IAAC;IAAEC,MAAM;IAAEC,OAAO;IAAEC,UAAU;IAAEC,SAAS;IAAEC;EAAS,CAAC,GAAAL,IAAA;EAAA,oBAC5EF,KAAA;IACEQ,IAAI,EAAC,QAAQ;IACbJ,OAAO,EAAEA,OAAQ;IACjBE,SAAS,EAAEV,EAAE,CAAC,0CAA0C,EAAEU,SAAS,CAAE;IACrE,eAAaD,UAAW;IAAAE,QAAA,gBAExBT,IAAA;MAAMQ,SAAS,EAAC,2CAA2C;MAAAC,QAAA,EACxDA,QAAQ,KAAKJ,MAAM,GAAG,MAAM,GAAG,MAAM;IAAC,CACnC,CAAC,eACPL,IAAA,CAACH,IAAI;MACH,mBAAW;MACXW,SAAS,EAAEV,EAAE,CACX,mEAAmE,EACnEO,MAAM,IAAI,sBACZ,CAAE;MACFM,IAAI,EAAC,cAAc;MACnBC,SAAS,EAAC,MAAM;MAChBC,IAAI,EAAE;IAAG,CACV,CAAC;EAAA,CACI,CAAC;AAAA,CACV;AAEDV,gBAAgB,CAACW,SAAS,GAAG;EAC3BT,MAAM,EAAET,SAAS,CAACmB,IAAI,CAACC,UAAU;EACjCV,OAAO,EAAEV,SAAS,CAACqB,IAAI,CAACD,UAAU;EAClCT,UAAU,EAAEX,SAAS,CAACsB,MAAM,CAACF,UAAU;EACvCR,SAAS,EAAEZ,SAAS,CAACsB,MAAM;EAC3BT,QAAQ,EAAEb,SAAS,CAACuB;AACtB,CAAC;AAEDhB,gBAAgB,CAACiB,YAAY,GAAG;EAC9BZ,SAAS,EAAE,EAAE;EACbC,QAAQ,EAAE;AACZ,CAAC;AAED,eAAeN,gBAAgB","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LineItem.js","names":["React","useMemo","PropTypes","isFunction","BarLoader","jsxs","_jsxs","jsx","_jsx","Fragment","_Fragment","nextLineItemId","lineItemIdFactory","LineItem","_ref","children","dataTestElement","isLoaded","field","fieldClassName","valueClassName","colon","dtId","renderChildren","className","id","propTypes","oneOfType","node","func","isRequired","bool","string","defaultProps"],"sources":["../../src/components/LineItem.jsx"],"sourcesContent":["import React, { useMemo } from 'react';\nimport { PropTypes } from 'prop-types';\nimport { isFunction } from 'lodash';\nimport { BarLoader } from '@unite-us/app-components';\n\n// Produces unique but stable-between-renders ids to correlate dt and dd\n// elements in combination with `useMemo`\nlet nextLineItemId = 1;\nconst lineItemIdFactory = () => `line-item-${nextLineItemId++}`;\n\nconst LineItem = ({\n children,\n dataTestElement,\n isLoaded,\n field,\n fieldClassName,\n valueClassName,\n colon,\n}) => {\n const dtId = useMemo(lineItemIdFactory, []);\n const renderChildren = () => (isFunction(children) ? children() : children);\n return (\n <>\n <dt\n className={fieldClassName}\n data-testid={dataTestElement}\n data-test-element={dataTestElement}\n id={dtId}\n >\n {field}{colon && ':'}\n </dt>\n <dd aria-describedby={dtId} className={valueClassName}>\n {isLoaded ? renderChildren() : <BarLoader />}\n </dd>\n </>\n );\n};\n\nLineItem.propTypes = {\n children: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),\n field: PropTypes.node.isRequired,\n isLoaded: PropTypes.bool,\n dataTestElement: PropTypes.string,\n fieldClassName: PropTypes.string,\n valueClassName: PropTypes.string,\n colon: PropTypes.bool,\n};\n\nLineItem.defaultProps = {\n children: '',\n isLoaded: true,\n dataTestElement: null,\n fieldClassName: 'text-text-blue text-sm font-bold leading-5 break-word',\n valueClassName: 'text-text-blue text-sm leading-5 break-word',\n colon: true,\n};\n\nexport default LineItem;\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,OAAO,QAAQ,OAAO;AACtC,SAASC,SAAS,QAAQ,YAAY;AACtC,SAASC,UAAU,QAAQ,QAAQ;AACnC,SAASC,SAAS,QAAQ,0BAA0B;;AAEpD;AACA;AAAA,SAAAC,IAAA,IAAAC,KAAA,EAAAC,GAAA,IAAAC,IAAA,EAAAC,QAAA,IAAAC,SAAA;AACA,IAAIC,cAAc,GAAG,CAAC;AACtB,MAAMC,iBAAiB,GAAGA,CAAA,KAAM,aAAaD,cAAc,EAAE,EAAE;AAE/D,MAAME,QAAQ,GAAGC,IAAA,IAQX;EAAA,IARY;IAChBC,QAAQ;IACRC,eAAe;IACfC,QAAQ;IACRC,KAAK;IACLC,cAAc;IACdC,cAAc;IACdC;EACF,CAAC,GAAAP,IAAA;EACC,MAAMQ,IAAI,GAAGrB,OAAO,CAACW,iBAAiB,EAAE,EAAE,CAAC;EAC3C,MAAMW,cAAc,GAAGA,CAAA,KAAOpB,UAAU,CAACY,QAAQ,CAAC,GAAGA,QAAQ,CAAC,CAAC,GAAGA,QAAS;EAC3E,oBACET,KAAA,CAAAI,SAAA;IAAAK,QAAA,gBACET,KAAA;MACEkB,SAAS,EAAEL,cAAe;MAC1B,eAAaH,eAAgB;MAC7B,qBAAmBA,eAAgB;MACnCS,EAAE,EAAEH,IAAK;MAAAP,QAAA,GAERG,KAAK,
|
|
1
|
+
{"version":3,"file":"LineItem.js","names":["React","useMemo","PropTypes","isFunction","BarLoader","jsxs","_jsxs","jsx","_jsx","Fragment","_Fragment","nextLineItemId","lineItemIdFactory","LineItem","_ref","children","dataTestElement","isLoaded","field","fieldClassName","valueClassName","colon","dtId","renderChildren","className","id","propTypes","oneOfType","node","func","isRequired","bool","string","defaultProps"],"sources":["../../src/components/LineItem.jsx"],"sourcesContent":["import React, { useMemo } from 'react';\nimport { PropTypes } from 'prop-types';\nimport { isFunction } from 'lodash';\nimport { BarLoader } from '@unite-us/app-components';\n\n// Produces unique but stable-between-renders ids to correlate dt and dd\n// elements in combination with `useMemo`\nlet nextLineItemId = 1;\nconst lineItemIdFactory = () => `line-item-${nextLineItemId++}`;\n\nconst LineItem = ({\n children,\n dataTestElement,\n isLoaded,\n field,\n fieldClassName,\n valueClassName,\n colon,\n}) => {\n const dtId = useMemo(lineItemIdFactory, []);\n const renderChildren = () => (isFunction(children) ? children() : children);\n return (\n <>\n <dt\n className={fieldClassName}\n data-testid={dataTestElement}\n data-test-element={dataTestElement}\n id={dtId}\n >\n {field}\n {colon && ':'}\n </dt>\n <dd aria-describedby={dtId} className={valueClassName}>\n {isLoaded ? renderChildren() : <BarLoader />}\n </dd>\n </>\n );\n};\n\nLineItem.propTypes = {\n children: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),\n field: PropTypes.node.isRequired,\n isLoaded: PropTypes.bool,\n dataTestElement: PropTypes.string,\n fieldClassName: PropTypes.string,\n valueClassName: PropTypes.string,\n colon: PropTypes.bool,\n};\n\nLineItem.defaultProps = {\n children: '',\n isLoaded: true,\n dataTestElement: null,\n fieldClassName: 'text-text-blue text-sm font-bold leading-5 break-word',\n valueClassName: 'text-text-blue text-sm leading-5 break-word',\n colon: true,\n};\n\nexport default LineItem;\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,OAAO,QAAQ,OAAO;AACtC,SAASC,SAAS,QAAQ,YAAY;AACtC,SAASC,UAAU,QAAQ,QAAQ;AACnC,SAASC,SAAS,QAAQ,0BAA0B;;AAEpD;AACA;AAAA,SAAAC,IAAA,IAAAC,KAAA,EAAAC,GAAA,IAAAC,IAAA,EAAAC,QAAA,IAAAC,SAAA;AACA,IAAIC,cAAc,GAAG,CAAC;AACtB,MAAMC,iBAAiB,GAAGA,CAAA,KAAM,aAAaD,cAAc,EAAE,EAAE;AAE/D,MAAME,QAAQ,GAAGC,IAAA,IAQX;EAAA,IARY;IAChBC,QAAQ;IACRC,eAAe;IACfC,QAAQ;IACRC,KAAK;IACLC,cAAc;IACdC,cAAc;IACdC;EACF,CAAC,GAAAP,IAAA;EACC,MAAMQ,IAAI,GAAGrB,OAAO,CAACW,iBAAiB,EAAE,EAAE,CAAC;EAC3C,MAAMW,cAAc,GAAGA,CAAA,KAAOpB,UAAU,CAACY,QAAQ,CAAC,GAAGA,QAAQ,CAAC,CAAC,GAAGA,QAAS;EAC3E,oBACET,KAAA,CAAAI,SAAA;IAAAK,QAAA,gBACET,KAAA;MACEkB,SAAS,EAAEL,cAAe;MAC1B,eAAaH,eAAgB;MAC7B,qBAAmBA,eAAgB;MACnCS,EAAE,EAAEH,IAAK;MAAAP,QAAA,GAERG,KAAK,EACLG,KAAK,IAAI,GAAG;IAAA,CACX,CAAC,eACLb,IAAA;MAAI,oBAAkBc,IAAK;MAACE,SAAS,EAAEJ,cAAe;MAAAL,QAAA,EACnDE,QAAQ,GAAGM,cAAc,CAAC,CAAC,gBAAGf,IAAA,CAACJ,SAAS,IAAE;IAAC,CAC1C,CAAC;EAAA,CACL,CAAC;AAEP,CAAC;AAEDS,QAAQ,CAACa,SAAS,GAAG;EACnBX,QAAQ,EAAEb,SAAS,CAACyB,SAAS,CAAC,CAACzB,SAAS,CAAC0B,IAAI,EAAE1B,SAAS,CAAC2B,IAAI,CAAC,CAAC;EAC/DX,KAAK,EAAEhB,SAAS,CAAC0B,IAAI,CAACE,UAAU;EAChCb,QAAQ,EAAEf,SAAS,CAAC6B,IAAI;EACxBf,eAAe,EAAEd,SAAS,CAAC8B,MAAM;EACjCb,cAAc,EAAEjB,SAAS,CAAC8B,MAAM;EAChCZ,cAAc,EAAElB,SAAS,CAAC8B,MAAM;EAChCX,KAAK,EAAEnB,SAAS,CAAC6B;AACnB,CAAC;AAEDlB,QAAQ,CAACoB,YAAY,GAAG;EACtBlB,QAAQ,EAAE,EAAE;EACZE,QAAQ,EAAE,IAAI;EACdD,eAAe,EAAE,IAAI;EACrBG,cAAc,EAAE,uDAAuD;EACvEC,cAAc,EAAE,6CAA6C;EAC7DC,KAAK,EAAE;AACT,CAAC;AAED,eAAeR,QAAQ","ignoreList":[]}
|
|
@@ -24,12 +24,12 @@ const NavButtons = _ref => {
|
|
|
24
24
|
children: [/*#__PURE__*/_jsx(Button, {
|
|
25
25
|
id: "back",
|
|
26
26
|
onClick: onBackClick,
|
|
27
|
-
label: hasDraftReferral ?
|
|
27
|
+
label: hasDraftReferral ? 'Draft Referral' : 'Back',
|
|
28
28
|
icon: {
|
|
29
|
-
name:
|
|
30
|
-
direction:
|
|
31
|
-
color:
|
|
32
|
-
position:
|
|
29
|
+
name: 'ChevronArrow',
|
|
30
|
+
direction: 'left',
|
|
31
|
+
color: 'text-blue',
|
|
32
|
+
position: 'left'
|
|
33
33
|
},
|
|
34
34
|
className: "md:h-12 normal-case",
|
|
35
35
|
secondary: true
|
|
@@ -58,9 +58,9 @@ const NavButtons = _ref => {
|
|
|
58
58
|
className: "md:w-64 md:h-12 w-64 normal-case",
|
|
59
59
|
label: primaryLabel,
|
|
60
60
|
icon: {
|
|
61
|
-
name:
|
|
62
|
-
color:
|
|
63
|
-
position:
|
|
61
|
+
name: 'Referral',
|
|
62
|
+
color: 'white',
|
|
63
|
+
position: 'left'
|
|
64
64
|
},
|
|
65
65
|
primary: true
|
|
66
66
|
})]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NavButtons.js","names":["React","PropTypes","Button","Icon","Spinner","jsx","_jsx","jsxs","_jsxs","NavButtons","_ref","onBackClick","onForwardClick","onSaveDraftReferral","primaryLabel","hideForwardButtons","hideSaveDraftLink","hasOffPlatformReferrals","disabled","hasDraftReferral","isForwardReferralPath","isSavingDraft","className","children","id","onClick","label","icon","name","direction","color","position","secondary","style","width","height","primary","propTypes","func","isRequired","string","bool","defaultProps"],"sources":["../../src/components/NavButtons.js"],"sourcesContent":["import React from 'react';\nimport { PropTypes } from 'prop-types';\nimport { Button, Icon } from '@unite-us/app-components';\nimport Spinner from './spinners/Spinner';\n\nconst NavButtons = ({\n onBackClick,\n onForwardClick,\n onSaveDraftReferral,\n primaryLabel,\n hideForwardButtons,\n hideSaveDraftLink,\n hasOffPlatformReferrals,\n disabled,\n hasDraftReferral = false,\n isForwardReferralPath = false,\n isSavingDraft = false,\n}) => (\n <div className=\"flex justify-center responsive-max-width flex-col mx-auto mb-6\">\n <div className=\"flex justify-between\">\n <Button\n id=\"back\"\n onClick={onBackClick}\n label={hasDraftReferral ?
|
|
1
|
+
{"version":3,"file":"NavButtons.js","names":["React","PropTypes","Button","Icon","Spinner","jsx","_jsx","jsxs","_jsxs","NavButtons","_ref","onBackClick","onForwardClick","onSaveDraftReferral","primaryLabel","hideForwardButtons","hideSaveDraftLink","hasOffPlatformReferrals","disabled","hasDraftReferral","isForwardReferralPath","isSavingDraft","className","children","id","onClick","label","icon","name","direction","color","position","secondary","style","width","height","primary","propTypes","func","isRequired","string","bool","defaultProps"],"sources":["../../src/components/NavButtons.js"],"sourcesContent":["import React from 'react';\nimport { PropTypes } from 'prop-types';\nimport { Button, Icon } from '@unite-us/app-components';\nimport Spinner from './spinners/Spinner';\n\nconst NavButtons = ({\n onBackClick,\n onForwardClick,\n onSaveDraftReferral,\n primaryLabel,\n hideForwardButtons,\n hideSaveDraftLink,\n hasOffPlatformReferrals,\n disabled,\n hasDraftReferral = false,\n isForwardReferralPath = false,\n isSavingDraft = false,\n}) => (\n <div className=\"flex justify-center responsive-max-width flex-col mx-auto mb-6\">\n <div className=\"flex justify-between\">\n <Button\n id=\"back\"\n onClick={onBackClick}\n label={hasDraftReferral ? 'Draft Referral' : 'Back'}\n icon={{\n name: 'ChevronArrow',\n direction: 'left',\n color: 'text-blue',\n position: 'left',\n }}\n className=\"md:h-12 normal-case\"\n secondary={true}\n />\n\n {!hideForwardButtons ? (\n <div className=\"flex\">\n {!hideSaveDraftLink && !hasOffPlatformReferrals && !isForwardReferralPath && (\n <button\n className=\"mr-10 text-current-blue font-bold inline-flex items-center disabled:opacity-50 disabled:cursor-not-allowed\"\n onClick={onSaveDraftReferral}\n disabled={isSavingDraft}\n aria-busy={isSavingDraft}\n >\n {isSavingDraft ? (\n <Spinner className=\"mr-2 inline-flex\" style={{ width: '16px', height: '16px' }} />\n ) : (\n <Icon icon=\"Save\" color=\"action-blue\" className=\"mr-2 mb-1\" />\n )}\n Save Draft Referral(s)\n </button>\n )}\n <Button\n id=\"submit\"\n disabled={disabled}\n onClick={onForwardClick}\n className=\"md:w-64 md:h-12 w-64 normal-case\"\n label={primaryLabel}\n icon={{\n name: 'Referral',\n color: 'white',\n position: 'left',\n }}\n primary\n />\n </div>\n ) : null}\n </div>\n </div>\n);\n\nNavButtons.propTypes = {\n onBackClick: PropTypes.func.isRequired,\n onForwardClick: PropTypes.func.isRequired,\n onSaveDraftReferral: PropTypes.func.isRequired,\n primaryLabel: PropTypes.string.isRequired,\n hideForwardButtons: PropTypes.bool,\n hideSaveDraftLink: PropTypes.bool,\n hasOffPlatformReferrals: PropTypes.bool,\n hasDraftReferral: PropTypes.bool,\n disabled: PropTypes.bool,\n isSavingDraft: PropTypes.bool,\n};\n\nNavButtons.defaultProps = {\n hideForwardButtons: false,\n hideSaveDraftLink: false,\n hasOffPlatformReferrals: false,\n disabled: false,\n isSavingDraft: false,\n};\n\nexport default NavButtons;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -33,9 +33,9 @@ export function NoReferralsDisplay(_ref) {
|
|
|
33
33
|
onClick: hasDraftReferral ? navigateToAddResources : onClick,
|
|
34
34
|
label: "Find Programs",
|
|
35
35
|
icon: {
|
|
36
|
-
name:
|
|
37
|
-
color:
|
|
38
|
-
position:
|
|
36
|
+
name: 'Search',
|
|
37
|
+
color: 'action-blue',
|
|
38
|
+
position: 'left'
|
|
39
39
|
},
|
|
40
40
|
className: "normal-case text-black bg-light-pale-blue border border-current-blue rounded mt-5 hover:bg-gray-100"
|
|
41
41
|
})
|
|
@@ -43,7 +43,6 @@ export function NoReferralsDisplay(_ref) {
|
|
|
43
43
|
})
|
|
44
44
|
});
|
|
45
45
|
}
|
|
46
|
-
;
|
|
47
46
|
NoReferralsDisplay.propTypes = {
|
|
48
47
|
navigateToAddResources: PropTypes.func,
|
|
49
48
|
onClick: PropTypes.func.isRequired
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NoReferralsDisplay.js","names":["React","PropTypes","Icon","Button","jsx","_jsx","jsxs","_jsxs","NoReferralsDisplay","_ref","hasDraftReferral","navigateToAddResources","onClick","className","children","icon","size","color","id","label","name","position","propTypes","func","isRequired"],"sources":["../../src/components/NoReferralsDisplay.js"],"sourcesContent":["import React from 'react';\nimport { PropTypes } from 'prop-types';\nimport { Icon, Button } from '@unite-us/app-components';\n\nexport function NoReferralsDisplay({ hasDraftReferral, navigateToAddResources, onClick }) {\n return (\n <div className=\"grid place-content-center mt-5\">\n <div className=\"p-12\">\n <div className=\"flex justify-center\">\n <div>\n <Icon
|
|
1
|
+
{"version":3,"file":"NoReferralsDisplay.js","names":["React","PropTypes","Icon","Button","jsx","_jsx","jsxs","_jsxs","NoReferralsDisplay","_ref","hasDraftReferral","navigateToAddResources","onClick","className","children","icon","size","color","id","label","name","position","propTypes","func","isRequired"],"sources":["../../src/components/NoReferralsDisplay.js"],"sourcesContent":["import React from 'react';\nimport { PropTypes } from 'prop-types';\nimport { Icon, Button } from '@unite-us/app-components';\n\nexport function NoReferralsDisplay({ hasDraftReferral, navigateToAddResources, onClick }) {\n return (\n <div className=\"grid place-content-center mt-5\">\n <div className=\"p-12\">\n <div className=\"flex justify-center\">\n <div>\n <Icon icon=\"Referral\" size={64} color=\"dark-border-grey\" />\n </div>\n </div>\n <h1 className=\"text-2xl font-black grid place-content-center my-5\">No Referrals</h1>\n <p>\n Head back to the search page to add programs and send referrals on your client's behalf.\n </p>\n <div className=\"flex justify-center mt-3\">\n <Button\n id=\"find-programs\"\n onClick={hasDraftReferral ? navigateToAddResources : onClick}\n label=\"Find Programs\"\n icon={{\n name: 'Search',\n color: 'action-blue',\n position: 'left',\n }}\n className=\"normal-case text-black bg-light-pale-blue border border-current-blue rounded mt-5 hover:bg-gray-100\"\n />\n </div>\n </div>\n </div>\n );\n}\n\nNoReferralsDisplay.propTypes = {\n navigateToAddResources: PropTypes.func,\n onClick: PropTypes.func.isRequired,\n};\n\nexport default NoReferralsDisplay;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,SAAS,QAAQ,YAAY;AACtC,SAASC,IAAI,EAAEC,MAAM,QAAQ,0BAA0B;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAExD,OAAO,SAASC,kBAAkBA,CAAAC,IAAA,EAAwD;EAAA,IAAvD;IAAEC,gBAAgB;IAAEC,sBAAsB;IAAEC;EAAQ,CAAC,GAAAH,IAAA;EACtF,oBACEJ,IAAA;IAAKQ,SAAS,EAAC,gCAAgC;IAAAC,QAAA,eAC7CP,KAAA;MAAKM,SAAS,EAAC,MAAM;MAAAC,QAAA,gBACnBT,IAAA;QAAKQ,SAAS,EAAC,qBAAqB;QAAAC,QAAA,eAClCT,IAAA;UAAAS,QAAA,eACET,IAAA,CAACH,IAAI;YAACa,IAAI,EAAC,UAAU;YAACC,IAAI,EAAE,EAAG;YAACC,KAAK,EAAC;UAAkB,CAAE;QAAC,CACxD;MAAC,CACH,CAAC,eACNZ,IAAA;QAAIQ,SAAS,EAAC,oDAAoD;QAAAC,QAAA,EAAC;MAAY,CAAI,CAAC,eACpFT,IAAA;QAAAS,QAAA,EAAG;MAEH,CAAG,CAAC,eACJT,IAAA;QAAKQ,SAAS,EAAC,0BAA0B;QAAAC,QAAA,eACvCT,IAAA,CAACF,MAAM;UACLe,EAAE,EAAC,eAAe;UAClBN,OAAO,EAAEF,gBAAgB,GAAGC,sBAAsB,GAAGC,OAAQ;UAC7DO,KAAK,EAAC,eAAe;UACrBJ,IAAI,EAAE;YACJK,IAAI,EAAE,QAAQ;YACdH,KAAK,EAAE,aAAa;YACpBI,QAAQ,EAAE;UACZ,CAAE;UACFR,SAAS,EAAC;QAAqG,CAChH;MAAC,CACC,CAAC;IAAA,CACH;EAAC,CACH,CAAC;AAEV;AAEAL,kBAAkB,CAACc,SAAS,GAAG;EAC7BX,sBAAsB,EAAEV,SAAS,CAACsB,IAAI;EACtCX,OAAO,EAAEX,SAAS,CAACsB,IAAI,CAACC;AAC1B,CAAC;AAED,eAAehB,kBAAkB","ignoreList":[]}
|