@rh-support/troubleshoot 2.6.337 → 2.6.339

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.
Files changed (52) hide show
  1. package/lib/esm/components/CaseEditView/ActiveCustomerEscalation/RequestEscalationModal.d.ts.map +1 -1
  2. package/lib/esm/components/CaseEditView/ActiveCustomerEscalation/RequestEscalationModal.js +11 -4
  3. package/lib/esm/components/CaseEditView/Case.d.ts.map +1 -1
  4. package/lib/esm/components/CaseEditView/Case.js +5 -3
  5. package/lib/esm/components/CaseEditView/CaseDetailsAside.d.ts.map +1 -1
  6. package/lib/esm/components/CaseEditView/CaseDetailsAside.js +13 -9
  7. package/lib/esm/components/CaseEditView/RequestRemoteSession/ESSRemoteSessionModal.d.ts.map +1 -1
  8. package/lib/esm/components/CaseEditView/RequestRemoteSession/ESSRemoteSessionModal.js +6 -1
  9. package/lib/esm/components/CaseEditView/RequestRemoteSession/NewEssTermsModal.d.ts.map +1 -1
  10. package/lib/esm/components/CaseEditView/RequestRemoteSession/NewEssTermsModal.js +5 -1
  11. package/lib/esm/components/CaseEditView/RequestRemoteSession/RemoteSessionAgreementModal.d.ts.map +1 -1
  12. package/lib/esm/components/CaseEditView/RequestRemoteSession/RemoteSessionAgreementModal.js +5 -1
  13. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/CaseDiscussion.d.ts.map +1 -1
  14. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/CaseDiscussion.js +3 -2
  15. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/PostComment/useAttachmentUploadCompletion.d.ts +12 -3
  16. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/PostComment/useAttachmentUploadCompletion.d.ts.map +1 -1
  17. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/PostComment/useAttachmentUploadCompletion.js +12 -4
  18. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/PostComment.d.ts.map +1 -1
  19. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/PostComment.js +14 -4
  20. package/lib/esm/components/CaseEditView/Tabs/RMEEscalations/RMEEscalationList.d.ts.map +1 -1
  21. package/lib/esm/components/CaseEditView/Tabs/RMEEscalations/RMEEscalationList.js +10 -2
  22. package/lib/esm/components/CaseManagement/Cep.d.ts.map +1 -1
  23. package/lib/esm/components/CaseManagement/Cep.js +7 -2
  24. package/lib/esm/components/UpdateSeverityModal/UpdateSeverityModal.d.ts.map +1 -1
  25. package/lib/esm/components/UpdateSeverityModal/UpdateSeverityModal.js +6 -2
  26. package/lib/esm/components/shared/fileUpload/FileLister.d.ts.map +1 -1
  27. package/lib/esm/components/shared/fileUpload/FileLister.js +2 -2
  28. package/lib/esm/components/shared/fileUpload/reducer/AttachmentHelper.d.ts +3 -0
  29. package/lib/esm/components/shared/fileUpload/reducer/AttachmentHelper.d.ts.map +1 -1
  30. package/lib/esm/components/shared/fileUpload/reducer/AttachmentHelper.js +38 -16
  31. package/lib/esm/components/shared/fileUpload/useFileUploader.d.ts.map +1 -1
  32. package/lib/esm/components/shared/fileUpload/useFileUploader.js +68 -47
  33. package/lib/esm/graphql/schemas/escalation.d.ts +1 -1
  34. package/lib/esm/graphql/schemas/escalation.d.ts.map +1 -1
  35. package/lib/esm/hooks/useAB.d.ts.map +1 -1
  36. package/lib/esm/hooks/useAB.js +45 -23
  37. package/lib/esm/hooks/useS3Upload.d.ts.map +1 -1
  38. package/lib/esm/hooks/useS3Upload.js +4 -1
  39. package/lib/esm/reducers/CaseConstNTypes.d.ts +1 -0
  40. package/lib/esm/reducers/CaseConstNTypes.d.ts.map +1 -1
  41. package/lib/esm/reducers/CaseDetailsPageReducer.d.ts +2 -2
  42. package/lib/esm/reducers/CaseDetailsPageReducer.d.ts.map +1 -1
  43. package/lib/esm/reducers/CaseDetailsPageReducer.js +4 -4
  44. package/lib/esm/reducers/CaseDiscussionTabReducer.d.ts +1 -1
  45. package/lib/esm/reducers/CaseDiscussionTabReducer.d.ts.map +1 -1
  46. package/lib/esm/reducers/CaseDiscussionTabReducer.js +2 -2
  47. package/lib/esm/reducers/CaseHelpers.d.ts.map +1 -1
  48. package/lib/esm/reducers/CaseHelpers.js +12 -0
  49. package/lib/esm/reducers/CaseReducer.d.ts +10 -1
  50. package/lib/esm/reducers/CaseReducer.d.ts.map +1 -1
  51. package/lib/esm/reducers/CaseReducer.js +31 -22
  52. package/package.json +6 -6
@@ -1 +1 @@
1
- {"version":3,"file":"RequestEscalationModal.d.ts","sourceRoot":"","sources":["../../../../../src/components/CaseEditView/ActiveCustomerEscalation/RequestEscalationModal.tsx"],"names":[],"mappings":"AAmCA,OAAO,KAA8B,MAAM,OAAO,CAAC;AAgBnD,UAAU,MAAM;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,OAAO,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,IAAI,CAAC;CACvB;AAID,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,qBA+WnD"}
1
+ {"version":3,"file":"RequestEscalationModal.d.ts","sourceRoot":"","sources":["../../../../../src/components/CaseEditView/ActiveCustomerEscalation/RequestEscalationModal.tsx"],"names":[],"mappings":"AAmCA,OAAO,KAA8B,MAAM,OAAO,CAAC;AAgBnD,UAAU,MAAM;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,OAAO,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,IAAI,CAAC;CACvB;AAID,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,qBAiYnD"}
@@ -27,7 +27,7 @@ import { fetchCaseEscalations } from '../../../reducers/CaseDetailsPageReducer';
27
27
  import { checkForCaseStatusToggleOnAttachOrComment, setCaseAccountNumber } from '../../../reducers/CaseReducer';
28
28
  const customerGEOKeys = Object.keys(CustomerGEOs);
