@unite-us/app-create-referral 0.15.59-alpha.4 → 0.15.59
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/.github/CODEOWNERS +3 -0
- package/.github/pull_request_template.md +25 -0
- package/.github/workflows/quality.yml +44 -0
- package/.github/workflows/semantic-release.yml +26 -0
- package/.nvmrc +1 -0
- package/babel.config.js +11 -0
- package/config-overrides.js +8 -0
- package/dist/AppReferrals.js +45 -45
- package/dist/AppReferrals.js.map +1 -1
- package/dist/AppReferrals.test.js +71 -34
- package/dist/AppReferrals.test.js.map +1 -1
- package/dist/__testUtils__/mockData/components/mockAppReferrals.js +12 -13
- package/dist/__testUtils__/mockData/components/mockAppReferrals.js.map +1 -1
- package/dist/__testUtils__/mockData/mockCases.js +1 -1
- package/dist/__testUtils__/mockData/mockCases.js.map +1 -1
- package/dist/__testUtils__/mockData/mockClinicalModifications.js +3 -3
- package/dist/__testUtils__/mockData/mockClinicalModifications.js.map +1 -1
- package/dist/__testUtils__/mockData/mockEmployees.js +1 -1
- package/dist/__testUtils__/mockData/mockEmployees.js.map +1 -1
- package/dist/__testUtils__/mockData/mockEnums.js +1 -1
- package/dist/__testUtils__/mockData/mockEnums.js.map +1 -1
- package/dist/__testUtils__/mockData/mockFeeSchedulePrograms.js +1 -1
- package/dist/__testUtils__/mockData/mockFeeSchedulePrograms.js.map +1 -1
- package/dist/__testUtils__/mockData/mockFiles.js +1 -1
- package/dist/__testUtils__/mockData/mockFiles.js.map +1 -1
- package/dist/__testUtils__/mockData/mockFormSubmissions.js +1 -1
- package/dist/__testUtils__/mockData/mockFormSubmissions.js.map +1 -1
- package/dist/__testUtils__/mockData/mockFormUsages.js +1 -1
- package/dist/__testUtils__/mockData/mockFormUsages.js.map +1 -1
- package/dist/__testUtils__/mockData/mockForms.js +1 -1
- package/dist/__testUtils__/mockData/mockForms.js.map +1 -1
- package/dist/__testUtils__/mockData/mockInsurances.js +1 -1
- package/dist/__testUtils__/mockData/mockInsurances.js.map +1 -1
- package/dist/__testUtils__/mockData/mockNetworks.js +1 -1
- package/dist/__testUtils__/mockData/mockNetworks.js.map +1 -1
- package/dist/__testUtils__/mockData/mockPeople.js +1 -1
- package/dist/__testUtils__/mockData/mockPeople.js.map +1 -1
- package/dist/__testUtils__/mockData/mockPrograms.js +31 -31
- package/dist/__testUtils__/mockData/mockPrograms.js.map +1 -1
- package/dist/__testUtils__/mockData/mockProviders.js +21 -21
- package/dist/__testUtils__/mockData/mockProviders.js.map +1 -1
- package/dist/__testUtils__/mockData/mockReferrals.js +1 -1
- package/dist/__testUtils__/mockData/mockReferrals.js.map +1 -1
- package/dist/__testUtils__/mockData/mockServiceAuthorizations.js +1 -1
- package/dist/__testUtils__/mockData/mockServiceAuthorizations.js.map +1 -1
- package/dist/__testUtils__/mockData/mockServices.js +1 -1
- package/dist/__testUtils__/mockData/mockServices.js.map +1 -1
- package/dist/__testUtils__/mockData/mockUnlistedPrograms.js +1 -1
- package/dist/__testUtils__/mockData/mockUnlistedPrograms.js.map +1 -1
- package/dist/__testUtils__/mockData/utils.js +282 -218
- package/dist/__testUtils__/mockData/utils.js.map +1 -1
- package/dist/__testUtils__/mockServer/handlers.js +82 -80
- package/dist/__testUtils__/mockServer/handlers.js.map +1 -1
- package/dist/__testUtils__/mockServer/server.js +13 -7
- package/dist/__testUtils__/mockServer/server.js.map +1 -1
- package/dist/__testUtils__/test-utils.js +18 -22
- package/dist/__testUtils__/test-utils.js.map +1 -1
- package/dist/actions/Document/Contact/Group/fetchCaseDocuments.js +41 -10
- package/dist/actions/Document/Contact/Group/fetchCaseDocuments.js.map +1 -1
- package/dist/actions/Document/Contact/Group/fetchContactDocuments.js +41 -10
- package/dist/actions/Document/Contact/Group/fetchContactDocuments.js.map +1 -1
- package/dist/actions/Document/Contact/Group/fileUploadUtils.js +10 -8
- package/dist/actions/Document/Contact/Group/fileUploadUtils.js.map +1 -1
- package/dist/actions/Group/fetchCoreGroupForms.js +97 -46
- package/dist/actions/Group/fetchCoreGroupForms.js.map +1 -1
- package/dist/actions/Referral/cannotMoveToReferralReasons.js +21 -23
- package/dist/actions/Referral/cannotMoveToReferralReasons.js.map +1 -1
- package/dist/actions/Referral/fetchCoreServices.js +169 -70
- package/dist/actions/Referral/fetchCoreServices.js.map +1 -1
- package/dist/actions/Referral/fetchNetworks.js +44 -11
- package/dist/actions/Referral/fetchNetworks.js.map +1 -1
- package/dist/actions/Referral/fetchPrimaryWorkers.js +84 -51
- package/dist/actions/Referral/fetchPrimaryWorkers.js.map +1 -1
- package/dist/actions/Referral/removeReferralProgram.js +15 -10
- package/dist/actions/Referral/removeReferralProgram.js.map +1 -1
- package/dist/api/ApiHooks.js +39 -40
- package/dist/api/ApiHooks.js.map +1 -1
- package/dist/api/config.js +23 -20
- package/dist/api/config.js.map +1 -1
- package/dist/common/form/CurrencyField/index.js +21 -22
- package/dist/common/form/CurrencyField/index.js.map +1 -1
- package/dist/common/form/DocumentUploader/components/ContactDocumentsSelector.js +48 -51
- package/dist/common/form/DocumentUploader/components/ContactDocumentsSelector.js.map +1 -1
- package/dist/common/form/DocumentUploader/components/DocumentsListView.js +12 -14
- package/dist/common/form/DocumentUploader/components/DocumentsListView.js.map +1 -1
- package/dist/common/form/DocumentUploader/components/ListViewDocument.js +17 -21
- package/dist/common/form/DocumentUploader/components/ListViewDocument.js.map +1 -1
- package/dist/common/form/ErrorMessage/index.js +9 -17
- package/dist/common/form/ErrorMessage/index.js.map +1 -1
- package/dist/common/form/FileUploadV2/FileUpload.js +137 -159
- package/dist/common/form/FileUploadV2/FileUpload.js.map +1 -1
- package/dist/common/form/FileUploadV2/components/FilePreview.js +5 -8
- package/dist/common/form/FileUploadV2/components/FilePreview.js.map +1 -1
- package/dist/common/form/FileUploadV2/components/FilePreviewWrapper.js +21 -26
- package/dist/common/form/FileUploadV2/components/FilePreviewWrapper.js.map +1 -1
- package/dist/common/form/FormForm/index.js +194 -143
- package/dist/common/form/FormForm/index.js.map +1 -1
- package/dist/common/utils/utils.js +3 -3
- package/dist/common/utils/utils.js.map +1 -1
- package/dist/components/Card.js +8 -12
- package/dist/components/Card.js.map +1 -1
- package/dist/components/CreateReferralContainer.js +13 -21
- package/dist/components/CreateReferralContainer.js.map +1 -1
- package/dist/components/DollarAmount.js +14 -18
- package/dist/components/DollarAmount.js.map +1 -1
- package/dist/components/ExpandableButton.js +16 -21
- package/dist/components/ExpandableButton.js.map +1 -1
- package/dist/components/NavButtons.js +51 -57
- package/dist/components/NavButtons.js.map +1 -1
- package/dist/components/ReferralStepper.js +41 -44
- package/dist/components/ReferralStepper.js.map +1 -1
- package/dist/components/SearchableField.js +125 -121
- package/dist/components/SearchableField.js.map +1 -1
- package/dist/components/StepHeader.js +16 -25
- package/dist/components/StepHeader.js.map +1 -1
- package/dist/components/Stepper.js +51 -55
- package/dist/components/Stepper.js.map +1 -1
- package/dist/components/modal/Dialog.js +170 -141
- package/dist/components/modal/Dialog.js.map +1 -1
- package/dist/components/modal/Overlay.js +1 -2
- package/dist/components/modal/Overlay.js.map +1 -1
- package/dist/components/service_authorization/AuthorizationSpendCard.js +60 -72
- package/dist/components/service_authorization/AuthorizationSpendCard.js.map +1 -1
- package/dist/components/service_authorization/CapsInfo.js +120 -143
- package/dist/components/service_authorization/CapsInfo.js.map +1 -1
- package/dist/components/service_authorization/CaseStatus.js +14 -18
- package/dist/components/service_authorization/CaseStatus.js.map +1 -1
- package/dist/components/service_authorization/PreviousAuthorizationRequestsDetails.js +96 -121
- package/dist/components/service_authorization/PreviousAuthorizationRequestsDetails.js.map +1 -1
- package/dist/components/service_authorization/ReferralAuthSpendExpandable.js +43 -43
- package/dist/components/service_authorization/ReferralAuthSpendExpandable.js.map +1 -1
- package/dist/components/service_authorization/ReferralAuthorizationRequestSummary.js +65 -82
- package/dist/components/service_authorization/ReferralAuthorizationRequestSummary.js.map +1 -1
- package/dist/components/service_authorization/Spend.js +5 -10
- package/dist/components/service_authorization/Spend.js.map +1 -1
- package/dist/components/service_authorization/formatShortDate.js +6 -6
- package/dist/components/service_authorization/formatShortDate.js.map +1 -1
- package/dist/components/service_authorization/messageConstants.js +2 -2
- package/dist/components/service_authorization/messageConstants.js.map +1 -1
- package/dist/components/spinners/OverlaySpinner/OverlaySpinner.js +23 -34
- package/dist/components/spinners/OverlaySpinner/OverlaySpinner.js.map +1 -1
- package/dist/components/spinners/Spinner/Spinner.js +27 -33
- package/dist/components/spinners/Spinner/Spinner.js.map +1 -1
- package/dist/constants/enums.js +1 -1
- package/dist/constants/enums.js.map +1 -1
- package/dist/constants/eventConstants.js +48 -48
- package/dist/constants/eventConstants.js.map +1 -1
- package/dist/constants/findEnumDisplayName.js +3 -3
- package/dist/constants/findEnumDisplayName.js.map +1 -1
- package/dist/constants.js +6 -6
- package/dist/constants.js.map +1 -1
- package/dist/context/AppCreateReferralProvider.js +36 -25
- package/dist/context/AppCreateReferralProvider.js.map +1 -1
- package/dist/context/state.js +5 -2
- package/dist/context/state.js.map +1 -1
- package/dist/context/withAppCreateReferralContext.js +5 -9
- package/dist/context/withAppCreateReferralContext.js.map +1 -1
- package/dist/hooks/__tests__/useCreateReferrals.test.js +560 -456
- package/dist/hooks/__tests__/useCreateReferrals.test.js.map +1 -1
- package/dist/hooks/sendReferral.js +339 -155
- package/dist/hooks/sendReferral.js.map +1 -1
- package/dist/hooks/useClinicalModificationOptions.js +34 -24
- package/dist/hooks/useClinicalModificationOptions.js.map +1 -1
- package/dist/hooks/useCreateReferrals.js +722 -463
- package/dist/hooks/useCreateReferrals.js.map +1 -1
- package/dist/hooks/useCreateResourceList.js +76 -56
- package/dist/hooks/useCreateResourceList.js.map +1 -1
- package/dist/hooks/useCreateShareEvent.js +42 -18
- package/dist/hooks/useCreateShareEvent.js.map +1 -1
- package/dist/hooks/useForwardReferral.js +118 -78
- package/dist/hooks/useForwardReferral.js.map +1 -1
- package/dist/hooks/usePerson.js +49 -21
- package/dist/hooks/usePerson.js.map +1 -1
- package/dist/hooks/useUpdateResourceList.js +28 -34
- package/dist/hooks/useUpdateResourceList.js.map +1 -1
- package/dist/pages/builder/AboutGroupedReferralsModal.js +27 -48
- package/dist/pages/builder/AboutGroupedReferralsModal.js.map +1 -1
- package/dist/pages/builder/AuthorizationSubform.js +131 -143
- package/dist/pages/builder/AuthorizationSubform.js.map +1 -1
- package/dist/pages/builder/ChooseOneServiceTypeModal.js +53 -56
- package/dist/pages/builder/ChooseOneServiceTypeModal.js.map +1 -1
- package/dist/pages/builder/DetailsDrawer.js +72 -74
- package/dist/pages/builder/DetailsDrawer.js.map +1 -1
- package/dist/pages/builder/LineItem.js +25 -28
- package/dist/pages/builder/LineItem.js.map +1 -1
- package/dist/pages/builder/NoReferralsDisplay.js +29 -41
- package/dist/pages/builder/NoReferralsDisplay.js.map +1 -1
- package/dist/pages/builder/ProgramHeader.js +20 -33
- package/dist/pages/builder/ProgramHeader.js.map +1 -1
- package/dist/pages/builder/ProgramMenu.js +18 -19
- package/dist/pages/builder/ProgramMenu.js.map +1 -1
- package/dist/pages/builder/ReferralBuilder.js +443 -341
- package/dist/pages/builder/ReferralBuilder.js.map +1 -1
- package/dist/pages/builder/ReferralBuilderForm.js +392 -323
- package/dist/pages/builder/ReferralBuilderForm.js.map +1 -1
- package/dist/pages/builder/ReferralCard.js +99 -125
- package/dist/pages/builder/ReferralCard.js.map +1 -1
- package/dist/pages/builder/ReferralProgramCard.js +160 -109
- package/dist/pages/builder/ReferralProgramCard.js.map +1 -1
- package/dist/pages/builder/ReferralProgramMenu.js +116 -102
- package/dist/pages/builder/ReferralProgramMenu.js.map +1 -1
- package/dist/pages/builder/__tests__/AuthRequiredClinicalCodes.test.js +246 -99
- package/dist/pages/builder/__tests__/AuthRequiredClinicalCodes.test.js.map +1 -1
- package/dist/pages/builder/__tests__/AuthRequiredNonFundedPrograms.test.js +86 -48
- package/dist/pages/builder/__tests__/AuthRequiredNonFundedPrograms.test.js.map +1 -1
- package/dist/pages/builder/__tests__/AuthorizationRequiredPrograms.test.js +133 -74
- package/dist/pages/builder/__tests__/AuthorizationRequiredPrograms.test.js.map +1 -1
- package/dist/pages/builder/__tests__/NonSensitiveGroupedPrograms.test.js +1269 -674
- package/dist/pages/builder/__tests__/NonSensitiveGroupedPrograms.test.js.map +1 -1
- package/dist/pages/builder/__tests__/NonSensitiveSingleProgram.test.js +575 -305
- package/dist/pages/builder/__tests__/NonSensitiveSingleProgram.test.js.map +1 -1
- package/dist/pages/builder/__tests__/ReferralBuilder.test.js +45 -14
- package/dist/pages/builder/__tests__/ReferralBuilder.test.js.map +1 -1
- package/dist/pages/builder/__tests__/SensitiveProviderGroupedPrograms.test.js +815 -407
- package/dist/pages/builder/__tests__/SensitiveProviderGroupedPrograms.test.js.map +1 -1
- package/dist/pages/builder/__tests__/SensitiveServiceGroupedPrograms.test.js +254 -139
- package/dist/pages/builder/__tests__/SensitiveServiceGroupedPrograms.test.js.map +1 -1
- package/dist/pages/builder/__tests__/SensitiveServiceSensitiveProviderGroupedPrograms.test.js +518 -262
- package/dist/pages/builder/__tests__/SensitiveServiceSensitiveProviderGroupedPrograms.test.js.map +1 -1
- package/dist/pages/builder/__tests__/SensitiveSingleProgram.test.js +504 -273
- package/dist/pages/builder/__tests__/SensitiveSingleProgram.test.js.map +1 -1
- package/dist/pages/builder/buildDraftState.js +21 -21
- package/dist/pages/builder/buildDraftState.js.map +1 -1
- package/dist/pages/builder/buildGroupedReferrals.js +113 -80
- package/dist/pages/builder/buildGroupedReferrals.js.map +1 -1
- package/dist/pages/builder/constants.js +12 -12
- package/dist/pages/builder/constants.js.map +1 -1
- package/dist/pages/builder/formatProgramDetail.js +180 -152
- package/dist/pages/builder/formatProgramDetail.js.map +1 -1
- package/dist/pages/builder/useBuildReferrals.js +163 -95
- package/dist/pages/builder/useBuildReferrals.js.map +1 -1
- package/dist/pages/builder/utils.js +133 -84
- package/dist/pages/builder/utils.js.map +1 -1
- package/dist/pages/review/DeleteReferralModal.js +31 -45
- package/dist/pages/review/DeleteReferralModal.js.map +1 -1
- package/dist/pages/review/DropdownMultiplesReferrals.js +92 -75
- package/dist/pages/review/DropdownMultiplesReferrals.js.map +1 -1
- package/dist/pages/review/ReferralsSent.js +239 -200
- package/dist/pages/review/ReferralsSent.js.map +1 -1
- package/dist/pages/review/Review.js +554 -451
- package/dist/pages/review/Review.js.map +1 -1
- package/dist/pages/review/__tests__/CallbackNotifications.test.js +66 -46
- package/dist/pages/review/__tests__/CallbackNotifications.test.js.map +1 -1
- package/dist/pages/review/__tests__/ReferralsSent.test.js +349 -189
- package/dist/pages/review/__tests__/ReferralsSent.test.js.map +1 -1
- package/dist/pages/review/__tests__/Review.test.js +599 -380
- package/dist/pages/review/__tests__/Review.test.js.map +1 -1
- package/dist/pages/review/__tests__/data.js +5 -5
- package/dist/pages/review/__tests__/data.js.map +1 -1
- package/dist/pages/review/constants.js +5 -5
- package/dist/pages/review/constants.js.map +1 -1
- package/dist/pages/supporting-info/SupportingInfo.js +168 -123
- package/dist/pages/supporting-info/SupportingInfo.js.map +1 -1
- package/dist/pages/supporting-info/__tests__/SupportingInfo.test.js +164 -85
- package/dist/pages/supporting-info/__tests__/SupportingInfo.test.js.map +1 -1
- package/dist/pages/supporting-info/__tests__/data.js +1 -1
- package/dist/pages/supporting-info/__tests__/data.js.map +1 -1
- package/dist/reportWebVitals.js +7 -9
- package/dist/reportWebVitals.js.map +1 -1
- package/dist/setupTests.js +30 -8
- package/dist/setupTests.js.map +1 -1
- package/dist/utils/__tests__/canChangeHoldReason.test.js +23 -23
- package/dist/utils/__tests__/canChangeHoldReason.test.js.map +1 -1
- package/dist/utils/__tests__/checkRoles.test.js +10 -10
- package/dist/utils/__tests__/checkRoles.test.js.map +1 -1
- package/dist/utils/canAccept.js +9 -14
- package/dist/utils/canAccept.js.map +1 -1
- package/dist/utils/canChangeHoldReason.js +11 -16
- package/dist/utils/canChangeHoldReason.js.map +1 -1
- package/dist/utils/canHoldForReview.js +8 -13
- package/dist/utils/canHoldForReview.js.map +1 -1
- package/dist/utils/canReject.js +14 -21
- package/dist/utils/canReject.js.map +1 -1
- package/dist/utils/checkRoles.js +10 -10
- package/dist/utils/checkRoles.js.map +1 -1
- package/dist/utils/getProgramServicesPayload.js +20 -20
- package/dist/utils/getProgramServicesPayload.js.map +1 -1
- package/dist/utils/hasUserRole.js +8 -8
- package/dist/utils/hasUserRole.js.map +1 -1
- package/dist/utils/isReferralForwarded.js +2 -4
- package/dist/utils/isReferralForwarded.js.map +1 -1
- package/dist/utils/referralToConsent.js +19 -14
- package/dist/utils/referralToConsent.js.map +1 -1
- package/dist/utils/useDebounce.js +18 -7
- package/dist/utils/useDebounce.js.map +1 -1
- package/dist/utils/useFeatureFlag.js +1 -1
- package/dist/utils/useFeatureFlag.js.map +1 -1
- package/dist/utils/validateCostAmount.js +4 -4
- package/dist/utils/validateCostAmount.js.map +1 -1
- package/dist/utils/validateUnitAmount.js +4 -4
- package/dist/utils/validateUnitAmount.js.map +1 -1
- package/package.json +35 -65
|
@@ -1,6 +1,16 @@
|
|
|
1
|
-
|
|
1
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
2
|
+
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
2
3
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
3
4
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
5
|
+
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
|
6
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
|
|
7
|
+
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
8
|
+
function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); }
|
|
9
|
+
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
10
|
+
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
|
|
11
|
+
function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); }
|
|
12
|
+
function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); }
|
|
13
|
+
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
4
14
|
import React from 'react';
|
|
5
15
|
import { PropTypes } from 'prop-types';
|
|
6
16
|
import { useDropzone } from 'react-dropzone';
|
|
@@ -8,172 +18,140 @@ import { Icon } from '@unite-us/ui';
|
|
|
8
18
|
import { generateUUID } from '../../utils/utils';
|
|
9
19
|
import FilePreviewWrapper from './components/FilePreviewWrapper';
|
|
10
20
|
import './stylesheets/FileUpload.scss';
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
}));
|
|
21
|
+
var 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";
|
|
22
|
+
var MAX_FILE_SIZE = 10000000;
|
|
23
|
+
export var FileUpload = function FileUpload(_ref) {
|
|
24
|
+
var rejectedFiles = _ref.rejectedFiles,
|
|
25
|
+
uploadedFiles = _ref.uploadedFiles,
|
|
26
|
+
setRejectedFiles = _ref.setRejectedFiles,
|
|
27
|
+
setUploadedFiles = _ref.setUploadedFiles;
|
|
28
|
+
var onDrop = function onDrop(acceptedFiles) {
|
|
29
|
+
var fileUploadWithIdAndPreview = acceptedFiles.map(function (file) {
|
|
30
|
+
return {
|
|
31
|
+
file: file,
|
|
32
|
+
tempId: generateUUID(),
|
|
33
|
+
preview: URL.createObjectURL(file)
|
|
34
|
+
};
|
|
35
|
+
});
|
|
27
36
|
setRejectedFiles({
|
|
28
37
|
filesTooBig: [],
|
|
29
38
|
filesWrongType: []
|
|
30
39
|
});
|
|
31
|
-
setUploadedFiles([
|
|
40
|
+
setUploadedFiles([].concat(_toConsumableArray(uploadedFiles), _toConsumableArray(fileUploadWithIdAndPreview)));
|
|
32
41
|
};
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
return
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
filesTooBig
|
|
57
|
-
filesWrongType
|
|
58
|
-
filesTooBigAndWrongType
|
|
59
|
-
});
|
|
42
|
+
var onDropRejected = function onDropRejected(fileRejections) {
|
|
43
|
+
var _fileRejections$reduc = fileRejections.reduce(function (acc, rejectedFile) {
|
|
44
|
+
if (rejectedFile.size > MAX_FILE_SIZE && !ACCEPTED_FILE_TYPES.includes(rejectedFile.type)) {
|
|
45
|
+
return _objectSpread(_objectSpread({}, acc), {}, {
|
|
46
|
+
filesTooBigAndWrongType: [].concat(_toConsumableArray(acc.filesTooBigAndWrongType), [rejectedFile.name])
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
if (rejectedFile.size > MAX_FILE_SIZE) {
|
|
50
|
+
return _objectSpread(_objectSpread({}, acc), {}, {
|
|
51
|
+
filesTooBig: [].concat(_toConsumableArray(acc.filesTooBig), [rejectedFile.name])
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
if (!ACCEPTED_FILE_TYPES.includes(rejectedFile.type)) {
|
|
55
|
+
return _objectSpread(_objectSpread({}, acc), {}, {
|
|
56
|
+
filesWrongType: [].concat(_toConsumableArray(acc.filesWrongType), [rejectedFile.name])
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
return acc;
|
|
60
|
+
}, {
|
|
61
|
+
filesTooBig: [],
|
|
62
|
+
filesWrongType: [],
|
|
63
|
+
filesTooBigAndWrongType: []
|
|
64
|
+
}),
|
|
65
|
+
filesTooBig = _fileRejections$reduc.filesTooBig,
|
|
66
|
+
filesWrongType = _fileRejections$reduc.filesWrongType,
|
|
67
|
+
filesTooBigAndWrongType = _fileRejections$reduc.filesTooBigAndWrongType;
|
|
60
68
|
setRejectedFiles({
|
|
61
|
-
filesTooBig,
|
|
62
|
-
filesWrongType,
|
|
63
|
-
filesTooBigAndWrongType
|
|
69
|
+
filesTooBig: filesTooBig,
|
|
70
|
+
filesWrongType: filesWrongType,
|
|
71
|
+
filesTooBigAndWrongType: filesTooBigAndWrongType
|
|
64
72
|
});
|
|
65
73
|
};
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
filesWrongType = [],
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
return /*#__PURE__*/
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
children: /*#__PURE__*/_jsxs("div", {
|
|
148
|
-
className: "file-upload-dropzone__preview",
|
|
149
|
-
children: [/*#__PURE__*/_jsxs("div", {
|
|
150
|
-
className: "text-center",
|
|
151
|
-
children: [/*#__PURE__*/_jsx("div", {
|
|
152
|
-
children: /*#__PURE__*/_jsx(Icon, {
|
|
153
|
-
className: "mb-3 text-dark-blue",
|
|
154
|
-
icon: 'V2Upload',
|
|
155
|
-
size: 16,
|
|
156
|
-
color: 'none'
|
|
157
|
-
})
|
|
158
|
-
}), /*#__PURE__*/_jsxs("div", {
|
|
159
|
-
className: "mb-2 text-base text-dark-blue",
|
|
160
|
-
children: ["Drag and drop files or ", /*#__PURE__*/_jsx("button", {
|
|
161
|
-
className: "text-current-blue text-base",
|
|
162
|
-
children: "Browse"
|
|
163
|
-
})]
|
|
164
|
-
}), /*#__PURE__*/_jsx("p", {
|
|
165
|
-
className: "text-xs",
|
|
166
|
-
children: "Supported: csv, doc, docx, pdf, rtf, txt, xls, xlsx, gif, jpg, jpeg, png, mp3, m4a, wav, wma"
|
|
167
|
-
}), /*#__PURE__*/_jsx("p", {
|
|
168
|
-
className: "text-xs",
|
|
169
|
-
children: "Maximum file size: 10mb"
|
|
170
|
-
})]
|
|
171
|
-
}), /*#__PURE__*/_jsx(FilePreviewWrapper, {
|
|
172
|
-
uploadedFiles: uploadedFiles
|
|
173
|
-
}), /*#__PURE__*/_jsx("input", _objectSpread({}, getInputProps()))]
|
|
174
|
-
})
|
|
175
|
-
}))]
|
|
176
|
-
});
|
|
74
|
+
var _useDropzone = useDropzone({
|
|
75
|
+
accept: ACCEPTED_FILE_TYPES,
|
|
76
|
+
maxSize: MAX_FILE_SIZE,
|
|
77
|
+
onDrop: onDrop,
|
|
78
|
+
onDropRejected: onDropRejected
|
|
79
|
+
}),
|
|
80
|
+
getRootProps = _useDropzone.getRootProps,
|
|
81
|
+
getInputProps = _useDropzone.getInputProps;
|
|
82
|
+
var _rejectedFiles$filesT = rejectedFiles.filesTooBig,
|
|
83
|
+
filesTooBig = _rejectedFiles$filesT === void 0 ? [] : _rejectedFiles$filesT,
|
|
84
|
+
_rejectedFiles$filesW = rejectedFiles.filesWrongType,
|
|
85
|
+
filesWrongType = _rejectedFiles$filesW === void 0 ? [] : _rejectedFiles$filesW,
|
|
86
|
+
_rejectedFiles$filesT2 = rejectedFiles.filesTooBigAndWrongType,
|
|
87
|
+
filesTooBigAndWrongType = _rejectedFiles$filesT2 === void 0 ? [] : _rejectedFiles$filesT2;
|
|
88
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, filesTooBigAndWrongType.length ? /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("div", {
|
|
89
|
+
className: "flex"
|
|
90
|
+
}, /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(Icon, {
|
|
91
|
+
className: "mr-2 text-validation-red fill-current pb-1",
|
|
92
|
+
icon: 'V2Warning',
|
|
93
|
+
size: 14
|
|
94
|
+
})), /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("div", {
|
|
95
|
+
className: 'text-sm text-validation-red'
|
|
96
|
+
}, "This file type is not supported and exceeds the maximum upload size of 10MB."), /*#__PURE__*/React.createElement("div", {
|
|
97
|
+
className: 'text-sm text-validation-red mt-2'
|
|
98
|
+
}, "Accepted formats are CSV .DOC .DOCX .PDF .RTF .TXT .XLS .XLSX .GIF .JPG .JPEG .PNG .MP3 .M4A .WAV .WMA"))), /*#__PURE__*/React.createElement("ul", null, filesTooBigAndWrongType.map(function (file) {
|
|
99
|
+
return /*#__PURE__*/React.createElement("li", {
|
|
100
|
+
key: file,
|
|
101
|
+
className: 'text-sm text-validation-red list-disc mt-1'
|
|
102
|
+
}, file);
|
|
103
|
+
}))) : null, filesWrongType.length ? /*#__PURE__*/React.createElement("div", {
|
|
104
|
+
className: "".concat(filesTooBigAndWrongType.length ? 'mt-3' : '')
|
|
105
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
106
|
+
className: "flex"
|
|
107
|
+
}, /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(Icon, {
|
|
108
|
+
className: "mr-2 text-validation-red fill-current pb-1",
|
|
109
|
+
icon: 'V2Warning',
|
|
110
|
+
size: 14
|
|
111
|
+
})), /*#__PURE__*/React.createElement("span", {
|
|
112
|
+
className: 'text-sm text-validation-red'
|
|
113
|
+
}, "This file type is not supported. Accepted formats are CSV .DOC .DOCX .PDF .RTF .TXT .XLS .XLSX .GIF .JPG .JPEG .PNG .MP3 .M4A .WAV .WMA")), /*#__PURE__*/React.createElement("ul", null, filesWrongType.map(function (file) {
|
|
114
|
+
return /*#__PURE__*/React.createElement("li", {
|
|
115
|
+
key: file,
|
|
116
|
+
className: 'text-sm text-validation-red list-disc mt-1'
|
|
117
|
+
}, file);
|
|
118
|
+
}))) : null, filesTooBig.length ? /*#__PURE__*/React.createElement("div", {
|
|
119
|
+
className: "".concat(filesWrongType.length || filesTooBigAndWrongType.length ? 'mt-3' : '')
|
|
120
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
121
|
+
className: "flex"
|
|
122
|
+
}, /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(Icon, {
|
|
123
|
+
className: "mr-2 text-validation-red fill-current pb-1",
|
|
124
|
+
icon: 'V2Warning',
|
|
125
|
+
size: 14
|
|
126
|
+
})), /*#__PURE__*/React.createElement("span", {
|
|
127
|
+
className: 'text-sm text-validation-red'
|
|
128
|
+
}, "The following file exceeds the maximum upload size of 10MB")), /*#__PURE__*/React.createElement("ul", null, filesTooBig.map(function (file) {
|
|
129
|
+
return /*#__PURE__*/React.createElement("li", {
|
|
130
|
+
key: file,
|
|
131
|
+
className: 'text-sm text-validation-red list-disc mt-1'
|
|
132
|
+
}, file);
|
|
133
|
+
}))) : null, /*#__PURE__*/React.createElement("div", _extends({}, getRootProps(), {
|
|
134
|
+
className: "file-upload-dropzone mb-3 mt-5 w-full"
|
|
135
|
+
}), /*#__PURE__*/React.createElement("div", {
|
|
136
|
+
className: "file-upload-dropzone__preview"
|
|
137
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
138
|
+
className: "text-center"
|
|
139
|
+
}, /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(Icon, {
|
|
140
|
+
className: "mb-3 text-dark-blue",
|
|
141
|
+
icon: 'V2Upload',
|
|
142
|
+
size: 16,
|
|
143
|
+
color: 'none'
|
|
144
|
+
})), /*#__PURE__*/React.createElement("div", {
|
|
145
|
+
className: "mb-2 text-base text-dark-blue"
|
|
146
|
+
}, "Drag and drop files or ", /*#__PURE__*/React.createElement("button", {
|
|
147
|
+
className: "text-current-blue text-base"
|
|
148
|
+
}, "Browse")), /*#__PURE__*/React.createElement("p", {
|
|
149
|
+
className: "text-xs"
|
|
150
|
+
}, "Supported: csv, doc, docx, pdf, rtf, txt, xls, xlsx, gif, jpg, jpeg, png, mp3, m4a, wav, wma"), /*#__PURE__*/React.createElement("p", {
|
|
151
|
+
className: "text-xs"
|
|
152
|
+
}, "Maximum file size: 10mb")), /*#__PURE__*/React.createElement(FilePreviewWrapper, {
|
|
153
|
+
uploadedFiles: uploadedFiles
|
|
154
|
+
}), /*#__PURE__*/React.createElement("input", getInputProps()))));
|
|
177
155
|
};
|
|
178
156
|
FileUpload.propTypes = {
|
|
179
157
|
rejectedFiles: PropTypes.object.isRequired,
|
|
@@ -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","setRejectedFiles","setUploadedFiles","onDrop","acceptedFiles","fileUploadWithIdAndPreview","map","file","tempId","preview","URL","createObjectURL","filesTooBig","filesWrongType","onDropRejected","fileRejections","filesTooBigAndWrongType","reduce","acc","rejectedFile","size","includes","type","_objectSpread","name","getRootProps","getInputProps","accept","maxSize","children","length","className","icon","concat","color","propTypes","object","isRequired","array","func"],"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/ui';\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 setRejectedFiles,\n setUploadedFiles,\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([...uploadedFiles, ...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={'V2Warning'}\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={'V2Warning'}\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={'V2Warning'}\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={'V2Upload'}\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 uploadedFiles={uploadedFiles} />\n <input {...getInputProps()} />\n </div>\n </div>\n </>\n );\n};\n\nFileUpload.propTypes = {\n rejectedFiles: PropTypes.object.isRequired,\n uploadedFiles: PropTypes.array.isRequired,\n setRejectedFiles: PropTypes.func.isRequired,\n setUploadedFiles: PropTypes.func.isRequired,\n};\n\nexport default FileUpload;\n"],"mappings":";;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,SAAS,QAAQ,YAAY;AACtC,SAASC,WAAW,QAAQ,gBAAgB;AAC5C,SAASC,IAAI,QAAQ,cAAc;AACnC,SAASC,YAAY,QAAQ,mBAAmB;AAChD,OAAOC,kBAAkB,MAAM,iCAAiC;AAChE,OAAO,+BAA+B;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA,EAAAC,QAAA,IAAAC,SAAA;AAEvC,MAAMC,mBAAmB,omBAS2C;AACpE,MAAMC,aAAa,GAAG,QAAQ;AAE9B,OAAO,MAAMC,UAAU,GAAGC,IAAA,IAKpB;EAAA,IALqB;IACzBC,aAAa;IACbC,aAAa;IACbC,gBAAgB;IAChBC;EACF,CAAC,GAAAJ,IAAA;EACC,MAAMK,MAAM,GAAIC,aAAa,IAAK;IAChC,MAAMC,0BAA0B,GAAGD,aAAa,CAACE,GAAG,CAAEC,IAAI,KAAM;MAC9DA,IAAI;MACJC,MAAM,EAAErB,YAAY,CAAC,CAAC;MACtBsB,OAAO,EAAEC,GAAG,CAACC,eAAe,CAACJ,IAAI;IACnC,CAAC,CAAC,CAAC;IAEHN,gBAAgB,CAAC;MAAEW,WAAW,EAAE,EAAE;MAAEC,cAAc,EAAE;IAAG,CAAC,CAAC;IACzDX,gBAAgB,CAAC,CAAC,GAAGF,aAAa,EAAE,GAAGK,0BAA0B,CAAC,CAAC;EACrE,CAAC;EAED,MAAMS,cAAc,GAAIC,cAAc,IAAK;IACzC,MAAM;MAAEH,WAAW;MAAEC,cAAc;MAAEG;IAAwB,CAAC,GAAGD,cAAc,CAACE,MAAM,CAAC,CAACC,GAAG,EAAEC,YAAY,KAAK;MAC5G,IAAIA,YAAY,CAACC,IAAI,GAAGxB,aAAa,IAAI,CAACD,mBAAmB,CAAC0B,QAAQ,CAACF,YAAY,CAACG,IAAI,CAAC,EAAE;QACzF,OAAAC,aAAA,CAAAA,aAAA,KAAYL,GAAG;UAAEF,uBAAuB,EAAE,CAAC,GAAGE,GAAG,CAACF,uBAAuB,EAAEG,YAAY,CAACK,IAAI;QAAC;MAC/F;MAEA,IAAIL,YAAY,CAACC,IAAI,GAAGxB,aAAa,EAAE;QACrC,OAAA2B,aAAA,CAAAA,aAAA,KAAYL,GAAG;UAAEN,WAAW,EAAE,CAAC,GAAGM,GAAG,CAACN,WAAW,EAAEO,YAAY,CAACK,IAAI;QAAC;MACvE;MAEA,IAAI,CAAC7B,mBAAmB,CAAC0B,QAAQ,CAACF,YAAY,CAACG,IAAI,CAAC,EAAE;QACpD,OAAAC,aAAA,CAAAA,aAAA,KAAYL,GAAG;UAAEL,cAAc,EAAE,CAAC,GAAGK,GAAG,CAACL,cAAc,EAAEM,YAAY,CAACK,IAAI;QAAC;MAC7E;MAEA,OAAON,GAAG;IACZ,CAAC,EAAE;MAAEN,WAAW,EAAE,EAAE;MAAEC,cAAc,EAAE,EAAE;MAAEG,uBAAuB,EAAE;IAAG,CAAC,CAAC;IAExEf,gBAAgB,CAAC;MAAEW,WAAW;MAAEC,cAAc;MAAEG;IAAwB,CAAC,CAAC;EAC5E,CAAC;EAED,MAAM;IAAES,YAAY;IAAEC;EAAc,CAAC,GAAGzC,WAAW,CAAC;IAClD0C,MAAM,EAAEhC,mBAAmB;IAC3BiC,OAAO,EAAEhC,aAAa;IACtBO,MAAM;IACNW;EACF,CAAC,CAAC;EAEF,MAAM;IAAEF,WAAW,GAAG,EAAE;IAAEC,cAAc,GAAG,EAAE;IAAEG,uBAAuB,GAAG;EAAG,CAAC,GAAGjB,aAAa;EAE7F,oBACEP,KAAA,CAAAE,SAAA;IAAAmC,QAAA,GAEIb,uBAAuB,CAACc,MAAM,gBAC5BtC,KAAA;MAAAqC,QAAA,gBACErC,KAAA;QAAKuC,SAAS,EAAC,MAAM;QAAAF,QAAA,gBACnBvC,IAAA;UAAAuC,QAAA,eACEvC,IAAA,CAACJ,IAAI;YACH6C,SAAS,EAAC,4CAA4C;YACtDC,IAAI,EAAE,WAAY;YAClBZ,IAAI,EAAE;UAAG,CACV;QAAC,CACC,CAAC,eACN5B,KAAA;UAAAqC,QAAA,gBACEvC,IAAA;YAAKyC,SAAS,EAAE,6BAA8B;YAAAF,QAAA,EAAC;UAE/C,CAAK,CAAC,eACNvC,IAAA;YAAKyC,SAAS,EAAE,kCAAmC;YAAAF,QAAA,EAAC;UAEpD,CAAK,CAAC;QAAA,CACH,CAAC;MAAA,CACH,CAAC,eACNvC,IAAA;QAAAuC,QAAA,EAEIb,uBAAuB,CAACV,GAAG,CACxBC,IAAI,iBAAKjB,IAAA;UAAeyC,SAAS,EAAE,4CAA6C;UAAAF,QAAA,EAAEtB;QAAI,GAApEA,IAAyE,CAC9F;MAAC,CAED,CAAC;IAAA,CACF,CAAC,GACJ,IAAI,EAGRM,cAAc,CAACiB,MAAM,gBACnBtC,KAAA;MAAKuC,SAAS,KAAAE,MAAA,CAAKjB,uBAAuB,CAACc,MAAM,GAAG,MAAM,GAAG,EAAE,CAAG;MAAAD,QAAA,gBAChErC,KAAA;QAAKuC,SAAS,EAAC,MAAM;QAAAF,QAAA,gBACnBvC,IAAA;UAAAuC,QAAA,eACEvC,IAAA,CAACJ,IAAI;YACH6C,SAAS,EAAC,4CAA4C;YACtDC,IAAI,EAAE,WAAY;YAClBZ,IAAI,EAAE;UAAG,CACV;QAAC,CACC,CAAC,eACN9B,IAAA;UAAMyC,SAAS,EAAE,6BAA8B;UAAAF,QAAA,EAAC;QAGhD,CAAM,CAAC;MAAA,CACJ,CAAC,eACNvC,IAAA;QAAAuC,QAAA,EAEIhB,cAAc,CAACP,GAAG,CACfC,IAAI,iBAAKjB,IAAA;UAAeyC,SAAS,EAAE,4CAA6C;UAAAF,QAAA,EAAEtB;QAAI,GAApEA,IAAyE,CAC9F;MAAC,CAED,CAAC;IAAA,CACF,CAAC,GACJ,IAAI,EAGRK,WAAW,CAACkB,MAAM,gBAChBtC,KAAA;MAAKuC,SAAS,KAAAE,MAAA,CAAMpB,cAAc,CAACiB,MAAM,IAAId,uBAAuB,CAACc,MAAM,GAAI,MAAM,GAAG,EAAE,CAAG;MAAAD,QAAA,gBAC3FrC,KAAA;QAAKuC,SAAS,EAAC,MAAM;QAAAF,QAAA,gBACnBvC,IAAA;UAAAuC,QAAA,eACEvC,IAAA,CAACJ,IAAI;YACH6C,SAAS,EAAC,4CAA4C;YACtDC,IAAI,EAAE,WAAY;YAClBZ,IAAI,EAAE;UAAG,CACV;QAAC,CACC,CAAC,eACN9B,IAAA;UAAMyC,SAAS,EAAE,6BAA8B;UAAAF,QAAA,EAAC;QAEhD,CAAM,CAAC;MAAA,CACJ,CAAC,eACNvC,IAAA;QAAAuC,QAAA,EAEIjB,WAAW,CAACN,GAAG,CAAEC,IAAI,iBACnBjB,IAAA;UAAeyC,SAAS,EAAE,4CAA6C;UAAAF,QAAA,EAAEtB;QAAI,GAApEA,IAAyE,CACnF;MAAC,CAEF,CAAC;IAAA,CACF,CAAC,GACJ,IAAI,eAEVjB,IAAA,QAAAiC,aAAA,CAAAA,aAAA,KAASE,YAAY,CAAC,CAAC;MAAEM,SAAS,EAAC,uCAAuC;MAAAF,QAAA,eACxErC,KAAA;QAAKuC,SAAS,EAAC,+BAA+B;QAAAF,QAAA,gBAC5CrC,KAAA;UAAKuC,SAAS,EAAC,aAAa;UAAAF,QAAA,gBAC1BvC,IAAA;YAAAuC,QAAA,eACEvC,IAAA,CAACJ,IAAI;cACH6C,SAAS,EAAC,qBAAqB;cAC/BC,IAAI,EAAE,UAAW;cACjBZ,IAAI,EAAE,EAAG;cACTc,KAAK,EAAE;YAAO,CACf;UAAC,CACC,CAAC,eACN1C,KAAA;YACEuC,SAAS,EAAC,+BAA+B;YAAAF,QAAA,GAC1C,yBACwB,eAAAvC,IAAA;cAAQyC,SAAS,EAAC,6BAA6B;cAAAF,QAAA,EAAC;YAAM,CAAQ,CAAC;UAAA,CACnF,CAAC,eACNvC,IAAA;YAAGyC,SAAS,EAAC,SAAS;YAAAF,QAAA,EAAC;UAEvB,CAAG,CAAC,eACJvC,IAAA;YAAGyC,SAAS,EAAC,SAAS;YAAAF,QAAA,EAAC;UAAuB,CAAG,CAAC;QAAA,CAC/C,CAAC,eACNvC,IAAA,CAACF,kBAAkB;UAACY,aAAa,EAAEA;QAAc,CAAE,CAAC,eACpDV,IAAA,UAAAiC,aAAA,KAAWG,aAAa,CAAC,CAAC,CAAG,CAAC;MAAA,CAC3B;IAAC,EACH,CAAC;EAAA,CACN,CAAC;AAEP,CAAC;AAED7B,UAAU,CAACsC,SAAS,GAAG;EACrBpC,aAAa,EAAEf,SAAS,CAACoD,MAAM,CAACC,UAAU;EAC1CrC,aAAa,EAAEhB,SAAS,CAACsD,KAAK,CAACD,UAAU;EACzCpC,gBAAgB,EAAEjB,SAAS,CAACuD,IAAI,CAACF,UAAU;EAC3CnC,gBAAgB,EAAElB,SAAS,CAACuD,IAAI,CAACF;AACnC,CAAC;AAED,eAAexC,UAAU","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"FileUpload.js","names":["React","PropTypes","useDropzone","Icon","generateUUID","FilePreviewWrapper","ACCEPTED_FILE_TYPES","MAX_FILE_SIZE","FileUpload","_ref","rejectedFiles","uploadedFiles","setRejectedFiles","setUploadedFiles","onDrop","acceptedFiles","fileUploadWithIdAndPreview","map","file","tempId","preview","URL","createObjectURL","filesTooBig","filesWrongType","concat","_toConsumableArray","onDropRejected","fileRejections","_fileRejections$reduc","reduce","acc","rejectedFile","size","includes","type","_objectSpread","filesTooBigAndWrongType","name","_useDropzone","accept","maxSize","getRootProps","getInputProps","_rejectedFiles$filesT","_rejectedFiles$filesW","_rejectedFiles$filesT2","createElement","Fragment","length","className","icon","key","_extends","color","propTypes","object","isRequired","array","func"],"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/ui';\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 setRejectedFiles,\n setUploadedFiles,\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([...uploadedFiles, ...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={'V2Warning'}\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={'V2Warning'}\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={'V2Warning'}\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={'V2Upload'}\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 uploadedFiles={uploadedFiles} />\n <input {...getInputProps()} />\n </div>\n </div>\n </>\n );\n};\n\nFileUpload.propTypes = {\n rejectedFiles: PropTypes.object.isRequired,\n uploadedFiles: PropTypes.array.isRequired,\n setRejectedFiles: PropTypes.func.isRequired,\n setUploadedFiles: PropTypes.func.isRequired,\n};\n\nexport default FileUpload;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,19 +1,16 @@
|
|
|
1
1
|
import PropTypes from 'prop-types';
|
|
2
2
|
import React from 'react';
|
|
3
3
|
import FileThumbnail from '@unite-us/client-utils/dist/FileThumbnail';
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
contentType,
|
|
8
|
-
preview
|
|
9
|
-
} = _ref;
|
|
4
|
+
var FilePreview = function FilePreview(_ref) {
|
|
5
|
+
var contentType = _ref.contentType,
|
|
6
|
+
preview = _ref.preview;
|
|
10
7
|
if (/\bimage\b/.test(contentType)) {
|
|
11
|
-
return /*#__PURE__*/
|
|
8
|
+
return /*#__PURE__*/React.createElement("img", {
|
|
12
9
|
src: preview,
|
|
13
10
|
alt: "preview"
|
|
14
11
|
});
|
|
15
12
|
}
|
|
16
|
-
return /*#__PURE__*/
|
|
13
|
+
return /*#__PURE__*/React.createElement(FileThumbnail, {
|
|
17
14
|
contentType: contentType
|
|
18
15
|
});
|
|
19
16
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FilePreview.js","names":["PropTypes","React","FileThumbnail","
|
|
1
|
+
{"version":3,"file":"FilePreview.js","names":["PropTypes","React","FileThumbnail","FilePreview","_ref","contentType","preview","test","createElement","src","alt","propTypes","string","isRequired"],"sources":["../../../../../src/common/form/FileUploadV2/components/FilePreview.jsx"],"sourcesContent":["import PropTypes from 'prop-types';\nimport React from 'react';\nimport FileThumbnail from '@unite-us/client-utils/dist/FileThumbnail';\n\nconst FilePreview = ({ contentType, preview }) => {\n if (/\\bimage\\b/.test(contentType)) {\n return <img src={preview} alt=\"preview\" />;\n }\n\n return <FileThumbnail contentType={contentType} />;\n};\n\nFilePreview.propTypes = {\n contentType: PropTypes.string.isRequired,\n preview: PropTypes.string,\n};\n\nexport default FilePreview;\n"],"mappings":"AAAA,OAAOA,SAAS,MAAM,YAAY;AAClC,OAAOC,KAAK,MAAM,OAAO;AACzB,OAAOC,aAAa,MAAM,2CAA2C;AAErE,IAAMC,WAAW,GAAG,SAAdA,WAAWA,CAAAC,IAAA,EAAiC;EAAA,IAA3BC,WAAW,GAAAD,IAAA,CAAXC,WAAW;IAAEC,OAAO,GAAAF,IAAA,CAAPE,OAAO;EACzC,IAAI,WAAW,CAACC,IAAI,CAACF,WAAW,CAAC,EAAE;IACjC,oBAAOJ,KAAA,CAAAO,aAAA;MAAKC,GAAG,EAAEH,OAAQ;MAACI,GAAG,EAAC;IAAS,CAAE,CAAC;EAC5C;EAEA,oBAAOT,KAAA,CAAAO,aAAA,CAACN,aAAa;IAACG,WAAW,EAAEA;EAAY,CAAE,CAAC;AACpD,CAAC;AAEDF,WAAW,CAACQ,SAAS,GAAG;EACtBN,WAAW,EAAEL,SAAS,CAACY,MAAM,CAACC,UAAU;EACxCP,OAAO,EAAEN,SAAS,CAACY;AACrB,CAAC;AAED,eAAeT,WAAW","ignoreList":[]}
|
|
@@ -2,32 +2,27 @@ import PropTypes from 'prop-types';
|
|
|
2
2
|
import React from 'react';
|
|
3
3
|
import { isEmpty, isNil } from 'lodash';
|
|
4
4
|
import FilePreview from './FilePreview';
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
children: name
|
|
27
|
-
})]
|
|
28
|
-
}, id);
|
|
29
|
-
})
|
|
30
|
-
});
|
|
5
|
+
var FilePreviewWrapper = function FilePreviewWrapper(_ref) {
|
|
6
|
+
var uploadedFiles = _ref.uploadedFiles;
|
|
7
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
8
|
+
className: "file-upload-dropzone__preview"
|
|
9
|
+
}, !isEmpty(uploadedFiles) && uploadedFiles.map(function (file) {
|
|
10
|
+
var _file$file, _file$file2;
|
|
11
|
+
var isNewAttachment = !isNil(file.tempId);
|
|
12
|
+
var id = isNewAttachment ? file.tempId : file === null || file === void 0 ? void 0 : file.id;
|
|
13
|
+
var contentType = isNewAttachment ? file === null || file === void 0 || (_file$file = file.file) === null || _file$file === void 0 ? void 0 : _file$file.type : file === null || file === void 0 ? void 0 : file.content_type;
|
|
14
|
+
var preview = isNewAttachment ? file === null || file === void 0 ? void 0 : file.preview : file === null || file === void 0 ? void 0 : file.pdf_url;
|
|
15
|
+
var name = isNewAttachment ? file === null || file === void 0 || (_file$file2 = file.file) === null || _file$file2 === void 0 ? void 0 : _file$file2.name : file === null || file === void 0 ? void 0 : file.filename;
|
|
16
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
17
|
+
key: id,
|
|
18
|
+
className: "file-upload-dropzone__preview__preview-item"
|
|
19
|
+
}, /*#__PURE__*/React.createElement(FilePreview, {
|
|
20
|
+
contentType: contentType,
|
|
21
|
+
preview: preview
|
|
22
|
+
}), /*#__PURE__*/React.createElement("div", {
|
|
23
|
+
className: "file-upload-dropzone__preview__file-name"
|
|
24
|
+
}, name));
|
|
25
|
+
}));
|
|
31
26
|
};
|
|
32
27
|
FilePreview.propTypes = {
|
|
33
28
|
getRootProps: PropTypes.object,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FilePreviewWrapper.js","names":["PropTypes","React","isEmpty","isNil","FilePreview","
|
|
1
|
+
{"version":3,"file":"FilePreviewWrapper.js","names":["PropTypes","React","isEmpty","isNil","FilePreview","FilePreviewWrapper","_ref","uploadedFiles","createElement","className","map","file","_file$file","_file$file2","isNewAttachment","tempId","id","contentType","type","content_type","preview","pdf_url","name","filename","key","propTypes","getRootProps","object","array","defaultProps"],"sources":["../../../../../src/common/form/FileUploadV2/components/FilePreviewWrapper.jsx"],"sourcesContent":["import PropTypes from 'prop-types';\nimport React from 'react';\nimport { isEmpty, isNil } from 'lodash';\nimport FilePreview from './FilePreview';\n\nconst FilePreviewWrapper = ({ uploadedFiles }) => (\n <div className=\"file-upload-dropzone__preview\">\n {\n !isEmpty(uploadedFiles) && uploadedFiles.map((file) => {\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\">\n {name}\n </div>\n </div>\n )\n })\n }\n </div>\n)\n\nFilePreview.propTypes = {\n getRootProps: PropTypes.object,\n uploadedFiles: PropTypes.array,\n}\n\nFilePreview.defaultProps = {\n getRootProps: {},\n uploadedFiles: [],\n};\n\nexport default FilePreviewWrapper;\n"],"mappings":"AAAA,OAAOA,SAAS,MAAM,YAAY;AAClC,OAAOC,KAAK,MAAM,OAAO;AACzB,SAASC,OAAO,EAAEC,KAAK,QAAQ,QAAQ;AACvC,OAAOC,WAAW,MAAM,eAAe;AAEvC,IAAMC,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAAC,IAAA;EAAA,IAAMC,aAAa,GAAAD,IAAA,CAAbC,aAAa;EAAA,oBACzCN,KAAA,CAAAO,aAAA;IAAKC,SAAS,EAAC;EAA+B,GAE1C,CAACP,OAAO,CAACK,aAAa,CAAC,IAAIA,aAAa,CAACG,GAAG,CAAC,UAACC,IAAI,EAAK;IAAA,IAAAC,UAAA,EAAAC,WAAA;IACrD,IAAMC,eAAe,GAAG,CAACX,KAAK,CAACQ,IAAI,CAACI,MAAM,CAAC;IAC3C,IAAMC,EAAE,GAAGF,eAAe,GAAGH,IAAI,CAACI,MAAM,GAAGJ,IAAI,aAAJA,IAAI,uBAAJA,IAAI,CAAEK,EAAE;IACnD,IAAMC,WAAW,GAAGH,eAAe,GAAGH,IAAI,aAAJA,IAAI,gBAAAC,UAAA,GAAJD,IAAI,CAAEA,IAAI,cAAAC,UAAA,uBAAVA,UAAA,CAAYM,IAAI,GAAGP,IAAI,aAAJA,IAAI,uBAAJA,IAAI,CAAEQ,YAAY;IAC3E,IAAMC,OAAO,GAAGN,eAAe,GAAGH,IAAI,aAAJA,IAAI,uBAAJA,IAAI,CAAES,OAAO,GAAGT,IAAI,aAAJA,IAAI,uBAAJA,IAAI,CAAEU,OAAO;IAC/D,IAAMC,IAAI,GAAGR,eAAe,GAAGH,IAAI,aAAJA,IAAI,gBAAAE,WAAA,GAAJF,IAAI,CAAEA,IAAI,cAAAE,WAAA,uBAAVA,WAAA,CAAYS,IAAI,GAAGX,IAAI,aAAJA,IAAI,uBAAJA,IAAI,CAAEY,QAAQ;IAEhE,oBACEtB,KAAA,CAAAO,aAAA;MAAKgB,GAAG,EAAER,EAAG;MAACP,SAAS,EAAC;IAA6C,gBACnER,KAAA,CAAAO,aAAA,CAACJ,WAAW;MAACa,WAAW,EAAEA,WAAY;MAACG,OAAO,EAAEA;IAAQ,CAAE,CAAC,eAC3DnB,KAAA,CAAAO,aAAA;MAAKC,SAAS,EAAC;IAA0C,GACtDa,IACE,CACF,CAAC;EAEV,CAAC,CAEA,CAAC;AAAA,CACP;AAEDlB,WAAW,CAACqB,SAAS,GAAG;EACtBC,YAAY,EAAE1B,SAAS,CAAC2B,MAAM;EAC9BpB,aAAa,EAAEP,SAAS,CAAC4B;AAC3B,CAAC;AAEDxB,WAAW,CAACyB,YAAY,GAAG;EACzBH,YAAY,EAAE,CAAC,CAAC;EAChBnB,aAAa,EAAE;AACjB,CAAC;AAED,eAAeF,kBAAkB","ignoreList":[]}
|