@unite-us/app-create-referral 0.4.3 → 0.5.0

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.
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+
3
+ var _Object$defineProperty = require("@babel/runtime-corejs3/core-js-stable/object/define-property");
4
+ var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
5
+ _Object$defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = void 0;
9
+ var _react = _interopRequireDefault(require("react"));
10
+ var _propTypes = _interopRequireDefault(require("prop-types"));
11
+ var _ui = require("@unite-us/ui");
12
+ var ErrorMessage = function ErrorMessage(_ref) {
13
+ var children = _ref.children;
14
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement(_ui.Icon, {
15
+ className: "fill-current text-red mr-1",
16
+ icon: "IconExclamationCircle",
17
+ size: 16
18
+ })), /*#__PURE__*/_react.default.createElement("p", {
19
+ className: "text-red text-13px"
20
+ }, children));
21
+ };
22
+ ErrorMessage.propTypes = {
23
+ children: _propTypes.default.node.isRequired
24
+ };
25
+ var _default = exports.default = ErrorMessage;
26
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["_react","_interopRequireDefault","require","_propTypes","_ui","ErrorMessage","_ref","children","default","createElement","Fragment","Icon","className","icon","size","propTypes","PropTypes","node","isRequired","_default","exports"],"sources":["../../../../src/common/form/ErrorMessage/index.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Icon } from '@unite-us/ui';\n\nconst ErrorMessage = ({ children }) => (\n <>\n <div>\n <Icon \n className=\"fill-current text-red mr-1\"\n icon=\"IconExclamationCircle\"\n size={16}\n />\n </div>\n <p className=\"text-red text-13px\">\n {children}\n </p>\n </>\n);\n \n \nErrorMessage.propTypes = {\n children: PropTypes.node.isRequired,\n};\n\nexport default ErrorMessage;\n"],"mappings":";;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,GAAA,GAAAF,OAAA;AAEA,IAAMG,YAAY,GAAG,SAAfA,YAAYA,CAAAC,IAAA;EAAA,IAAMC,QAAQ,GAAAD,IAAA,CAARC,QAAQ;EAAA,oBAC9BP,MAAA,CAAAQ,OAAA,CAAAC,aAAA,CAAAT,MAAA,CAAAQ,OAAA,CAAAE,QAAA,qBACEV,MAAA,CAAAQ,OAAA,CAAAC,aAAA,2BACET,MAAA,CAAAQ,OAAA,CAAAC,aAAA,CAACL,GAAA,CAAAO,IAAI;IACDC,SAAS,EAAC,4BAA4B;IACtCC,IAAI,EAAC,uBAAuB;IAC5BC,IAAI,EAAE;EAAG,CACZ,CACE,CAAC,eACNd,MAAA,CAAAQ,OAAA,CAAAC,aAAA;IAAGG,SAAS,EAAC;EAAoB,GAC/BL,QACC,CACH,CAAC;AAAA,CACJ;AAGDF,YAAY,CAACU,SAAS,GAAG;EACvBR,QAAQ,EAAES,kBAAS,CAACC,IAAI,CAACC;AAC3B,CAAC;AAAC,IAAAC,QAAA,GAAAC,OAAA,CAAAZ,OAAA,GAEaH,YAAY"}
@@ -9,17 +9,21 @@ _Object$defineProperty(exports, "__esModule", {
9
9
  value: true
10
10
  });
11
11
  exports.default = void 0;
12
+ var _keys = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/keys"));
13
+ var _includes = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/includes"));
12
14
  var _react = _interopRequireWildcard(require("react"));
13
15
  var _propTypes = _interopRequireDefault(require("prop-types"));
14
16
  var _moment = _interopRequireDefault(require("moment"));
15
17
  var _lodash = require("lodash");
16
18
  var _pluralize = _interopRequireDefault(require("pluralize"));
19
+ var _reactFinalForm = require("react-final-form");
17
20
  var _messageConstants = require("./messageConstants");
18
21
  var _formatShortDate = _interopRequireDefault(require("./formatShortDate"));
19
22
  var _LineItem = _interopRequireDefault(require("../../pages/builder/LineItem"));
20
23
  var _usePerson = _interopRequireDefault(require("../../hooks/usePerson"));
21
24
  var _ApiHooks = require("../../api/ApiHooks");
22
25
  var _DollarAmount = _interopRequireDefault(require("../DollarAmount"));
26
+ var _ErrorMessage = _interopRequireDefault(require("../../common/form/ErrorMessage"));
23
27
  function _getRequireWildcardCache(e) { if ("function" != typeof _WeakMap) return null; var r = new _WeakMap(), t = new _WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
24
28
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = _Object$defineProperty && _Object$getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? _Object$getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? _Object$defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
25
29
  function InformationText(_ref) {
@@ -34,7 +38,7 @@ function InformationText(_ref) {
34
38
  }, value);
35
39
  }
36
40
  InformationText.propTypes = {
37
- name: _propTypes.default.string.isRequired,
41
+ name: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.element]).isRequired,
38
42
  value: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.node, _propTypes.default.number]).isRequired,
39
43
  isLoaded: _propTypes.default.bool.isRequired
40
44
  };
@@ -54,50 +58,94 @@ Spend.propTypes = {
54
58
  isCostBased: _propTypes.default.bool.isRequired
55
59
  };