29
29
  export function RequestEscalationModal(props) {
30
- const { globalMetadataState: { loggedInUserRights }, } = useGlobalStateContext();
30
+ const { globalMetadataState: { loggedInUserRights, loggedInUsersAccount }, } = useGlobalStateContext();
31
31
  const { t } = useTranslation();
32
32
  const apolloClient = useApolloClient();
33
33
  const [categories, setCategories] = useState([]);
@@ -52,6 +52,7 @@ export function RequestEscalationModal(props) {
52
52
  const caseDetailsPageDispatch = useCaseDetailsPageDispatchContext();
53
53
  const caseDispatch = useCaseDispatch();
54
54
  const caseSalesforceId = useCaseSelector((state) => state.caseDetails.id, isEqual);
55
+ const existingCaseDetails = useCaseSelector((state) => state.caseDetails, isEqual);
55
56
  const [creationError, setCreationError] = useState(false);
56
57
  const onErrorClose = () => setCreationError(false);
57
58
  const setGeoState = (selection) => {
@@ -61,12 +62,18 @@ export function RequestEscalationModal(props) {
61
62
  setFormState(Object.assign(Object.assign({}, formState), { rmeCategory: selection.value }));
62
63
  };
63
64
  const submitEscalationComment = (escalationNum, comment, caseId) => __awaiter(this, void 0, void 0, function* () {
64
- escalationNum && fetchCaseEscalations(caseDetailsPageDispatch, caseSalesforceId, apolloClient, false);
65
+ var _a, _b;
66
+ escalationNum &&
67
+ fetchCaseEscalations(caseDetailsPageDispatch, caseSalesforceId, apolloClient, false, Boolean((_a = loggedInUsersAccount === null || loggedInUsersAccount === void 0 ? void 0 : loggedInUsersAccount.data) === null || _a === void 0 ? void 0 : _a.secureSupport));
65
68
  yield createComment({ caseId, body: comment, isPublic: true });
66
69
  client.refetchQueries({ include: [GET_CASE_COMMENTS] });
67
70
  // await updateCaseRequest(props.caseNumber, { customerEscalation: true });
68
- checkForCaseStatusToggleOnAttachOrComment(caseDispatch, loggedInUserRights.data.isInternal(), props.caseStatus);
69
- yield fetchCaseDetails((action) => caseDispatch(action), apolloClient, props.caseNumber, setCaseAccountNumber);
71
+ yield checkForCaseStatusToggleOnAttachOrComment(caseDispatch, loggedInUserRights.data.isInternal(), props.caseStatus, {
72
+ apolloClient,
73
+ caseNumber: props.caseNumber,
74
+ existingCaseDetails,
75
+ });
76
+ yield fetchCaseDetails((action) => caseDispatch(action), apolloClient, props.caseNumber, setCaseAccountNumber, Boolean((_b = loggedInUsersAccount === null || loggedInUsersAccount === void 0 ? void 0 : loggedInUsersAccount.data) === null || _b === void 0 ? void 0 : _b.secureSupport));
70
77
  escalationNum &&
71
78
  ToastNotification.addSuccessMessage(t('Your escalation request has been successfully submitted.'));
72
79
  });
@@ -1 +1 @@
1
- {"version":3,"file":"Case.d.ts","sourceRoot":"","sources":["../../../../src/components/CaseEditView/Case.tsx"],"names":[],"mappings":"AAoBA,OAAO,KAAwC,MAAM,OAAO,CAAC;AAE7D,OAAO,EAAS,mBAAmB,EAAiD,MAAM,kBAAkB,CAAC;AAoB7G,UAAU,MAAM;IACZ,UAAU,EAAE,mBAAmB,CAAC;CACnC;AAED,MAAM,CAAC,OAAO,UAAU,IAAI,CAAC,KAAK,EAAE,MAAM,qBA2QzC"}
1
+ {"version":3,"file":"Case.d.ts","sourceRoot":"","sources":["../../../../src/components/CaseEditView/Case.tsx"],"names":[],"mappings":"AAoBA,OAAO,KAAwC,MAAM,OAAO,CAAC;AAE7D,OAAO,EAAS,mBAAmB,EAAiD,MAAM,kBAAkB,CAAC;AAoB7G,UAAU,MAAM;IACZ,UAAU,EAAE,mBAAmB,CAAC;CACnC;AAED,MAAM,CAAC,OAAO,UAAU,IAAI,CAAC,KAAK,EAAE,MAAM,qBAgRzC"}
@@ -33,9 +33,11 @@ import { CaseDetailsTabs } from './CaseDetailsTabs';
33
33
  import CaseOverview from './CaseOverview';
34
34
  import { PDFContext } from './PDFContainer';
35
35
  export default function Case(props) {
36
+ var _a;
36
37
  const { globalMetadataState: { loggedInUserRights, loggedInUsersAccount }, } = useContext(GlobalMetadataStateContext);
37
38
  const caseDetailsPageDispatch = useCaseDetailsPageDispatchContext();
38
39
  const apolloClient = useApolloClient();
40
+ const includeSecureSupportCases = Boolean((_a = loggedInUsersAccount === null || loggedInUsersAccount === void 0 ? void 0 : loggedInUsersAccount.data) === null || _a === void 0 ? void 0 : _a.secureSupport);
39
41
  const { t } = useTranslation();
40
42
  // The `path` lets us build <Route> paths that are
41
43
  // relative to the parent route, while the `url` lets
@@ -121,15 +123,15 @@ export default function Case(props) {
121
123
  caseDispatch(action);
122
124
  }
123
125
  };
124
- const caseDetails = yield fetchCaseDetails(safeDispatch, apolloClient, targetCaseNumber, setCaseAccountNumber);
126
+ const caseDetails = yield fetchCaseDetails(safeDispatch, apolloClient, targetCaseNumber, setCaseAccountNumber, includeSecureSupportCases);
125
127
  if (currentCaseRef.current !== targetCaseNumber)
126
128
  return;
127
129
  const caseSalesforceId = typeof (caseDetails === null || caseDetails === void 0 ? void 0 : caseDetails.id) === 'string' ? caseDetails.id : undefined;
128
130
  if (canSeeRMEs && caseSalesforceId) {
129
- fetchCaseEscalations((action) => currentCaseRef.current === targetCaseNumber && caseDetailsPageDispatch(action), caseSalesforceId, apolloClient);
131
+ fetchCaseEscalations((action) => currentCaseRef.current === targetCaseNumber && caseDetailsPageDispatch(action), caseSalesforceId, apolloClient, true, includeSecureSupportCases);
130
132
  }
131
133
  if (canSeeAttachments) {
132
- fetchAttachments((action) => currentCaseRef.current === targetCaseNumber && caseDetailsPageDispatch(action), targetCaseNumber, apolloClient, caseSalesforceId);
134
+ fetchAttachments((action) => currentCaseRef.current === targetCaseNumber && caseDetailsPageDispatch(action), targetCaseNumber, apolloClient, caseSalesforceId, includeSecureSupportCases);
133
135
  }
134
136
  // TODO: Re-enable after GraphQL migration of external trackers
135
137
  // if (canSeeExternalTracker) {
@@ -1 +1 @@
1
- {"version":3,"file":"CaseDetailsAside.d.ts","sourceRoot":"","sources":["../../../../src/components/CaseEditView/CaseDetailsAside.tsx"],"names":[],"mappings":"AAsBA,OAAO,KAA2D,MAAM,OAAO,CAAC;AAahF,UAAU,MAAM;IACZ,UAAU,EAAE,MAAM,CAAC;CACtB;AAMD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,qBAma7C"}
1
+ {"version":3,"file":"CaseDetailsAside.d.ts","sourceRoot":"","sources":["../../../../src/components/CaseEditView/CaseDetailsAside.tsx"],"names":[],"mappings":"AAsBA,OAAO,KAA2D,MAAM,OAAO,CAAC;AAahF,UAAU,MAAM;IACZ,UAAU,EAAE,MAAM,CAAC;CACtB;AAMD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,qBAsa7C"}
@@ -32,8 +32,10 @@ import { CaseSolutions } from './CaseSolutions';
32
32
  import { PDFContext } from './PDFContainer';
33
33
  import { ESSRemoteSession, RemoteSessionAgreement } from './RequestRemoteSession';
34
34
  export function CaseDetailsAside(props) {
35
- var _a, _b, _c, _d, _e, _f, _g, _h, _j;
35
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
36
36
  const { t } = useTranslation();
37
+ const { globalMetadataState: { navBarRef, viewAsCustomer, loggedInUsersAccount, allProducts, loggedInUserRights }, } = useGlobalStateContext();
38
+ const includeSecureSupportCases = Boolean((_a = loggedInUsersAccount === null || loggedInUsersAccount === void 0 ? void 0 : loggedInUsersAccount.data) === null || _a === void 0 ? void 0 : _a.secureSupport);
37
39
  const { severity, status, isFetchingCaseDetails, isFetchingCaseDetailsError, acceptedRemoteSessionTerms, product, waitingOnCallback, groupNumber, ownersCaseGroups, } = useCaseSelector((state) => ({
38
40
  severity: state.caseDetails.severity,
39
41
  status: state.caseDetails.status,
@@ -53,15 +55,18 @@ export function CaseDetailsAside(props) {
53
55
  const { data: parentData, loading: isLoadingParentId } = useQuery(GET_PARENT_ID, {
54
56
  variables: {
55
57
  where: {
56
- and: [{ CaseNumber: { eq: caseNumber } }, buildAccessRestrictionExclusionFilter()],
58
+ and: [
59
+ { CaseNumber__c: { eq: caseNumber } },
60
+ buildAccessRestrictionExclusionFilter(includeSecureSupportCases),
61
+ ],
57
62
  },
58
63
  },
59
64
  });
60
- const parentId = (_f = (_e = (_d = (_c = (_b = (_a = parentData === null || parentData === void 0 ? void 0 : parentData.redhat_support_uiapi) === null || _a === void 0 ? void 0 : _a.query) === null || _b === void 0 ? void 0 : _b.RedHatSupportCase) === null || _c === void 0 ? void 0 : _c.edges) === null || _d === void 0 ? void 0 : _d[0]) === null || _e === void 0 ? void 0 : _e.node) === null || _f === void 0 ? void 0 : _f.Id;
65
+ const parentId = (_g = (_f = (_e = (_d = (_c = (_b = parentData === null || parentData === void 0 ? void 0 : parentData.redhat_support_uiapi) === null || _b === void 0 ? void 0 : _b.query) === null || _c === void 0 ? void 0 : _c.RedHatSupportCase) === null || _d === void 0 ? void 0 : _d.edges) === null || _e === void 0 ? void 0 : _e[0]) === null || _f === void 0 ? void 0 : _f.node) === null || _g === void 0 ? void 0 : _g.Id;
61
66
  const { loading: isLoadingEscalations } = useQuery(GET_ESCALATION_DETAILS, {
62
67
  variables: {
63
68
  where: {
64
- and: [{ ParentId: { eq: parentId } }, buildAccessRestrictionExclusionFilter()],
69
+ and: [{ ParentId: { eq: parentId } }, buildAccessRestrictionExclusionFilter(includeSecureSupportCases)],
65
70
  },
66
71
  },
67
72
  skip: !parentId,
@@ -80,9 +85,8 @@ export function CaseDetailsAside(props) {
80
85
  const isXLScreen = breakPoint.xl;
81
86
  const toggleCustomerViewRef = useRef(null);
82
87
  const isFirstMountRef = useRef(true);
83
- const { globalMetadataState: { navBarRef, viewAsCustomer, loggedInUsersAccount, allProducts, loggedInUserRights }, } = useGlobalStateContext();
84
- const isInternal = (_g = loggedInUserRights.data) === null || _g === void 0 ? void 0 : _g.isInternal();
85
- const isSecureSupportAccount = loggedInUsersAccount.data.secureSupport;
88
+ const isInternal = (_h = loggedInUserRights.data) === null || _h === void 0 ? void 0 : _h.isInternal();
89
+ const isSecureSupportAccount = includeSecureSupportCases;
86
90
  // To check if user has read only access
87
91
  const canReadCase = ability.can(resourceActions.READ, resources.CASE_DETAILS);
88
92
  const onToggleAside = (ev) => {
@@ -182,7 +186,7 @@ export function CaseDetailsAside(props) {
182
186
  setIsDefaultBoxChecked(!isDefaultBoxChecked);
183
187
  toggleViewAsCustomerFlag(globalMetadataDispatchContext);
184
188
  };
185
- const isSideBarExpanded = (_h = caseDetailsAsidePanelRef.current) === null || _h === void 0 ? void 0 : _h.expanded;
189
+ const isSideBarExpanded = (_j = caseDetailsAsidePanelRef.current) === null || _j === void 0 ? void 0 : _j.expanded;
186
190
  if (isFetchingCaseDetails || isFetchingCaseDetailsError)
187
191
  return null;
188
192
  const renderCasePrefPopoverText = () => {
@@ -194,7 +198,7 @@ export function CaseDetailsAside(props) {
194
198
  }
195
199
  };
196
200
  // To check if the user is ESS Customer and Product has ESS Support
197
- const isESSCustomer = isSpecialSupportOfferingEnabled((_j = allProducts.data) === null || _j === void 0 ? void 0 : _j.productsResult, selectedProduct);
201
+ const isESSCustomer = isSpecialSupportOfferingEnabled((_k = allProducts.data) === null || _k === void 0 ? void 0 : _k.productsResult, selectedProduct);
198
202
  return (React.createElement("aside", { className: `grid-aside ${isSideBarExpanded ? '' : 'sidebar-collapsed'} ` },
199
203
  React.createElement("pfe-collapse-toggle", { "aria-label": `${isSideBarExpanded ? t('Collapse sidebar') : t('Expand sidebar')}`, "aria-controls": "case-details-aside-content", onClick: onToggleAside }, isSideBarExpanded ? (React.createElement("div", { className: `sidebar-header ${isExportingPDF ? 'hide-in-pdf' : ''}` },
200
204
  React.createElement("div", { className: "case-detail-collapse-panel" },
@@ -1 +1 @@
1
- {"version":3,"file":"ESSRemoteSessionModal.d.ts","sourceRoot":"","sources":["../../../../../src/components/CaseEditView/RequestRemoteSession/ESSRemoteSessionModal.tsx"],"names":[],"mappings":"AAcA,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAExD,OAAO,KAAmB,MAAM,OAAO,CAAC;AAWxC,UAAU,MAAM;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,OAAO,CAAC;IACd,kBAAkB,EAAE,mBAAmB,CAAC,QAAQ,CAAC,CAAC;IAClD,QAAQ,EAAE,OAAO,CAAC;IAClB,sBAAsB,EAAE,OAAO,CAAC;CACnC;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,qBAyJlD"}
1
+ {"version":3,"file":"ESSRemoteSessionModal.d.ts","sourceRoot":"","sources":["../../../../../src/components/CaseEditView/RequestRemoteSession/ESSRemoteSessionModal.tsx"],"names":[],"mappings":"AAcA,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAExD,OAAO,KAAmB,MAAM,OAAO,CAAC;AAWxC,UAAU,MAAM;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,OAAO,CAAC;IACd,kBAAkB,EAAE,mBAAmB,CAAC,QAAQ,CAAC,CAAC;IAClD,QAAQ,EAAE,OAAO,CAAC;IAClB,sBAAsB,EAAE,OAAO,CAAC;CACnC;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,qBA+JlD"}
@@ -24,6 +24,7 @@ export function ESSRemoteSessionModal(props) {
24
24
  const client = useApolloClient();
25
25
  const { createComment, loading: isPostingComment } = useCreateCaseComment();
26
26
  const caseSalesforceId = useCaseSelector((state) => state.caseDetails.id, isEqual);
27
+ const existingCaseDetails = useCaseSelector((state) => state.caseDetails, isEqual);
27
28
  // To handle modal cancel and close
28
29
  const onCancel = () => {
29
30
  props.onClose && props.onClose();
@@ -43,7 +44,11 @@ export function ESSRemoteSessionModal(props) {
43
44
  isPublic: true,
44
45
  });
45
46
  client.refetchQueries({ include: [GET_CASE_COMMENTS] });
46
- checkForCaseStatusToggleOnAttachOrComment(caseDispatch, props.loggedInUserRights.data.isInternal(), props.caseStatus);
47
+ yield checkForCaseStatusToggleOnAttachOrComment(caseDispatch, props.loggedInUserRights.data.isInternal(), props.caseStatus, {
48
+ apolloClient: client,
49
+ caseNumber: props.caseNumber,
50
+ existingCaseDetails,
51
+ });
47
52
  onCancel();
48
53
  setAgreeLoading(false);
49
54
  ToastNotification.addSuccessMessage(t('Remote session has been requested successfully'), t('Red Hat will add a comment to your case to schedule your remote session.'));
@@ -1 +1 @@
1
- {"version":3,"file":"NewEssTermsModal.d.ts","sourceRoot":"","sources":["../../../../../src/components/CaseEditView/RequestRemoteSession/NewEssTermsModal.tsx"],"names":[],"mappings":"AAsBA,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAExD,OAAO,KAA8B,MAAM,OAAO,CAAC;AAYnD,UAAU,MAAM;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,OAAO,CAAC;IACd,kBAAkB,EAAE,mBAAmB,CAAC,QAAQ,CAAC,CAAC;IAClD,QAAQ,EAAE,OAAO,CAAC;CACrB;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,qBAib7C"}
1
+ {"version":3,"file":"NewEssTermsModal.d.ts","sourceRoot":"","sources":["../../../../../src/components/CaseEditView/RequestRemoteSession/NewEssTermsModal.tsx"],"names":[],"mappings":"AAsBA,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAExD,OAAO,KAA8B,MAAM,OAAO,CAAC;AAYnD,UAAU,MAAM;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,OAAO,CAAC;IACd,kBAAkB,EAAE,mBAAmB,CAAC,QAAQ,CAAC,CAAC;IAClD,QAAQ,EAAE,OAAO,CAAC;CACrB;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,qBAsb7C"}
@@ -136,7 +136,11 @@ export function NewEssTermsModal(props) {
136
136
  isPublic: true,
137
137
  });
138
138
  client.refetchQueries({ include: [GET_CASE_COMMENTS] });
139
- checkForCaseStatusToggleOnAttachOrComment(caseDispatch, props.loggedInUserRights.data.isInternal(), props.caseStatus);
139
+ yield checkForCaseStatusToggleOnAttachOrComment(caseDispatch, props.loggedInUserRights.data.isInternal(), props.caseStatus, {
140
+ apolloClient,
141
+ caseNumber: props.caseNumber,
142
+ existingCaseDetails,
143
+ });
140
144
  setAgreeLoading(false);
141
145
  setHasSubmitted(true);
142
146
  // ToastNotification.addSuccessMessage(
@@ -1 +1 @@
1
- {"version":3,"file":"RemoteSessionAgreementModal.d.ts","sourceRoot":"","sources":["../../../../../src/components/CaseEditView/RequestRemoteSession/RemoteSessionAgreementModal.tsx"],"names":[],"mappings":"AAsBA,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAExD,OAAO,KAA8B,MAAM,OAAO,CAAC;AAgBnD,UAAU,MAAM;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,OAAO,CAAC;IACd,kBAAkB,EAAE,mBAAmB,CAAC,QAAQ,CAAC,CAAC;IAClD,QAAQ,EAAE,OAAO,CAAC;CACrB;AAED,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,MAAM,qBA0axD"}
1
+ {"version":3,"file":"RemoteSessionAgreementModal.d.ts","sourceRoot":"","sources":["../../../../../src/components/CaseEditView/RequestRemoteSession/RemoteSessionAgreementModal.tsx"],"names":[],"mappings":"AAsBA,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAExD,OAAO,KAA8B,MAAM,OAAO,CAAC;AAgBnD,UAAU,MAAM;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,OAAO,CAAC;IACd,kBAAkB,EAAE,mBAAmB,CAAC,QAAQ,CAAC,CAAC;IAClD,QAAQ,EAAE,OAAO,CAAC;CACrB;AAED,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,MAAM,qBA+axD"}
@@ -128,7 +128,11 @@ export function RemoteSessionAgreementModal(props) {
128
128
  isPublic: true,
129
129
  });
130
130
  client.refetchQueries({ include: [GET_CASE_COMMENTS] });
131
- checkForCaseStatusToggleOnAttachOrComment(caseDispatch, props.loggedInUserRights.data.isInternal(), props.caseStatus);
131
+ yield checkForCaseStatusToggleOnAttachOrComment(caseDispatch, props.loggedInUserRights.data.isInternal(), props.caseStatus, {
132
+ apolloClient: client,
133
+ caseNumber: props.caseNumber,
134
+ existingCaseDetails,
135
+ });
132
136
  setAgreeLoading(false);
133
137
  setHasSubmitted(true);
134
138
  // ToastNotification.addSuccessMessage(
@@ -1 +1 @@
1
- {"version":3,"file":"CaseDiscussion.d.ts","sourceRoot":"","sources":["../../../../../../src/components/CaseEditView/Tabs/CaseDiscussion/CaseDiscussion.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,yCAAyC,CAAC;AAkBvE,OAAO,KAAoE,MAAM,OAAO,CAAC;AAsCzF,UAAU,MAAM;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,YAAY,EAAE,CAAC;IAC7B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,aAAa,CAAC,EAAE,OAAO,CAAC;IAGxB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,KAAK,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC;IAC/C,eAAe,EAAE,OAAO,CAAC;IACzB,eAAe,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;CAClD;AAOD,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,KAAK,EAAE,MAAM,qBAqhBnD"}
1
+ {"version":3,"file":"CaseDiscussion.d.ts","sourceRoot":"","sources":["../../../../../../src/components/CaseEditView/Tabs/CaseDiscussion/CaseDiscussion.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,yCAAyC,CAAC;AAkBvE,OAAO,KAAoE,MAAM,OAAO,CAAC;AAsCzF,UAAU,MAAM;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,YAAY,EAAE,CAAC;IAC7B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,aAAa,CAAC,EAAE,OAAO,CAAC;IAGxB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,KAAK,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC;IAC/C,eAAe,EAAE,OAAO,CAAC;IACzB,eAAe,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;CAClD;AAOD,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,KAAK,EAAE,MAAM,qBAshBnD"}
@@ -53,7 +53,7 @@ export default function CaseDiscussion(props) {
53
53
  const discussionIdFromUrl = ((urlSearchParams === null || urlSearchParams === void 0 ? void 0 : urlSearchParams.commentId) || (urlSearchParams === null || urlSearchParams === void 0 ? void 0 : urlSearchParams.attachmentId));
54
54
  const activeDiscussionElementRef = useRef(null);
55
55
  const { sort, discussionFiltersListState, allDiscussions, replyingToAuthor, replyingToTimestamp } = useCaseDiscussionTabStateContext();
56
- const { globalMetadataState: { navBarRef }, } = useGlobalStateContext();
56
+ const { globalMetadataState: { navBarRef, loggedInUsersAccount }, } = useGlobalStateContext();
57
57
  const dispatchDiscussion = useCaseDiscussionTabDispatchContext();
58
58
  const { caseDetailsPageState: { caseAttachmentHydra }, } = useCaseDetailsPageStateContext();
59
59
  const dispatchCaseDetailsHydraAttachments = useCaseDetailsPageDispatchContext();
@@ -207,7 +207,8 @@ export default function CaseDiscussion(props) {
207
207
  updateAttacmentsAfterRemoval(dispatchDiscussion, uuid_removed, allDiscussions, discussionFiltersListState);
208
208
  };
209
209
  const onAttachmentAdded = () => __awaiter(this, void 0, void 0, function* () {
210
- yield updateDiscussionStateAttachments(dispatchDiscussion, caseNumber, allDiscussions, sort, discussionFiltersListState, dispatchCaseDetailsHydraAttachments, apolloClient, caseSalesforceId);
210
+ var _a;
211
+ yield updateDiscussionStateAttachments(dispatchDiscussion, caseNumber, allDiscussions, sort, discussionFiltersListState, dispatchCaseDetailsHydraAttachments, apolloClient, caseSalesforceId, Boolean((_a = loggedInUsersAccount === null || loggedInUsersAccount === void 0 ? void 0 : loggedInUsersAccount.data) === null || _a === void 0 ? void 0 : _a.secureSupport));
211
212
  });
212
213
  const onMetadataUpdate = (attachmentId, updatedAttachment) => {
213
214
  updateAttachment(dispatchDiscussion, attachmentId, updatedAttachment, allDiscussions);
@@ -1,20 +1,29 @@
1
1
  import { Dispatch, MutableRefObject } from 'react';
2
+ import { ICaseDetailsState } from '../../../../../reducers/CaseConstNTypes';
2
3
  interface UseAttachmentUploadCompletionParams {
3
4
  isUploadingAttachments: boolean;
4
5
  hasQueuedUploads: boolean;
5
6
  hasAbortedOrFailed: boolean;
6
7
  isUploadingAttachmentPrevious: MutableRefObject<boolean>;
8
+ batchSuccessCountRef: MutableRefObject<number>;
7
9
  caseDispatch: Dispatch<any>;
10
+ apolloClient: {
11
+ query: (options: any) => Promise<any>;
12
+ mutate: (options: any) => Promise<any>;
13
+ };
14
+ caseNumber: string;
15
+ existingCaseDetails?: Partial<ICaseDetailsState>;
8
16
  isInternal: boolean;
9
17
  status: string | undefined;
10
18
  resetAttachmentSection: () => void;
11
19
  setCssCommentAgreed: (v: boolean) => void;
20
+ onAttachmentBatchAdded?: () => void;
12
21
  }
13
22
  /**
14
23
  * Batch cleanup after uploads settle.
15
- * Per-file success already refreshes discussion and dismisses completed rows;
16
- * this resets the panel when nothing aborted/failed remains.
24
+ * Per-file success toasts fire immediately; discussion list refresh runs once here
25
+ * when the batch finishes so we avoid N full list refetches for N files.
17
26
  */
18
- export declare function useAttachmentUploadCompletion({ isUploadingAttachments, hasQueuedUploads, hasAbortedOrFailed, isUploadingAttachmentPrevious, caseDispatch, isInternal, status, resetAttachmentSection, setCssCommentAgreed, }: UseAttachmentUploadCompletionParams): void;
27
+ export declare function useAttachmentUploadCompletion({ isUploadingAttachments, hasQueuedUploads, hasAbortedOrFailed, isUploadingAttachmentPrevious, batchSuccessCountRef, caseDispatch, apolloClient, caseNumber, existingCaseDetails, isInternal, status, resetAttachmentSection, setCssCommentAgreed, onAttachmentBatchAdded, }: UseAttachmentUploadCompletionParams): void;
19
28
  export {};
20
29
  //# sourceMappingURL=useAttachmentUploadCompletion.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useAttachmentUploadCompletion.d.ts","sourceRoot":"","sources":["../../../../../../../src/components/CaseEditView/Tabs/CaseDiscussion/PostComment/useAttachmentUploadCompletion.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAa,MAAM,OAAO,CAAC;AAI9D,UAAU,mCAAmC;IACzC,sBAAsB,EAAE,OAAO,CAAC;IAChC,gBAAgB,EAAE,OAAO,CAAC;IAC1B,kBAAkB,EAAE,OAAO,CAAC;IAC5B,6BAA6B,EAAE,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACzD,YAAY,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC5B,UAAU,EAAE,OAAO,CAAC;IACpB,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,sBAAsB,EAAE,MAAM,IAAI,CAAC;IACnC,mBAAmB,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;CAC7C;AAED;;;;GAIG;AACH,wBAAgB,6BAA6B,CAAC,EAC1C,sBAAsB,EACtB,gBAAgB,EAChB,kBAAkB,EAClB,6BAA6B,EAC7B,YAAY,EACZ,UAAU,EACV,MAAM,EACN,sBAAsB,EACtB,mBAAmB,GACtB,EAAE,mCAAmC,QAerC"}
1
+ {"version":3,"file":"useAttachmentUploadCompletion.d.ts","sourceRoot":"","sources":["../../../../../../../src/components/CaseEditView/Tabs/CaseDiscussion/PostComment/useAttachmentUploadCompletion.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAa,MAAM,OAAO,CAAC;AAE9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAC;AAG5E,UAAU,mCAAmC;IACzC,sBAAsB,EAAE,OAAO,CAAC;IAChC,gBAAgB,EAAE,OAAO,CAAC;IAC1B,kBAAkB,EAAE,OAAO,CAAC;IAC5B,6BAA6B,EAAE,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACzD,oBAAoB,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAC/C,YAAY,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC5B,YAAY,EAAE;QAAE,KAAK,EAAE,CAAC,OAAO,EAAE,GAAG,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;QAAC,MAAM,EAAE,CAAC,OAAO,EAAE,GAAG,KAAK,OAAO,CAAC,GAAG,CAAC,CAAA;KAAE,CAAC;IAChG,UAAU,EAAE,MAAM,CAAC;IACnB,mBAAmB,CAAC,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAC;IACjD,UAAU,EAAE,OAAO,CAAC;IACpB,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,sBAAsB,EAAE,MAAM,IAAI,CAAC;IACnC,mBAAmB,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAC1C,sBAAsB,CAAC,EAAE,MAAM,IAAI,CAAC;CACvC;AAED;;;;GAIG;AACH,wBAAgB,6BAA6B,CAAC,EAC1C,sBAAsB,EACtB,gBAAgB,EAChB,kBAAkB,EAClB,6BAA6B,EAC7B,oBAAoB,EACpB,YAAY,EACZ,YAAY,EACZ,UAAU,EACV,mBAAmB,EACnB,UAAU,EACV,MAAM,EACN,sBAAsB,EACtB,mBAAmB,EACnB,sBAAsB,GACzB,EAAE,mCAAmC,QAuBrC"}
@@ -2,17 +2,25 @@ import { useEffect } from 'react';
2
2
  import { checkForCaseStatusToggleOnAttachOrComment } from '../../../../../reducers/CaseReducer';
3
3
  /**
4
4
  * Batch cleanup after uploads settle.
5
- * Per-file success already refreshes discussion and dismisses completed rows;
6
- * this resets the panel when nothing aborted/failed remains.
5
+ * Per-file success toasts fire immediately; discussion list refresh runs once here
6
+ * when the batch finishes so we avoid N full list refetches for N files.
7
7
  */
8
- export function useAttachmentUploadCompletion({ isUploadingAttachments, hasQueuedUploads, hasAbortedOrFailed, isUploadingAttachmentPrevious, caseDispatch, isInternal, status, resetAttachmentSection, setCssCommentAgreed, }) {
8
+ export function useAttachmentUploadCompletion({ isUploadingAttachments, hasQueuedUploads, hasAbortedOrFailed, isUploadingAttachmentPrevious, batchSuccessCountRef, caseDispatch, apolloClient, caseNumber, existingCaseDetails, isInternal, status, resetAttachmentSection, setCssCommentAgreed, onAttachmentBatchAdded, }) {
9
9
  useEffect(() => {
10
10
  const justFinished = isUploadingAttachmentPrevious.current && !isUploadingAttachments && !hasQueuedUploads;
11
11
  if (justFinished) {
12
+ if (batchSuccessCountRef.current > 0) {
13
+ batchSuccessCountRef.current = 0;
14
+ onAttachmentBatchAdded === null || onAttachmentBatchAdded === void 0 ? void 0 : onAttachmentBatchAdded();
15
+ }
12
16
  if (!hasAbortedOrFailed) {
13
17
  resetAttachmentSection();
14
18
  }
15
- checkForCaseStatusToggleOnAttachOrComment(caseDispatch, isInternal, status);
19
+ void checkForCaseStatusToggleOnAttachOrComment(caseDispatch, isInternal, status, {
20
+ apolloClient,
21
+ caseNumber,
22
+ existingCaseDetails,
23
+ });
16
24
  setCssCommentAgreed(false);
17
25
  }
18
26
  isUploadingAttachmentPrevious.current = isUploadingAttachments;
@@ -1 +1 @@
1
- {"version":3,"file":"PostComment.d.ts","sourceRoot":"","sources":["../../../../../../src/components/CaseEditView/Tabs/CaseDiscussion/PostComment.tsx"],"names":[],"mappings":"AAUA,OAAO,KAA+D,MAAM,OAAO,CAAC;AAOpF,OAAO,EAAE,WAAW,EAAE,MAAM,+CAA+C,CAAC;AAmB5E,UAAU,MAAM;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACrC,iBAAiB,CAAC,EAAE,MAAM,IAAI,CAAC;IAC/B,kBAAkB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5C;;;;;OAKG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,cAAc,EAAE,WAAW,EAAE,CAAC;IAC9B,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;CAC7B;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,qBA+ZxC"}
1
+ {"version":3,"file":"PostComment.d.ts","sourceRoot":"","sources":["../../../../../../src/components/CaseEditView/Tabs/CaseDiscussion/PostComment.tsx"],"names":[],"mappings":"AAUA,OAAO,KAA+D,MAAM,OAAO,CAAC;AAOpF,OAAO,EAAE,WAAW,EAAE,MAAM,+CAA+C,CAAC;AAmB5E,UAAU,MAAM;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACrC,iBAAiB,CAAC,EAAE,MAAM,IAAI,CAAC;IAC/B,kBAAkB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5C;;;;;OAKG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,cAAc,EAAE,WAAW,EAAE,CAAC;IAC9B,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;CAC7B;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,qBA+axC"}
@@ -42,6 +42,7 @@ export function PostComment(props) {
42
42
  const dispatchToAttachmentReducer = useContext(AttachmentDispatchContext);
43
43
  const { attachmentState } = useContext(AttachmentStateContext);
44
44
  const isUploadingAttachmentPrevious = useRef(false);
45
+ const batchSuccessCountRef = useRef(0);
45
46
  const isUploadingAttachments = isUploadingAttachment(attachmentState.caseFiles.selectedLocalFiles);
46
47
  const hasQueuedUploads = hasQueuedAttachmentUploads(attachmentState.caseFiles.selectedLocalFiles);
47
48
  const hasAbortedOrFailed = hasAbortedOrFailedAttachments(attachmentState.caseFiles.selectedLocalFiles);
@@ -91,9 +92,10 @@ export function PostComment(props) {
91
92
  noClick: true,
92
93
  noKeyboard: true,
93
94
  });
94
- const { status, caseSalesforceId } = useCaseSelector((state) => ({
95
+ const { status, caseSalesforceId, existingCaseDetails } = useCaseSelector((state) => ({
95
96
  status: state.caseDetails.status,
96
97
  caseSalesforceId: state.caseDetails.id,
98
+ existingCaseDetails: state.caseDetails,
97
99
  }), isEqual);
98
100
  const apolloClient = useApolloClient();
99
101
  const { uploadFile: uploadImageFile } = useS3Upload(caseNumber, apolloClient, caseSalesforceId);
@@ -140,20 +142,24 @@ export function PostComment(props) {
140
142
  resetAttachment(dispatchToAttachmentReducer);
141
143
  };
142
144
  const onCaseFileUploaded = () => {
143
- var _a;
144
145
  ToastNotification.addSuccessMessage(t('Attachment uploaded successfully'));
145
- (_a = props.onAttachmentAdded) === null || _a === void 0 ? void 0 : _a.call(props);
146
+ batchSuccessCountRef.current += 1;
146
147
  };
147
148
  useAttachmentUploadCompletion({
148
149
  isUploadingAttachments,
149
150
  hasQueuedUploads,
150
151
  hasAbortedOrFailed,
151
152
  isUploadingAttachmentPrevious,
153
+ batchSuccessCountRef,
152
154
  caseDispatch,
155
+ apolloClient,
156
+ caseNumber,
157
+ existingCaseDetails,
153
158
  isInternal: loggedInUserRights.data.isInternal(),
154
159
  status,
155
160
  resetAttachmentSection,
156
161
  setCssCommentAgreed,
162
+ onAttachmentBatchAdded: props.onAttachmentAdded,
157
163
  });
158
164
  const onCancelClick = () => {
159
165
  // Cancel only clears comment text; file removal stays on FileLister Remove.
@@ -217,7 +223,11 @@ export function PostComment(props) {
217
223
  isPublic,
218
224
  isAssociate: loggedInUserRights.data.isInternal(),
219
225
  });
220
- checkForCaseStatusToggleOnAttachOrComment(caseDispatch, loggedInUserRights.data.isInternal(), status);
226
+ yield checkForCaseStatusToggleOnAttachOrComment(caseDispatch, loggedInUserRights.data.isInternal(), status, {
227
+ apolloClient,
228
+ caseNumber,
229
+ existingCaseDetails,
230
+ });
221
231
  if (!isPublic)
222
232
  setIsPublic(true);
223
233
  // TODO: Re-enable after GraphQL migration (REST notification)
@@ -1 +1 @@
1
- {"version":3,"file":"RMEEscalationList.d.ts","sourceRoot":"","sources":["../../../../../../src/components/CaseEditView/Tabs/RMEEscalations/RMEEscalationList.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,2CAA2C,CAAC;AAQ5E,OAAO,KAAsC,MAAM,OAAO,CAAC;AAU3D,UAAU,MAAM;IACZ,WAAW,EAAE,eAAe,EAAE,CAAC;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,OAAO,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;CACtB;AAOD,MAAM,CAAC,OAAO,UAAU,iBAAiB,CAAC,KAAK,EAAE,MAAM,qBAuKtD"}
1
+ {"version":3,"file":"RMEEscalationList.d.ts","sourceRoot":"","sources":["../../../../../../src/components/CaseEditView/Tabs/RMEEscalations/RMEEscalationList.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,2CAA2C,CAAC;AAS5E,OAAO,KAAsC,MAAM,OAAO,CAAC;AAU3D,UAAU,MAAM;IACZ,WAAW,EAAE,eAAe,EAAE,CAAC;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,OAAO,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;CACtB;AAOD,MAAM,CAAC,OAAO,UAAU,iBAAiB,CAAC,KAAK,EAAE,MAAM,qBAqLtD"}
@@ -10,6 +10,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
10
10
  import { useApolloClient } from '@apollo/client/react';
11
11
  import { Button, ButtonVariant, Flex, FlexItem } from '@patternfly/react-core';
12
12
  import { LoadingIndicator, PFTable, TableComponent, ToastNotification } from '@rh-support/components';
13
+ import { useGlobalStateContext } from '@rh-support/react-context';
13
14
  import { ability, resourceActions, resources } from '@rh-support/user-permissions';
14
15
  import { formatDate, sendToSentry } from '@rh-support/utils';
15
16
  import find from 'lodash/find';
@@ -30,6 +31,7 @@ const CLOSURE_ESCALATION_MSG = 'Escalation closed.';
30
31
  export default function RMEEscalationList(props) {
31
32
  const { t } = useTranslation();
32
33
  const apolloClient = useApolloClient();
34
+ const { globalMetadataState: { loggedInUsersAccount }, } = useGlobalStateContext();
33
35
  // TODO: migrate escalation update from Hydra to GraphQL
34
36
  // const { request: updateEscalationRequest, isFetching: isUpdatingEscalation } = useFetch(
35
37
  // escalations.updateEscalations,
@@ -37,6 +39,7 @@ export default function RMEEscalationList(props) {
37
39
  // );
38
40
  const { createComment, loading: isPostingComment } = useCreateCaseComment();
39
41
  const caseSalesforceId = useCaseSelector((state) => state.caseDetails.id, isEqual);
42
+ const existingCaseDetails = useCaseSelector((state) => state.caseDetails, isEqual);
40
43
  const caseDetailsPageDispatch = useCaseDetailsPageDispatchContext();
41
44
  const escalationUpdateInProgessIds = useRef([]);
42
45
  const caseDispatch = useCaseDispatch();
@@ -56,9 +59,10 @@ export default function RMEEscalationList(props) {
56
59
  // ...
57
60
  // };
58
61
  const submitEscalationComment = (escalationName, comment, message) => __awaiter(this, void 0, void 0, function* () {
62
+ var _a;
59
63
  escalationUpdateInProgessIds.current.push(escalationName);
60
64
  try {
61
- fetchCaseEscalations(caseDetailsPageDispatch, caseSalesforceId, apolloClient, false);
65
+ fetchCaseEscalations(caseDetailsPageDispatch, caseSalesforceId, apolloClient, false, Boolean((_a = loggedInUsersAccount === null || loggedInUsersAccount === void 0 ? void 0 : loggedInUsersAccount.data) === null || _a === void 0 ? void 0 : _a.secureSupport));
62
66
  yield createComment({
63
67
  caseId: caseSalesforceId,
64
68
  body: comment,
@@ -66,7 +70,11 @@ export default function RMEEscalationList(props) {
66
70
  });
67
71
  apolloClient.refetchQueries({ include: [GET_CASE_COMMENTS] });
68
72
  // TODO: migrate updateCaseRequest(props.caseNumber, { customerEscalation: true }) to GraphQL
69
- checkForCaseStatusToggleOnAttachOrComment(caseDispatch, props.isInternal, props.caseStatus);
73
+ yield checkForCaseStatusToggleOnAttachOrComment(caseDispatch, props.isInternal, props.caseStatus, {
74
+ apolloClient,
75
+ caseNumber: props.caseNumber,
76
+ existingCaseDetails,
77
+ });
70
78
  ToastNotification.addSuccessMessage(message);
71
79
  }
72
80
  catch (e) {
@@ -1 +1 @@
1
- {"version":3,"file":"Cep.d.ts","sourceRoot":"","sources":["../../../../src/components/CaseManagement/Cep.tsx"],"names":[],"mappings":"AA2BA,OAAO,KAA0C,MAAM,OAAO,CAAC;AAe/D,UAAU,MAAM;CAAG;AAEnB,wBAAgB,GAAG,CAAC,KAAK,EAAE,MAAM,qBAkThC"}
1
+ {"version":3,"file":"Cep.d.ts","sourceRoot":"","sources":["../../../../src/components/CaseManagement/Cep.tsx"],"names":[],"mappings":"AA2BA,OAAO,KAA0C,MAAM,OAAO,CAAC;AAe/D,UAAU,MAAM;CAAG;AAEnB,wBAAgB,GAAG,CAAC,KAAK,EAAE,MAAM,qBA4ThC"}
@@ -26,13 +26,14 @@ export function Cep(props) {
26
26
  var _a, _b, _c, _d, _e, _f;
27
27
  const { t } = useTranslation();
28
28
  const caseUpdateError = useCaseUpdateErrorMessage();
29
- const { cep, caseNumber, status, cepDetails, isPostingCep, isCaseUpdating } = useCaseSelector((state) => ({
29
+ const { cep, caseNumber, status, cepDetails, isPostingCep, isCaseUpdating, existingCaseDetails } = useCaseSelector((state) => ({
30
30
  cep: state.caseDetails.cep,
31
31
  caseNumber: state.caseDetails.caseNumber,
32
32
  status: state.caseDetails.status,
33
33
  cepDetails: state.cepDetails,
34
34
  isPostingCep: state.isPostingCep,
35
35
  isCaseUpdating: state.isCaseUpdating,
36
+ existingCaseDetails: state.caseDetails,
36
37
  }), isEqual);
37
38
  const caseDispatch = useCaseDispatch();
38
39
  const { globalMetadataState: { loggedInUserRights }, } = useContext(GlobalMetadataStateContext);
@@ -86,7 +87,11 @@ export function Cep(props) {
86
87
  const cepUpdate = (caseDetails) => __awaiter(this, void 0, void 0, function* () {
87
88
  try {
88
89
  yield updateCaseDetails(caseDispatch, caseNumber, caseDetails);
89
- checkForCaseStatusToggleOnAttachOrComment(caseDispatch, loggedInUserRights.data.isInternal(), status);
90
+ yield checkForCaseStatusToggleOnAttachOrComment(caseDispatch, loggedInUserRights.data.isInternal(), status, {
91
+ apolloClient: client,
92
+ caseNumber,
93
+ existingCaseDetails,
94
+ });
90
95
  if (caseDetails.cep) {
91
96
  yield postCepDetails(caseDispatch, caseNumber, cepDetailsLocal);
92
97
  client.refetchQueries({ include: [GET_CASE_COMMENTS] });
@@ -1 +1 @@
1
- {"version":3,"file":"UpdateSeverityModal.d.ts","sourceRoot":"","sources":["../../../../src/components/UpdateSeverityModal/UpdateSeverityModal.tsx"],"names":[],"mappings":"AAoCA,OAAO,KAAmE,MAAM,OAAO,CAAC;AAexF,UAAU,MAAM;IACZ,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,MAAM,IAAI,CAAC;CACvB;AAED,MAAM,CAAC,OAAO,UAAU,mBAAmB,CAAC,KAAK,EAAE,MAAM,qBA+pBxD"}
1
+ {"version":3,"file":"UpdateSeverityModal.d.ts","sourceRoot":"","sources":["../../../../src/components/UpdateSeverityModal/UpdateSeverityModal.tsx"],"names":[],"mappings":"AAoCA,OAAO,KAAmE,MAAM,OAAO,CAAC;AAexF,UAAU,MAAM;IACZ,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,MAAM,IAAI,CAAC;CACvB;AAED,MAAM,CAAC,OAAO,UAAU,mBAAmB,CAAC,KAAK,EAAE,MAAM,qBAoqBxD"}
@@ -102,7 +102,7 @@ export default function UpdateSeverityModal(props) {
102
102
  const initialContactSameAsOwnerRef = useRef(ftsContactSameAsOwner !== null && ftsContactSameAsOwner !== void 0 ? ftsContactSameAsOwner : false);
103
103
  const hasPremiumSla = isPremiumEntitlement(entitlementSla || '');
104
104
  const severityForFts = String(currentSeverity !== null && currentSeverity !== void 0 ? currentSeverity : '').trim();
105
- const shouldShowFts = isSev1(severityForFts);
105
+ const shouldShowFts = isSev1(severityForFts) && hasPremiumSla;
106
106
  const isPreviousSeveritySelected = isEqual(caseDetails.caseSeverity, currentSeverity);
107
107
  const [isOpen, setIsOpen] = useState(false);
108
108
  const onToggleClick = () => {
@@ -247,7 +247,11 @@ export default function UpdateSeverityModal(props) {
247
247
  updateDiscussionState: true,
248
248
  });
249
249
  try {
250
- checkForCaseStatusToggleOnAttachOrComment(caseDispatch, loggedInUserRights.data.isInternal(), caseDetails.caseStatus);
250
+ yield checkForCaseStatusToggleOnAttachOrComment(caseDispatch, loggedInUserRights.data.isInternal(), caseDetails.caseStatus, {
251
+ apolloClient: client,
252
+ caseNumber: caseDetails.caseNumber,
253
+ existingCaseDetails,
254
+ });
251
255
  setCurrentSeverity(updatedCaseDetails['severity']);
252
256
  onSuccessfulSubmit();
253
257
  ToastNotification.addSuccessMessage(t('Severity has been successfully updated'));
@@ -1 +1 @@
1
- {"version":3,"file":"FileLister.d.ts","sourceRoot":"","sources":["../../../../../src/components/shared/fileUpload/FileLister.tsx"],"names":[],"mappings":"AASA,OAAO,KAAK,MAAM,OAAO,CAAC;AAsB1B,OAAO,EAAiB,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAGxE,eAAO,MAAM,qBAAqB,2FAAyC,CAAC;AAiB5E,UAAU,MAAM;IACZ,kBAAkB,EAAE,UAAU,EAAE,CAAC;IACjC,UAAU,EAAE,CAAC,eAAe,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC;IACtG,YAAY,EAAE,CAAC,aAAa,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,UAAU,KAAK,IAAI,CAAC;IACtE,OAAO,CAAC,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,eAAe,CAAC,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,IAAI,CAAC;IACjD,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,iBAAiB,CAAC,EAAE,CAAC,KAAK,KAAA,KAAK,IAAI,CAAC;CACvC;AAED,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,KAAK,EAAE,MAAM,qBAqS/C"}
1
+ {"version":3,"file":"FileLister.d.ts","sourceRoot":"","sources":["../../../../../src/components/shared/fileUpload/FileLister.tsx"],"names":[],"mappings":"AASA,OAAO,KAAK,MAAM,OAAO,CAAC;AAuB1B,OAAO,EAAiB,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAGxE,eAAO,MAAM,qBAAqB,2FAAyC,CAAC;AAiB5E,UAAU,MAAM;IACZ,kBAAkB,EAAE,UAAU,EAAE,CAAC;IACjC,UAAU,EAAE,CAAC,eAAe,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC;IACtG,YAAY,EAAE,CAAC,aAAa,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,UAAU,KAAK,IAAI,CAAC;IACtE,OAAO,CAAC,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,eAAe,CAAC,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,IAAI,CAAC;IACjD,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,iBAAiB,CAAC,EAAE,CAAC,KAAK,KAAA,KAAK,IAAI,CAAC;CACvC;AAED,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,KAAK,EAAE,MAAM,qBAqS/C"}
@@ -11,7 +11,7 @@ import React from 'react';
11
11
  import { Trans, useTranslation } from 'react-i18next';
12
12
  import { useCaseSelector } from '../../../context/CaseContext';
13
13
  import { ATTACHMENT_DESCRIPTION_LENGTH_LIMIT } from '../../../reducers/CaseConstNTypes';
14
- import { isAnalysingFile, isAnalysisFailed, isFileDeleted, isUploadAborted, isUploadedAndAnalysisFailed, isUploadedAndAnalysisSkipped, isUploadedAndAnalyzed, isUploadFailed, isUploading, isUploadingAttachment, isUploadingOnCase, isUploadingOnSession, isUploadOnTrack, isVerifyingUpload, shouldHideDescription, } from './reducer/AttachmentHelper';
14
+ import { isAnalysingFile, isAnalysisFailed, isFileDeleted, isUploadAborted, isUploadedAndAnalysisFailed, isUploadedAndAnalysisSkipped, isUploadedAndAnalyzed, isUploadFailed, isUploading, isUploadingAttachment, isUploadingOnCase, isUploadingOnSession, isUploadOnTrack, isVerifyingUpload, shouldHideDescription, shouldShowUploadProgressIndicator, } from './reducer/AttachmentHelper';
15
15
  import { FileStatusHelper } from './reducer/FileStatusHelper';
16
16
  export const CaseDiagnosticsStatus = pcm.preCase.diag.CaseDiagnosticsStatus;
17
17
  const analysisSteps = [
@@ -108,7 +108,7 @@ export default function FileLister(props) {
108
108
  !isUploadOnTrack(localFile) && (React.createElement("i", { className: "icon-warning pf-v6-u-mr-sm", title: getUploadErrorMessage(localFile, localFile.uploadability), "aria-label": getUploadErrorMessage(localFile, localFile.uploadability) })),
109
109
  isUploadedAndAnalysisFailed(localFile) && (React.createElement("i", { className: "icon-warning text-danger pf-v6-u-mr-sm", title: getUploadErrorMessage(localFile, localFile.uploadability), "aria-label": getUploadErrorMessage(localFile, localFile.uploadability) })),
110
110
  isUploadedAndAnalyzed(localFile) && (React.createElement("i", { className: "icon-check-alt text-green pf-v6-u-mr-sm", title: t('File uploaded and analyzed'), "aria-label": t('File uploaded and analyzed') })),
111
- isUploading(localFile.uploadProgress.uploadStatus) && (React.createElement("div", { className: "pf-v6-u-mr-sm pf-v6-u-display-inline-block", style: { height: '20px', width: '20px' } },
111
+ shouldShowUploadProgressIndicator(localFile, props.isSessionId) && (React.createElement("div", { className: "pf-v6-u-mr-sm pf-v6-u-display-inline-block", style: { height: '20px', width: '20px' } },
112
112
  React.createElement(CircularProgressbar, { title: getRadialProgressTitle(localFile), strokeWidth: 13, value: localFile.uploadProgress.percentUploaded }))),
113
113
  React.createElement("span", null, `${localFile.name} (${humanizeSize(localFile.size)})`),
114
114
  !localFile.uploadability.ableToUpload && (React.createElement("span", { className: "file-error" },
@@ -5,6 +5,7 @@ import { AnalysisStatusConstants, AttachmentReducerDispatchType, IAnalysisResult
5
5
  export declare const onDrop: (dispatchToAttachmentReducer: AttachmentReducerDispatchType, isSessionId: boolean, isPrivate?: boolean) => (acceptedFiles: File[]) => void;
6
6
  export declare const isUploadingOnSession: (status: string) => status is UploadStatusConstants.uploadingOnSession;
7
7
  export declare const isUploadingOnCase: (status: string) => status is UploadStatusConstants.uploadingOnCase;
8
+ export declare const isAttachedOnCase: (status: string) => status is UploadStatusConstants.attachedOnCase;
8
9
  export declare const isVerifyingSessionUpload: (status: string) => status is UploadStatusConstants.verifyingSessionUpload;
9
10
  export declare const isVerifyingCaseUpload: (status: string) => status is UploadStatusConstants.verifyingCaseUpload;
10
11
  export declare const isRestoredFromSession: (status: string) => status is UploadStatusConstants.restoredFromSession;
@@ -39,6 +40,8 @@ export declare const hasSomeSelectedFiles: (selectedLocalFiles: IFileLocal[]) =>
39
40
  export declare const isUploadingAttachment: (selectedLocalFiles: IFileLocal[]) => boolean;
40
41
  export declare const isAnalysingAnyAttachment: (selectedLocalFiles: IFileLocal[]) => boolean;
41
42
  export declare const canShowProgressBar: (file: IFileLocal) => boolean;
43
+ /** Case discussion: show radial progress while queued (attachedOnCase) or actively uploading. */
44
+ export declare const shouldShowUploadProgressIndicator: (file: IFileLocal, isSessionUpload: boolean) => boolean;
42
45
  export declare const shouldHideDescription: (file: IFileLocal, isSessionUpload: boolean) => boolean;
43
46
  export declare const isUploadOnTrack: (file: IFileLocal) => boolean;
44
47
  export declare const isUploadedAndAnalyzed: (file: IFileLocal) => boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"AttachmentHelper.d.ts","sourceRoot":"","sources":["../../../../../../src/components/shared/fileUpload/reducer/AttachmentHelper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AttachmentHelper.d.ts","sourceRoot":"","sources":["../../../../../../src/components/shared/fileUpload/reducer/AttachmentHelper.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,oDAAoD,CAAC;AAC3F,OAAO,EAAE,0BAA0B,EAAE,MAAM,2CAA2C,CAAC;AAEvF,OAAO,EACH,iBAAiB,EAWpB,MAAM,mBAAmB,CAAC;AAO3B,OAAO,EACH,uBAAuB,EAEvB,6BAA6B,EAK7B,gBAAgB,EAChB,UAAU,EACV,UAAU,EACV,eAAe,EAMf,qBAAqB,EACxB,MAAM,qBAAqB,CAAC;AAG7B,eAAO,MAAM,MAAM,GACd,6BAA6B,6BAA6B,EAAE,aAAa,OAAO,EAAE,mBAAiB,MACnG,eAAe,IAAI,EAAE,SA+BrB,CAAC;AAiBN,eAAO,MAAM,oBAAoB,GAAI,QAAQ,MAAM,uDAAwD,CAAC;AAC5G,eAAO,MAAM,iBAAiB,GAAI,QAAQ,MAAM,oDAAqD,CAAC;AACtG,eAAO,MAAM,gBAAgB,GAAI,QAAQ,MAAM,mDAAoD,CAAC;AACpG,eAAO,MAAM,wBAAwB,GAAI,QAAQ,MAAM,2DAA4D,CAAC;AACpH,eAAO,MAAM,qBAAqB,GAAI,QAAQ,MAAM,wDAAyD,CAAC;AAC9G,eAAO,MAAM,qBAAqB,GAAI,QAAQ,MAAM,wDAAyD,CAAC;AAC9G,eAAO,MAAM,uBAAuB,GAAI,QAAQ,MAAM,kGACiC,CAAC;AACxF,eAAO,MAAM,oBAAoB,GAAI,QAAQ,MAAM,mDAAoD,CAAC;AACxG,eAAO,MAAM,qBAAqB,GAAI,QAAQ,MAAM,0DAA2D,CAAC;AAChH,eAAO,MAAM,kBAAkB,GAAI,QAAQ,MAAM,uDAAwD,CAAC;AAC1G,eAAO,MAAM,cAAc,GAAI,QAAQ,MAAM,iDAAkD,CAAC;AAEhG,eAAO,MAAM,oBAAoB,GAAI,QAAQ,MAAM,yDAA0D,CAAC;AAC9G,eAAO,MAAM,eAAe,GAAI,QAAQ,MAAM,wDAAyD,CAAC;AACxG,eAAO,MAAM,kBAAkB,GAAI,QAAQ,MAAM,uDAAwD,CAAC;AAC1G,eAAO,MAAM,gBAAgB,GAAI,QAAQ,MAAM,qDAAsD,CAAC;AACtG,eAAO,MAAM,iBAAiB,GAAI,QAAQ,MAAM,sDAAuD,CAAC;AAExG,eAAO,MAAM,iBAAiB,GAAI,QAAQ,MAAM,uGAAsE,CAAC;AACvH,eAAO,MAAM,WAAW,GAAI,QAAQ,MAAM,+NAC0E,CAAC;AACrH,eAAO,MAAM,gBAAgB,GAAI,QAAQ,MAAM,yIAAoE,CAAC;AACpH,eAAO,MAAM,cAAc,GAAI,QAAQ,MAAM,qGAAgE,CAAC;AAC9G,eAAO,MAAM,eAAe,GAAI,QAAQ,MAAM,4CAA6C,CAAC;AAC5F,eAAO,MAAM,aAAa,GAAI,QAAQ,MAAM,4CAA6C,CAAC;AAE1F,eAAO,MAAM,0BAA0B,GAAI,oBAAoB,UAAU,EAAE,YACmC,CAAC;AAC/G,eAAO,MAAM,0BAA0B,GAAI,oBAAoB,UAAU,EAAE,YACyC,CAAC;AACrH,eAAO,MAAM,4BAA4B,GAAI,oBAAoB,UAAU,EAAE,YASxE,CAAC;AAEN;;;GAGG;AACH,eAAO,MAAM,0BAA0B,GAAI,oBAAoB,UAAU,EAAE,YAWtE,CAAC;AAEN,wFAAwF;AACxF,eAAO,MAAM,6BAA6B,GAAI,oBAAoB,UAAU,EAAE,YAQzE,CAAC;AAEN,2FAA2F;AAC3F,eAAO,MAAM,oBAAoB,GAAI,oBAAoB,UAAU,EAAE,YACuC,CAAC;AAC7G,eAAO,MAAM,qBAAqB,GAAI,oBAAoB,UAAU,EAAE,YACmC,CAAC;AAE1G,eAAO,MAAM,wBAAwB,GAAI,oBAAoB,UAAU,EAAE,YACwC,CAAC;AAElH,eAAO,MAAM,kBAAkB,GAAI,MAAM,UAAU,YACuD,CAAC;AAE3G,iGAAiG;AACjG,eAAO,MAAM,iCAAiC,GAAI,MAAM,UAAU,EAAE,iBAAiB,OAAO,YAEhB,CAAC;AAE7E,eAAO,MAAM,qBAAqB,GAAI,MAAM,UAAU,EAAE,iBAAiB,OAAO,YAUhB,CAAC;AACjE,eAAO,MAAM,eAAe,GAAI,MAAM,UAAU,YAGb,CAAC;AACpC,eAAO,MAAM,qBAAqB,GAAI,MAAM,UAAU,YAGI,CAAC;AAC3D,eAAO,MAAM,2BAA2B,GAAI,MAAM,UAAU,YAC2D,CAAC;AACxH,eAAO,MAAM,sBAAsB,GAAI,MAAM,UAAU,WACoB,CAAC;AAC5E,eAAO,MAAM,4BAA4B,GAAI,MAAM,UAAU,YAEF,CAAC;AAC5D,eAAO,MAAM,oBAAoB,GAC7B,UAAU,6BAA6B,EACvC,iBAAiB,MAAM,EACvB,mBAAmB,OAAO,CAAC,eAAe,CAAC,SAG9C,CAAC;AAEF,eAAO,MAAM,cAAc,GAAU,2IAWlC;IACC,QAAQ,EAAE,6BAA6B,CAAC;IACxC,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,UAAU,CAAC;IAEtB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,gBAAgB,CAAC,EAAE,0BAA0B,CAAC;IAC9C,YAAY,CAAC,EAAE,iBAAiB,CAAC;IACjC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,kBAAkB,CAAC,EAAE,MAAM,IAAI,CAAC;CACnC,kBAiDA,CAAC;AAEF,eAAO,MAAM,UAAU,GAAU,gKAa9B;IACC,QAAQ,EAAE,6BAA6B,CAAC;IACxC,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,UAAU,CAAC;IACtB,YAAY,EAAE,IAAI,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IAEd,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,gBAAgB,CAAC,EAAE,0BAA0B,CAAC;IAC9C,YAAY,CAAC,EAAE,iBAAiB,CAAC;IACjC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,kBAAkB,CAAC,EAAE,MAAM,IAAI,CAAC;CACnC,kBA4OA,CAAC;AAEF,wBAAsB,8BAA8B,CAChD,QAAQ,KAAA,EACR,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,UAAU,EAAE,EACxB,WAAW,EAAE,OAAO,iBAMvB;AAED,wBAAsB,0BAA0B,CAC5C,QAAQ,KAAA,EACR,YAAY,EAAE,MAAM,EACpB,YAAY,EAAE,MAAM,EACpB,SAAS,EAAE,UAAU,EACrB,WAAW,EAAE,OAAO,EACpB,SAAS,EAAE,MAAM,EACjB,gBAAgB,CAAC,EAAE,qBAAqB,iBA6D3C;AAED,wBAAsB,sBAAsB,CACxC,YAAY,EAAE,MAAM,EACpB,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,OAAO,EACpB,QAAQ,EAAE,CAAC,MAAM,EAAE,qBAAqB,KAAK,IAAI,GAClD,OAAO,CAAC,gBAAgB,CAAC,CAwB3B;AAID,wBAAsB,2BAA2B,CAC7C,QAAQ,KAAA,EACR,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,UAAU,EACrB,SAAS,EAAE,MAAM,EACjB,YAAY,CAAC,EAAE,iBAAiB,EAChC,gBAAgB,CAAC,EAAE,MAAM,iBA4E5B;AAED,wBAAsB,uBAAuB,CAAC,QAAQ,KAAA,EAAE,SAAS,EAAE,MAAM,iBA+CxE;AAED,wBAAgB,+BAA+B,CAAC,UAAU,EAAE,UAAU,EAAE,WAEvE;AAED,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,UAAU,EAAE,WAKzD;AAED,eAAO,MAAM,uBAAuB,GAAI,YAAY,UAAU,KAAG,OAShE,CAAC;AAKF,eAAO,MAAM,2BAA2B,UAOvC,CAAC;AAEF,eAAO,MAAM,8BAA8B,GAAI,oBAAoB,UAAU,EAAE,YAE9E,CAAC;AAEF,eAAO,MAAM,eAAe,GAAI,aAAQ,SAUvC,CAAC"}