@unite-us/app-create-referral 0.15.62 → 0.15.63
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 +45 -45
- package/dist/AppReferrals.js.map +1 -1
- package/dist/AppReferrals.test.js +34 -60
- package/dist/AppReferrals.test.js.map +1 -1
- package/dist/__testUtils__/mockData/components/mockAppReferrals.js +13 -12
- 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 +218 -282
- package/dist/__testUtils__/mockData/utils.js.map +1 -1
- package/dist/__testUtils__/mockServer/handlers.js +80 -82
- package/dist/__testUtils__/mockServer/handlers.js.map +1 -1
- package/dist/__testUtils__/mockServer/server.js +7 -13
- package/dist/__testUtils__/mockServer/server.js.map +1 -1
- package/dist/__testUtils__/test-utils.js +22 -18
- package/dist/__testUtils__/test-utils.js.map +1 -1
- package/dist/actions/Document/Contact/Group/fetchCaseDocuments.js +10 -32
- package/dist/actions/Document/Contact/Group/fetchCaseDocuments.js.map +1 -1
- package/dist/actions/Document/Contact/Group/fetchContactDocuments.js +10 -32
- package/dist/actions/Document/Contact/Group/fetchContactDocuments.js.map +1 -1
- package/dist/actions/Document/Contact/Group/fileUploadUtils.js +8 -10
- package/dist/actions/Document/Contact/Group/fileUploadUtils.js.map +1 -1
- package/dist/actions/Group/fetchCoreGroupForms.js +46 -88
- package/dist/actions/Group/fetchCoreGroupForms.js.map +1 -1
- package/dist/actions/Referral/cannotMoveToReferralReasons.js +23 -21
- package/dist/actions/Referral/cannotMoveToReferralReasons.js.map +1 -1
- package/dist/actions/Referral/fetchCoreServices.js +70 -152
- package/dist/actions/Referral/fetchCoreServices.js.map +1 -1
- package/dist/actions/Referral/fetchNetworks.js +11 -35
- package/dist/actions/Referral/fetchNetworks.js.map +1 -1
- package/dist/actions/Referral/fetchPrimaryWorkers.js +51 -75
- package/dist/actions/Referral/fetchPrimaryWorkers.js.map +1 -1
- package/dist/actions/Referral/removeReferralProgram.js +10 -15
- package/dist/actions/Referral/removeReferralProgram.js.map +1 -1
- package/dist/api/ApiHooks.js +40 -39
- package/dist/api/ApiHooks.js.map +1 -1
- package/dist/api/config.js +20 -23
- package/dist/api/config.js.map +1 -1
- package/dist/common/form/CurrencyField/index.js +22 -21
- package/dist/common/form/CurrencyField/index.js.map +1 -1
- package/dist/common/form/DocumentUploader/components/ContactDocumentsSelector.js +51 -48
- package/dist/common/form/DocumentUploader/components/ContactDocumentsSelector.js.map +1 -1
- package/dist/common/form/DocumentUploader/components/DocumentsListView.js +14 -12
- package/dist/common/form/DocumentUploader/components/DocumentsListView.js.map +1 -1
- package/dist/common/form/DocumentUploader/components/ListViewDocument.js +21 -17
- package/dist/common/form/DocumentUploader/components/ListViewDocument.js.map +1 -1
- package/dist/common/form/ErrorMessage/index.js +17 -9
- package/dist/common/form/ErrorMessage/index.js.map +1 -1
- package/dist/common/form/FileUploadV2/FileUpload.js +159 -137
- package/dist/common/form/FileUploadV2/FileUpload.js.map +1 -1
- package/dist/common/form/FileUploadV2/components/FilePreview.js +8 -5
- package/dist/common/form/FileUploadV2/components/FilePreview.js.map +1 -1
- package/dist/common/form/FileUploadV2/components/FilePreviewWrapper.js +26 -21
- package/dist/common/form/FileUploadV2/components/FilePreviewWrapper.js.map +1 -1
- package/dist/common/form/FormForm/index.js +143 -186
- 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 +12 -8
- package/dist/components/Card.js.map +1 -1
- package/dist/components/CreateReferralContainer.js +21 -13
- package/dist/components/CreateReferralContainer.js.map +1 -1
- package/dist/components/DollarAmount.js +18 -14
- package/dist/components/DollarAmount.js.map +1 -1
- package/dist/components/ExpandableButton.js +21 -16
- package/dist/components/ExpandableButton.js.map +1 -1
- package/dist/components/NavButtons.js +57 -51
- package/dist/components/NavButtons.js.map +1 -1
- package/dist/components/ReferralStepper.js +44 -41
- package/dist/components/ReferralStepper.js.map +1 -1
- package/dist/components/SearchableField.js +121 -125
- package/dist/components/SearchableField.js.map +1 -1
- package/dist/components/StepHeader.js +25 -16
- package/dist/components/StepHeader.js.map +1 -1
- package/dist/components/Stepper.js +55 -51
- package/dist/components/Stepper.js.map +1 -1
- package/dist/components/modal/Dialog.js +141 -170
- package/dist/components/modal/Dialog.js.map +1 -1
- package/dist/components/modal/Overlay.js +2 -1
- package/dist/components/modal/Overlay.js.map +1 -1
- package/dist/components/service_authorization/AuthorizationSpendCard.js +72 -60
- package/dist/components/service_authorization/AuthorizationSpendCard.js.map +1 -1
- package/dist/components/service_authorization/CapsInfo.js +143 -120
- package/dist/components/service_authorization/CapsInfo.js.map +1 -1
- package/dist/components/service_authorization/CaseStatus.js +18 -14
- package/dist/components/service_authorization/CaseStatus.js.map +1 -1
- package/dist/components/service_authorization/PreviousAuthorizationRequestsDetails.js +121 -96
- 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 +82 -65
- package/dist/components/service_authorization/ReferralAuthorizationRequestSummary.js.map +1 -1
- package/dist/components/service_authorization/Spend.js +10 -5
- 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 +34 -23
- package/dist/components/spinners/OverlaySpinner/OverlaySpinner.js.map +1 -1
- package/dist/components/spinners/Spinner/Spinner.js +33 -27
- 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 +25 -36
- package/dist/context/AppCreateReferralProvider.js.map +1 -1
- package/dist/context/state.js +2 -5
- package/dist/context/state.js.map +1 -1
- package/dist/context/withAppCreateReferralContext.js +9 -5
- package/dist/context/withAppCreateReferralContext.js.map +1 -1
- package/dist/hooks/__tests__/useCreateReferrals.test.js +456 -544
- package/dist/hooks/__tests__/useCreateReferrals.test.js.map +1 -1
- package/dist/hooks/sendReferral.js +155 -318
- package/dist/hooks/sendReferral.js.map +1 -1
- package/dist/hooks/useClinicalModificationOptions.js +24 -34
- package/dist/hooks/useClinicalModificationOptions.js.map +1 -1
- package/dist/hooks/useCreateReferrals.js +463 -706
- package/dist/hooks/useCreateReferrals.js.map +1 -1
- package/dist/hooks/useCreateResourceList.js +56 -66
- package/dist/hooks/useCreateResourceList.js.map +1 -1
- package/dist/hooks/useCreateShareEvent.js +18 -33
- package/dist/hooks/useCreateShareEvent.js.map +1 -1
- package/dist/hooks/useForwardReferral.js +78 -105
- package/dist/hooks/useForwardReferral.js.map +1 -1
- package/dist/hooks/usePerson.js +21 -40
- package/dist/hooks/usePerson.js.map +1 -1
- package/dist/hooks/useUpdateResourceList.js +34 -28
- package/dist/hooks/useUpdateResourceList.js.map +1 -1
- package/dist/pages/builder/AboutGroupedReferralsModal.js +48 -27
- package/dist/pages/builder/AboutGroupedReferralsModal.js.map +1 -1
- package/dist/pages/builder/AuthorizationSubform.js +143 -131
- package/dist/pages/builder/AuthorizationSubform.js.map +1 -1
- package/dist/pages/builder/ChooseOneServiceTypeModal.js +56 -53
- package/dist/pages/builder/ChooseOneServiceTypeModal.js.map +1 -1
- package/dist/pages/builder/DetailsDrawer.js +74 -72
- package/dist/pages/builder/DetailsDrawer.js.map +1 -1
- package/dist/pages/builder/LineItem.js +28 -25
- package/dist/pages/builder/LineItem.js.map +1 -1
- package/dist/pages/builder/NoReferralsDisplay.js +41 -29
- package/dist/pages/builder/NoReferralsDisplay.js.map +1 -1
- package/dist/pages/builder/ProgramHeader.js +33 -20
- package/dist/pages/builder/ProgramHeader.js.map +1 -1
- package/dist/pages/builder/ProgramMenu.js +19 -18
- package/dist/pages/builder/ProgramMenu.js.map +1 -1
- package/dist/pages/builder/ReferralBuilder.js +341 -435
- package/dist/pages/builder/ReferralBuilder.js.map +1 -1
- package/dist/pages/builder/ReferralBuilderForm.js +323 -383
- package/dist/pages/builder/ReferralBuilderForm.js.map +1 -1
- package/dist/pages/builder/ReferralCard.js +125 -99
- package/dist/pages/builder/ReferralCard.js.map +1 -1
- package/dist/pages/builder/ReferralProgramCard.js +109 -148
- package/dist/pages/builder/ReferralProgramCard.js.map +1 -1
- package/dist/pages/builder/ReferralProgramMenu.js +102 -116
- package/dist/pages/builder/ReferralProgramMenu.js.map +1 -1
- package/dist/pages/builder/__tests__/AuthRequiredClinicalCodes.test.js +99 -220
- package/dist/pages/builder/__tests__/AuthRequiredClinicalCodes.test.js.map +1 -1
- package/dist/pages/builder/__tests__/AuthRequiredNonFundedPrograms.test.js +48 -74
- package/dist/pages/builder/__tests__/AuthRequiredNonFundedPrograms.test.js.map +1 -1
- package/dist/pages/builder/__tests__/AuthorizationRequiredPrograms.test.js +74 -117
- package/dist/pages/builder/__tests__/AuthorizationRequiredPrograms.test.js.map +1 -1
- package/dist/pages/builder/__tests__/NonSensitiveGroupedPrograms.test.js +674 -1151
- package/dist/pages/builder/__tests__/NonSensitiveGroupedPrograms.test.js.map +1 -1
- package/dist/pages/builder/__tests__/NonSensitiveSingleProgram.test.js +305 -519
- package/dist/pages/builder/__tests__/NonSensitiveSingleProgram.test.js.map +1 -1
- package/dist/pages/builder/__tests__/ReferralBuilder.test.js +14 -33
- package/dist/pages/builder/__tests__/ReferralBuilder.test.js.map +1 -1
- package/dist/pages/builder/__tests__/SensitiveProviderGroupedPrograms.test.js +407 -727
- package/dist/pages/builder/__tests__/SensitiveProviderGroupedPrograms.test.js.map +1 -1
- package/dist/pages/builder/__tests__/SensitiveServiceGroupedPrograms.test.js +139 -227
- package/dist/pages/builder/__tests__/SensitiveServiceGroupedPrograms.test.js.map +1 -1
- package/dist/pages/builder/__tests__/SensitiveServiceSensitiveProviderGroupedPrograms.test.js +262 -461
- package/dist/pages/builder/__tests__/SensitiveServiceSensitiveProviderGroupedPrograms.test.js.map +1 -1
- package/dist/pages/builder/__tests__/SensitiveSingleProgram.test.js +273 -455
- 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 +80 -113
- 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 +152 -167
- package/dist/pages/builder/formatProgramDetail.js.map +1 -1
- package/dist/pages/builder/useBuildReferrals.js +95 -153
- package/dist/pages/builder/useBuildReferrals.js.map +1 -1
- package/dist/pages/builder/utils.js +84 -133
- package/dist/pages/builder/utils.js.map +1 -1
- package/dist/pages/review/DeleteReferralModal.js +45 -31
- package/dist/pages/review/DeleteReferralModal.js.map +1 -1
- package/dist/pages/review/DropdownMultiplesReferrals.js +75 -92
- package/dist/pages/review/DropdownMultiplesReferrals.js.map +1 -1
- package/dist/pages/review/ReferralsSent.js +200 -231
- package/dist/pages/review/ReferralsSent.js.map +1 -1
- package/dist/pages/review/Review.js +451 -544
- package/dist/pages/review/Review.js.map +1 -1
- package/dist/pages/review/__tests__/CallbackNotifications.test.js +46 -57
- package/dist/pages/review/__tests__/CallbackNotifications.test.js.map +1 -1
- package/dist/pages/review/__tests__/ReferralsSent.test.js +189 -333
- package/dist/pages/review/__tests__/ReferralsSent.test.js.map +1 -1
- package/dist/pages/review/__tests__/Review.test.js +380 -572
- 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 +123 -160
- package/dist/pages/supporting-info/SupportingInfo.js.map +1 -1
- package/dist/pages/supporting-info/__tests__/SupportingInfo.test.js +85 -146
- 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 +9 -7
- package/dist/reportWebVitals.js.map +1 -1
- package/dist/setupTests.js +8 -30
- 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 +14 -9
- package/dist/utils/canAccept.js.map +1 -1
- package/dist/utils/canChangeHoldReason.js +16 -11
- package/dist/utils/canChangeHoldReason.js.map +1 -1
- package/dist/utils/canHoldForReview.js +13 -8
- package/dist/utils/canHoldForReview.js.map +1 -1
- package/dist/utils/canReject.js +21 -14
- 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 +4 -2
- package/dist/utils/isReferralForwarded.js.map +1 -1
- package/dist/utils/referralToConsent.js +14 -19
- package/dist/utils/referralToConsent.js.map +1 -1
- package/dist/utils/useDebounce.js +7 -18
- 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 +63 -37
- package/.github/CODEOWNERS +0 -3
- package/.github/pull_request_template.md +0 -25
- package/.github/workflows/quality.yml +0 -44
- package/.github/workflows/semantic-release.yml +0 -26
- package/.nvmrc +0 -1
- package/babel.config.js +0 -11
- package/config-overrides.js +0 -8
|
@@ -1,9 +1,3 @@
|
|
|
1
|
-
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
|
|
2
|
-
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
3
|
-
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; } }
|
|
4
|
-
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; }
|
|
5
|
-
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
6
|
-
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
7
1
|
import React, { useEffect, useMemo, useState } from 'react';
|
|
8
2
|
import PropTypes from 'prop-types';
|
|
9
3
|
import { isNull, isEmpty, get } from 'lodash';
|
|
@@ -12,146 +6,148 @@ import { Combobox } from '@headlessui/react';
|
|
|
12
6
|
import { Icon } from '@unite-us/ui';
|
|
13
7
|
import { getPreferredProp } from '@unite-us/ui';
|
|
14
8
|
import '../pages/builder/ReferralBuilderForm.scss';
|
|
15
|
-
|
|
9
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
10
|
+
export const SearchableSelectField = props => {
|
|
16
11
|
var _getPreferredProp;
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
style =
|
|
12
|
+
const {
|
|
13
|
+
className,
|
|
14
|
+
clearable,
|
|
15
|
+
hideLabel,
|
|
16
|
+
label,
|
|
17
|
+
labelClassName,
|
|
18
|
+
listBoxUpOptionsClassName,
|
|
19
|
+
onChange,
|
|
20
|
+
options,
|
|
21
|
+
placeholder,
|
|
22
|
+
required,
|
|
23
|
+
truncateOptions,
|
|
24
|
+
onInputChange,
|
|
25
|
+
id,
|
|
26
|
+
style = {
|
|
32
27
|
container: {},
|
|
33
28
|
label: {},
|
|
34
29
|
input: {},
|
|
35
30
|
hint: {},
|
|
36
31
|
error: {}
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
}) || null;
|
|
50
|
-
var _useState3 = useState(''),
|
|
51
|
-
_useState4 = _slicedToArray(_useState3, 2),
|
|
52
|
-
query = _useState4[0],
|
|
53
|
-
setQuery = _useState4[1];
|
|
54
|
-
var filteredOptions = useMemo(function () {
|
|
55
|
-
return options.filter(function (option) {
|
|
56
|
-
return query === '' || option.label.toLowerCase().includes(query.toLowerCase());
|
|
57
|
-
});
|
|
58
|
-
}, [options, query]);
|
|
59
|
-
useEffect(function () {
|
|
32
|
+
}
|
|
33
|
+
} = props;
|
|
34
|
+
const [isFocused, setIsFocused] = useState(false);
|
|
35
|
+
const hasError = getPreferredProp(props, 'invalid') && getPreferredProp(props, 'touched');
|
|
36
|
+
const name = getPreferredProp(props, 'name');
|
|
37
|
+
const error = getPreferredProp(props, 'error');
|
|
38
|
+
const reduxOnBlur = getPreferredProp(props, 'onBlur');
|
|
39
|
+
const value = (_getPreferredProp = getPreferredProp(props, 'value')) === null || _getPreferredProp === void 0 ? void 0 : _getPreferredProp.value;
|
|
40
|
+
const selectedOption = options.find(option => option.value === value) || null;
|
|
41
|
+
const [query, setQuery] = useState('');
|
|
42
|
+
const filteredOptions = useMemo(() => options.filter(option => query === '' || option.label.toLowerCase().includes(query.toLowerCase())), [options, query]);
|
|
43
|
+
useEffect(() => {
|
|
60
44
|
if (isNull(selectedOption)) {
|
|
61
45
|
setQuery('');
|
|
62
46
|
}
|
|
63
47
|
}, [selectedOption, setQuery]);
|
|
64
|
-
|
|
48
|
+
const onClearClick = event => {
|
|
65
49
|
event.stopPropagation();
|
|
66
50
|
onChange({});
|
|
67
51
|
setIsFocused(false);
|
|
68
52
|
};
|
|
69
|
-
|
|
70
|
-
|
|
53
|
+
const onBlur = event => {
|
|
54
|
+
const value = get(event, 'target.value', '');
|
|
71
55
|
reduxOnBlur(value);
|
|
72
56
|
setIsFocused(false);
|
|
73
57
|
};
|
|
74
|
-
return /*#__PURE__*/
|
|
58
|
+
return /*#__PURE__*/_jsx(Combobox, {
|
|
75
59
|
value: value,
|
|
76
60
|
onChange: onChange,
|
|
77
61
|
onBlur: onBlur,
|
|
78
|
-
onFocus:
|
|
79
|
-
|
|
80
|
-
}
|
|
81
|
-
}, function () {
|
|
82
|
-
return /*#__PURE__*/React.createElement("div", {
|
|
62
|
+
onFocus: () => setIsFocused(true),
|
|
63
|
+
children: () => /*#__PURE__*/_jsxs("div", {
|
|
83
64
|
className: classNames(className, 'antialiased'),
|
|
84
|
-
"aria-live": "polite"
|
|
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
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
65
|
+
"aria-live": "polite",
|
|
66
|
+
children: [/*#__PURE__*/_jsx(Combobox.Label, {
|
|
67
|
+
className: classNames('block mb-1 leading-snug', 'font-extrabold font-medium-font normal-case', !hasError && 'text-13px text-blue', hasError && 'text-13px text-red', labelClassName, hideLabel && 'hidden', required && 'ui-form-field__label--required'),
|
|
68
|
+
children: label
|
|
69
|
+
}), /*#__PURE__*/_jsxs("div", {
|
|
70
|
+
className: "relative",
|
|
71
|
+
children: [/*#__PURE__*/_jsxs("div", {
|
|
72
|
+
className: classNames('relative box-border w-full bg-white cursor-default text-left', 'pl-3 py-2 border border-solid rounded-md shadow-sm focus:shadow-input-ring', !hasError && 'border-dark-border-blue ', !hasError && 'border-blue hover:border-action-blue focus:border-action-blue', hasError && 'border border-dark-border-red', hasError && 'border-red hover:border-action-red focus:border-action-red', isFocused && 'border-solid border-focus-blue', clearable && !isEmpty(selectedOption) ? 'pr-12' : 'pr-10'),
|
|
73
|
+
children: [/*#__PURE__*/_jsx("div", {
|
|
74
|
+
className: "absolute inset-y-1",
|
|
75
|
+
children: /*#__PURE__*/_jsx(Icon, {
|
|
76
|
+
"aria-hidden": true,
|
|
77
|
+
className: "text-gray",
|
|
78
|
+
icon: "IconSearch",
|
|
79
|
+
size: 16
|
|
80
|
+
})
|
|
81
|
+
}), /*#__PURE__*/_jsx(Combobox.Input, {
|
|
82
|
+
className: "h-5 w-full pl-6 leading-5 focus:outline-none",
|
|
83
|
+
displayValue: value,
|
|
84
|
+
onChange: evt => {
|
|
85
|
+
if (onInputChange) {
|
|
86
|
+
onInputChange(evt.target.value);
|
|
87
|
+
} else {
|
|
88
|
+
setQuery(evt.target.value);
|
|
89
|
+
}
|
|
90
|
+
},
|
|
91
|
+
value: value,
|
|
92
|
+
placeholder: placeholder,
|
|
93
|
+
id: id
|
|
94
|
+
}), clearable && (!isEmpty(selectedOption) || !isEmpty(value)) && /*#__PURE__*/_jsx("span", {
|
|
95
|
+
className: "absolute opacity-50 inset-y-0 inset-x-1 right-4 flex items-center pr-5 pl-1",
|
|
96
|
+
children: /*#__PURE__*/_jsx(Icon, {
|
|
97
|
+
className: "text-gray",
|
|
98
|
+
icon: "IconCross",
|
|
99
|
+
size: 10,
|
|
100
|
+
onClick: onClearClick,
|
|
101
|
+
ariaLabel: "Clear ".concat(label)
|
|
102
|
+
})
|
|
103
|
+
}), /*#__PURE__*/_jsx(Combobox.Button, {
|
|
104
|
+
className: classNames('absolute inset-y-0 right-0 flex items-center pr-4 focus:outline-none', clearable && selectedOption ? 'pl-0' : 'pl-2'),
|
|
105
|
+
children: /*#__PURE__*/_jsx(Icon, {
|
|
106
|
+
"aria-hidden": true,
|
|
107
|
+
className: "text-gray",
|
|
108
|
+
icon: "IconChevronDown",
|
|
109
|
+
size: 12
|
|
110
|
+
})
|
|
111
|
+
})]
|
|
112
|
+
}), /*#__PURE__*/_jsx(Combobox.Options, {
|
|
113
|
+
className: classNames('absolute z-dropdown box-content pl-0 py-1 z-10 mt-1 w-full max-h-80 overflow-auto', 'bg-white shadow-lg rounded-md text-base focus:outline-none', listBoxUpOptionsClassName),
|
|
114
|
+
children: filteredOptions.map(option => /*#__PURE__*/_jsx(Combobox.Option, {
|
|
115
|
+
className: _ref => {
|
|
116
|
+
let {
|
|
117
|
+
active
|
|
118
|
+
} = _ref;
|
|
119
|
+
return classNames('relative cursor-pointer py-2 pl-3 pr-9 select-none', active && 'bg-action-blue');
|
|
120
|
+
},
|
|
121
|
+
value: option,
|
|
122
|
+
children: _ref2 => {
|
|
123
|
+
let {
|
|
124
|
+
active,
|
|
125
|
+
selected
|
|
126
|
+
} = _ref2;
|
|
127
|
+
return /*#__PURE__*/_jsxs(_Fragment, {
|
|
128
|
+
children: [/*#__PURE__*/_jsx("span", {
|
|
129
|
+
className: classNames('block leading-4', truncateOptions && 'truncate', active ? 'text-white' : 'text-text-blue', selected ? 'font-semibold mr-8' : 'font-normal'),
|
|
130
|
+
children: option.label
|
|
131
|
+
}), selected && /*#__PURE__*/_jsx("span", {
|
|
132
|
+
className: "absolute inset-y-0 right-0 flex items-center pr-4",
|
|
133
|
+
children: /*#__PURE__*/_jsx(Icon, {
|
|
134
|
+
"aria-hidden": true,
|
|
135
|
+
className: classNames('h-5 w-5 fill-current', active ? 'text-white' : 'text-action-blue'),
|
|
136
|
+
icon: "IconCheck"
|
|
137
|
+
})
|
|
138
|
+
})]
|
|
139
|
+
});
|
|
140
|
+
}
|
|
141
|
+
}, option.value))
|
|
142
|
+
})]
|
|
143
|
+
}), hasError && error && /*#__PURE__*/_jsx("div", {
|
|
144
|
+
className: "ui-form-field__error visible mt-1.5",
|
|
145
|
+
style: style.error,
|
|
146
|
+
"data-test-visible": hasError,
|
|
147
|
+
"data-testid": "".concat(name || id || 'unnamed', "-error"),
|
|
148
|
+
children: error
|
|
149
|
+
})]
|
|
150
|
+
})
|
|
155
151
|
});
|
|
156
152
|
};
|
|
157
153
|
SearchableSelectField.propTypes = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SearchableField.js","names":["React","useEffect","useMemo","useState","PropTypes","isNull","isEmpty","get","classNames","Combobox","Icon","getPreferredProp","SearchableSelectField","props","_getPreferredProp","className","clearable","hideLabel","label","labelClassName","listBoxUpOptionsClassName","onChange","options","placeholder","required","truncateOptions","onInputChange","id","_props$style","style","container","input","hint","error","_useState","_useState2","_slicedToArray","isFocused","setIsFocused","hasError","name","reduxOnBlur","value","selectedOption","find","option","_useState3","_useState4","query","setQuery","filteredOptions","filter","toLowerCase","includes","onClearClick","event","stopPropagation","onBlur","createElement","onFocus","Label","icon","size","Input","displayValue","evt","target","onClick","ariaLabel","concat","Button","Options","map","Option","_ref","active","key","_ref2","selected","Fragment","propTypes","string","bool","func","isRequired","arrayOf","shape","oneOfType","object","array","number","node","defaultProps","undefined"],"sources":["../../src/components/SearchableField.js"],"sourcesContent":["import React, { useEffect, useMemo, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { isNull, isEmpty, get} from 'lodash';\nimport classNames from 'classnames';\nimport { Combobox } from '@headlessui/react';\nimport { Icon } from '@unite-us/ui';\nimport { getPreferredProp } from '@unite-us/ui';\nimport '../pages/builder/ReferralBuilderForm.scss';\n\nexport const SearchableSelectField = (props) => {\n const {\n className,\n clearable,\n hideLabel,\n label,\n labelClassName,\n listBoxUpOptionsClassName,\n onChange,\n options,\n placeholder,\n required,\n truncateOptions,\n onInputChange,\n id,\n style = {\n container: {},\n label: {},\n input: {},\n hint: {},\n error: {},\n },\n } = props\n const [isFocused, setIsFocused] = useState(false);\n const hasError = getPreferredProp(props, 'invalid') && getPreferredProp(props, 'touched');\n const name = getPreferredProp(props, 'name');\n const error = getPreferredProp(props, 'error');\n const reduxOnBlur = getPreferredProp(props, 'onBlur');\n const value = getPreferredProp(props, 'value')?.value;\n const selectedOption = options.find((option) => option.value === value) || null;\n const [query, setQuery] = useState('');\n const filteredOptions = useMemo(() => (\n options.filter((option) => (\n query === '' || option.label.toLowerCase().includes(query.toLowerCase())\n ))\n ), [options, query]);\n\n useEffect(() => {\n if (isNull(selectedOption)) {\n setQuery('');\n }\n }, [selectedOption, setQuery]);\n\n const onClearClick = (event) => {\n event.stopPropagation();\n onChange({});\n setIsFocused(false);\n };\n\n const onBlur = (event) => {\n const value = get(event, 'target.value', '');\n reduxOnBlur(value);\n setIsFocused(false);\n };\n\n return (\n <Combobox\n value={value}\n onChange={onChange}\n onBlur={onBlur}\n onFocus={() => setIsFocused(true)}\n >\n {() => (\n <div className={classNames(className, 'antialiased')} aria-live=\"polite\">\n <Combobox.Label className={classNames(\n 'block mb-1 leading-snug',\n 'font-extrabold font-medium-font normal-case',\n !hasError && 'text-13px text-blue',\n hasError && 'text-13px text-red',\n labelClassName,\n hideLabel && 'hidden',\n required && 'ui-form-field__label--required',\n )}\n >\n {label}\n </Combobox.Label>\n <div className=\"relative\">\n <div className={classNames(\n 'relative box-border w-full bg-white cursor-default text-left',\n 'pl-3 py-2 border border-solid rounded-md shadow-sm focus:shadow-input-ring',\n !hasError && 'border-dark-border-blue ',\n !hasError && 'border-blue hover:border-action-blue focus:border-action-blue',\n hasError && 'border border-dark-border-red',\n hasError && 'border-red hover:border-action-red focus:border-action-red',\n isFocused && 'border-solid border-focus-blue',\n clearable && !isEmpty(selectedOption) ? 'pr-12' : 'pr-10',\n )}\n >\n <div className=\"absolute inset-y-1\">\n <Icon\n aria-hidden\n className=\"text-gray\"\n icon=\"IconSearch\"\n size={16}\n />\n </div>\n <Combobox.Input\n className=\"h-5 w-full pl-6 leading-5 focus:outline-none\"\n displayValue={value}\n onChange={(evt) => {\n if (onInputChange) { onInputChange(evt.target.value); } else { setQuery(evt.target.value); }\n }}\n value={value}\n placeholder={placeholder}\n id={id}\n />\n {\n clearable && (!isEmpty(selectedOption) || !isEmpty(value)) && (\n <span\n className=\"absolute opacity-50 inset-y-0 inset-x-1 right-4 flex items-center pr-5 pl-1\"\n >\n <Icon\n className=\"text-gray\"\n icon=\"IconCross\"\n size={10}\n onClick={onClearClick}\n ariaLabel={`Clear ${label}`}\n />\n </span>\n )\n }\n <Combobox.Button\n className={classNames(\n 'absolute inset-y-0 right-0 flex items-center pr-4 focus:outline-none',\n clearable && selectedOption ? 'pl-0' : 'pl-2',\n )}\n >\n <Icon\n aria-hidden\n className=\"text-gray\"\n icon=\"IconChevronDown\"\n size={12}\n />\n </Combobox.Button>\n </div>\n <Combobox.Options\n className={classNames(\n 'absolute z-dropdown box-content pl-0 py-1 z-10 mt-1 w-full max-h-80 overflow-auto',\n 'bg-white shadow-lg rounded-md text-base focus:outline-none',\n listBoxUpOptionsClassName,\n )}\n >\n {filteredOptions.map((option) => (\n <Combobox.Option\n className={({ active }) => classNames(\n 'relative cursor-pointer py-2 pl-3 pr-9 select-none',\n active && 'bg-action-blue',\n )}\n key={option.value}\n value={option}\n >\n {({ active, selected }) => (\n <>\n <span\n className={classNames(\n 'block leading-4',\n truncateOptions && 'truncate',\n active ? 'text-white' : 'text-text-blue',\n selected ? 'font-semibold mr-8' : 'font-normal',\n )}\n >\n {option.label}\n </span>\n {selected && (\n <span className=\"absolute inset-y-0 right-0 flex items-center pr-4\">\n <Icon\n aria-hidden\n className={classNames(\n 'h-5 w-5 fill-current',\n active ? 'text-white' : 'text-action-blue',\n )}\n icon=\"IconCheck\"\n />\n </span>\n )}\n </>\n )}\n </Combobox.Option>\n ))}\n </Combobox.Options>\n </div>\n {hasError && error && (\n <div\n className=\"ui-form-field__error visible mt-1.5\"\n style={style.error}\n data-test-visible={hasError}\n data-testid={`${name || id || 'unnamed'}-error`}\n >\n {error}\n </div>\n )}\n </div>\n )}\n </Combobox>\n );\n};\n\nSearchableSelectField.propTypes = {\n className: PropTypes.string,\n clearable: PropTypes.bool,\n onChange: PropTypes.func.isRequired,\n options: PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string.isRequired,\n value: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n PropTypes.object,\n PropTypes.array,\n PropTypes.number,\n ]).isRequired,\n }),\n ),\n label: PropTypes.node,\n labelClassName: PropTypes.string,\n hideLabel: PropTypes.bool,\n listBoxUpOptionsClassName: PropTypes.string,\n placeholder: PropTypes.string,\n required: PropTypes.bool,\n truncateOptions: PropTypes.bool,\n onInputChange: PropTypes.func,\n id: PropTypes.string,\n style: PropTypes.shape({\n container: PropTypes.object,\n error: PropTypes.object,\n hint: PropTypes.object,\n input: PropTypes.object,\n label: PropTypes.object,\n }),\n};\n\nSearchableSelectField.defaultProps = {\n className: '',\n clearable: false,\n options: [],\n label: '',\n labelClassName: undefined,\n listBoxUpOptionsClassName: '',\n placeholder: '',\n required: false,\n truncateOptions: true,\n hideLabel: false,\n onInputChange: null,\n id: '',\n style: {\n container: {},\n label: {},\n input: {},\n hint: {},\n error: {},\n },\n};\n\nexport default SearchableSelectField;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"SearchableField.js","names":["React","useEffect","useMemo","useState","PropTypes","isNull","isEmpty","get","classNames","Combobox","Icon","getPreferredProp","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","SearchableSelectField","props","_getPreferredProp","className","clearable","hideLabel","label","labelClassName","listBoxUpOptionsClassName","onChange","options","placeholder","required","truncateOptions","onInputChange","id","style","container","input","hint","error","isFocused","setIsFocused","hasError","name","reduxOnBlur","value","selectedOption","find","option","query","setQuery","filteredOptions","filter","toLowerCase","includes","onClearClick","event","stopPropagation","onBlur","onFocus","children","Label","icon","size","Input","displayValue","evt","target","onClick","ariaLabel","concat","Button","Options","map","Option","_ref","active","_ref2","selected","propTypes","string","bool","func","isRequired","arrayOf","shape","oneOfType","object","array","number","node","defaultProps","undefined"],"sources":["../../src/components/SearchableField.js"],"sourcesContent":["import React, { useEffect, useMemo, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { isNull, isEmpty, get} from 'lodash';\nimport classNames from 'classnames';\nimport { Combobox } from '@headlessui/react';\nimport { Icon } from '@unite-us/ui';\nimport { getPreferredProp } from '@unite-us/ui';\nimport '../pages/builder/ReferralBuilderForm.scss';\n\nexport const SearchableSelectField = (props) => {\n const {\n className,\n clearable,\n hideLabel,\n label,\n labelClassName,\n listBoxUpOptionsClassName,\n onChange,\n options,\n placeholder,\n required,\n truncateOptions,\n onInputChange,\n id,\n style = {\n container: {},\n label: {},\n input: {},\n hint: {},\n error: {},\n },\n } = props\n const [isFocused, setIsFocused] = useState(false);\n const hasError = getPreferredProp(props, 'invalid') && getPreferredProp(props, 'touched');\n const name = getPreferredProp(props, 'name');\n const error = getPreferredProp(props, 'error');\n const reduxOnBlur = getPreferredProp(props, 'onBlur');\n const value = getPreferredProp(props, 'value')?.value;\n const selectedOption = options.find((option) => option.value === value) || null;\n const [query, setQuery] = useState('');\n const filteredOptions = useMemo(() => (\n options.filter((option) => (\n query === '' || option.label.toLowerCase().includes(query.toLowerCase())\n ))\n ), [options, query]);\n\n useEffect(() => {\n if (isNull(selectedOption)) {\n setQuery('');\n }\n }, [selectedOption, setQuery]);\n\n const onClearClick = (event) => {\n event.stopPropagation();\n onChange({});\n setIsFocused(false);\n };\n\n const onBlur = (event) => {\n const value = get(event, 'target.value', '');\n reduxOnBlur(value);\n setIsFocused(false);\n };\n\n return (\n <Combobox\n value={value}\n onChange={onChange}\n onBlur={onBlur}\n onFocus={() => setIsFocused(true)}\n >\n {() => (\n <div className={classNames(className, 'antialiased')} aria-live=\"polite\">\n <Combobox.Label className={classNames(\n 'block mb-1 leading-snug',\n 'font-extrabold font-medium-font normal-case',\n !hasError && 'text-13px text-blue',\n hasError && 'text-13px text-red',\n labelClassName,\n hideLabel && 'hidden',\n required && 'ui-form-field__label--required',\n )}\n >\n {label}\n </Combobox.Label>\n <div className=\"relative\">\n <div className={classNames(\n 'relative box-border w-full bg-white cursor-default text-left',\n 'pl-3 py-2 border border-solid rounded-md shadow-sm focus:shadow-input-ring',\n !hasError && 'border-dark-border-blue ',\n !hasError && 'border-blue hover:border-action-blue focus:border-action-blue',\n hasError && 'border border-dark-border-red',\n hasError && 'border-red hover:border-action-red focus:border-action-red',\n isFocused && 'border-solid border-focus-blue',\n clearable && !isEmpty(selectedOption) ? 'pr-12' : 'pr-10',\n )}\n >\n <div className=\"absolute inset-y-1\">\n <Icon\n aria-hidden\n className=\"text-gray\"\n icon=\"IconSearch\"\n size={16}\n />\n </div>\n <Combobox.Input\n className=\"h-5 w-full pl-6 leading-5 focus:outline-none\"\n displayValue={value}\n onChange={(evt) => {\n if (onInputChange) { onInputChange(evt.target.value); } else { setQuery(evt.target.value); }\n }}\n value={value}\n placeholder={placeholder}\n id={id}\n />\n {\n clearable && (!isEmpty(selectedOption) || !isEmpty(value)) && (\n <span\n className=\"absolute opacity-50 inset-y-0 inset-x-1 right-4 flex items-center pr-5 pl-1\"\n >\n <Icon\n className=\"text-gray\"\n icon=\"IconCross\"\n size={10}\n onClick={onClearClick}\n ariaLabel={`Clear ${label}`}\n />\n </span>\n )\n }\n <Combobox.Button\n className={classNames(\n 'absolute inset-y-0 right-0 flex items-center pr-4 focus:outline-none',\n clearable && selectedOption ? 'pl-0' : 'pl-2',\n )}\n >\n <Icon\n aria-hidden\n className=\"text-gray\"\n icon=\"IconChevronDown\"\n size={12}\n />\n </Combobox.Button>\n </div>\n <Combobox.Options\n className={classNames(\n 'absolute z-dropdown box-content pl-0 py-1 z-10 mt-1 w-full max-h-80 overflow-auto',\n 'bg-white shadow-lg rounded-md text-base focus:outline-none',\n listBoxUpOptionsClassName,\n )}\n >\n {filteredOptions.map((option) => (\n <Combobox.Option\n className={({ active }) => classNames(\n 'relative cursor-pointer py-2 pl-3 pr-9 select-none',\n active && 'bg-action-blue',\n )}\n key={option.value}\n value={option}\n >\n {({ active, selected }) => (\n <>\n <span\n className={classNames(\n 'block leading-4',\n truncateOptions && 'truncate',\n active ? 'text-white' : 'text-text-blue',\n selected ? 'font-semibold mr-8' : 'font-normal',\n )}\n >\n {option.label}\n </span>\n {selected && (\n <span className=\"absolute inset-y-0 right-0 flex items-center pr-4\">\n <Icon\n aria-hidden\n className={classNames(\n 'h-5 w-5 fill-current',\n active ? 'text-white' : 'text-action-blue',\n )}\n icon=\"IconCheck\"\n />\n </span>\n )}\n </>\n )}\n </Combobox.Option>\n ))}\n </Combobox.Options>\n </div>\n {hasError && error && (\n <div\n className=\"ui-form-field__error visible mt-1.5\"\n style={style.error}\n data-test-visible={hasError}\n data-testid={`${name || id || 'unnamed'}-error`}\n >\n {error}\n </div>\n )}\n </div>\n )}\n </Combobox>\n );\n};\n\nSearchableSelectField.propTypes = {\n className: PropTypes.string,\n clearable: PropTypes.bool,\n onChange: PropTypes.func.isRequired,\n options: PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string.isRequired,\n value: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n PropTypes.object,\n PropTypes.array,\n PropTypes.number,\n ]).isRequired,\n }),\n ),\n label: PropTypes.node,\n labelClassName: PropTypes.string,\n hideLabel: PropTypes.bool,\n listBoxUpOptionsClassName: PropTypes.string,\n placeholder: PropTypes.string,\n required: PropTypes.bool,\n truncateOptions: PropTypes.bool,\n onInputChange: PropTypes.func,\n id: PropTypes.string,\n style: PropTypes.shape({\n container: PropTypes.object,\n error: PropTypes.object,\n hint: PropTypes.object,\n input: PropTypes.object,\n label: PropTypes.object,\n }),\n};\n\nSearchableSelectField.defaultProps = {\n className: '',\n clearable: false,\n options: [],\n label: '',\n labelClassName: undefined,\n listBoxUpOptionsClassName: '',\n placeholder: '',\n required: false,\n truncateOptions: true,\n hideLabel: false,\n onInputChange: null,\n id: '',\n style: {\n container: {},\n label: {},\n input: {},\n hint: {},\n error: {},\n },\n};\n\nexport default SearchableSelectField;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,21 +1,30 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { Icon } from '@unite-us/ui';
|
|
3
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
3
4
|
export default function StepHeader(props) {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
5
|
+
const {
|
|
6
|
+
header,
|
|
7
|
+
icon,
|
|
8
|
+
children
|
|
9
|
+
} = props;
|
|
10
|
+
return /*#__PURE__*/_jsx(_Fragment, {
|
|
11
|
+
children: /*#__PURE__*/_jsxs("div", {
|
|
12
|
+
className: "flex justify-center responsive-max-width flex-col mx-auto mb-8",
|
|
13
|
+
children: [/*#__PURE__*/_jsxs("h1", {
|
|
14
|
+
className: "text-3xl my-5 text-center font-bold",
|
|
15
|
+
children: [icon && /*#__PURE__*/_jsx(Icon, {
|
|
16
|
+
icon: "V2Referrall",
|
|
17
|
+
color: "#182a44",
|
|
18
|
+
className: "w-12 h-12 pr-4"
|
|
19
|
+
}), header]
|
|
20
|
+
}), /*#__PURE__*/_jsx("div", {
|
|
21
|
+
className: "grid place-items-center",
|
|
22
|
+
children: /*#__PURE__*/_jsx("div", {
|
|
23
|
+
className: "w-1/2 text-center",
|
|
24
|
+
children: children
|
|
25
|
+
})
|
|
26
|
+
})]
|
|
27
|
+
})
|
|
28
|
+
});
|
|
20
29
|
}
|
|
21
30
|
//# sourceMappingURL=StepHeader.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StepHeader.js","names":["React","Icon","
|
|
1
|
+
{"version":3,"file":"StepHeader.js","names":["React","Icon","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","StepHeader","props","header","icon","children","className","color"],"sources":["../../src/components/StepHeader.js"],"sourcesContent":["import React from 'react';\nimport { Icon } from '@unite-us/ui';\n\nexport default function StepHeader(props) {\n const { header, icon, children } = props;\n\n return (\n <>\n <div className=\"flex justify-center responsive-max-width flex-col mx-auto mb-8\">\n <h1 className='text-3xl my-5 text-center font-bold'>\n {icon && <Icon icon=\"V2Referrall\" color=\"#182a44\" className=\"w-12 h-12 pr-4\" />}\n {header}\n </h1>\n <div className='grid place-items-center'>\n <div className='w-1/2 text-center'>\n {children}\n </div>\n </div>\n </div>\n </>\n )\n}\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,IAAI,QAAQ,cAAc;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA,EAAAC,QAAA,IAAAC,SAAA;AAEpC,eAAe,SAASC,UAAUA,CAACC,KAAK,EAAE;EACxC,MAAM;IAAEC,MAAM;IAAEC,IAAI;IAAEC;EAAS,CAAC,GAAGH,KAAK;EAExC,oBACEN,IAAA,CAAAI,SAAA;IAAAK,QAAA,eACEP,KAAA;MAAKQ,SAAS,EAAC,gEAAgE;MAAAD,QAAA,gBAC7EP,KAAA;QAAIQ,SAAS,EAAC,qCAAqC;QAAAD,QAAA,GAChDD,IAAI,iBAAIR,IAAA,CAACF,IAAI;UAACU,IAAI,EAAC,aAAa;UAACG,KAAK,EAAC,SAAS;UAACD,SAAS,EAAC;QAAgB,CAAE,CAAC,EAC9EH,MAAM;MAAA,CACL,CAAC,eACLP,IAAA;QAAKU,SAAS,EAAC,yBAAyB;QAAAD,QAAA,eACtCT,IAAA;UAAKU,SAAS,EAAC,mBAAmB;UAAAD,QAAA,EAC/BA;QAAQ,CACN;MAAC,CACH,CAAC;IAAA,CACH;EAAC,CACN,CAAC;AAEP","ignoreList":[]}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { isFunction, isBoolean } from "lodash";
|
|
2
2
|
import React, { Fragment } from "react";
|
|
3
3
|
import { Icon } from "@unite-us/ui";
|
|
4
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
4
5
|
function getColorClass(active, completed) {
|
|
5
|
-
|
|
6
|
+
let iconBgColorClass = "bg-dark-grey",
|
|
6
7
|
textColorClass = "text-dark-grey";
|
|
7
8
|
if (active) {
|
|
8
9
|
iconBgColorClass = "bg-dark-blue";
|
|
@@ -12,67 +13,70 @@ function getColorClass(active, completed) {
|
|
|
12
13
|
textColorClass = "text-action-blue";
|
|
13
14
|
}
|
|
14
15
|
return {
|
|
15
|
-
iconBgColorClass
|
|
16
|
-
textColorClass
|
|
16
|
+
iconBgColorClass,
|
|
17
|
+
textColorClass
|
|
17
18
|
};
|
|
18
19
|
}
|
|
19
20
|
function Step(_ref) {
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
21
|
+
let {
|
|
22
|
+
active,
|
|
23
|
+
completed,
|
|
24
|
+
disabled,
|
|
25
|
+
icon,
|
|
26
|
+
label,
|
|
27
|
+
onClick
|
|
28
|
+
} = _ref;
|
|
29
|
+
const {
|
|
30
|
+
iconBgColorClass,
|
|
31
|
+
textColorClass
|
|
32
|
+
} = getColorClass(active, completed);
|
|
33
|
+
return /*#__PURE__*/_jsxs("button", {
|
|
30
34
|
className: "flex items-center p-4 ".concat(disabled ? "cursor-default" : ""),
|
|
31
|
-
onClick:
|
|
35
|
+
onClick: e => {
|
|
32
36
|
if (!disabled) {
|
|
33
|
-
|
|
37
|
+
onClick(e);
|
|
34
38
|
}
|
|
35
39
|
},
|
|
36
40
|
"aria-label": "Step ".concat(icon, ": ").concat(label),
|
|
37
|
-
"aria-disabled": disabled
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
41
|
+
"aria-disabled": disabled,
|
|
42
|
+
children: [completed ? /*#__PURE__*/_jsx(Icon, {
|
|
43
|
+
icon: "V2CheckCircle",
|
|
44
|
+
color: "#4467AB",
|
|
45
|
+
size: 24
|
|
46
|
+
}) : /*#__PURE__*/_jsx("div", {
|
|
47
|
+
className: "text-white text-base flex items-center justify-center font-black w-6 h-6 rounded-full ".concat(iconBgColorClass),
|
|
48
|
+
children: icon
|
|
49
|
+
}), /*#__PURE__*/_jsx("span", {
|
|
50
|
+
className: "font-black whitespace-no-wrap ml-2 text-base ".concat(textColorClass),
|
|
51
|
+
children: label
|
|
52
|
+
})]
|
|
53
|
+
});
|
|
47
54
|
}
|
|
48
55
|
export default function Stepper(_ref2) {
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
56
|
+
let {
|
|
57
|
+
steps,
|
|
58
|
+
className
|
|
59
|
+
} = _ref2;
|
|
60
|
+
const currentStep = steps.findIndex(s => isFunction(s.isActive) && s.isActive());
|
|
61
|
+
return /*#__PURE__*/_jsx("div", {
|
|
62
|
+
className: "".concat(className, " flex justify-around items-center"),
|
|
63
|
+
children: steps.map((step, index) => {
|
|
64
|
+
const completed = isStepCompleted(steps[index], currentStep, index);
|
|
65
|
+
const disabled = isStepDisabled(steps[index], currentStep);
|
|
66
|
+
return /*#__PURE__*/_jsxs(Fragment, {
|
|
67
|
+
children: [/*#__PURE__*/_jsx(Step, {
|
|
68
|
+
active: index === currentStep,
|
|
69
|
+
completed: completed,
|
|
70
|
+
disabled: disabled || !completed,
|
|
71
|
+
icon: index + 1,
|
|
72
|
+
label: step.label,
|
|
73
|
+
onClick: () => step.onStepClick()
|
|
74
|
+
}, "step-".concat(index)), index < steps.length - 1 && /*#__PURE__*/_jsx("div", {
|
|
75
|
+
className: "h-px w-full bg-grey"
|
|
76
|
+
}, "divider-".concat(index))]
|
|
77
|
+
}, index);
|
|
78
|
+
})
|
|
53
79
|
});
|
|
54
|
-
return /*#__PURE__*/React.createElement("div", {
|
|
55
|
-
className: "".concat(className, " flex justify-around items-center")
|
|
56
|
-
}, steps.map(function (step, index) {
|
|
57
|
-
var completed = isStepCompleted(steps[index], currentStep, index);
|
|
58
|
-
var disabled = isStepDisabled(steps[index], currentStep);
|
|
59
|
-
return /*#__PURE__*/React.createElement(Fragment, {
|
|
60
|
-
key: index
|
|
61
|
-
}, /*#__PURE__*/React.createElement(Step, {
|
|
62
|
-
key: "step-".concat(index),
|
|
63
|
-
active: index === currentStep,
|
|
64
|
-
completed: completed,
|
|
65
|
-
disabled: disabled || !completed,
|
|
66
|
-
icon: index + 1,
|
|
67
|
-
label: step.label,
|
|
68
|
-
onClick: function onClick() {
|
|
69
|
-
return step.onStepClick();
|
|
70
|
-
}
|
|
71
|
-
}), index < steps.length - 1 && /*#__PURE__*/React.createElement("div", {
|
|
72
|
-
key: "divider-".concat(index),
|
|
73
|
-
className: "h-px w-full bg-grey"
|
|
74
|
-
}));
|
|
75
|
-
}));
|
|
76
80
|
}
|
|
77
81
|
function isStepCompleted(step, currentStep, index) {
|
|
78
82
|
if (isFunction(step.stepCompleted)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Stepper.js","names":["isFunction","isBoolean","React","Fragment","Icon","getColorClass","active","completed","iconBgColorClass","textColorClass","Step","_ref","disabled","icon","label","onClick","
|
|
1
|
+
{"version":3,"file":"Stepper.js","names":["isFunction","isBoolean","React","Fragment","Icon","jsx","_jsx","jsxs","_jsxs","getColorClass","active","completed","iconBgColorClass","textColorClass","Step","_ref","disabled","icon","label","onClick","className","concat","e","children","color","size","Stepper","_ref2","steps","currentStep","findIndex","s","isActive","map","step","index","isStepCompleted","isStepDisabled","onStepClick","length","stepCompleted","stepDisabled"],"sources":["../../src/components/Stepper.js"],"sourcesContent":["import { isFunction, isBoolean } from \"lodash\";\nimport React, { Fragment } from \"react\";\nimport { Icon } from \"@unite-us/ui\";\n\nfunction getColorClass(active, completed) {\n let iconBgColorClass = \"bg-dark-grey\", textColorClass = \"text-dark-grey\";\n if (active) {\n iconBgColorClass = \"bg-dark-blue\";\n textColorClass = \"text-dark-blue\";\n } else if (completed) {\n iconBgColorClass = \"bg-action-blue\";\n textColorClass = \"text-action-blue\";\n }\n\n return { iconBgColorClass, textColorClass };\n}\n\nfunction Step({ active, completed, disabled, icon, label, onClick }) {\n const { iconBgColorClass, textColorClass } = getColorClass(active, completed);\n\n return (\n <button\n className={`flex items-center p-4 ${disabled ? \"cursor-default\" : \"\"}`}\n onClick={(e) => {\n if (!disabled) {\n onClick(e);\n }\n }}\n aria-label={`Step ${icon}: ${label}`}\n aria-disabled={disabled}\n >\n {completed ? (\n <Icon icon=\"V2CheckCircle\" color=\"#4467AB\" size={24} />\n ) : (\n <div\n className={`text-white text-base flex items-center justify-center font-black w-6 h-6 rounded-full ${iconBgColorClass}`}\n >\n {icon}\n </div>\n )}\n\n <span className={`font-black whitespace-no-wrap ml-2 text-base ${textColorClass}`}>{label}</span>\n </button>\n );\n}\n\nexport default function Stepper({ steps, className }) {\n const currentStep = steps.findIndex((s) => isFunction(s.isActive) && s.isActive());\n\n return (\n <div className={`${className} flex justify-around items-center`}>\n {steps.map((step, index) => {\n const completed = isStepCompleted(steps[index], currentStep, index);\n const disabled = isStepDisabled(steps[index], currentStep);\n\n return (\n <Fragment key={index}>\n <Step\n key={`step-${index}`}\n active={index === currentStep}\n completed={completed}\n disabled={disabled || !completed}\n icon={index + 1}\n label={step.label}\n onClick={() => step.onStepClick()}\n />\n {index < steps.length - 1 && (\n <div\n key={`divider-${index}`}\n className=\"h-px w-full bg-grey\"\n />\n )}\n </Fragment>\n );\n })}\n </div>\n );\n}\n\nfunction isStepCompleted(step, currentStep, index) {\n if (isFunction(step.stepCompleted)) {\n return step.stepCompleted(currentStep);\n }\n if (isBoolean(step.stepCompleted)) {\n return step.stepCompleted;\n }\n return currentStep > index;\n}\n\nfunction isStepDisabled(step, currentStep) {\n if (isFunction(step.stepDisabled)) {\n return step.stepDisabled(currentStep);\n }\n if (isBoolean(step.stepDisabled)) {\n return step.stepDisabled;\n }\n return false;\n}\n"],"mappings":"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","ignoreList":[]}
|