56
60
  function CapsInfo(_ref3) {
57
- var _formValues$paymentAu, _formValues$paymentAu2;
61
+ var _formValues$paymentAu, _formValues$paymentAu2, _formValues$paymentAu3, _formState$errors;
58
62
  var formValues = _ref3.formValues,
59
63
  feeScheduleProgram = _ref3.feeScheduleProgram,
60
64
  isCostBased = _ref3.isCostBased,
61
- hasDatesSelected = _ref3.hasDatesSelected,
62
- assignErrors = _ref3.assignErrors;
65
+ assignReferralErrors = _ref3.assignReferralErrors;
66
+ var serviceStart = formValues === null || formValues === void 0 || (_formValues$paymentAu = formValues.paymentAuthForm) === null || _formValues$paymentAu === void 0 ? void 0 : _formValues$paymentAu.service_start;
67
+ var requestedStartDate = serviceStart && _moment.default.unix(serviceStart).toISOString();
68
+ var serviceEnd = formValues === null || formValues === void 0 || (_formValues$paymentAu2 = formValues.paymentAuthForm) === null || _formValues$paymentAu2 === void 0 ? void 0 : _formValues$paymentAu2.service_end;
69
+ var requestedEndDate = serviceEnd && _moment.default.unix(serviceEnd).toISOString();
63
70
  var person = (0, _usePerson.default)();
64
71
  var _useFind = (0, _ApiHooks.useFind)('authorized_spend', {
65
72
  person: person === null || person === void 0 ? void 0 : person.id,
66
73
  fee_schedule_program: feeScheduleProgram === null || feeScheduleProgram === void 0 ? void 0 : feeScheduleProgram.id,
67
- requested_starts_at: _moment.default.unix(formValues === null || formValues === void 0 || (_formValues$paymentAu = formValues.paymentAuthForm) === null || _formValues$paymentAu === void 0 ? void 0 : _formValues$paymentAu.service_start).toISOString(),
68
- requested_ends_at: _moment.default.unix(formValues === null || formValues === void 0 || (_formValues$paymentAu2 = formValues.paymentAuthForm) === null || _formValues$paymentAu2 === void 0 ? void 0 : _formValues$paymentAu2.service_end).toISOString()
74
+ requested_starts_at: requestedStartDate,
75
+ requested_ends_at: requestedEndDate
69
76
  }, {
70
77
  queryConfig: {
71
- enabled: !!(hasDatesSelected && person !== null && person !== void 0 && person.id && feeScheduleProgram !== null && feeScheduleProgram !== void 0 && feeScheduleProgram.id),
78
+ enabled: !!(person !== null && person !== void 0 && person.id && feeScheduleProgram !== null && feeScheduleProgram !== void 0 && feeScheduleProgram.id),
72
79
  placeholderData: undefined
73
80
  }
74
81
  }),
75
82
  authorizedSpendsData = _useFind.data,
76
83
  isFetching = _useFind.isFetching,
77
84
  isLoading = _useFind.isLoading;
85
+ var _useFind2 = (0, _ApiHooks.useFind)('insurance', {
86
+ person: person === null || person === void 0 ? void 0 : person.id,
87
+ state: 'active',
88
+ 'plan.fee_schedules': feeScheduleProgram === null || feeScheduleProgram === void 0 ? void 0 : feeScheduleProgram.fee_schedule.id,
89
+ enrolled_before: requestedStartDate,
90
+ expired_after: requestedEndDate
91
+ }, {
92
+ queryClient: {
93
+ enabled: !!(feeScheduleProgram !== null && feeScheduleProgram !== void 0 && feeScheduleProgram.id),
94
+ placeholderData: undefined
95
+ }
96
+ }),
97
+ insurancesData = _useFind2.data,
98
+ isFindInsuranceSuccess = _useFind2.isSuccess,
99
+ isFindInsuranceLoading = _useFind2.isLoading;
100
+ var isInsuranceLoaded = isFindInsuranceSuccess || !isFindInsuranceLoading;
101
+ var insurances = (0, _lodash.get)(insurancesData, 'data.data', []);
102
+ var invalidInsuranceAuthorizationDates = !(insurances !== null && insurances !== void 0 && insurances.length);
78
103
  var isLoaded = !isFetching && !isLoading;
79
104
  var authorizationSpends = (0, _lodash.get)(authorizedSpendsData, 'data.data', []); //todo use this on the modal
80
105
  var totalApprovedSpend = (0, _lodash.get)(authorizedSpendsData, 'data.meta.total_approved_spend', 0);
81
106
  var totalRequestedSpend = (0, _lodash.get)(authorizedSpendsData, 'data.meta.total_requested_spend', 0);
82
107
  var authorizationSpendsErrors = (0, _lodash.get)(authorizedSpendsData, 'data.meta.errors', []);
83
108
  var availableCap = (0, _lodash.get)(authorizedSpendsData, 'data.meta.available_cap', 0);
109
+ var totalCap = (0, _lodash.get)(authorizedSpendsData, 'data.meta.total_cap', 0);
84
110
  var showClientUtilizationError = authorizationSpendsErrors.some(function (e) {
85
111
  return e.title === _messageConstants.UTILIZATION_ERROR;
86
112
  });
87
- var showPassthroughDatesError = hasDatesSelected && authorizationSpendsErrors.some(function (e) {
113
+ var showPassthroughDatesError = authorizationSpendsErrors.some(function (e) {
88
114
  return e.title === _messageConstants.DATES_ERROR;
89
115
  });
90
- (0, _react.useEffect)(function () {
91
- assignErrors([showClientUtilizationError, showPassthroughDatesError]);
92
- }, [showClientUtilizationError, showPassthroughDatesError, assignErrors]);
93
116
  var startDate = (0, _moment.default)(authorizedSpendsData === null || authorizedSpendsData === void 0 ? void 0 : authorizedSpendsData.cap_starts_at).utc().startOf('day');
94
- var hasCap = feeScheduleProgram === null || feeScheduleProgram === void 0 ? void 0 : feeScheduleProgram.hasCap;
117
+ var hasCap = feeScheduleProgram === null || feeScheduleProgram === void 0 ? void 0 : feeScheduleProgram.has_cap;
95
118
  var formattedCap = hasCap ? /*#__PURE__*/_react.default.createElement(Spend, {
96
- amount: authorizedSpendsData === null || authorizedSpendsData === void 0 ? void 0 : authorizedSpendsData.total_cap,
119
+ amount: totalCap,
97
120
  unit: feeScheduleProgram === null || feeScheduleProgram === void 0 ? void 0 : feeScheduleProgram.unit,
98
121
  isCostBased: isCostBased
99
122
  }) : 'No Cap';
100
123
  var formattedCapPeriod = (feeScheduleProgram === null || feeScheduleProgram === void 0 ? void 0 : feeScheduleProgram.cap_reset_cadence) === 'lifetime' ? 'Lifetime' : "".concat((0, _formatShortDate.default)(startDate));
124
+ var amountRequested = formValues === null || formValues === void 0 || (_formValues$paymentAu3 = formValues.paymentAuthForm) === null || _formValues$paymentAu3 === void 0 ? void 0 : _formValues$paymentAu3.amount_requested;
125
+ var isAmountExceeded = (0, _lodash.isNumber)(amountRequested) && hasCap && amountRequested > availableCap;
126
+ var formState = (0, _reactFinalForm.useFormState)();
127
+ var authFormErrors = (_formState$errors = formState.errors) === null || _formState$errors === void 0 ? void 0 : _formState$errors.paymentAuthForm;
128
+ (0, _react.useEffect)(function () {
129
+ if (isFindInsuranceSuccess) {
130
+ var errors = [];
131
+ if (showClientUtilizationError) errors.push('service');
132
+ if (showPassthroughDatesError || invalidInsuranceAuthorizationDates) errors.push('paymentAuthForm.service_end');
133
+ if (isAmountExceeded) errors.push('amount_requested');
134
+ if (authFormErrors) {
135
+ (0, _keys.default)(authFormErrors).forEach(function (key) {
136
+ var _context;
137
+ if (key === 'amount_requested' && (0, _includes.default)(_context = authFormErrors[key]).call(_context, 'Required')) {
138
+ return;
139
+ }
140
+ errors.push("paymentAuthForm.".concat(key));
141
+ });
142
+ }
143
+ ;
144
+ assignReferralErrors(errors);
145
+ }
146
+ // NOTE: disable exhaustive-deps because we don't want to run this effect when the authFormErrors values change
147
+ // eslint-disable-next-line react-hooks/exhaustive-deps
148
+ }, [isFindInsuranceSuccess, assignReferralErrors, showClientUtilizationError, showPassthroughDatesError, isAmountExceeded, invalidInsuranceAuthorizationDates, requestedStartDate, requestedEndDate, amountRequested]);
101
149
  return /*#__PURE__*/_react.default.createElement("div", {
102
150
  className: "mb-12 grid grid-cols-2 gap-2",
103
151
  "data-testid": "caps-info-section"
@@ -137,14 +185,23 @@ function CapsInfo(_ref3) {
137
185
  unit: feeScheduleProgram === null || feeScheduleProgram === void 0 ? void 0 : feeScheduleProgram.unit
138
186
  }),
139
187
  isLoaded: isLoaded
140
- }), /*#__PURE__*/_react.default.createElement("div", null, "View Details"));
188
+ }), /*#__PURE__*/_react.default.createElement("div", {
189
+ className: "mt-6"
190
+ }, "View Details"), isAmountExceeded && /*#__PURE__*/_react.default.createElement("div", {
191
+ className: "col-span-2 px-0 flex space-x-2 mt-6 mb-0"
192
+ }, /*#__PURE__*/_react.default.createElement(_ErrorMessage.default, null, "The amount requested is more than the amount available for authorization. Please adjust the amount requested, or search for another program to meet the client's needs.")), showClientUtilizationError && /*#__PURE__*/_react.default.createElement("div", {
193
+ className: "col-span-2 px-0 flex space-x-2 mt-6 mb-0"
194
+ }, /*#__PURE__*/_react.default.createElement(_ErrorMessage.default, null, "The client is already receiving this service through either a passthrough or non-passthrough service within this program group.")), showPassthroughDatesError && /*#__PURE__*/_react.default.createElement("div", {
195
+ className: "col-span-2 px-0 flex space-x-2 mt-6 mb-0"
196
+ }, /*#__PURE__*/_react.default.createElement(_ErrorMessage.default, null, "Clients can only receive services from this program for 30 days or until their social coverage ends, whichever comes first.")), isInsuranceLoaded && isLoaded && invalidInsuranceAuthorizationDates && /*#__PURE__*/_react.default.createElement("div", {
197
+ className: "col-span-2 px-0 flex space-x-2 mt-6 mb-0"
198
+ }, /*#__PURE__*/_react.default.createElement(_ErrorMessage.default, null, "The service delivery dates requested fall outside the client's enrollment dates for all enrolled plans. Please edit the service delivery dates.")));
141
199
  }
