@unite-us/app-create-referral 0.8.3 → 0.8.4

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.
@@ -11,22 +11,23 @@ var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequ
11
11
  _Object$defineProperty(exports, "__esModule", {
12
12
  value: true
13
13
  });
14
- exports.useUpdateRecord = exports.useFindRecord = exports.useFind = exports.useCreateRecord = void 0;
14
+ exports.useUpdateRecord = exports.usePopulate = exports.useFindRecord = exports.useFind = exports.useCreateRecord = void 0;
15
15
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/defineProperty"));
16
16
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/objectWithoutProperties"));
17
17
  var _jsonApiResources = require("@unite-us/json-api-resources");
18
18
  var _reactQuery = require("react-query");
19
19
  var _config = require("./config");
20
20
  var _excluded = ["queryConfig"],
21
- _excluded2 = ["queryConfig"];
21
+ _excluded2 = ["queryConfig"],
22
+ _excluded3 = ["queryConfig"];
22
23
  function ownKeys(e, r) { var t = _Object$keys(e); if (_Object$getOwnPropertySymbols) { var o = _Object$getOwnPropertySymbols(e); r && (o = _filterInstanceProperty(o).call(o, function (r) { return _Object$getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
23
24
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(e, _Object$getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { _Object$defineProperty(e, r, _Object$getOwnPropertyDescriptor(t, r)); }); } return e; }
24
- var useFindRecord = exports.useFindRecord = function useFindRecord(modelName, id) {
25
- var params = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
25
+ var usePopulate = exports.usePopulate = function usePopulate(relationshipName, modelName, data) {
26
+ var params = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};
26
27
  var _params$queryConfig = params.queryConfig,
27
28
  queryConfig = _params$queryConfig === void 0 ? {} : _params$queryConfig,
28
29
  rest = (0, _objectWithoutProperties2.default)(params, _excluded);
29
- return (0, _jsonApiResources.useFindRecordBase)(modelName, id, _objectSpread(_objectSpread({}, rest), {}, {
30
+ return (0, _jsonApiResources.usePopulateBase)(relationshipName, modelName, data, _objectSpread(_objectSpread({}, rest), {}, {
30
31
  api: _config.coreApi,
31
32
  useQuery: _reactQuery.useQuery,
32
33
  queryConfig: _objectSpread({
@@ -34,11 +35,24 @@ var useFindRecord = exports.useFindRecord = function useFindRecord(modelName, id
34
35
  }, queryConfig)
35
36
  }));
36
37
  };
37
- var useFind = exports.useFind = function useFind(modelName, query) {
38
+ var useFindRecord = exports.useFindRecord = function useFindRecord(modelName, id) {
38
39
  var params = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
39
40
  var _params$queryConfig2 = params.queryConfig,
40
41
  queryConfig = _params$queryConfig2 === void 0 ? {} : _params$queryConfig2,
41
42
  rest = (0, _objectWithoutProperties2.default)(params, _excluded2);
43
+ return (0, _jsonApiResources.useFindRecordBase)(modelName, id, _objectSpread(_objectSpread({}, rest), {}, {
44
+ api: _config.coreApi,
45
+ useQuery: _reactQuery.useQuery,
46
+ queryConfig: _objectSpread({
47
+ enabled: true
48
+ }, queryConfig)
49
+ }));
50
+ };
51
+ var useFind = exports.useFind = function useFind(modelName, query) {
52
+ var params = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
53
+ var _params$queryConfig3 = params.queryConfig,
54
+ queryConfig = _params$queryConfig3 === void 0 ? {} : _params$queryConfig3,
55
+ rest = (0, _objectWithoutProperties2.default)(params, _excluded3);
42
56
  return (0, _jsonApiResources.useQueryBase)(modelName, query, _objectSpread(_objectSpread({}, rest), {}, {
43
57
  api: _config.coreApi,
44
58
  useQuery: _reactQuery.useQuery,
@@ -1 +1 @@
1
- {"version":3,"file":"ApiHooks.js","names":["_jsonApiResources","require","_reactQuery","_config","_excluded","_excluded2","ownKeys","e","r","t","_Object$keys","_Object$getOwnPropertySymbols","o","_filterInstanceProperty","call","_Object$getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","Object","forEach","_defineProperty2","default","_Object$getOwnPropertyDescriptors","_Object$defineProperties","_Object$defineProperty","useFindRecord","exports","modelName","id","params","undefined","_params$queryConfig","queryConfig","rest","_objectWithoutProperties2","useFindRecordBase","api","coreApi","useQuery","enabled","useFind","query","_params$queryConfig2","useQueryBase","useCreateRecord","options","callback","useCreateRecordBase","useMutation","mutationConfig","mutateAsync","mutate","createRecord","data","overrideOptions","newData","model","jsonApiParams","useUpdateRecord","useUpdateRecordBase","updateRecord"],"sources":["../../src/api/ApiHooks.js"],"sourcesContent":["import {\n useCreateRecordBase,\n useFindRecordBase,\n useUpdateRecordBase,\n useQueryBase,\n} from '@unite-us/json-api-resources';\nimport {\n useMutation,\n useQuery,\n} from 'react-query';\nimport { coreApi } from './config';\n\nexport const useFindRecord = (modelName, id, params = {}) => {\n const { queryConfig = {}, ...rest } = params;\n return useFindRecordBase(\n modelName,\n id,\n {\n ...rest, api: coreApi, useQuery, queryConfig: { enabled: true, ...queryConfig },\n },\n );\n};\n\nexport const useFind = (modelName, query, params = {}) => {\n const { queryConfig = {}, ...rest } = params;\n return useQueryBase(\n modelName,\n query,\n {\n ...rest, api: coreApi, useQuery, queryConfig: { enabled: true, ...queryConfig },\n },\n );\n};\n\nexport const useCreateRecord = (modelName, options = {}) => {\n const callback = useCreateRecordBase({\n useMutation,\n mutationConfig: {\n ...options.mutationConfig,\n },\n });\n\n const { mutateAsync } = callback;\n callback.mutate = null;\n callback.mutateAsync = null;\n callback.createRecord = (data, overrideOptions = {}) => {\n const newData = {\n model: modelName,\n data,\n params: { ...overrideOptions.jsonApiParams, api: coreApi },\n };\n\n return mutateAsync(newData, overrideOptions.mutationConfig);\n };\n\n return callback;\n};\n\nexport const useUpdateRecord = (modelName, options = {}) => {\n const callback = useUpdateRecordBase({ useMutation, mutationConfig: options.mutationConfig });\n\n const mutateAsync = callback.mutateAsync;\n callback.mutate = null;\n callback.mutateAsync = null;\n callback.updateRecord = (id, data, overrideOptions = {}) => {\n const newData = {\n model: modelName,\n id,\n data,\n params: { ...overrideOptions.jsonApiParams, api: coreApi },\n };\n\n return mutateAsync(newData, overrideOptions.mutationConfig);\n };\n\n return callback;\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"ApiHooks.js","names":["_jsonApiResources","require","_reactQuery","_config","_excluded","_excluded2","_excluded3","ownKeys","e","r","t","_Object$keys","_Object$getOwnPropertySymbols","o","_filterInstanceProperty","call","_Object$getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","Object","forEach","_defineProperty2","default","_Object$getOwnPropertyDescriptors","_Object$defineProperties","_Object$defineProperty","usePopulate","exports","relationshipName","modelName","data","params","undefined","_params$queryConfig","queryConfig","rest","_objectWithoutProperties2","usePopulateBase","api","coreApi","useQuery","enabled","useFindRecord","id","_params$queryConfig2","useFindRecordBase","useFind","query","_params$queryConfig3","useQueryBase","useCreateRecord","options","callback","useCreateRecordBase","useMutation","mutationConfig","mutateAsync","mutate","createRecord","overrideOptions","newData","model","jsonApiParams","useUpdateRecord","useUpdateRecordBase","updateRecord"],"sources":["../../src/api/ApiHooks.js"],"sourcesContent":["import {\n useCreateRecordBase,\n useFindRecordBase,\n useUpdateRecordBase,\n useQueryBase,\n usePopulateBase,\n} from '@unite-us/json-api-resources';\nimport {\n useMutation,\n useQuery,\n} from 'react-query';\nimport { coreApi } from './config';\n\nexport const usePopulate = (relationshipName, modelName, data, params = {}) => {\n const { queryConfig = {}, ...rest } = params;\n\n return usePopulateBase(\n relationshipName,\n modelName,\n data,\n {\n ...rest,\n api: coreApi,\n useQuery,\n queryConfig: { enabled: true, ...queryConfig },\n },\n );\n};\n\nexport const useFindRecord = (modelName, id, params = {}) => {\n const { queryConfig = {}, ...rest } = params;\n return useFindRecordBase(\n modelName,\n id,\n {\n ...rest, api: coreApi, useQuery, queryConfig: { enabled: true, ...queryConfig },\n },\n );\n};\n\nexport const useFind = (modelName, query, params = {}) => {\n const { queryConfig = {}, ...rest } = params;\n return useQueryBase(\n modelName,\n query,\n {\n ...rest, api: coreApi, useQuery, queryConfig: { enabled: true, ...queryConfig },\n },\n );\n};\n\nexport const useCreateRecord = (modelName, options = {}) => {\n const callback = useCreateRecordBase({\n useMutation,\n mutationConfig: {\n ...options.mutationConfig,\n },\n });\n\n const { mutateAsync } = callback;\n callback.mutate = null;\n callback.mutateAsync = null;\n callback.createRecord = (data, overrideOptions = {}) => {\n const newData = {\n model: modelName,\n data,\n params: { ...overrideOptions.jsonApiParams, api: coreApi },\n };\n\n return mutateAsync(newData, overrideOptions.mutationConfig);\n };\n\n return callback;\n};\n\nexport const useUpdateRecord = (modelName, options = {}) => {\n const callback = useUpdateRecordBase({ useMutation, mutationConfig: options.mutationConfig });\n\n const mutateAsync = callback.mutateAsync;\n callback.mutate = null;\n callback.mutateAsync = null;\n callback.updateRecord = (id, data, overrideOptions = {}) => {\n const newData = {\n model: modelName,\n id,\n data,\n params: { ...overrideOptions.jsonApiParams, api: coreApi },\n };\n\n return mutateAsync(newData, overrideOptions.mutationConfig);\n };\n\n return callback;\n};\n"],"mappings":"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"}
@@ -0,0 +1,34 @@
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 _classnames = _interopRequireDefault(require("classnames"));
12
+ var Card = function Card(_ref) {
13
+ var borderColor = _ref.borderColor,
14
+ children = _ref.children,
15
+ className = _ref.className,
16
+ dataTestId = _ref['data-testid'];
17
+ return /*#__PURE__*/_react.default.createElement("div", {
18
+ className: (0, _classnames.default)('border border-solid rounded overflow-hidden', borderColor, className),
19
+ "data-testid": dataTestId
20
+ }, children);
21
+ };
22
+ Card.propTypes = {
23
+ borderColor: _propTypes.default.string,
24
+ children: _propTypes.default.node.isRequired,
25
+ className: _propTypes.default.string,
26
+ 'data-testid': _propTypes.default.string
27
+ };
28
+ Card.defaultProps = {
29
+ borderColor: 'border-dark-border-blue',
30
+ className: '',
31
+ 'data-testid': undefined
32
+ };
33
+ var _default = exports.default = Card;
34
+ //# sourceMappingURL=Card.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Card.js","names":["_react","_interopRequireDefault","require","_propTypes","_classnames","Card","_ref","borderColor","children","className","dataTestId","default","createElement","cx","propTypes","PropTypes","string","node","isRequired","defaultProps","undefined","_default","exports"],"sources":["../../src/components/Card.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport cx from 'classnames';\n\nconst Card = ({\n borderColor,\n children,\n className,\n 'data-testid': dataTestId,\n}) => (\n <div\n className={cx(\n 'border border-solid rounded overflow-hidden',\n borderColor,\n className,\n )}\n data-testid={dataTestId}\n >\n {children}\n </div>\n);\n\nCard.propTypes = {\n borderColor: PropTypes.string,\n children: PropTypes.node.isRequired,\n className: PropTypes.string,\n 'data-testid': PropTypes.string,\n};\n\nCard.defaultProps = {\n borderColor: 'border-dark-border-blue',\n className: '',\n 'data-testid': undefined,\n};\n\nexport default Card;\n"],"mappings":";;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,WAAA,GAAAH,sBAAA,CAAAC,OAAA;AAEA,IAAMG,IAAI,GAAG,SAAPA,IAAIA,CAAAC,IAAA;EAAA,IACRC,WAAW,GAAAD,IAAA,CAAXC,WAAW;IACXC,QAAQ,GAAAF,IAAA,CAARE,QAAQ;IACRC,SAAS,GAAAH,IAAA,CAATG,SAAS;IACMC,UAAU,GAAAJ,IAAA,CAAzB,aAAa;EAAA,oBAEbN,MAAA,CAAAW,OAAA,CAAAC,aAAA;IACEH,SAAS,EAAE,IAAAI,mBAAE,EACX,6CAA6C,EAC7CN,WAAW,EACXE,SACF,CAAE;IACF,eAAaC;EAAW,GAEvBF,QACE,CAAC;AAAA,CACP;AAEDH,IAAI,CAACS,SAAS,GAAG;EACfP,WAAW,EAAEQ,kBAAS,CAACC,MAAM;EAC7BR,QAAQ,EAAEO,kBAAS,CAACE,IAAI,CAACC,UAAU;EACnCT,SAAS,EAAEM,kBAAS,CAACC,MAAM;EAC3B,aAAa,EAAED,kBAAS,CAACC;AAC3B,CAAC;AAEDX,IAAI,CAACc,YAAY,GAAG;EAClBZ,WAAW,EAAE,yBAAyB;EACtCE,SAAS,EAAE,EAAE;EACb,aAAa,EAAEW;AACjB,CAAC;AAAC,IAAAC,QAAA,GAAAC,OAAA,CAAAX,OAAA,GAEaN,IAAI"}
@@ -0,0 +1,45 @@
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 = require("prop-types");
11
+ var _ui = require("@unite-us/ui");
12
+ var _classnames = _interopRequireDefault(require("classnames"));
13
+ var ExpandableButton = function ExpandableButton(_ref) {
14
+ var isOpen = _ref.isOpen,
15
+ onClick = _ref.onClick,
16
+ dataTestId = _ref.dataTestId,
17
+ className = _ref.className,
18
+ children = _ref.children;
19
+ return /*#__PURE__*/_react.default.createElement("button", {
20
+ type: "button",
21
+ onClick: onClick,
22
+ className: (0, _classnames.default)('flex items-center focus:outline-none z-0', className),
23
+ "data-testid": dataTestId
24
+ }, /*#__PURE__*/_react.default.createElement("span", {
25
+ className: "text-action-blue font-bold cursor-pointer"
26
+ }, children || (isOpen ? 'Hide' : 'Show')), /*#__PURE__*/_react.default.createElement(_ui.Icon, {
27
+ "aria-hidden": true,
28
+ className: (0, _classnames.default)('transition-transform duration-500 ease-in-out ml-2 cursor-pointer', isOpen && 'transform rotate-180'),
29
+ icon: "IconChevronDown",
30
+ size: 12
31
+ }));
32
+ };
33
+ ExpandableButton.propTypes = {
34
+ isOpen: _propTypes.PropTypes.bool.isRequired,
35
+ onClick: _propTypes.PropTypes.func.isRequired,
36
+ dataTestId: _propTypes.PropTypes.string.isRequired,
37
+ className: _propTypes.PropTypes.string,
38
+ children: _propTypes.PropTypes.node
39
+ };
40
+ ExpandableButton.defaultProps = {
41
+ className: '',
42
+ children: null
43
+ };
44
+ var _default = exports.default = ExpandableButton;
45
+ //# sourceMappingURL=ExpandableButton.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ExpandableButton.js","names":["_react","_interopRequireDefault","require","_propTypes","_ui","_classnames","ExpandableButton","_ref","isOpen","onClick","dataTestId","className","children","default","createElement","type","cx","Icon","icon","size","propTypes","PropTypes","bool","isRequired","func","string","node","defaultProps","_default","exports"],"sources":["../../src/components/ExpandableButton.jsx"],"sourcesContent":["import React from 'react';\nimport { PropTypes } from 'prop-types';\nimport { Icon } from '@unite-us/ui';\nimport cx from 'classnames';\n\nconst ExpandableButton = (\n {\n isOpen, onClick, dataTestId, className, children,\n },\n) => (\n <button\n type=\"button\"\n onClick={onClick}\n className={cx('flex items-center focus:outline-none z-0', className)}\n data-testid={dataTestId}\n >\n <span className=\"text-action-blue font-bold cursor-pointer\">\n {children || (isOpen ? 'Hide' : 'Show')}\n </span>\n <Icon\n aria-hidden\n className={cx(\n 'transition-transform duration-500 ease-in-out ml-2 cursor-pointer',\n isOpen && 'transform rotate-180',\n )}\n icon=\"IconChevronDown\"\n size={12}\n />\n </button>\n);\n\nExpandableButton.propTypes = {\n isOpen: PropTypes.bool.isRequired,\n onClick: PropTypes.func.isRequired,\n dataTestId: PropTypes.string.isRequired,\n className: PropTypes.string,\n children: PropTypes.node,\n};\n\nExpandableButton.defaultProps = {\n className: '',\n children: null,\n};\n\nexport default ExpandableButton;\n"],"mappings":";;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAD,OAAA;AACA,IAAAE,GAAA,GAAAF,OAAA;AACA,IAAAG,WAAA,GAAAJ,sBAAA,CAAAC,OAAA;AAEA,IAAMI,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAAC,IAAA;EAAA,IAElBC,MAAM,GAAAD,IAAA,CAANC,MAAM;IAAEC,OAAO,GAAAF,IAAA,CAAPE,OAAO;IAAEC,UAAU,GAAAH,IAAA,CAAVG,UAAU;IAAEC,SAAS,GAAAJ,IAAA,CAATI,SAAS;IAAEC,QAAQ,GAAAL,IAAA,CAARK,QAAQ;EAAA,oBAGlDZ,MAAA,CAAAa,OAAA,CAAAC,aAAA;IACEC,IAAI,EAAC,QAAQ;IACbN,OAAO,EAAEA,OAAQ;IACjBE,SAAS,EAAE,IAAAK,mBAAE,EAAC,0CAA0C,EAAEL,SAAS,CAAE;IACrE,eAAaD;EAAW,gBAExBV,MAAA,CAAAa,OAAA,CAAAC,aAAA;IAAMH,SAAS,EAAC;EAA2C,GACxDC,QAAQ,KAAKJ,MAAM,GAAG,MAAM,GAAG,MAAM,CAClC,CAAC,eACPR,MAAA,CAAAa,OAAA,CAAAC,aAAA,CAACV,GAAA,CAAAa,IAAI;IACH,mBAAW;IACXN,SAAS,EAAE,IAAAK,mBAAE,EACX,mEAAmE,EACnER,MAAM,IAAI,sBACZ,CAAE;IACFU,IAAI,EAAC,iBAAiB;IACtBC,IAAI,EAAE;EAAG,CACV,CACK,CAAC;AAAA,CACV;AAEDb,gBAAgB,CAACc,SAAS,GAAG;EAC3BZ,MAAM,EAAEa,oBAAS,CAACC,IAAI,CAACC,UAAU;EACjCd,OAAO,EAAEY,oBAAS,CAACG,IAAI,CAACD,UAAU;EAClCb,UAAU,EAAEW,oBAAS,CAACI,MAAM,CAACF,UAAU;EACvCZ,SAAS,EAAEU,oBAAS,CAACI,MAAM;EAC3Bb,QAAQ,EAAES,oBAAS,CAACK;AACtB,CAAC;AAEDpB,gBAAgB,CAACqB,YAAY,GAAG;EAC9BhB,SAAS,EAAE,EAAE;EACbC,QAAQ,EAAE;AACZ,CAAC;AAAC,IAAAgB,QAAA,GAAAC,OAAA,CAAAhB,OAAA,GAEaP,gBAAgB"}
@@ -0,0 +1,121 @@
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 _concat = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/concat"));
10
+ var _react = _interopRequireDefault(require("react"));
11
+ var _classnames = _interopRequireDefault(require("classnames"));
12
+ var _propTypes = require("prop-types");
13
+ var _reactRouterDom = require("react-router-dom");
14
+ var _ApiHooks = require("../../api/ApiHooks");
15
+ var _Card = _interopRequireDefault(require("../Card"));
16
+ var _LineItem = _interopRequireDefault(require("../../pages/builder/LineItem"));
17
+ var _formatShortDate = _interopRequireDefault(require("./formatShortDate"));
18
+ var _Spend = _interopRequireDefault(require("./Spend"));
19
+ var _CaseStatus = _interopRequireDefault(require("./CaseStatus"));
20
+ var AuthorizationSpendCard = function AuthorizationSpendCard(_ref) {
21
+ var _context;
22
+ var item = _ref.item,
23
+ unit = _ref.unit,
24
+ isAuthorized = _ref.isAuthorized,
25
+ isCostBased = _ref.isCostBased,
26
+ isCurrentItem = _ref.isCurrentItem,
27
+ fieldClassName = _ref.fieldClassName,
28
+ cardClassName = _ref.cardClassName,
29
+ enabledLink = _ref.enabledLink,
30
+ valueClassName = _ref.valueClassName;
31
+ (0, _ApiHooks.usePopulate)('fee_schedule_program', 'fee_schedule_program', item, {
32
+ placeholderData: undefined
33
+ });
34
+ var isAutoApproved = item.auto_approved;
35
+ var programName = item.fee_schedule_program.name;
36
+ var requestText = "Request #".concat(item.short_id);
37
+ var requestLink = /*#__PURE__*/_react.default.createElement(_reactRouterDom.Link, {
38
+ to: "/authorizations/".concat(item.id)
39
+ }, requestText);
40
+ var createdDate = (0, _formatShortDate.default)(item.created_at);
41
+ var updatedDate = (0, _formatShortDate.default)(item.updated_at);
42
+ var startDate = (0, _formatShortDate.default)(item.service_starts_at);
43
+ var endDate = (0, _formatShortDate.default)(item.service_ends_at);
44
+ var caseOpenedDate = item !== null && item !== void 0 && item.case_opened_date ? (0, _formatShortDate.default)(item.case_opened_date) : '';
45
+ var caseClosedDate = item !== null && item !== void 0 && item.case_closed_date ? (0, _formatShortDate.default)(item.case_closed_date) : '';
46
+ var requestId = !isCurrentItem && enabledLink ? requestLink : requestText;
47
+ return /*#__PURE__*/_react.default.createElement(_Card.default, {
48
+ className: (0, _classnames.default)(cardClassName, isCurrentItem && 'bg-light-border-grey')
49
+ }, isCurrentItem && /*#__PURE__*/_react.default.createElement("div", {
50
+ className: "italic pt-4 px-4"
51
+ }, "This is the request you are currently viewing."), programName && !isCurrentItem && /*#__PURE__*/_react.default.createElement("div", {
52
+ className: "font-bold pt-4 px-4"
53
+ }, "Referral for ", programName), /*#__PURE__*/_react.default.createElement("dl", {
54
+ className: "grid grid-cols-2 gap-y-1 gap-x-2 py-3 px-4 m-0"
55
+ }, /*#__PURE__*/_react.default.createElement(_LineItem.default, {
56
+ fieldClassName: fieldClassName,
57
+ field: requestId,
58
+ dataTestElement: "request-short-id",
59
+ valueClassName: valueClassName
60
+ }, isAuthorized ? (0, _concat.default)(_context = "".concat(isAutoApproved ? 'Auto ' : '', "Accepted on ")).call(_context, updatedDate) : "Open since ".concat(createdDate)), /*#__PURE__*/_react.default.createElement(_LineItem.default, {
61
+ fieldClassName: fieldClassName,
62
+ field: isAuthorized ? 'Authorized Amount' : 'Amount Requested',
63
+ "data-test-element": "request-amount",
64
+ valueClassName: valueClassName
65
+ }, /*#__PURE__*/_react.default.createElement(_Spend.default, {
66
+ isCostBased: isCostBased,
67
+ amount: item.spend,
68
+ unit: unit
69
+ })), /*#__PURE__*/_react.default.createElement(_LineItem.default, {
70
+ fieldClassName: fieldClassName,
71
+ field: isAuthorized ? 'Authorized Service Period' : 'Requested Service Dates',
72
+ dataTestElement: "service-period",
73
+ valueClassName: valueClassName
74
+ }, startDate, " - ", endDate), /*#__PURE__*/_react.default.createElement(_LineItem.default, {
75
+ fieldClassName: fieldClassName,
76
+ field: isAuthorized ? 'Case Status' : 'Requester',
77
+ dataTestElement: "case-status",
78
+ valueClassName: valueClassName
79
+ }, isAuthorized ? /*#__PURE__*/_react.default.createElement(_CaseStatus.default, {
80
+ state: item.case_state,
81
+ openedDate: caseOpenedDate,
82
+ closedDate: caseClosedDate
83
+ }) : item.requester_name)));
84
+ };
85
+ AuthorizationSpendCard.propTypes = {
86
+ item: _propTypes.PropTypes.shape({
87
+ auto_approved: _propTypes.PropTypes.bool.isRequired,
88
+ case_opened_date: _propTypes.PropTypes.string.isRequired,
89
+ case_closed_date: _propTypes.PropTypes.string.isRequired,
90
+ case_state: _propTypes.PropTypes.string.isRequired,
91
+ created_at: _propTypes.PropTypes.string.isRequired,
92
+ id: _propTypes.PropTypes.string.isRequired,
93
+ fee_schedule_program: _propTypes.PropTypes.shape({
94
+ name: _propTypes.PropTypes.string.isRequired
95
+ }),
96
+ requester_name: _propTypes.PropTypes.string.isRequired,
97
+ service_starts_at: _propTypes.PropTypes.string.isRequired,
98
+ service_ends_at: _propTypes.PropTypes.string.isRequired,
99
+ short_id: _propTypes.PropTypes.string.isRequired,
100
+ state: _propTypes.PropTypes.string.isRequired,
101
+ spend: _propTypes.PropTypes.number.isRequired,
102
+ updated_at: _propTypes.PropTypes.string.isRequired
103
+ }).isRequired,
104
+ isCostBased: _propTypes.PropTypes.bool.isRequired,
105
+ unit: _propTypes.PropTypes.string.isRequired,
106
+ isAuthorized: _propTypes.PropTypes.bool.isRequired,
107
+ isCurrentItem: _propTypes.PropTypes.bool,
108
+ fieldClassName: _propTypes.PropTypes.string,
109
+ cardClassName: _propTypes.PropTypes.string,
110
+ valueClassName: _propTypes.PropTypes.string,
111
+ enabledLink: _propTypes.PropTypes.bool
112
+ };
113
+ AuthorizationSpendCard.defaultProps = {
114
+ isCurrentItem: false,
115
+ fieldClassName: 'text-brand-blue text-sm leading-5 ml-0',
116
+ cardClassName: '',
117
+ valueClassName: 'text-brand-blue text-sm leading-5 ml-0',
118
+ enabledLink: false
119
+ };
120
+ var _default = exports.default = AuthorizationSpendCard;
121
+ //# sourceMappingURL=AuthorizationSpendCard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AuthorizationSpendCard.js","names":["_react","_interopRequireDefault","require","_classnames","_propTypes","_reactRouterDom","_ApiHooks","_Card","_LineItem","_formatShortDate","_Spend","_CaseStatus","AuthorizationSpendCard","_ref","_context","item","unit","isAuthorized","isCostBased","isCurrentItem","fieldClassName","cardClassName","enabledLink","valueClassName","usePopulate","placeholderData","undefined","isAutoApproved","auto_approved","programName","fee_schedule_program","name","requestText","concat","short_id","requestLink","default","createElement","Link","to","id","createdDate","formatShortDate","created_at","updatedDate","updated_at","startDate","service_starts_at","endDate","service_ends_at","caseOpenedDate","case_opened_date","caseClosedDate","case_closed_date","requestId","className","cx","field","dataTestElement","_concat","call","amount","spend","state","case_state","openedDate","closedDate","requester_name","propTypes","PropTypes","shape","bool","isRequired","string","number","defaultProps","_default","exports"],"sources":["../../../src/components/service_authorization/AuthorizationSpendCard.jsx"],"sourcesContent":["import React from 'react';\nimport cx from 'classnames';\nimport { PropTypes } from 'prop-types';\nimport { Link } from 'react-router-dom';\nimport { usePopulate } from '../../api/ApiHooks';\nimport Card from '../Card';\nimport LineItem from '../../pages/builder/LineItem';\nimport formatShortDate from './formatShortDate';\nimport Spend from './Spend';\nimport CaseStatus from './CaseStatus';\n\nconst AuthorizationSpendCard = (\n {\n item,\n unit,\n isAuthorized,\n isCostBased,\n isCurrentItem,\n fieldClassName,\n cardClassName,\n enabledLink,\n valueClassName,\n },\n) => {\n usePopulate('fee_schedule_program', 'fee_schedule_program', item, { placeholderData: undefined });\n const isAutoApproved = item.auto_approved;\n const programName = item.fee_schedule_program.name;\n const requestText = `Request #${item.short_id}`;\n const requestLink = <Link to={`/authorizations/${item.id}`}>{requestText}</Link>\n const createdDate = formatShortDate(item.created_at);\n const updatedDate = formatShortDate(item.updated_at);\n const startDate = formatShortDate(item.service_starts_at);\n const endDate = formatShortDate(item.service_ends_at);\n const caseOpenedDate = item?.case_opened_date ? formatShortDate(item.case_opened_date) : '';\n const caseClosedDate = item?.case_closed_date ? formatShortDate(item.case_closed_date) : '';\n const requestId = !isCurrentItem && enabledLink ? requestLink : requestText;\n\n return (\n <Card className={cx(cardClassName, isCurrentItem && 'bg-light-border-grey')}>\n {isCurrentItem && (\n <div className=\"italic pt-4 px-4\">\n This is the request you are currently viewing.\n </div>\n )}\n { programName && !isCurrentItem && (\n <div className=\"font-bold pt-4 px-4\">\n Referral for {programName}\n </div>\n )}\n <dl className=\"grid grid-cols-2 gap-y-1 gap-x-2 py-3 px-4 m-0\">\n <LineItem\n fieldClassName={fieldClassName}\n field={requestId}\n dataTestElement=\"request-short-id\"\n valueClassName={valueClassName}\n >\n {isAuthorized ?\n `${isAutoApproved ? 'Auto ' : ''}Accepted on ${updatedDate}` :\n `Open since ${createdDate}`}\n </LineItem>\n <LineItem\n fieldClassName={fieldClassName}\n field={isAuthorized ? 'Authorized Amount' : 'Amount Requested'}\n data-test-element=\"request-amount\"\n valueClassName={valueClassName}\n >\n <Spend isCostBased={isCostBased} amount={item.spend} unit={unit}/>\n </LineItem>\n <LineItem\n fieldClassName={fieldClassName}\n field={isAuthorized ? 'Authorized Service Period' : 'Requested Service Dates'}\n dataTestElement=\"service-period\"\n valueClassName={valueClassName}\n >\n {startDate} - {endDate}\n </LineItem>\n <LineItem\n fieldClassName={fieldClassName}\n field={isAuthorized ? 'Case Status' : 'Requester'}\n dataTestElement=\"case-status\"\n valueClassName={valueClassName}\n >\n { isAuthorized ? (\n <CaseStatus\n state={item.case_state}\n openedDate={caseOpenedDate}\n closedDate={caseClosedDate}\n />\n ) : item.requester_name}\n </LineItem>\n </dl>\n </Card>\n );\n};\n\nAuthorizationSpendCard.propTypes = {\n item: PropTypes.shape({\n auto_approved: PropTypes.bool.isRequired,\n case_opened_date: PropTypes.string.isRequired,\n case_closed_date: PropTypes.string.isRequired,\n case_state: PropTypes.string.isRequired,\n created_at: PropTypes.string.isRequired,\n id: PropTypes.string.isRequired,\n fee_schedule_program: PropTypes.shape({\n name: PropTypes.string.isRequired,\n }),\n requester_name: PropTypes.string.isRequired,\n service_starts_at: PropTypes.string.isRequired,\n service_ends_at: PropTypes.string.isRequired,\n short_id: PropTypes.string.isRequired,\n state: PropTypes.string.isRequired,\n spend: PropTypes.number.isRequired,\n updated_at: PropTypes.string.isRequired,\n }).isRequired,\n isCostBased: PropTypes.bool.isRequired,\n unit: PropTypes.string.isRequired,\n isAuthorized: PropTypes.bool.isRequired,\n isCurrentItem: PropTypes.bool,\n fieldClassName: PropTypes.string,\n cardClassName: PropTypes.string,\n valueClassName: PropTypes.string,\n enabledLink: PropTypes.bool,\n};\n\nAuthorizationSpendCard.defaultProps = {\n isCurrentItem: false,\n fieldClassName: 'text-brand-blue text-sm leading-5 ml-0',\n cardClassName: '',\n valueClassName: 'text-brand-blue text-sm leading-5 ml-0',\n enabledLink: false,\n};\n\nexport default AuthorizationSpendCard;\n"],"mappings":"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"}
@@ -9,20 +9,21 @@ _Object$defineProperty(exports, "__esModule", {
9
9
  value: true
10
10
  });
11
11
  exports.default = void 0;
12
+ var _concat = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/concat"));
12
13
  var _keys = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/keys"));
13
14
  var _includes = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/includes"));
14
15
  var _react = _interopRequireWildcard(require("react"));
15
16
  var _propTypes = _interopRequireDefault(require("prop-types"));
16
17
  var _moment = _interopRequireDefault(require("moment"));
17
18
  var _lodash = require("lodash");
18
- var _pluralize = _interopRequireDefault(require("pluralize"));
19
19
  var _reactFinalForm = require("react-final-form");
20
20
  var _messageConstants = require("./messageConstants");
21
+ var _PreviousAuthorizationRequestsDetails = _interopRequireDefault(require("./PreviousAuthorizationRequestsDetails"));
21
22
  var _formatShortDate = _interopRequireDefault(require("./formatShortDate"));
22
23
  var _LineItem = _interopRequireDefault(require("../../pages/builder/LineItem"));
23
24
  var _usePerson = _interopRequireDefault(require("../../hooks/usePerson"));
24
25
  var _ApiHooks = require("../../api/ApiHooks");
25
- var _DollarAmount = _interopRequireDefault(require("../DollarAmount"));
26
+ var _Spend = _interopRequireDefault(require("./Spend"));
26
27
  var _ErrorMessage = _interopRequireDefault(require("../../common/form/ErrorMessage"));
27
28
  var _useFeatureFlag = require("../../utils/useFeatureFlag");
28
29
  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); }
@@ -43,27 +44,12 @@ InformationText.propTypes = {
43
44
  value: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.node, _propTypes.default.number]).isRequired,
44
45
  isLoaded: _propTypes.default.bool.isRequired
45
46
  };
46
- function Spend(_ref2) {
47
- var amount = _ref2.amount,
48
- unit = _ref2.unit,
49
- isCostBased = _ref2.isCostBased;
50
- return isCostBased ? /*#__PURE__*/_react.default.createElement(_DollarAmount.default, {
51
- convertCents: true,
52
- value: amount
53
- }) : /*#__PURE__*/_react.default.createElement("span", null, amount, " ", (0, _pluralize.default)(unit || '', amount));
54
- }
55
- ;
56
- Spend.propTypes = {
57
- amount: _propTypes.default.number.isRequired,
58
- unit: _propTypes.default.string,
59
- isCostBased: _propTypes.default.bool.isRequired
60
- };
61
- function CapsInfo(_ref3) {
62
- var _formValues$paymentAu, _formValues$paymentAu2, _formValues$paymentAu3, _formState$errors;
63
- var formValues = _ref3.formValues,
64
- feeScheduleProgram = _ref3.feeScheduleProgram,
65
- isCostBased = _ref3.isCostBased,
66
- assignReferralErrors = _ref3.assignReferralErrors;
47
+ function CapsInfo(_ref2) {
48
+ var _formValues$paymentAu, _formValues$paymentAu2, _context, _formValues$paymentAu3, _formState$errors;
49
+ var formValues = _ref2.formValues,
50
+ feeScheduleProgram = _ref2.feeScheduleProgram,
51
+ isCostBased = _ref2.isCostBased,
52
+ assignReferralErrors = _ref2.assignReferralErrors;
67
53
  var serviceStart = formValues === null || formValues === void 0 || (_formValues$paymentAu = formValues.paymentAuthForm) === null || _formValues$paymentAu === void 0 ? void 0 : _formValues$paymentAu.service_start;
68
54
  var requestedStartDate = serviceStart && _moment.default.unix(serviceStart).toISOString();
69
55
  var serviceEnd = formValues === null || formValues === void 0 || (_formValues$paymentAu2 = formValues.paymentAuthForm) === null || _formValues$paymentAu2 === void 0 ? void 0 : _formValues$paymentAu2.service_end;
@@ -104,29 +90,46 @@ function CapsInfo(_ref3) {
104
90
  isFindInsuranceSuccess = _useFind2.isSuccess,
105
91
  isFindInsuranceLoading = _useFind2.isLoading;
106
92
  var isInsuranceLoaded = isFindInsuranceSuccess || !isFindInsuranceLoading;
93
+ var isLoaded = !isFetching && !isLoading;
107
94
  var insurances = (0, _lodash.get)(insurancesData, 'data.data', []);
108
95
  var invalidInsuranceAuthorizationDates = !(insurances !== null && insurances !== void 0 && insurances.length);
109
- var isLoaded = !isFetching && !isLoading;
96
+ var unit = feeScheduleProgram === null || feeScheduleProgram === void 0 ? void 0 : feeScheduleProgram.unit;
110
97
  var authorizationSpends = (0, _lodash.get)(authorizedSpendsData, 'data.data', []); //todo use this on the modal
111
98
  var totalApprovedSpend = (0, _lodash.get)(authorizedSpendsData, 'data.meta.total_approved_spend', 0);
112
99
  var totalRequestedSpend = (0, _lodash.get)(authorizedSpendsData, 'data.meta.total_requested_spend', 0);
100
+ var totalCap = (0, _lodash.get)(authorizedSpendsData, 'data.meta.total_cap', 0);
113
101
  var authorizationSpendsErrors = (0, _lodash.get)(authorizedSpendsData, 'data.meta.errors', []);
114
102
  var availableCap = (0, _lodash.get)(authorizedSpendsData, 'data.meta.available_cap', 0);
115
- var totalCap = (0, _lodash.get)(authorizedSpendsData, 'data.meta.total_cap', 0);
103
+ var formattedAvailableAmount = /*#__PURE__*/_react.default.createElement(_Spend.default, {
104
+ isCostBased: isCostBased,
105
+ amount: availableCap,
106
+ unit: unit
107
+ });
116
108
  var showClientUtilizationError = authorizationSpendsErrors.some(function (e) {
117
109
  return e.title === _messageConstants.UTILIZATION_ERROR;
118
110
  });
119
111
  var showPassthroughDatesError = authorizationSpendsErrors.some(function (e) {
120
112
  return e.title === _messageConstants.DATES_ERROR;
121
113
  });
122
- var startDate = (0, _moment.default)(authorizedSpendsData === null || authorizedSpendsData === void 0 ? void 0 : authorizedSpendsData.cap_starts_at).utc().startOf('day');
114
+ var startDate = (0, _moment.default)((0, _lodash.get)(authorizedSpendsData, 'data.meta.cap_stars_at')).utc().startOf('day');
115
+ var endDate = (0, _moment.default)((0, _lodash.get)(authorizedSpendsData, 'data.meta.cap_ends_at')).utc().endOf('day');
123
116
  var hasCap = feeScheduleProgram === null || feeScheduleProgram === void 0 ? void 0 : feeScheduleProgram.has_cap;
124
- var formattedCap = hasCap ? /*#__PURE__*/_react.default.createElement(Spend, {
117
+ var formattedCap = hasCap ? /*#__PURE__*/_react.default.createElement(_Spend.default, {
125
118
  amount: totalCap,
126
- unit: feeScheduleProgram === null || feeScheduleProgram === void 0 ? void 0 : feeScheduleProgram.unit,
119
+ unit: unit,
127
120
  isCostBased: isCostBased
128
121
  }) : 'No Cap';
129
- var formattedCapPeriod = (feeScheduleProgram === null || feeScheduleProgram === void 0 ? void 0 : feeScheduleProgram.cap_reset_cadence) === 'lifetime' ? 'Lifetime' : "".concat((0, _formatShortDate.default)(startDate));
122
+ var formattedTotalApprovedSpend = /*#__PURE__*/_react.default.createElement(_Spend.default, {
123
+ isCostBased: isCostBased,
124
+ amount: totalApprovedSpend,
125
+ unit: unit
126
+ });
127
+ var formattedTotalRequestedSpend = /*#__PURE__*/_react.default.createElement(_Spend.default, {
128
+ isCostBased: isCostBased,
129
+ amount: totalRequestedSpend,
130
+ unit: unit
131
+ });
132
+ var formattedCapPeriod = (feeScheduleProgram === null || feeScheduleProgram === void 0 ? void 0 : feeScheduleProgram.cap_reset_cadence) === 'lifetime' ? 'Lifetime' : (0, _concat.default)(_context = "".concat((0, _formatShortDate.default)(startDate), " - ")).call(_context, (0, _formatShortDate.default)(endDate));
130
133
  var amountRequested = formValues === null || formValues === void 0 || (_formValues$paymentAu3 = formValues.paymentAuthForm) === null || _formValues$paymentAu3 === void 0 ? void 0 : _formValues$paymentAu3.amount_requested;
131
134
  var isAmountExceeded = (0, _lodash.isNumber)(amountRequested) && hasCap && amountRequested > availableCap;
132
135
  var formState = (0, _reactFinalForm.useFormState)();
@@ -139,8 +142,8 @@ function CapsInfo(_ref3) {
139
142
  if (isAmountExceeded) errors.push('amount_requested');
140
143
  if (authFormErrors) {
141
144
  (0, _keys.default)(authFormErrors).forEach(function (key) {
142
- var _context;
143
- if (key === 'amount_requested' && (0, _includes.default)(_context = authFormErrors[key]).call(_context, 'Required')) {
145
+ var _context2;
146
+ if (key === 'amount_requested' && (0, _includes.default)(_context2 = authFormErrors[key]).call(_context2, 'Required')) {
144
147
  return;
145
148
  }
146
149
  errors.push("paymentAuthForm.".concat(key));
@@ -161,19 +164,11 @@ function CapsInfo(_ref3) {
161
164
  }, "AMOUNT AVAILABLE FOR AUTHORIZATION"),
162
165
  value: /*#__PURE__*/_react.default.createElement("span", {
163
166
  className: "font-bold"
164
- }, /*#__PURE__*/_react.default.createElement(Spend, {
165
- isCostBased: isCostBased,
166
- amount: availableCap,
167
- unit: feeScheduleProgram === null || feeScheduleProgram === void 0 ? void 0 : feeScheduleProgram.unit
168
- })),
167
+ }, formattedAvailableAmount),
169
168
  isLoaded: isLoaded
170
169
  }), /*#__PURE__*/_react.default.createElement(InformationText, {
171
170
  name: "Amount Currently Authorized",
172
- value: /*#__PURE__*/_react.default.createElement(Spend, {
173
- isCostBased: isCostBased,
174
- amount: totalApprovedSpend,
175
- unit: feeScheduleProgram === null || feeScheduleProgram === void 0 ? void 0 : feeScheduleProgram.unit
176
- }),
171
+ value: formattedTotalApprovedSpend,
177
172
  isLoaded: isLoaded
178
173
  }), hasCap && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(InformationText, {
179
174
  name: "Cap",
@@ -185,15 +180,22 @@ function CapsInfo(_ref3) {
185
180
  isLoaded: isLoaded
186
181
  })), /*#__PURE__*/_react.default.createElement(InformationText, {
187
182
  name: "Amount Pending Authorization",
188
- value: /*#__PURE__*/_react.default.createElement(Spend, {
189
- isCostBased: isCostBased,
190
- amount: totalRequestedSpend,
191
- unit: feeScheduleProgram === null || feeScheduleProgram === void 0 ? void 0 : feeScheduleProgram.unit
192
- }),
183
+ value: formattedTotalRequestedSpend,
193
184
  isLoaded: isLoaded
194
- }), /*#__PURE__*/_react.default.createElement("div", {
195
- className: "mt-6"
196
- }, "View Details"), isAmountExceeded && /*#__PURE__*/_react.default.createElement("div", {
185
+ }), /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement(_PreviousAuthorizationRequestsDetails.default, {
186
+ authorizationSpends: authorizationSpends,
187
+ totalApprovedSpend: formattedTotalApprovedSpend,
188
+ totalRequestedSpend: formattedTotalRequestedSpend,
189
+ unit: unit,
190
+ isCostBased: isCostBased,
191
+ capInfo: {
192
+ hasCap: hasCap,
193
+ formattedCap: formattedCap,
194
+ formattedCapPeriod: formattedCapPeriod,
195
+ startDate: startDate
196
+ },
197
+ amountAvailable: formattedAvailableAmount
198
+ })), isAmountExceeded && /*#__PURE__*/_react.default.createElement("div", {
197
199
  className: "col-span-2 px-0 flex space-x-2 mt-6 mb-0"
198
200
  }, /*#__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", {
199
201
  className: "col-span-2 px-0 flex space-x-2 mt-6 mb-0"
@@ -1 +1 @@
1
- {"version":3,"file":"CapsInfo.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_moment","_lodash","_pluralize","_reactFinalForm","_messageConstants","_formatShortDate","_LineItem","_usePerson","_ApiHooks","_DollarAmount","_ErrorMessage","_useFeatureFlag","_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","pays5590RefactorInsuranceFilters","useFeatureFlag","add","subtract","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';\nimport { useFeatureFlag } from '../../utils/useFeatureFlag';\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 let requestedStartDate = serviceStart && moment.unix(serviceStart).toISOString();\n const serviceEnd = formValues?.paymentAuthForm?.service_end;\n let requestedEndDate = serviceEnd && moment.unix(serviceEnd).toISOString();\n\n const pays5590RefactorInsuranceFilters = useFeatureFlag('pays5590RefactorInsuranceFilters', false);\n\n if (pays5590RefactorInsuranceFilters) {\n requestedStartDate = serviceStart && moment(requestedStartDate).add(1, 'day').toISOString();\n requestedEndDate = serviceEnd && moment(requestedEndDate).subtract(1, 'day').toISOString();\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: 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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"}
1
+ {"version":3,"file":"CapsInfo.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_moment","_lodash","_reactFinalForm","_messageConstants","_PreviousAuthorizationRequestsDetails","_formatShortDate","_LineItem","_usePerson","_ApiHooks","_Spend","_ErrorMessage","_useFeatureFlag","_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","CapsInfo","_ref2","_formValues$paymentAu","_formValues$paymentAu2","_context","_formValues$paymentAu3","_formState$errors","formValues","feeScheduleProgram","isCostBased","assignReferralErrors","serviceStart","paymentAuthForm","service_start","requestedStartDate","moment","unix","toISOString","serviceEnd","service_end","requestedEndDate","pays5590RefactorInsuranceFilters","useFeatureFlag","add","subtract","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","unit","authorizationSpends","totalApprovedSpend","totalRequestedSpend","totalCap","authorizationSpendsErrors","availableCap","formattedAvailableAmount","amount","showClientUtilizationError","some","title","UTILIZATION_ERROR","showPassthroughDatesError","DATES_ERROR","startDate","utc","startOf","endDate","endOf","hasCap","has_cap","formattedCap","formattedTotalApprovedSpend","formattedTotalRequestedSpend","formattedCapPeriod","cap_reset_cadence","_concat","concat","formatShortDate","amountRequested","amount_requested","isAmountExceeded","isNumber","formState","useFormState","authFormErrors","errors","useEffect","push","_keys","forEach","key","_context2","_includes","className","Fragment","isValid","capInfo","amountAvailable","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 { useFormState } from 'react-final-form';\nimport { UTILIZATION_ERROR, DATES_ERROR } from './messageConstants';\nimport PreviousAuthorizationRequestsDetails from './PreviousAuthorizationRequestsDetails';\nimport formatShortDate from './formatShortDate';\nimport LineItem from '../../pages/builder/LineItem';\nimport usePerson from '../../hooks/usePerson';\nimport { useFind } from '../../api/ApiHooks';\nimport Spend from './Spend';\nimport ErrorMessage from '../../common/form/ErrorMessage';\nimport { useFeatureFlag } from '../../utils/useFeatureFlag';\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 CapsInfo({\n formValues,\n feeScheduleProgram,\n isCostBased,\n assignReferralErrors,\n}) {\n\n const serviceStart = formValues?.paymentAuthForm?.service_start;\n let requestedStartDate = serviceStart && moment.unix(serviceStart).toISOString();\n const serviceEnd = formValues?.paymentAuthForm?.service_end;\n let requestedEndDate = serviceEnd && moment.unix(serviceEnd).toISOString();\n\n const pays5590RefactorInsuranceFilters = useFeatureFlag('pays5590RefactorInsuranceFilters', false);\n\n if (pays5590RefactorInsuranceFilters) {\n requestedStartDate = serviceStart && moment(requestedStartDate).add(1, 'day').toISOString();\n requestedEndDate = serviceEnd && moment(requestedEndDate).subtract(1, 'day').toISOString();\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: 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 isLoaded = !isFetching && !isLoading;\n\n const insurances = get(insurancesData, 'data.data', []);\n const invalidInsuranceAuthorizationDates = !insurances?.length;\n\n const unit = feeScheduleProgram?.unit;\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 totalCap = get(authorizedSpendsData, 'data.meta.total_cap', 0);\n const authorizationSpendsErrors = get(authorizedSpendsData, 'data.meta.errors', []);\n const availableCap = get(authorizedSpendsData, 'data.meta.available_cap', 0);\n const formattedAvailableAmount = <Spend isCostBased={isCostBased} amount={availableCap} unit={unit}/>;\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(get(authorizedSpendsData, 'data.meta.cap_stars_at')).utc().startOf('day');\n const endDate = moment(get(authorizedSpendsData, 'data.meta.cap_ends_at')).utc().endOf('day');\n const hasCap = feeScheduleProgram?.has_cap;\n const formattedCap = hasCap ? <Spend amount={totalCap} unit={unit} isCostBased={isCostBased}/> : 'No Cap';\n const formattedTotalApprovedSpend = <Spend isCostBased={isCostBased} amount={totalApprovedSpend} unit={unit}/>;\n const formattedTotalRequestedSpend = <Spend isCostBased={isCostBased} amount={totalRequestedSpend} unit={unit}/>;\n const formattedCapPeriod = feeScheduleProgram?.cap_reset_cadence === 'lifetime' ?\n 'Lifetime' : `${formatShortDate(startDate)} - ${formatShortDate(endDate)}`;\n\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 {formattedAvailableAmount}\n </span>\n )}\n isLoaded={isLoaded}\n />\n )}\n <InformationText\n name=\"Amount Currently Authorized\"\n value={formattedTotalApprovedSpend}\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 formattedTotalRequestedSpend\n }\n isLoaded={isLoaded}\n />\n <div>\n <PreviousAuthorizationRequestsDetails\n authorizationSpends={authorizationSpends}\n totalApprovedSpend={formattedTotalApprovedSpend}\n totalRequestedSpend={formattedTotalRequestedSpend}\n unit={unit}\n isCostBased={isCostBased}\n capInfo={{hasCap, formattedCap, formattedCapPeriod, startDate}}\n amountAvailable={formattedAvailableAmount}\n />\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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"}
@@ -0,0 +1,68 @@
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 _classnames = _interopRequireDefault(require("classnames"));
11
+ var _propTypes = require("prop-types");
12
+ var _ui = require("@unite-us/ui");
13
+ var CaseStatus = function CaseStatus(_ref) {
14
+ var state = _ref.state,
15
+ openedDate = _ref.openedDate,
16
+ closedDate = _ref.closedDate,
17
+ showStatusDot = _ref.showStatusDot;
18
+ var text = state;
19
+ var colorClass = 'text-dark-green';
20
+
21
+ // Closed is not a case state; make sure to display Closed text if there is a closed date present
22
+ if (closedDate) {
23
+ text = "Closed on ".concat(closedDate);
24
+ colorClass = 'text-red';
25
+ } else {
26
+ // non-closed cases:
27
+ switch (state) {
28
+ case 'referred':
29
+ text = 'Referral Sent';
30
+ break;
31
+ case 'accepted':
32
+ case 'managed':
33
+ case 'off_platform':
34
+ text = openedDate ? "Opened on ".concat(openedDate) : 'Opened';
35
+ break;
36
+ case 'deferred':
37
+ text = 'Referral Not Accepted';
38
+ colorClass = 'text-red';
39
+ break;
40
+ case 'pending_authorization':
41
+ text = 'Pending Authorization';
42
+ colorClass = 'text-yellow';
43
+ break;
44
+ default:
45
+ break;
46
+ }
47
+ }
48
+ return /*#__PURE__*/_react.default.createElement("div", {
49
+ className: "flex"
50
+ }, showStatusDot && /*#__PURE__*/_react.default.createElement(_ui.Icon, {
51
+ className: (0, _classnames.default)('w-8 -ml-4 fill-current', colorClass),
52
+ size: 26,
53
+ icon: "IconCircle"
54
+ }), text);
55
+ };
56
+ CaseStatus.propTypes = {
57
+ state: _propTypes.PropTypes.string.isRequired,
58
+ openedDate: _propTypes.PropTypes.string,
59
+ closedDate: _propTypes.PropTypes.string,
60
+ showStatusDot: _propTypes.PropTypes.bool
61
+ };
62
+ CaseStatus.defaultProps = {
63
+ openedDate: '',
64
+ closedDate: '',
65
+ showStatusDot: true
66
+ };
67
+ var _default = exports.default = CaseStatus;
68
+ //# sourceMappingURL=CaseStatus.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CaseStatus.js","names":["_react","_interopRequireDefault","require","_classnames","_propTypes","_ui","CaseStatus","_ref","state","openedDate","closedDate","showStatusDot","text","colorClass","concat","default","createElement","className","Icon","cx","size","icon","propTypes","PropTypes","string","isRequired","bool","defaultProps","_default","exports"],"sources":["../../../src/components/service_authorization/CaseStatus.jsx"],"sourcesContent":["import React from 'react';\nimport cx from 'classnames';\nimport { PropTypes } from 'prop-types';\nimport { Icon } from '@unite-us/ui';\n\nconst CaseStatus = ({\n state,\n openedDate,\n closedDate,\n showStatusDot,\n}) => {\n let text = state;\n let colorClass = 'text-dark-green';\n\n // Closed is not a case state; make sure to display Closed text if there is a closed date present\n if (closedDate) {\n text = `Closed on ${closedDate}`;\n colorClass = 'text-red';\n } else { // non-closed cases:\n switch (state) {\n case 'referred':\n text = 'Referral Sent';\n break;\n case 'accepted':\n case 'managed':\n case 'off_platform':\n text = openedDate ? `Opened on ${openedDate}` : 'Opened';\n break;\n case 'deferred':\n text = 'Referral Not Accepted';\n colorClass = 'text-red';\n break;\n case 'pending_authorization':\n text = 'Pending Authorization';\n colorClass = 'text-yellow';\n break;\n default:\n break;\n }\n }\n\n return (\n <div className=\"flex\">\n { showStatusDot &&\n (\n <Icon\n className={cx('w-8 -ml-4 fill-current', colorClass)}\n size={26}\n icon=\"IconCircle\"\n />\n )}\n {text}\n </div>\n );\n};\n\nCaseStatus.propTypes = {\n state: PropTypes.string.isRequired,\n openedDate: PropTypes.string,\n closedDate: PropTypes.string,\n showStatusDot: PropTypes.bool,\n};\n\nCaseStatus.defaultProps = {\n openedDate: '',\n closedDate: '',\n showStatusDot: true,\n};\n\nexport default CaseStatus;\n"],"mappings":";;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,WAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,UAAA,GAAAF,OAAA;AACA,IAAAG,GAAA,GAAAH,OAAA;AAEA,IAAMI,UAAU,GAAG,SAAbA,UAAUA,CAAAC,IAAA,EAKV;EAAA,IAJJC,KAAK,GAAAD,IAAA,CAALC,KAAK;IACLC,UAAU,GAAAF,IAAA,CAAVE,UAAU;IACVC,UAAU,GAAAH,IAAA,CAAVG,UAAU;IACVC,aAAa,GAAAJ,IAAA,CAAbI,aAAa;EAEb,IAAIC,IAAI,GAAGJ,KAAK;EAChB,IAAIK,UAAU,GAAG,iBAAiB;;EAElC;EACA,IAAIH,UAAU,EAAE;IACdE,IAAI,gBAAAE,MAAA,CAAgBJ,UAAU,CAAE;IAChCG,UAAU,GAAG,UAAU;EACzB,CAAC,MAAM;IAAE;IACP,QAAQL,KAAK;MACX,KAAK,UAAU;QACbI,IAAI,GAAG,eAAe;QACtB;MACF,KAAK,UAAU;MACf,KAAK,SAAS;MACd,KAAK,cAAc;QACjBA,IAAI,GAAGH,UAAU,gBAAAK,MAAA,CAAgBL,UAAU,IAAK,QAAQ;QACxD;MACF,KAAK,UAAU;QACbG,IAAI,GAAG,uBAAuB;QAC9BC,UAAU,GAAG,UAAU;QACvB;MACF,KAAK,uBAAuB;QAC1BD,IAAI,GAAG,uBAAuB;QAC9BC,UAAU,GAAG,aAAa;QAC1B;MACF;QACE;IACJ;EACF;EAEA,oBACEb,MAAA,CAAAe,OAAA,CAAAC,aAAA;IAAKC,SAAS,EAAC;EAAM,GACjBN,aAAa,iBAEXX,MAAA,CAAAe,OAAA,CAAAC,aAAA,CAACX,GAAA,CAAAa,IAAI;IACHD,SAAS,EAAE,IAAAE,mBAAE,EAAC,wBAAwB,EAAEN,UAAU,CAAE;IACpDO,IAAI,EAAE,EAAG;IACTC,IAAI,EAAC;EAAY,CAClB,CACF,EACFT,IACE,CAAC;AAEV,CAAC;AAEDN,UAAU,CAACgB,SAAS,GAAG;EACrBd,KAAK,EAAEe,oBAAS,CAACC,MAAM,CAACC,UAAU;EAClChB,UAAU,EAAEc,oBAAS,CAACC,MAAM;EAC5Bd,UAAU,EAAEa,oBAAS,CAACC,MAAM;EAC5Bb,aAAa,EAAEY,oBAAS,CAACG;AAC3B,CAAC;AAEDpB,UAAU,CAACqB,YAAY,GAAG;EACxBlB,UAAU,EAAE,EAAE;EACdC,UAAU,EAAE,EAAE;EACdC,aAAa,EAAE;AACjB,CAAC;AAAC,IAAAiB,QAAA,GAAAC,OAAA,CAAAd,OAAA,GAEaT,UAAU"}
@@ -0,0 +1,153 @@
1
+ "use strict";
2
+
3
+ var _typeof = require("@babel/runtime-corejs3/helpers/typeof");
4
+ var _WeakMap = require("@babel/runtime-corejs3/core-js-stable/weak-map");
5
+ var _Object$defineProperty = require("@babel/runtime-corejs3/core-js-stable/object/define-property");
6
+ var _Object$getOwnPropertyDescriptor = require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor");
7
+ var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
8
+ _Object$defineProperty(exports, "__esModule", {
9
+ value: true
10
+ });
11
+ exports.default = void 0;
12
+ var _filter = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/filter"));
13
+ var _react = _interopRequireWildcard(require("react"));
14
+ var _propTypes = require("prop-types");
15
+ var _ui = require("@unite-us/ui");
16
+ var _ReferralAuthSpendExpandable = _interopRequireDefault(require("./ReferralAuthSpendExpandable"));
17
+ var _LineItem = _interopRequireDefault(require("../../pages/builder/LineItem"));
18
+ require("./PreviousAuthorizationRequestsDetails.scss");
19
+ 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); }
20
+ 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; }
21
+ var filterByState = function filterByState(items) {
22
+ var approvedItems = (0, _filter.default)(items).call(items, function (item) {
23
+ return item.state === 'approved';
24
+ });
25
+ var requestedItems = (0, _filter.default)(items).call(items, function (item) {
26
+ return item.state === 'requested';
27
+ });
28
+ return {
29
+ approvedItems: approvedItems,
30
+ requestedItems: requestedItems
31
+ };
32
+ };
33
+ var PreviousAuthorizationRequestsDetails = function PreviousAuthorizationRequestsDetails(_ref) {
34
+ var _capInfo$startDate;
35
+ var authorizationSpends = _ref.authorizationSpends,
36
+ totalApprovedSpend = _ref.totalApprovedSpend,
37
+ totalRequestedSpend = _ref.totalRequestedSpend,
38
+ unit = _ref.unit,
39
+ isCostBased = _ref.isCostBased,
40
+ capInfo = _ref.capInfo,
41
+ amountAvailable = _ref.amountAvailable;
42
+ var modalRef = (0, _react.useRef)();
43
+ var closeModal = (0, _react.useCallback)(function () {
44
+ modalRef.current.closeDialog();
45
+ }, []);
46
+ var openModal = (0, _react.useCallback)(function () {
47
+ modalRef.current.openDialog();
48
+ }, []);
49
+ var _filterByState = filterByState(authorizationSpends),
50
+ approvedItems = _filterByState.approvedItems,
51
+ requestedItems = _filterByState.requestedItems;
52
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("button", {
53
+ "data-testid": "auth-requests-details-view-details-button",
54
+ type: "button",
55
+ onClick: openModal,
56
+ className: "focus:outline-none inline-block"
57
+ }, /*#__PURE__*/_react.default.createElement(_ui.Icon, {
58
+ icon: "IconExternalLink",
59
+ className: "fill-current text-action-blue"
60
+ }), /*#__PURE__*/_react.default.createElement("span", {
61
+ className: "text-action-blue ml-2"
62
+ }, "View details")), /*#__PURE__*/_react.default.createElement(_ui.Dialog, {
63
+ ref: modalRef,
64
+ title: "Authorization Request Details",
65
+ close: closeModal,
66
+ dataTestId: "auth-requests-details-dialog",
67
+ width: "3xl",
68
+ titleStyles: {
69
+ fontWeight: 600,
70
+ color: "#525F73"
71
+ }
72
+ }, /*#__PURE__*/_react.default.createElement("p", null, "This section shows the amount available for authorization, and related information based on the selected service delivery dates."), /*#__PURE__*/_react.default.createElement("hr", {
73
+ className: "my-3"
74
+ }), capInfo.hasCap && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("dl", {
75
+ className: "m-0 flex justify-between gap-2"
76
+ }, /*#__PURE__*/_react.default.createElement(_LineItem.default, {
77
+ field: "AMOUNT AVAILABLE FOR AUTHORIZATION",
78
+ dataTestElement: "auth-requests-details-amount-available",
79
+ valueClassName: "text-text-blue text-sm leading-5"
80
+ }, amountAvailable)), /*#__PURE__*/_react.default.createElement("p", {
81
+ className: "mt-3"
82
+ }, "The amount available for authorization is the cap minus the Amount Currently Authorized."), /*#__PURE__*/_react.default.createElement("hr", {
83
+ className: "my-3"
84
+ })), /*#__PURE__*/_react.default.createElement(_ReferralAuthSpendExpandable.default, {
85
+ title: "Amount Currently Authorized:",
86
+ items: approvedItems,
87
+ totalSpend: totalApprovedSpend,
88
+ unit: unit,
89
+ isAuthorized: true,
90
+ isCostBased: isCostBased
91
+ }), capInfo.hasCap && /*#__PURE__*/_react.default.createElement("p", {
92
+ className: "mt-3"
93
+ }, "Any currently authorized services that fall within the cap period are shown here."), /*#__PURE__*/_react.default.createElement("hr", {
94
+ className: "my-3"
95
+ }), capInfo.hasCap && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("dl", {
96
+ className: "m-0 flex flex-col gap-y-3 gap-x-2"
97
+ }, /*#__PURE__*/_react.default.createElement("div", {
98
+ className: "flex justify-between"
99
+ }, /*#__PURE__*/_react.default.createElement(_LineItem.default, {
100
+ field: "Cap",
101
+ dataTestElement: "auth-requests-details-cap",
102
+ fieldClassName: "text-dark-grey"
103
+ }, capInfo.formattedCap)), ((_capInfo$startDate = capInfo.startDate) === null || _capInfo$startDate === void 0 ? void 0 : _capInfo$startDate.isValid()) && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("hr", {
104
+ className: "col-span-2"
105
+ }), /*#__PURE__*/_react.default.createElement("div", {
106
+ className: "flex justify-between"
107
+ }, /*#__PURE__*/_react.default.createElement(_LineItem.default, {
108
+ field: "Cap Period",
109
+ dataTestElement: "auth-requests-details-cap-period",
110
+ fieldClassName: "text-dark-grey"
111
+ }, capInfo.formattedCapPeriod)), /*#__PURE__*/_react.default.createElement("p", null, "The cap period is based on the selected service delivery dates."))), /*#__PURE__*/_react.default.createElement("hr", {
112
+ className: "my-3 col-span-2"
113
+ })), /*#__PURE__*/_react.default.createElement(_ReferralAuthSpendExpandable.default, {
114
+ title: "Amount Pending Authorization:",
115
+ items: requestedItems,
116
+ totalSpend: totalRequestedSpend,
117
+ unit: unit,
118
+ isAuthorized: false,
119
+ isCostBased: isCostBased
120
+ }), capInfo.hasCap && /*#__PURE__*/_react.default.createElement("p", {
121
+ className: "my-3"
122
+ }, "If accepted, pending requests will count towards the cap and reduce the amount available for authorization."), /*#__PURE__*/_react.default.createElement("hr", {
123
+ className: "my-3"
124
+ })));
125
+ };
126
+ PreviousAuthorizationRequestsDetails.propTypes = {
127
+ authorizationSpends: _propTypes.PropTypes.arrayOf(_propTypes.PropTypes.shape({
128
+ id: _propTypes.PropTypes.string.isRequired,
129
+ short_id: _propTypes.PropTypes.string.isRequired,
130
+ state: _propTypes.PropTypes.string.isRequired,
131
+ spend: _propTypes.PropTypes.number.isRequired,
132
+ service_starts_at: _propTypes.PropTypes.string.isRequired,
133
+ service_ends_at: _propTypes.PropTypes.string.isRequired,
134
+ updated_at: _propTypes.PropTypes.string.isRequired,
135
+ created_at: _propTypes.PropTypes.string.isRequired
136
+ })).isRequired,
137
+ totalApprovedSpend: _propTypes.PropTypes.string.isRequired,
138
+ totalRequestedSpend: _propTypes.PropTypes.string.isRequired,
139
+ unit: _propTypes.PropTypes.string.isRequired,
140
+ capInfo: _propTypes.PropTypes.shape({
141
+ hasCap: _propTypes.PropTypes.bool.isRequired,
142
+ formattedCap: _propTypes.PropTypes.string,
143
+ formattedCapPeriod: _propTypes.PropTypes.string,
144
+ startDate: _propTypes.PropTypes.object
145
+ }).isRequired,
146
+ amountAvailable: _propTypes.PropTypes.string,
147
+ isCostBased: _propTypes.PropTypes.bool.isRequired
148
+ };
149
+ PreviousAuthorizationRequestsDetails.defaultProps = {
150
+ amountAvailable: null
151
+ };
152
+ var _default = exports.default = PreviousAuthorizationRequestsDetails;
153
+ //# sourceMappingURL=PreviousAuthorizationRequestsDetails.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PreviousAuthorizationRequestsDetails.js","names":["_react","_interopRequireWildcard","require","_propTypes","_ui","_ReferralAuthSpendExpandable","_interopRequireDefault","_LineItem","_getRequireWildcardCache","e","_WeakMap","r","t","__esModule","_typeof","default","has","get","n","__proto__","a","_Object$defineProperty","_Object$getOwnPropertyDescriptor","u","Object","prototype","hasOwnProperty","call","i","set","filterByState","items","approvedItems","_filter","item","state","requestedItems","PreviousAuthorizationRequestsDetails","_ref","_capInfo$startDate","authorizationSpends","totalApprovedSpend","totalRequestedSpend","unit","isCostBased","capInfo","amountAvailable","modalRef","useRef","closeModal","useCallback","current","closeDialog","openModal","openDialog","_filterByState","createElement","Fragment","type","onClick","className","Icon","icon","Dialog","ref","title","close","dataTestId","width","titleStyles","fontWeight","color","hasCap","field","dataTestElement","valueClassName","totalSpend","isAuthorized","fieldClassName","formattedCap","startDate","isValid","formattedCapPeriod","propTypes","PropTypes","arrayOf","shape","id","string","isRequired","short_id","spend","number","service_starts_at","service_ends_at","updated_at","created_at","bool","object","defaultProps","_default","exports"],"sources":["../../../src/components/service_authorization/PreviousAuthorizationRequestsDetails.jsx"],"sourcesContent":["import React, { useRef, useCallback } from 'react';\nimport { PropTypes } from 'prop-types';\nimport { Dialog, Icon } from '@unite-us/ui'; \nimport ReferralAuthSpendExpandable from './ReferralAuthSpendExpandable';\nimport LineItem from '../../pages/builder/LineItem';\nimport './PreviousAuthorizationRequestsDetails.scss';\n\n\nconst filterByState = (items) => {\n const approvedItems = items.filter((item) => item.state === 'approved');\n const requestedItems = items.filter((item) => item.state === 'requested');\n return { approvedItems, requestedItems };\n};\n\nconst PreviousAuthorizationRequestsDetails = (\n {\n authorizationSpends,\n totalApprovedSpend,\n totalRequestedSpend,\n unit,\n isCostBased,\n capInfo,\n amountAvailable,\n },\n) => {\n const modalRef = useRef();\n\n const closeModal = useCallback(() => {\n modalRef.current.closeDialog();\n }, []);\n\n const openModal = useCallback(() => {\n modalRef.current.openDialog();\n }, []);\n\n const { approvedItems, requestedItems } = filterByState(authorizationSpends);\n\n return (\n <>\n <button\n data-testid=\"auth-requests-details-view-details-button\"\n type=\"button\"\n onClick={openModal}\n className=\"focus:outline-none inline-block\"\n >\n <Icon icon=\"IconExternalLink\" className=\"fill-current text-action-blue\" />\n <span className=\"text-action-blue ml-2\">\n View details\n </span>\n </button>\n <Dialog\n ref={modalRef}\n title=\"Authorization Request Details\"\n close={closeModal}\n dataTestId=\"auth-requests-details-dialog\"\n width=\"3xl\"\n titleStyles={{fontWeight: 600, color: \"#525F73\"}}\n >\n <p>\n This section shows the amount available for authorization, and related information based on the selected service delivery dates.\n </p>\n <hr className=\"my-3\" />\n { capInfo.hasCap && (\n <>\n <dl className=\"m-0 flex justify-between gap-2\">\n <LineItem\n field=\"AMOUNT AVAILABLE FOR AUTHORIZATION\"\n dataTestElement=\"auth-requests-details-amount-available\"\n valueClassName=\"text-text-blue text-sm leading-5\"\n >\n {amountAvailable}\n </LineItem>\n </dl>\n <p className=\"mt-3\">\n The amount available for authorization is the cap minus the Amount Currently Authorized.\n </p>\n <hr className=\"my-3\" />\n </>\n )}\n\n <ReferralAuthSpendExpandable\n title=\"Amount Currently Authorized:\"\n items={approvedItems}\n totalSpend={totalApprovedSpend}\n unit={unit}\n isAuthorized\n isCostBased={isCostBased}\n />\n { capInfo.hasCap && (\n <p className=\"mt-3\">\n Any currently authorized services that fall within the cap period are shown here.\n </p>\n )}\n\n <hr className=\"my-3\" />\n\n { capInfo.hasCap && (\n <>\n <dl className=\"m-0 flex flex-col gap-y-3 gap-x-2\">\n <div className=\"flex justify-between\">\n <LineItem\n field=\"Cap\"\n dataTestElement=\"auth-requests-details-cap\"\n fieldClassName=\"text-dark-grey\"\n >\n {capInfo.formattedCap}\n </LineItem>\n </div>\n {capInfo.startDate?.isValid() && (\n <>\n <hr className=\"col-span-2\" />\n <div className=\"flex justify-between\">\n <LineItem\n field=\"Cap Period\"\n dataTestElement=\"auth-requests-details-cap-period\"\n fieldClassName=\"text-dark-grey\"\n >\n {capInfo.formattedCapPeriod}\n </LineItem>\n </div>\n <p>\n The cap period is based on the selected service delivery dates.\n </p>\n </>\n )}\n </dl>\n\n <hr className=\"my-3 col-span-2\" />\n </>\n )}\n\n <ReferralAuthSpendExpandable\n title=\"Amount Pending Authorization:\"\n items={requestedItems}\n totalSpend={totalRequestedSpend}\n unit={unit}\n isAuthorized={false}\n isCostBased={isCostBased}\n />\n\n { capInfo.hasCap && (\n <p className=\"my-3\">\n If accepted, pending requests will count towards the cap and reduce the amount available for authorization.\n </p>\n )}\n\n <hr className=\"my-3\" />\n\n </Dialog>\n </>\n );\n};\n\nPreviousAuthorizationRequestsDetails.propTypes = {\n authorizationSpends: PropTypes.arrayOf(\n PropTypes.shape({\n id: PropTypes.string.isRequired,\n short_id: PropTypes.string.isRequired,\n state: PropTypes.string.isRequired,\n spend: PropTypes.number.isRequired,\n service_starts_at: PropTypes.string.isRequired,\n service_ends_at: PropTypes.string.isRequired,\n updated_at: PropTypes.string.isRequired,\n created_at: PropTypes.string.isRequired,\n }),\n ).isRequired,\n totalApprovedSpend: PropTypes.string.isRequired,\n totalRequestedSpend: PropTypes.string.isRequired,\n unit: PropTypes.string.isRequired,\n capInfo: PropTypes.shape({\n hasCap: PropTypes.bool.isRequired,\n formattedCap: PropTypes.string,\n formattedCapPeriod: PropTypes.string,\n startDate: PropTypes.object,\n }).isRequired,\n amountAvailable: PropTypes.string,\n isCostBased: PropTypes.bool.isRequired,\n};\n\nPreviousAuthorizationRequestsDetails.defaultProps = {\n amountAvailable: null,\n};\n\nexport default PreviousAuthorizationRequestsDetails;\n"],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ @import '../../styles/variables';
2
+ .dialog {
3
+ & > .dialog-paper {
4
+ font-family: "Proxima Nova", "Open Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
5
+ }
6
+ }
@@ -0,0 +1,83 @@
1
+ "use strict";
2
+
3
+ var _typeof = require("@babel/runtime-corejs3/helpers/typeof");
4
+ var _WeakMap = require("@babel/runtime-corejs3/core-js-stable/weak-map");
5
+ var _Object$defineProperty = require("@babel/runtime-corejs3/core-js-stable/object/define-property");
6
+ var _Object$getOwnPropertyDescriptor = require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor");
7
+ var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
8
+ _Object$defineProperty(exports, "__esModule", {
9
+ value: true
10
+ });
11
+ exports.default = void 0;
12
+ var _concat = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/concat"));
13
+ var _map = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/map"));
14
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/slicedToArray"));
15
+ var _react = _interopRequireWildcard(require("react"));
16
+ var _propTypes = require("prop-types");
17
+ var _humanizePlus = require("humanize-plus");
18
+ var _ExpandableButton = _interopRequireDefault(require("../ExpandableButton"));
19
+ var _AuthorizationSpendCard = _interopRequireDefault(require("./AuthorizationSpendCard"));
20
+ 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); }
21
+ 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; }
22
+ var ReferralAuthSpendExpandable = function ReferralAuthSpendExpandable(_ref) {
23
+ var _context;
24
+ var title = _ref.title,
25
+ items = _ref.items,
26
+ totalSpend = _ref.totalSpend,
27
+ unit = _ref.unit,
28
+ isAuthorized = _ref.isAuthorized,
29
+ isCostBased = _ref.isCostBased;
30
+ var _useState = (0, _react.useState)(false),
31
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
32
+ isOpen = _useState2[0],
33
+ setIsOpen = _useState2[1];
34
+ var onClick = (0, _react.useCallback)(function () {
35
+ setIsOpen(function (prevIsOpen) {
36
+ return !prevIsOpen;
37
+ });
38
+ }, []);
39
+ var requestCount = (0, _concat.default)(_context = "".concat(items.length, " ")).call(_context, (0, _humanizePlus.pluralize)(items.length, 'request'));
40
+ return /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement("div", {
41
+ className: "flex justify-between my-2"
42
+ }, /*#__PURE__*/_react.default.createElement("h4", {
43
+ className: "text-dark-grey"
44
+ }, title), /*#__PURE__*/_react.default.createElement("span", null, totalSpend)), /*#__PURE__*/_react.default.createElement("div", {
45
+ className: "flex items-center"
46
+ }, /*#__PURE__*/_react.default.createElement("span", null, requestCount), items.length > 0 && /*#__PURE__*/_react.default.createElement(_ExpandableButton.default, {
47
+ isOpen: isOpen,
48
+ onClick: onClick,
49
+ dataTestId: "expandable-button-".concat(isAuthorized ? 'authorized' : 'not-yet-authorized'),
50
+ className: "ml-3"
51
+ })), isOpen && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, (0, _map.default)(items).call(items, function (item) {
52
+ return /*#__PURE__*/_react.default.createElement(_AuthorizationSpendCard.default, {
53
+ key: item.short_id,
54
+ item: item,
55
+ unit: unit,
56
+ isAuthorized: isAuthorized,
57
+ isCostBased: isCostBased,
58
+ cardClassName: "my-3 w-3/4"
59
+ });
60
+ })));
61
+ };
62
+ ReferralAuthSpendExpandable.propTypes = {
63
+ title: _propTypes.PropTypes.string.isRequired,
64
+ items: _propTypes.PropTypes.arrayOf(_propTypes.PropTypes.shape({
65
+ id: _propTypes.PropTypes.string.isRequired,
66
+ short_id: _propTypes.PropTypes.string.isRequired,
67
+ state: _propTypes.PropTypes.string.isRequired,
68
+ spend: _propTypes.PropTypes.number.isRequired,
69
+ service_starts_at: _propTypes.PropTypes.string.isRequired,
70
+ service_ends_at: _propTypes.PropTypes.string.isRequired,
71
+ updated_at: _propTypes.PropTypes.string.isRequired,
72
+ created_at: _propTypes.PropTypes.string.isRequired,
73
+ requester_name: _propTypes.PropTypes.string.isRequired,
74
+ case_state: _propTypes.PropTypes.string.isRequired,
75
+ case_opened_date: _propTypes.PropTypes.string.isRequired
76
+ })).isRequired,
77
+ totalSpend: _propTypes.PropTypes.string.isRequired,
78
+ unit: _propTypes.PropTypes.string.isRequired,
79
+ isAuthorized: _propTypes.PropTypes.bool.isRequired,
80
+ isCostBased: _propTypes.PropTypes.bool.isRequired
81
+ };
82
+ var _default = exports.default = ReferralAuthSpendExpandable;
83
+ //# sourceMappingURL=ReferralAuthSpendExpandable.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ReferralAuthSpendExpandable.js","names":["_react","_interopRequireWildcard","require","_propTypes","_humanizePlus","_ExpandableButton","_interopRequireDefault","_AuthorizationSpendCard","_getRequireWildcardCache","e","_WeakMap","r","t","__esModule","_typeof","default","has","get","n","__proto__","a","_Object$defineProperty","_Object$getOwnPropertyDescriptor","u","Object","prototype","hasOwnProperty","call","i","set","ReferralAuthSpendExpandable","_ref","_context","title","items","totalSpend","unit","isAuthorized","isCostBased","_useState","useState","_useState2","_slicedToArray2","isOpen","setIsOpen","onClick","useCallback","prevIsOpen","requestCount","_concat","concat","length","pluralize","createElement","className","dataTestId","Fragment","_map","item","key","short_id","cardClassName","propTypes","PropTypes","string","isRequired","arrayOf","shape","id","state","spend","number","service_starts_at","service_ends_at","updated_at","created_at","requester_name","case_state","case_opened_date","bool","_default","exports"],"sources":["../../../src/components/service_authorization/ReferralAuthSpendExpandable.jsx"],"sourcesContent":["import React, { useState, useCallback } from 'react';\nimport { PropTypes } from 'prop-types';\nimport { pluralize } from 'humanize-plus';\nimport ExpandableButton from '../ExpandableButton';\nimport AuthorizationSpendCard from './AuthorizationSpendCard';\n\nconst ReferralAuthSpendExpandable = ({\n title,\n items,\n totalSpend,\n unit,\n isAuthorized,\n isCostBased,\n}) => {\n const [isOpen, setIsOpen] = useState(false);\n\n const onClick = useCallback(() => {\n setIsOpen((prevIsOpen) => !prevIsOpen);\n }, []);\n\n const requestCount = `${items.length} ${pluralize(items.length, 'request')}`;\n\n return (\n <div>\n <div className=\"flex justify-between my-2\">\n <h4 className='text-dark-grey'>{title}</h4>\n <span>{totalSpend}</span>\n </div>\n <div className=\"flex items-center\">\n <span>{requestCount}</span>\n {items.length > 0 && (\n <ExpandableButton\n isOpen={isOpen}\n onClick={onClick}\n dataTestId={`expandable-button-${isAuthorized ? 'authorized' : 'not-yet-authorized'}`}\n className=\"ml-3\"\n />\n )}\n </div>\n {isOpen && (\n <>\n {items.map((item) => (\n <AuthorizationSpendCard\n key={item.short_id}\n item={item}\n unit={unit}\n isAuthorized={isAuthorized}\n isCostBased={isCostBased}\n cardClassName=\"my-3 w-3/4\"\n />\n ))}\n </>\n )}\n </div>\n );\n};\n\nReferralAuthSpendExpandable.propTypes = {\n title: PropTypes.string.isRequired,\n items: PropTypes.arrayOf(\n PropTypes.shape({\n id: PropTypes.string.isRequired,\n short_id: PropTypes.string.isRequired,\n state: PropTypes.string.isRequired,\n spend: PropTypes.number.isRequired,\n service_starts_at: PropTypes.string.isRequired,\n service_ends_at: PropTypes.string.isRequired,\n updated_at: PropTypes.string.isRequired,\n created_at: PropTypes.string.isRequired,\n requester_name: PropTypes.string.isRequired,\n case_state: PropTypes.string.isRequired,\n case_opened_date: PropTypes.string.isRequired,\n }),\n ).isRequired,\n totalSpend: PropTypes.string.isRequired,\n unit: PropTypes.string.isRequired,\n isAuthorized: PropTypes.bool.isRequired,\n isCostBased: PropTypes.bool.isRequired,\n};\n\nexport default ReferralAuthSpendExpandable;\n"],"mappings":"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"}
@@ -0,0 +1,28 @@
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 = Spend;
9
+ var _react = _interopRequireDefault(require("react"));
10
+ var _propTypes = _interopRequireDefault(require("prop-types"));
11
+ var _pluralize = _interopRequireDefault(require("pluralize"));
12
+ var _DollarAmount = _interopRequireDefault(require("../DollarAmount"));
13
+ function Spend(_ref) {
14
+ var amount = _ref.amount,
15
+ unit = _ref.unit,
16
+ isCostBased = _ref.isCostBased;
17
+ return isCostBased ? /*#__PURE__*/_react.default.createElement(_DollarAmount.default, {
18
+ convertCents: true,
19
+ value: amount || 0
20
+ }) : /*#__PURE__*/_react.default.createElement("span", null, amount, " ", (0, _pluralize.default)(unit || '', amount));
21
+ }
22
+ ;
23
+ Spend.propTypes = {
24
+ amount: _propTypes.default.number.isRequired,
25
+ unit: _propTypes.default.string,
26
+ isCostBased: _propTypes.default.bool.isRequired
27
+ };
28
+ //# sourceMappingURL=Spend.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Spend.js","names":["_react","_interopRequireDefault","require","_propTypes","_pluralize","_DollarAmount","Spend","_ref","amount","unit","isCostBased","default","createElement","convertCents","value","pluralize","propTypes","PropTypes","number","isRequired","string","bool"],"sources":["../../../src/components/service_authorization/Spend.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport pluralize from 'pluralize';\nimport DollarAmount from '../DollarAmount';\n\nexport default function Spend ({amount, unit, isCostBased}) {\n return isCostBased ? (\n <DollarAmount convertCents value={amount||0} />\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"],"mappings":";;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,UAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,aAAA,GAAAJ,sBAAA,CAAAC,OAAA;AAEe,SAASI,KAAKA,CAAAC,IAAA,EAA+B;EAAA,IAA5BC,MAAM,GAAAD,IAAA,CAANC,MAAM;IAAEC,IAAI,GAAAF,IAAA,CAAJE,IAAI;IAAEC,WAAW,GAAAH,IAAA,CAAXG,WAAW;EACvD,OAAOA,WAAW,gBAChBV,MAAA,CAAAW,OAAA,CAAAC,aAAA,CAACP,aAAA,CAAAM,OAAY;IAACE,YAAY;IAACC,KAAK,EAAEN,MAAM,IAAE;EAAE,CAAE,CAAC,gBAE/CR,MAAA,CAAAW,OAAA,CAAAC,aAAA,eACGJ,MAAM,EAAC,GAAC,EAAC,IAAAO,kBAAS,EAACN,IAAI,IAAI,EAAE,EAAED,MAAM,CAClC,CACP;AACH;AAAC;AAEDF,KAAK,CAACU,SAAS,GAAG;EAChBR,MAAM,EAAES,kBAAS,CAACC,MAAM,CAACC,UAAU;EACnCV,IAAI,EAAEQ,kBAAS,CAACG,MAAM;EACtBV,WAAW,EAAEO,kBAAS,CAACI,IAAI,CAACF;AAC9B,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@unite-us/app-create-referral",
3
- "version": "0.8.3",
3
+ "version": "0.8.4",
4
4
  "main": "./dist/index.js",
5
5
  "author": "Alex Morales",
6
6
  "dependencies": {
@@ -10,6 +10,7 @@
10
10
  "@unite-us/surveyjs": "^0.10.28",
11
11
  "@unite-us/ui": "^3.0.1950",
12
12
  "axios": "0.27.2",
13
+ "classnames": "^2.5.1",
13
14
  "final-form": "4.20.9",
14
15
  "final-form-arrays": "3.1.0",
15
16
  "humanize-plus": "^1.8.2",