142
200
  CapsInfo.propTypes = {
143
201
  formValues: _propTypes.default.object.isRequired,
144
202
  feeScheduleProgram: _propTypes.default.object.isRequired,
145
203
  isCostBased: _propTypes.default.bool.isRequired,
146
- hasDatesSelected: _propTypes.default.bool.isRequired,
147
- assignErrors: _propTypes.default.func.isRequired
204
+ assignReferralErrors: _propTypes.default.func.isRequired
148
205
  };
149
206
  var _default = exports.default = CapsInfo;
150
207
  //# sourceMappingURL=CapsInfo.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CapsInfo.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_moment","_lodash","_pluralize","_messageConstants","_formatShortDate","_LineItem","_usePerson","_ApiHooks","_DollarAmount","_getRequireWildcardCache","e","_WeakMap","r","t","__esModule","_typeof","default","has","get","n","__proto__","a","_Object$defineProperty","_Object$getOwnPropertyDescriptor","u","Object","prototype","hasOwnProperty","call","i","set","InformationText","_ref","name","value","isLoaded","createElement","field","fieldClassName","valueClassName","propTypes","PropTypes","string","isRequired","oneOfType","node","number","bool","Spend","_ref2","amount","unit","isCostBased","convertCents","pluralize","CapsInfo","_ref3","_formValues$paymentAu","_formValues$paymentAu2","formValues","feeScheduleProgram","hasDatesSelected","assignErrors","person","usePerson","_useFind","useFind","id","fee_schedule_program","requested_starts_at","moment","unix","paymentAuthForm","service_start","toISOString","requested_ends_at","service_end","queryConfig","enabled","placeholderData","undefined","authorizedSpendsData","data","isFetching","isLoading","authorizationSpends","totalApprovedSpend","totalRequestedSpend","authorizationSpendsErrors","availableCap","showClientUtilizationError","some","title","UTILIZATION_ERROR","showPassthroughDatesError","DATES_ERROR","useEffect","startDate","cap_starts_at","utc","startOf","hasCap","formattedCap","total_cap","formattedCapPeriod","cap_reset_cadence","concat","formatShortDate","className","Fragment","isValid","object","func","_default","exports"],"sources":["../../../src/components/service_authorization/CapsInfo.jsx"],"sourcesContent":["import React, { useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport moment from 'moment';\nimport { get } from 'lodash';\nimport pluralize from 'pluralize';\nimport { UTILIZATION_ERROR, DATES_ERROR } from './messageConstants';\nimport formatShortDate from './formatShortDate';\nimport LineItem from '../../pages/builder/LineItem';\nimport usePerson from '../../hooks/usePerson';\nimport { useFind } from '../../api/ApiHooks';\nimport DollarAmount from '../DollarAmount';\nfunction InformationText({\n name, value, isLoaded\n}) {\n return (\n <LineItem\n field={name}\n fieldClassName=\"col-span-1 p-0 text-dark-grey\"\n valueClassName=\"flex text-dark-blue\"\n isLoaded={isLoaded}\n >\n {value}\n </LineItem>\n );\n}\n\nInformationText.propTypes = {\n name: PropTypes.string.isRequired,\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.node, PropTypes.number]).isRequired,\n isLoaded: PropTypes.bool.isRequired,\n};\n\nfunction Spend ({amount, unit, isCostBased}) {\n return isCostBased ? (\n <DollarAmount convertCents value={amount} />\n ) : (\n <span>\n {amount} {pluralize(unit || '', amount)}\n </span>\n )\n};\n\nSpend.propTypes = {\n amount: PropTypes.number.isRequired,\n unit: PropTypes.string,\n isCostBased: PropTypes.bool.isRequired,\n};\n\nfunction CapsInfo({\n formValues,\n feeScheduleProgram,\n isCostBased,\n hasDatesSelected,\n assignErrors,\n}) {\n\n const person = usePerson();\n const { data: authorizedSpendsData, isFetching, isLoading } = useFind(\n 'authorized_spend',\n {\n person: person?.id,\n fee_schedule_program: feeScheduleProgram?.id,\n requested_starts_at: moment.unix(formValues?.paymentAuthForm?.service_start).toISOString(),\n requested_ends_at: moment.unix(formValues?.paymentAuthForm?.service_end).toISOString(),\n },\n { \n queryConfig: { \n enabled: !!(hasDatesSelected && person?.id && feeScheduleProgram?.id),\n placeholderData: undefined,\n } \n }\n );\n\n const isLoaded = !isFetching && !isLoading;\n\n const authorizationSpends = get(authorizedSpendsData, 'data.data', []); //todo use this on the modal\n const totalApprovedSpend = get(authorizedSpendsData, 'data.meta.total_approved_spend', 0);\n const totalRequestedSpend = get(authorizedSpendsData, 'data.meta.total_requested_spend', 0);\n const authorizationSpendsErrors = get(authorizedSpendsData, 'data.meta.errors', []);\n const availableCap = get(authorizedSpendsData, 'data.meta.available_cap', 0);\n\n const showClientUtilizationError = authorizationSpendsErrors.some((e) => e.title === UTILIZATION_ERROR);\n const showPassthroughDatesError = hasDatesSelected &&\n authorizationSpendsErrors.some((e) => e.title === DATES_ERROR);\n\n useEffect(() => {\n assignErrors([showClientUtilizationError, showPassthroughDatesError]);\n }, [showClientUtilizationError, showPassthroughDatesError, assignErrors]);\n\n const startDate = moment(authorizedSpendsData?.cap_starts_at).utc().startOf('day');\n const hasCap = feeScheduleProgram?.hasCap;\n const formattedCap = hasCap ? <Spend amount={authorizedSpendsData?.total_cap} unit={feeScheduleProgram?.unit} isCostBased={isCostBased}/> : 'No Cap';\n const formattedCapPeriod = feeScheduleProgram?.cap_reset_cadence === 'lifetime' ?\n 'Lifetime' : `${formatShortDate(startDate)}`;\n\n\n return (\n <div className=\"mb-12 grid grid-cols-2 gap-2\" data-testid=\"caps-info-section\">\n { hasCap && (\n <InformationText\n name={<span className=\"font-bold\">AMOUNT AVAILABLE FOR AUTHORIZATION</span>}\n value={(\n <span className=\"font-bold\">\n <Spend isCostBased={isCostBased} amount={availableCap} unit={feeScheduleProgram?.unit}/>\n </span>\n )}\n isLoaded={isLoaded}\n />\n )}\n <InformationText\n name=\"Amount Currently Authorized\"\n value={<Spend isCostBased={isCostBased} amount={totalApprovedSpend} unit={feeScheduleProgram?.unit}/>}\n isLoaded={isLoaded}\n />\n { hasCap && (\n <>\n <InformationText name=\"Cap\" value={formattedCap} isLoaded={isLoaded} />\n {startDate?.isValid() &&\n (<InformationText name=\"Cap Period\" value={formattedCapPeriod} isLoaded={isLoaded} />)}\n </>\n )}\n <InformationText\n name=\"Amount Pending Authorization\"\n value={\n <Spend isCostBased={isCostBased} amount={totalRequestedSpend} unit={feeScheduleProgram?.unit}/>\n }\n isLoaded={isLoaded}\n />\n <div>\n View Details\n </div>\n </div>\n );\n}\n\nCapsInfo.propTypes = {\n formValues: PropTypes.object.isRequired,\n feeScheduleProgram: PropTypes.object.isRequired,\n isCostBased: PropTypes.bool.isRequired,\n hasDatesSelected: PropTypes.bool.isRequired,\n assignErrors: PropTypes.func.isRequired,\n};\n\nexport default CapsInfo;\n"],"mappings":"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"}
1
+ {"version":3,"file":"CapsInfo.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_moment","_lodash","_pluralize","_reactFinalForm","_messageConstants","_formatShortDate","_LineItem","_usePerson","_ApiHooks","_DollarAmount","_ErrorMessage","_getRequireWildcardCache","e","_WeakMap","r","t","__esModule","_typeof","default","has","get","n","__proto__","a","_Object$defineProperty","_Object$getOwnPropertyDescriptor","u","Object","prototype","hasOwnProperty","call","i","set","InformationText","_ref","name","value","isLoaded","createElement","field","fieldClassName","valueClassName","propTypes","PropTypes","oneOfType","string","element","isRequired","node","number","bool","Spend","_ref2","amount","unit","isCostBased","convertCents","pluralize","CapsInfo","_ref3","_formValues$paymentAu","_formValues$paymentAu2","_formValues$paymentAu3","_formState$errors","formValues","feeScheduleProgram","assignReferralErrors","serviceStart","paymentAuthForm","service_start","requestedStartDate","moment","unix","toISOString","serviceEnd","service_end","requestedEndDate","person","usePerson","_useFind","useFind","id","fee_schedule_program","requested_starts_at","requested_ends_at","queryConfig","enabled","placeholderData","undefined","authorizedSpendsData","data","isFetching","isLoading","_useFind2","state","fee_schedule","enrolled_before","expired_after","queryClient","insurancesData","isFindInsuranceSuccess","isSuccess","isFindInsuranceLoading","isInsuranceLoaded","insurances","invalidInsuranceAuthorizationDates","length","authorizationSpends","totalApprovedSpend","totalRequestedSpend","authorizationSpendsErrors","availableCap","totalCap","showClientUtilizationError","some","title","UTILIZATION_ERROR","showPassthroughDatesError","DATES_ERROR","startDate","cap_starts_at","utc","startOf","hasCap","has_cap","formattedCap","formattedCapPeriod","cap_reset_cadence","concat","formatShortDate","amountRequested","amount_requested","isAmountExceeded","isNumber","formState","useFormState","authFormErrors","errors","useEffect","push","_keys","forEach","key","_context","_includes","className","Fragment","isValid","object","func","_default","exports"],"sources":["../../../src/components/service_authorization/CapsInfo.jsx"],"sourcesContent":["import React, { useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport moment from 'moment';\nimport { get, isNumber } from 'lodash';\nimport pluralize from 'pluralize';\nimport { useFormState } from 'react-final-form';\nimport { UTILIZATION_ERROR, DATES_ERROR } from './messageConstants';\nimport formatShortDate from './formatShortDate';\nimport LineItem from '../../pages/builder/LineItem';\nimport usePerson from '../../hooks/usePerson';\nimport { useFind } from '../../api/ApiHooks';\nimport DollarAmount from '../DollarAmount';\nimport ErrorMessage from '../../common/form/ErrorMessage';\n\nfunction InformationText({\n name, value, isLoaded\n}) {\n return (\n <LineItem\n field={name}\n fieldClassName=\"col-span-1 p-0 text-dark-grey\"\n valueClassName=\"flex text-dark-blue\"\n isLoaded={isLoaded}\n >\n {value}\n </LineItem>\n );\n}\n\nInformationText.propTypes = {\n name: PropTypes.oneOfType([PropTypes.string, PropTypes.element]).isRequired,\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.node, PropTypes.number]).isRequired,\n isLoaded: PropTypes.bool.isRequired,\n};\n\nfunction Spend ({amount, unit, isCostBased}) {\n return isCostBased ? (\n <DollarAmount convertCents value={amount} />\n ) : (\n <span>\n {amount} {pluralize(unit || '', amount)}\n </span>\n )\n};\n\nSpend.propTypes = {\n amount: PropTypes.number.isRequired,\n unit: PropTypes.string,\n isCostBased: PropTypes.bool.isRequired,\n};\n\nfunction CapsInfo({\n formValues,\n feeScheduleProgram,\n isCostBased,\n assignReferralErrors,\n}) {\n\n const serviceStart = formValues?.paymentAuthForm?.service_start;\n const requestedStartDate = serviceStart && moment.unix(serviceStart).toISOString();\n const serviceEnd = formValues?.paymentAuthForm?.service_end;\n const requestedEndDate = serviceEnd && moment.unix(serviceEnd).toISOString();\n\n const person = usePerson();\n const { data: authorizedSpendsData, isFetching, isLoading } = useFind(\n 'authorized_spend',\n {\n person: person?.id,\n fee_schedule_program: feeScheduleProgram?.id,\n requested_starts_at: requestedStartDate,\n requested_ends_at: requestedEndDate,\n },\n { \n queryConfig: { \n enabled: !!(person?.id && feeScheduleProgram?.id),\n placeholderData: undefined,\n } \n }\n );\n\n const { \n data: insurancesData,\n isSuccess: isFindInsuranceSuccess,\n isLoading: isFindInsuranceLoading,\n } = useFind(\n 'insurance',\n {\n person: person?.id,\n state: 'active',\n 'plan.fee_schedules': feeScheduleProgram?.fee_schedule.id,\n enrolled_before: requestedStartDate,\n expired_after: requestedEndDate,\n },\n {\n queryClient: {\n enabled: !!feeScheduleProgram?.id,\n placeholderData: undefined,\n }\n }\n );\n const isInsuranceLoaded = isFindInsuranceSuccess || !isFindInsuranceLoading;\n\n const insurances = get(insurancesData, 'data.data', []);\n const invalidInsuranceAuthorizationDates = !insurances?.length;\n\n const isLoaded = !isFetching && !isLoading;\n\n const authorizationSpends = get(authorizedSpendsData, 'data.data', []); //todo use this on the modal\n const totalApprovedSpend = get(authorizedSpendsData, 'data.meta.total_approved_spend', 0);\n const totalRequestedSpend = get(authorizedSpendsData, 'data.meta.total_requested_spend', 0);\n const authorizationSpendsErrors = get(authorizedSpendsData, 'data.meta.errors', []);\n const availableCap = get(authorizedSpendsData, 'data.meta.available_cap', 0);\n const totalCap = get(authorizedSpendsData, 'data.meta.total_cap', 0);\n\n const showClientUtilizationError = authorizationSpendsErrors.some((e) => e.title === UTILIZATION_ERROR);\n const showPassthroughDatesError = authorizationSpendsErrors.some((e) => e.title === DATES_ERROR);\n \n const startDate = moment(authorizedSpendsData?.cap_starts_at).utc().startOf('day');\n const hasCap = feeScheduleProgram?.has_cap;\n const formattedCap = hasCap ? <Spend amount={totalCap} unit={feeScheduleProgram?.unit} isCostBased={isCostBased}/> : 'No Cap';\n const formattedCapPeriod = feeScheduleProgram?.cap_reset_cadence === 'lifetime' ?\n 'Lifetime' : `${formatShortDate(startDate)}`;\n\n const amountRequested = formValues?.paymentAuthForm?.amount_requested;\n const isAmountExceeded = isNumber(amountRequested) && hasCap && (amountRequested > availableCap);\n\n const formState = useFormState();\n const authFormErrors = formState.errors?.paymentAuthForm;\n\n useEffect(() => {\n if(isFindInsuranceSuccess) {\n const errors = [];\n\n if (showClientUtilizationError) errors.push('service');\n if (showPassthroughDatesError || invalidInsuranceAuthorizationDates) errors.push('paymentAuthForm.service_end');\n if (isAmountExceeded) errors.push('amount_requested');\n if (authFormErrors) {\n Object.keys(authFormErrors).forEach((key) => {\n if (key === 'amount_requested' && authFormErrors[key].includes('Required')) {\n return;\n }\n errors.push(`paymentAuthForm.${key}`);\n });\n };\n \n assignReferralErrors(errors);\n }\n // NOTE: disable exhaustive-deps because we don't want to run this effect when the authFormErrors values change\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [\n isFindInsuranceSuccess,\n assignReferralErrors,\n showClientUtilizationError,\n showPassthroughDatesError,\n isAmountExceeded,\n invalidInsuranceAuthorizationDates,\n requestedStartDate,\n requestedEndDate,\n amountRequested,\n ]);\n\n return (\n <div className=\"mb-12 grid grid-cols-2 gap-2\" data-testid=\"caps-info-section\">\n { hasCap && (\n <InformationText\n name={<span className=\"font-bold\">AMOUNT AVAILABLE FOR AUTHORIZATION</span>}\n value={(\n <span className=\"font-bold\">\n <Spend isCostBased={isCostBased} amount={availableCap} unit={feeScheduleProgram?.unit}/>\n </span>\n )}\n isLoaded={isLoaded}\n />\n )}\n <InformationText\n name=\"Amount Currently Authorized\"\n value={<Spend isCostBased={isCostBased} amount={totalApprovedSpend} unit={feeScheduleProgram?.unit}/>}\n isLoaded={isLoaded}\n />\n { hasCap && (\n <>\n <InformationText name=\"Cap\" value={formattedCap} isLoaded={isLoaded} />\n {startDate?.isValid() &&\n (<InformationText name=\"Cap Period\" value={formattedCapPeriod} isLoaded={isLoaded} />)}\n </>\n )}\n <InformationText\n name=\"Amount Pending Authorization\"\n value={\n <Spend isCostBased={isCostBased} amount={totalRequestedSpend} unit={feeScheduleProgram?.unit}/>\n }\n isLoaded={isLoaded}\n />\n <div className=\"mt-6\">\n View Details\n </div>\n {isAmountExceeded && (\n <div className=\"col-span-2 px-0 flex space-x-2 mt-6 mb-0\">\n <ErrorMessage>\n The amount requested is more than the amount available for authorization.\n Please adjust the amount requested, or search for another program\n to meet the client&apos;s needs.\n </ErrorMessage>\n </div>\n )}\n {showClientUtilizationError && (\n <div className=\"col-span-2 px-0 flex space-x-2 mt-6 mb-0\">\n <ErrorMessage>\n The client is already receiving this service through either a passthrough or non-passthrough service within this program group.\n </ErrorMessage>\n </div>\n )}\n {showPassthroughDatesError && (\n <div className=\"col-span-2 px-0 flex space-x-2 mt-6 mb-0\">\n <ErrorMessage>\n Clients can only receive services from this program for 30 days or until their social coverage ends,\n whichever comes first.\n </ErrorMessage>\n </div>\n )}\n {(isInsuranceLoaded && isLoaded) && invalidInsuranceAuthorizationDates && (\n <div className=\"col-span-2 px-0 flex space-x-2 mt-6 mb-0\">\n <ErrorMessage>\n The service delivery dates requested fall outside the client&apos;s\n enrollment dates for all enrolled plans. Please edit the service delivery dates.\n </ErrorMessage>\n </div>\n )}\n </div>\n );\n}\n\nCapsInfo.propTypes = {\n formValues: PropTypes.object.isRequired,\n feeScheduleProgram: PropTypes.object.isRequired,\n isCostBased: PropTypes.bool.isRequired,\n assignReferralErrors: PropTypes.func.isRequired,\n};\n\nexport default CapsInfo;\n"],"mappings":"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"}
@@ -18,6 +18,7 @@ var _ui = require("@unite-us/ui");
18
18
  var _CurrencyField = _interopRequireDefault(require("../../common/form/CurrencyField"));
19
19
  var _DollarAmount = _interopRequireDefault(require("../../components/DollarAmount"));
20
20
  var _LineItem = _interopRequireDefault(require("./LineItem"));
21
+ var _validateUnitAmount = _interopRequireDefault(require("../../utils/validateUnitAmount"));
21
22
  var AuthFormLineItem = function AuthFormLineItem(props) {
22
23
  return /*#__PURE__*/_react.default.createElement(_LineItem.default, (0, _extends2.default)({
23
24
  fieldClassName: "col-span-1 p-0 text-dark-grey",
@@ -27,7 +28,8 @@ var AuthFormLineItem = function AuthFormLineItem(props) {
27
28
  var AuthorizationSubform = function AuthorizationSubform(_ref) {
28
29
  var _formValues$paymentAu, _formValues$paymentAu2, _formValues$amount_re;
29
30
  var feeScheduleProgram = _ref.feeScheduleProgram,
30
- formValues = _ref.formValues;
31
+ formValues = _ref.formValues,
32
+ assignReferralErrors = _ref.assignReferralErrors;
31
33
  var isCostBased = _feeSchedulePrograms.default.isCostPaymentType(feeScheduleProgram.payment_type);
32
34
  var showUnits = !isCostBased && (feeScheduleProgram === null || feeScheduleProgram === void 0 ? void 0 : feeScheduleProgram.unit);
33
35
  var showRate = showUnits && (feeScheduleProgram === null || feeScheduleProgram === void 0 ? void 0 : feeScheduleProgram.unit_rate) > 0;
@@ -62,13 +64,10 @@ var AuthorizationSubform = function AuthorizationSubform(_ref) {
62
64
  }, /*#__PURE__*/_react.default.createElement(_reactFinalForm.Field, {
63
65
  name: "paymentAuthForm.amount_requested",
64
66
  validate: function validate(value) {
65
- return (0, _validations.isRequired)(value);
67
+ return isCostBased ? (0, _validations.isRequired)(value) : (0, _validateUnitAmount.default)(value);
66
68
  }
67
69
  }, function (params) {
68
- return isCostBased ?
69
- /*#__PURE__*/
70
- // TODO unit amount validation https://uniteus.atlassian.net/browse/PAYS-5506
71
- _react.default.createElement(_CurrencyField.default, (0, _extends2.default)({
70
+ return isCostBased ? /*#__PURE__*/_react.default.createElement(_CurrencyField.default, (0, _extends2.default)({
72
71
  className: "col-span-1 p-0",
73
72
  id: "authorization-request-amount-requested",
74
73
  label: "Amount Requested",
@@ -118,14 +117,13 @@ var AuthorizationSubform = function AuthorizationSubform(_ref) {
118
117
  feeScheduleProgram: feeScheduleProgram,
119
118
  formValues: formValues,
120
119
  isCostBased: isCostBased,
121
- assignErrors: function assignErrors() {} // todo use when create validation https://uniteus.atlassian.net/browse/PAYS-5506
122
- ,
123
- hasDatesSelected: hasDatesSelected
120
+ assignReferralErrors: assignReferralErrors
124
121
  })));
125
122
  };
126
123
  AuthorizationSubform.propTypes = {
127
124
  feeScheduleProgram: _propTypes.default.object.isRequired,
128
- formValues: _propTypes.default.object.isRequired
125
+ formValues: _propTypes.default.object.isRequired,
126
+ assignReferralErrors: _propTypes.default.func.isRequired
129
127
  };
130
128
  var _default = exports.default = AuthorizationSubform;
131
129
  //# sourceMappingURL=AuthorizationSubform.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AuthorizationSubform.js","names":["_react","_interopRequireDefault","require","_propTypes","_reactFinalForm","_pluralize","_feeSchedulePrograms","_validations","_CapsInfo","_ui","_CurrencyField","_DollarAmount","_LineItem","AuthFormLineItem","props","default","createElement","_extends2","fieldClassName","valueClassName","AuthorizationSubform","_ref","_formValues$paymentAu","_formValues$paymentAu2","_formValues$amount_re","feeScheduleProgram","formValues","isCostBased","fspUtils","isCostPaymentType","payment_type","showUnits","unit","showRate","unit_rate","hasDatesSelected","paymentAuthForm","service_start","service_end","Fragment","className","field","name","PAYMENT_TYPES","value","convertCents","cap_information","dangerouslySetInnerHTML","__html","Field","validate","isRequired","params","id","label","required","InputField","type","pluralize","amount_requested","startProps","endProps","DurationField","startField","startFieldPath","endField","endFieldPath","style","container","width","assignErrors","propTypes","PropTypes","object","_default","exports"],"sources":["../../../src/pages/builder/AuthorizationSubform.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Field } from 'react-final-form';\nimport pluralize from 'pluralize';\nimport fspUtils from '@unite-us/client-utils/dist/utils/feeSchedulePrograms';\nimport { isRequired } from '@unite-us/client-utils/dist/utils/validations/validations';\nimport CapsInfo from '../../components/service_authorization/CapsInfo';\nimport {\n DurationField,\n InputField,\n} from '@unite-us/ui';\nimport CurrencyField from '../../common/form/CurrencyField';\nimport DollarAmount from '../../components/DollarAmount';\nimport LineItem from './LineItem';\n\nconst AuthFormLineItem = (props) => (\n <LineItem\n fieldClassName=\"col-span-1 p-0 text-dark-grey\"\n valueClassName=\"col-span-2 m-0 p-0 text-dark-blue\"\n {...props}\n />\n);\n\nconst AuthorizationSubform = ({ feeScheduleProgram, formValues }) => {\n const isCostBased = fspUtils.isCostPaymentType(feeScheduleProgram.payment_type);\n const showUnits = !isCostBased && feeScheduleProgram?.unit;\n const showRate = showUnits && feeScheduleProgram?.unit_rate > 0;\n const hasDatesSelected = !!(\n formValues?.paymentAuthForm?.service_start &&\n formValues?.paymentAuthForm?.service_end\n );\n\n return (\n <>\n <div className=\"space-y-6\">\n <h5 className=\"text-sm ui-form-field__label m-0\">\n AUTHORIZATION REQUEST\n </h5>\n <dl className=\"grid grid-cols-3 gap-x-6 gap-y-2\">\n <AuthFormLineItem field=\"Contracted Program\">\n {feeScheduleProgram.name}\n </AuthFormLineItem>\n <AuthFormLineItem field=\"Payment Approach\">\n {fspUtils.PAYMENT_TYPES[feeScheduleProgram.payment_type] || 'N/A'}\n </AuthFormLineItem>\n {showUnits && (\n <AuthFormLineItem field=\"Unit\">\n {feeScheduleProgram.unit}\n </AuthFormLineItem>\n )}\n {showRate && (\n <AuthFormLineItem field=\"Rate\">\n <DollarAmount value={feeScheduleProgram.unit_rate} convertCents />\n {' per '}\n {feeScheduleProgram.unit}\n </AuthFormLineItem>\n )}\n <AuthFormLineItem field=\"Program Cap\">\n {feeScheduleProgram.cap_information ? (\n <div dangerouslySetInnerHTML={{ __html: feeScheduleProgram.cap_information }} />\n ) : (\n 'No cap'\n )}\n </AuthFormLineItem>\n </dl>\n <hr className=\"p-0\" />\n <div className=\"grid grid-cols-3 gap-x-6\">\n <Field name=\"paymentAuthForm.amount_requested\" validate={(value) => isRequired(value)}>\n {(params) => (isCostBased ? (\n // TODO unit amount validation https://uniteus.atlassian.net/browse/PAYS-5506\n <CurrencyField\n className=\"col-span-1 p-0\"\n id=\"authorization-request-amount-requested\"\n label=\"Amount Requested\"\n required\n {...params}\n />\n ) : (\n <InputField\n className=\"col-span-1 p-0\"\n id=\"authorization-request-amount-requested\"\n label=\"Amount Requested\"\n type=\"number\"\n required\n {...params}\n />\n ))}\n </Field>\n <div className=\"col-span-2 p-0 space-y-2\">\n <div className=\"font-heavy-font text-dark-grey\">Unit</div>\n <div className=\"capitalize\">\n {isCostBased ? 'Dollars' :\n pluralize(\n feeScheduleProgram.unit || '',\n formValues?.amount_requested?.value || 0,\n )}\n </div>\n </div>\n <div className=\"col-span-1 p-0\">\n <Field name=\"paymentAuthForm.service_start\">\n {(startProps) => (\n <Field name=\"paymentAuthForm.service_end\" validate={(value) => isRequired(value)}>\n {(endProps) => (\n <DurationField\n id=\"authorization-request-service-dates\"\n label=\"Service Delivery Date(s)\"\n startField={startProps}\n startFieldPath=\"startField\"\n endField={endProps}\n endFieldPath=\"endField\"\n required\n style={{ container: { width: 'unset' } }}\n />\n )}\n </Field>\n )}\n </Field>\n </div>\n </div>\n </div>\n {\n hasDatesSelected &&\n <>\n <hr className=\"mb-6\"/>\n <CapsInfo\n feeScheduleProgram={feeScheduleProgram}\n formValues={formValues}\n isCostBased={isCostBased}\n assignErrors={()=>{}}// todo use when create validation https://uniteus.atlassian.net/browse/PAYS-5506\n hasDatesSelected={hasDatesSelected}\n />\n </>\n }\n </>\n );\n};\n\nAuthorizationSubform.propTypes = {\n feeScheduleProgram: PropTypes.object.isRequired,\n formValues: PropTypes.object.isRequired,\n};\n\nexport default AuthorizationSubform;\n"],"mappings":"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"}
1
+ {"version":3,"file":"AuthorizationSubform.js","names":["_react","_interopRequireDefault","require","_propTypes","_reactFinalForm","_pluralize","_feeSchedulePrograms","_validations","_CapsInfo","_ui","_CurrencyField","_DollarAmount","_LineItem","_validateUnitAmount","AuthFormLineItem","props","default","createElement","_extends2","fieldClassName","valueClassName","AuthorizationSubform","_ref","_formValues$paymentAu","_formValues$paymentAu2","_formValues$amount_re","feeScheduleProgram","formValues","assignReferralErrors","isCostBased","fspUtils","isCostPaymentType","payment_type","showUnits","unit","showRate","unit_rate","hasDatesSelected","paymentAuthForm","service_start","service_end","Fragment","className","field","name","PAYMENT_TYPES","value","convertCents","cap_information","dangerouslySetInnerHTML","__html","Field","validate","isRequired","validateUnitAmount","params","id","label","required","InputField","type","pluralize","amount_requested","startProps","endProps","DurationField","startField","startFieldPath","endField","endFieldPath","style","container","width","propTypes","PropTypes","object","func","_default","exports"],"sources":["../../../src/pages/builder/AuthorizationSubform.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Field } from 'react-final-form';\nimport pluralize from 'pluralize';\nimport fspUtils from '@unite-us/client-utils/dist/utils/feeSchedulePrograms';\nimport { isRequired } from '@unite-us/client-utils/dist/utils/validations/validations';\nimport CapsInfo from '../../components/service_authorization/CapsInfo';\nimport {\n DurationField,\n InputField,\n} from '@unite-us/ui';\nimport CurrencyField from '../../common/form/CurrencyField';\nimport DollarAmount from '../../components/DollarAmount';\nimport LineItem from './LineItem';\nimport validateUnitAmount from '../../utils/validateUnitAmount';\n\nconst AuthFormLineItem = (props) => (\n <LineItem\n fieldClassName=\"col-span-1 p-0 text-dark-grey\"\n valueClassName=\"col-span-2 m-0 p-0 text-dark-blue\"\n {...props}\n />\n);\n\nconst AuthorizationSubform = ({ feeScheduleProgram, formValues, assignReferralErrors }) => {\n const isCostBased = fspUtils.isCostPaymentType(feeScheduleProgram.payment_type);\n const showUnits = !isCostBased && feeScheduleProgram?.unit;\n const showRate = showUnits && feeScheduleProgram?.unit_rate > 0;\n const hasDatesSelected = !!(\n formValues?.paymentAuthForm?.service_start &&\n formValues?.paymentAuthForm?.service_end\n );\n\n return (\n <>\n <div className=\"space-y-6\">\n <h5 className=\"text-sm ui-form-field__label m-0\">\n AUTHORIZATION REQUEST\n </h5>\n <dl className=\"grid grid-cols-3 gap-x-6 gap-y-2\">\n <AuthFormLineItem field=\"Contracted Program\">\n {feeScheduleProgram.name}\n </AuthFormLineItem>\n <AuthFormLineItem field=\"Payment Approach\">\n {fspUtils.PAYMENT_TYPES[feeScheduleProgram.payment_type] || 'N/A'}\n </AuthFormLineItem>\n {showUnits && (\n <AuthFormLineItem field=\"Unit\">\n {feeScheduleProgram.unit}\n </AuthFormLineItem>\n )}\n {showRate && (\n <AuthFormLineItem field=\"Rate\">\n <DollarAmount value={feeScheduleProgram.unit_rate} convertCents />\n {' per '}\n {feeScheduleProgram.unit}\n </AuthFormLineItem>\n )}\n <AuthFormLineItem field=\"Program Cap\">\n {feeScheduleProgram.cap_information ? (\n <div dangerouslySetInnerHTML={{ __html: feeScheduleProgram.cap_information }} />\n ) : (\n 'No cap'\n )}\n </AuthFormLineItem>\n </dl>\n <hr className=\"p-0\" />\n <div className=\"grid grid-cols-3 gap-x-6\">\n <Field\n name=\"paymentAuthForm.amount_requested\"\n validate={(value) => {\n return isCostBased ? isRequired(value) : validateUnitAmount(value);\n }}\n >\n {(params) => (isCostBased ? (\n <CurrencyField\n className=\"col-span-1 p-0\"\n id=\"authorization-request-amount-requested\"\n label=\"Amount Requested\"\n required\n {...params}\n />\n ) : (\n <InputField\n className=\"col-span-1 p-0\"\n id=\"authorization-request-amount-requested\"\n label=\"Amount Requested\"\n type=\"number\"\n required\n {...params}\n />\n ))}\n </Field>\n <div className=\"col-span-2 p-0 space-y-2\">\n <div className=\"font-heavy-font text-dark-grey\">Unit</div>\n <div className=\"capitalize\">\n {isCostBased ? 'Dollars' :\n pluralize(\n feeScheduleProgram.unit || '',\n formValues?.amount_requested?.value || 0,\n )}\n </div>\n </div>\n <div className=\"col-span-1 p-0\">\n <Field name=\"paymentAuthForm.service_start\">\n {(startProps) => (\n <Field name=\"paymentAuthForm.service_end\" validate={(value) => isRequired(value)}>\n {(endProps) => (\n <DurationField\n id=\"authorization-request-service-dates\"\n label=\"Service Delivery Date(s)\"\n startField={startProps}\n startFieldPath=\"startField\"\n endField={endProps}\n endFieldPath=\"endField\"\n required\n style={{ container: { width: 'unset' } }}\n />\n )}\n </Field>\n )}\n </Field>\n </div>\n </div>\n </div>\n {\n hasDatesSelected &&\n <>\n <hr className=\"mb-6\"/>\n <CapsInfo\n feeScheduleProgram={feeScheduleProgram}\n formValues={formValues}\n isCostBased={isCostBased}\n assignReferralErrors={assignReferralErrors}\n />\n </>\n }\n </>\n );\n};\n\nAuthorizationSubform.propTypes = {\n feeScheduleProgram: PropTypes.object.isRequired,\n formValues: PropTypes.object.isRequired,\n assignReferralErrors: PropTypes.func.isRequired,\n};\n\nexport default AuthorizationSubform;\n"],"mappings":"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"}