@rh-support/troubleshoot 2.0.9 → 2.1.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/esm/components/AccountInfo/AccountSelector.d.ts.map +1 -1
- package/lib/esm/components/AccountInfo/AccountSelector.js +52 -5
- package/lib/esm/components/AccountInfo/OwnerSelector.js +2 -2
- package/lib/esm/components/CaseEditView/CaseDetailsAside.d.ts.map +1 -1
- package/lib/esm/components/CaseEditView/CaseDetailsAside.js +5 -3
- package/lib/esm/components/CaseEditView/CaseOverview/index.d.ts.map +1 -1
- package/lib/esm/components/CaseEditView/CaseOverview/index.js +1 -1
- package/lib/esm/components/CaseEditView/ConfirmationModals/ReopenCaseModal.js +1 -1
- package/lib/esm/components/CaseEditView/ShareCase/PartnerShare.d.ts.map +1 -1
- package/lib/esm/components/CaseEditView/ShareCase/PartnerShare.js +6 -1
- package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseDetailsManagement.d.ts.map +1 -1
- package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseDetailsManagement.js +1 -2
- package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseInformation.js +1 -1
- package/lib/esm/components/CaseEditView/Tabs/CaseDetails/useCustomEmails.js +1 -1
- package/lib/esm/components/CaseInformation/CaseGroup.js +2 -2
- package/lib/esm/components/CaseInformation/CaseInformation.d.ts.map +1 -1
- package/lib/esm/components/CaseInformation/CaseInformation.js +1 -8
- package/lib/esm/components/CaseInformation/Description.d.ts.map +1 -1
- package/lib/esm/components/CaseInformation/Description.js +4 -2
- package/lib/esm/components/CaseInformation/OpenCaseIssue.js +2 -2
- package/lib/esm/components/CaseInformation/Severity.js +1 -1
- package/lib/esm/components/CaseManagement/CaseManagement.d.ts.map +1 -1
- package/lib/esm/components/CaseManagement/CaseManagement.js +2 -9
- package/lib/esm/components/CaseManagement/OpenShiftClusterId.d.ts +5 -1
- package/lib/esm/components/CaseManagement/OpenShiftClusterId.d.ts.map +1 -1
- package/lib/esm/components/CaseManagement/OpenShiftClusterId.js +7 -7
- package/lib/esm/components/CaseManagement/SendNotifications/CaseContactSelector.d.ts.map +1 -1
- package/lib/esm/components/CaseManagement/SendNotifications/CaseContactSelector.js +4 -1
- package/lib/esm/components/IdeaInformation/IdeaInformtion.d.ts.map +1 -1
- package/lib/esm/components/IdeaInformation/IdeaInformtion.js +1 -8
- package/lib/esm/components/ImproveCase/KtQuestions.js +2 -2
- package/lib/esm/components/Issue/Issue.d.ts.map +1 -1
- package/lib/esm/components/Issue/Issue.js +1 -2
- package/lib/esm/components/OpenCase/OpenCase.d.ts.map +1 -1
- package/lib/esm/components/OpenCase/OpenCase.js +2 -9
- package/lib/esm/components/OpenCase/SupportTypeSelectorPage.js +2 -2
- package/lib/esm/components/ProductSelector/AllProductsSelector.d.ts.map +1 -1
- package/lib/esm/components/ProductSelector/AllProductsSelector.js +1 -1
- package/lib/esm/components/ProductSelector/NewProductDropdownSelector.d.ts +1 -1
- package/lib/esm/components/ProductSelector/NewProductDropdownSelector.d.ts.map +1 -1
- package/lib/esm/components/ProductSelector/NewProductDropdownSelector.js +3 -3
- package/lib/esm/components/ProductSelector/NewProductVersionSelector.d.ts +1 -1
- package/lib/esm/components/ProductSelector/NewProductVersionSelector.d.ts.map +1 -1
- package/lib/esm/components/ProductSelector/NewProductVersionSelector.js +3 -3
- package/lib/esm/components/ProductSelector/ProductSelector.js +1 -2
- package/lib/esm/components/ProductSelector/ProductSelectorLoader.d.ts +1 -2
- package/lib/esm/components/ProductSelector/ProductSelectorLoader.d.ts.map +1 -1
- package/lib/esm/components/ProductSelector/ProductSelectorLoader.js +12 -19
- package/lib/esm/components/ProductSelector/ProductVersionDropdownSelector.js +3 -3
- package/lib/esm/components/Recommendations/ClusterRecommendationToast.d.ts.map +1 -1
- package/lib/esm/components/Recommendations/ClusterRecommendationToast.js +2 -1
- package/lib/esm/components/Recommendations/ClusterRecommendations.js +1 -1
- package/lib/esm/components/SessionRestore/RestoreLastSessionModal.js +1 -1
- package/lib/esm/components/SessionRestore/SessionRestore.d.ts.map +1 -1
- package/lib/esm/components/SessionRestore/SessionRestore.js +4 -9
- package/lib/esm/components/SubmitCase/ResubmitToast.js +1 -1
- package/lib/esm/components/SubmitCase/SubmitCase.js +1 -1
- package/lib/esm/components/Suggestions/TopContent.js +1 -1
- package/lib/esm/components/TroubleshootSection/TroubleshootSection.js +2 -2
- package/lib/esm/components/shared/useIsSectionValid.d.ts +1 -1
- package/lib/esm/components/shared/useIsSectionValid.d.ts.map +1 -1
- package/lib/esm/components/shared/useIsSectionValid.js +5 -24
- package/lib/esm/components/wizardLayout/GlobalTroubleshootEffects.d.ts.map +1 -1
- package/lib/esm/components/wizardLayout/GlobalTroubleshootEffects.js +40 -80
- package/lib/esm/components/wizardLayout/MainSection.d.ts +5 -3
- package/lib/esm/components/wizardLayout/MainSection.d.ts.map +1 -1
- package/lib/esm/components/wizardLayout/MainSection.js +4 -4
- package/lib/esm/components/wizardLayout/WizardAside.d.ts.map +1 -1
- package/lib/esm/components/wizardLayout/WizardAside.js +3 -10
- package/lib/esm/components/wizardLayout/WizardLayout.d.ts.map +1 -1
- package/lib/esm/components/wizardLayout/WizardLayout.js +31 -42
- package/lib/esm/components/wizardLayout/WizardMain.d.ts +2 -3
- package/lib/esm/components/wizardLayout/WizardMain.d.ts.map +1 -1
- package/lib/esm/components/wizardLayout/WizardMain.js +43 -163
- package/lib/esm/components/wizardLayout/WizardNavigation.d.ts +7 -3
- package/lib/esm/components/wizardLayout/WizardNavigation.d.ts.map +1 -1
- package/lib/esm/components/wizardLayout/WizardNavigation.js +55 -87
- package/lib/esm/components/wizardLayout/index.d.ts.map +1 -1
- package/lib/esm/components/wizardLayout/index.js +2 -10
- package/lib/esm/context/RootTroubleshootProvider.d.ts.map +1 -1
- package/lib/esm/context/RootTroubleshootProvider.js +7 -9
- package/lib/esm/css/app.css +0 -450
- package/lib/esm/hooks/useResetCaseCreate.d.ts.map +1 -1
- package/lib/esm/hooks/useResetCaseCreate.js +0 -4
- package/lib/esm/hooks/useWizard.d.ts +4 -0
- package/lib/esm/hooks/useWizard.d.ts.map +1 -0
- package/lib/esm/hooks/useWizard.js +128 -0
- package/lib/esm/reducers/RouteConstNTypes.d.ts +21 -1
- package/lib/esm/reducers/RouteConstNTypes.d.ts.map +1 -1
- package/lib/esm/reducers/RouteConstNTypes.js +43 -0
- package/lib/esm/reducers/RouteReducer.d.ts +13 -47
- package/lib/esm/reducers/RouteReducer.d.ts.map +1 -1
- package/lib/esm/reducers/RouteReducer.js +36 -165
- package/lib/esm/scss/_main.scss +67 -786
- package/lib/esm/utils/routeUtils.d.ts +3 -9
- package/lib/esm/utils/routeUtils.d.ts.map +1 -1
- package/lib/esm/utils/routeUtils.js +14 -41
- package/package.json +14 -25
- package/lib/esm/components/wizardLayout/WizardProgress.d.ts +0 -13
- package/lib/esm/components/wizardLayout/WizardProgress.d.ts.map +0 -1
- package/lib/esm/components/wizardLayout/WizardProgress.js +0 -108
- package/lib/esm/context/AppMetadataContext.d.ts +0 -11
- package/lib/esm/context/AppMetadataContext.d.ts.map +0 -1
- package/lib/esm/context/AppMetadataContext.js +0 -13
- package/lib/esm/reducers/AppMetadataReducer.d.ts +0 -28
- package/lib/esm/reducers/AppMetadataReducer.d.ts.map +0 -1
- package/lib/esm/reducers/AppMetadataReducer.js +0 -28
|
@@ -1,18 +1,11 @@
|
|
|
1
1
|
import { ability, CaseListFields, resourceActions, resources } from '@rh-support/user-permissions';
|
|
2
|
-
import React
|
|
3
|
-
import { AppMetadataStateContext } from '../../context/AppMetadataContext';
|
|
2
|
+
import React from 'react';
|
|
4
3
|
import { AccountSelector } from '../AccountInfo/AccountSelector';
|
|
5
4
|
import { OwnerSelector } from '../AccountInfo/OwnerSelector';
|
|
6
5
|
import SupportTypeSelectorPage from './SupportTypeSelectorPage';
|
|
7
6
|
export default function OpenCase(props) {
|
|
8
|
-
const { appMetadataState: { nextButtonRef }, } = useContext(AppMetadataStateContext);
|
|
9
|
-
const handleFormSubmit = (e) => {
|
|
10
|
-
e.preventDefault();
|
|
11
|
-
// simulating click
|
|
12
|
-
nextButtonRef.current.click();
|
|
13
|
-
};
|
|
14
7
|
const canChangeAccountInfo = ability.can(resourceActions.PATCH, resources.CASE_CREATE, CaseListFields.ACCOUNT_AND_OWNER);
|
|
15
|
-
return (React.createElement("form",
|
|
8
|
+
return (React.createElement("form", null,
|
|
16
9
|
canChangeAccountInfo && (React.createElement(React.Fragment, null,
|
|
17
10
|
React.createElement(AccountSelector, null),
|
|
18
11
|
React.createElement(OwnerSelector, null))),
|
|
@@ -14,7 +14,7 @@ export default function SupportTypeSelectorPage() {
|
|
|
14
14
|
const { globalMetadataState: { allCaseTypes, loggedInUsersAccount }, } = useGlobalStateContext();
|
|
15
15
|
const globalDispatch = useGlobalDispatchContext();
|
|
16
16
|
const [selectedSupportType, setSelectedSupportType] = useState('');
|
|
17
|
-
const { routeState: {
|
|
17
|
+
const { routeState: { isNextBtnClickedToShowValidationError }, } = useContext(RouteContext);
|
|
18
18
|
const { caseType, isFetchingSelectedAccountDetails, selectedAccountDetails } = useCaseSelector((state) => ({
|
|
19
19
|
caseType: state.caseDetails.caseType,
|
|
20
20
|
isFetchingSelectedAccountDetails: state.selectedAccountDetails.isFetching,
|
|
@@ -117,7 +117,7 @@ export default function SupportTypeSelectorPage() {
|
|
|
117
117
|
React.createElement(Gallery, { hasGutter: true, className: "pf-u-mt-sm" }, SupportTypesArray.map((supportTypesArrayValues) => {
|
|
118
118
|
var _a;
|
|
119
119
|
return (React.createElement(GalleryItem, { key: supportTypesArrayValues.id },
|
|
120
|
-
React.createElement(Card, { id: supportTypesArrayValues.oldSupportType, key: supportTypesArrayValues.oldSupportType, className: `support-types-card${
|
|
120
|
+
React.createElement(Card, { id: supportTypesArrayValues.oldSupportType, key: supportTypesArrayValues.oldSupportType, className: `support-types-card${isNextBtnClickedToShowValidationError && !caseType ? ' support-types-invalid' : ''}`, onKeyDown: onKeyDown, onClick: onSupportTypeClick, onSelectableInputChange: onChange, isSelected: !!caseType && supportTypesArrayValues.oldSupportType === caseType, hasSelectableInput: true, isSelectable: true, isSelectableRaised: true, isFullHeight: true, isDisabledRaised: ((_a = selectedAccountDetails === null || selectedAccountDetails === void 0 ? void 0 : selectedAccountDetails.data) === null || _a === void 0 ? void 0 : _a.subscriptionAbuse) || false, selectableInputAriaLabel: t(supportTypesArrayValues.supportTypeHeading) },
|
|
121
121
|
React.createElement(CardBody, null, supportTypesArrayValues.icon ? (React.createElement(Split, null,
|
|
122
122
|
React.createElement(SplitItem, { className: "pf-u-pr-lg" },
|
|
123
123
|
React.createElement(Bullseye, null, supportTypesArrayValues.icon && supportTypesArrayValues.icon)),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AllProductsSelector.d.ts","sourceRoot":"","sources":["../../../../src/components/ProductSelector/AllProductsSelector.tsx"],"names":[],"mappings":"AAQA,OAAO,KAAsD,MAAM,OAAO,CAAC;AAE3E,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAKnD,OAAO,EAAqB,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAMrF,UAAU,MAAM;IACZ,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,qBAAqB,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IAChD,UAAU,EAAE,mBAAmB,CAAC,eAAe,CAAC,CAAC;IACjD,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,wBAAwB,CAAC,EAAE,OAAO,CAAC;IACnC,oBAAoB,CAAC,EAAE,OAAO,CAAC;CAClC;AAgBD;;;;;;;GAOG;AACH,QAAA,MAAM,mBAAmB,
|
|
1
|
+
{"version":3,"file":"AllProductsSelector.d.ts","sourceRoot":"","sources":["../../../../src/components/ProductSelector/AllProductsSelector.tsx"],"names":[],"mappings":"AAQA,OAAO,KAAsD,MAAM,OAAO,CAAC;AAE3E,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAKnD,OAAO,EAAqB,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAMrF,UAAU,MAAM;IACZ,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,qBAAqB,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IAChD,UAAU,EAAE,mBAAmB,CAAC,eAAe,CAAC,CAAC;IACjD,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,wBAAwB,CAAC,EAAE,OAAO,CAAC;IACnC,oBAAoB,CAAC,EAAE,OAAO,CAAC;CAClC;AAgBD;;;;;;;GAOG;AACH,QAAA,MAAM,mBAAmB,4EAuKvB,CAAC;AAGH,OAAO,EAAE,mBAAmB,EAAE,CAAC"}
|
|
@@ -126,7 +126,7 @@ const AllProductsSelector = forwardRef((props, ref) => {
|
|
|
126
126
|
React.createElement(OpenCaseIssue, { inlineEditable: false, required: true })),
|
|
127
127
|
React.createElement("div", { className: "all-product-selector-dropdown" },
|
|
128
128
|
React.createElement(ProductVersionDropdownSelector, { isLoading: allProducts.isFetching, products: props.checkEntitledProduct ? entitledProducts : allProducts.data.productsResult, selectedProduct: selectedProductForDropdown, onProductChange: onProductChange, onVersionChange: onVersionChange, version: version, ref: ref }))),
|
|
129
|
-
React.createElement(AlertMessage, { variant: AlertType.DANGER, className: "push-top", title: t(`${loggedInUserRights.data.isSSOUsernameSameAsLoggedInUser(contactSSOName)
|
|
129
|
+
React.createElement(AlertMessage, { isInline: true, variant: AlertType.DANGER, className: "push-top", title: t(`${loggedInUserRights.data.isSSOUsernameSameAsLoggedInUser(contactSSOName)
|
|
130
130
|
? 'You are'
|
|
131
131
|
: 'Selected owner is'} not allowed to create case on this product.`), show: !allProducts.isFetching && props.checkEntitledProduct && !isEntitledProduct && !isEmpty(product) }),
|
|
132
132
|
React.createElement(LoadingIndicator, { show: topContent.isFetching && props.loadTCOnChange }),
|
|
@@ -4,7 +4,7 @@ interface IProps {
|
|
|
4
4
|
onProductChange: (product: Partial<ISEProduct>) => any;
|
|
5
5
|
selectedProduct: Partial<ISEProduct>;
|
|
6
6
|
onVersionChange: (version: string) => any;
|
|
7
|
-
|
|
7
|
+
isNextBtnClickedToShowValidationError: boolean;
|
|
8
8
|
isCaseCreate: boolean;
|
|
9
9
|
}
|
|
10
10
|
export declare const NewProductDropdownSelector: (props: IProps) => JSX.Element;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NewProductDropdownSelector.d.ts","sourceRoot":"","sources":["../../../../src/components/ProductSelector/NewProductDropdownSelector.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,wCAAwC,CAAC;AAOpE,UAAU,MAAM;IACZ,QAAQ,EAAE,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;IAChC,eAAe,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,KAAK,GAAG,CAAC;IACvD,eAAe,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;IACrC,eAAe,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,GAAG,CAAC;IAC1C,
|
|
1
|
+
{"version":3,"file":"NewProductDropdownSelector.d.ts","sourceRoot":"","sources":["../../../../src/components/ProductSelector/NewProductDropdownSelector.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,wCAAwC,CAAC;AAOpE,UAAU,MAAM;IACZ,QAAQ,EAAE,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;IAChC,eAAe,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,KAAK,GAAG,CAAC;IACvD,eAAe,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;IACrC,eAAe,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,GAAG,CAAC;IAC1C,qCAAqC,EAAE,OAAO,CAAC;IAC/C,YAAY,EAAE,OAAO,CAAC;CACzB;AAED,eAAO,MAAM,0BAA0B,UAAW,MAAM,gBA0GvD,CAAC"}
|
|
@@ -7,7 +7,7 @@ export const NewProductDropdownSelector = (props) => {
|
|
|
7
7
|
const { t } = useTranslation();
|
|
8
8
|
const [isOpen, setIsOpen] = useState(false);
|
|
9
9
|
const [selected, setSelected] = useState(undefined);
|
|
10
|
-
const [showValidationLocal, setShowValidationLocal] = useState(props.
|
|
10
|
+
const [showValidationLocal, setShowValidationLocal] = useState(props.isNextBtnClickedToShowValidationError);
|
|
11
11
|
const { globalMetadataState: { allProducts }, } = useContext(GlobalMetadataStateContext);
|
|
12
12
|
useEffect(() => {
|
|
13
13
|
if (props.selectedProduct) {
|
|
@@ -16,9 +16,9 @@ export const NewProductDropdownSelector = (props) => {
|
|
|
16
16
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
17
17
|
}, [props.selectedProduct]);
|
|
18
18
|
useEffect(() => {
|
|
19
|
-
setShowValidationLocal(props.
|
|
19
|
+
setShowValidationLocal(props.isNextBtnClickedToShowValidationError);
|
|
20
20
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
21
|
-
}, [props.
|
|
21
|
+
}, [props.isNextBtnClickedToShowValidationError]);
|
|
22
22
|
const createOption = (product, id, type) => {
|
|
23
23
|
return React.createElement(SelectOption, { key: `${type}-${id}`, value: product.name, className: "pf-c-select__menu-wrapper" });
|
|
24
24
|
};
|
|
@@ -3,7 +3,7 @@ interface IProps {
|
|
|
3
3
|
selectedProduct: Partial<ISEProduct>;
|
|
4
4
|
onVersionChange: (option: string) => void;
|
|
5
5
|
versionState: string;
|
|
6
|
-
|
|
6
|
+
isNextBtnClickedToShowValidationError: boolean;
|
|
7
7
|
}
|
|
8
8
|
export declare const NewProductVersionSelector: (props: IProps) => JSX.Element;
|
|
9
9
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NewProductVersionSelector.d.ts","sourceRoot":"","sources":["../../../../src/components/ProductSelector/NewProductVersionSelector.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,wCAAwC,CAAC;AAMpE,UAAU,MAAM;IACZ,eAAe,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;IACrC,eAAe,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1C,YAAY,EAAE,MAAM,CAAC;IACrB,
|
|
1
|
+
{"version":3,"file":"NewProductVersionSelector.d.ts","sourceRoot":"","sources":["../../../../src/components/ProductSelector/NewProductVersionSelector.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,wCAAwC,CAAC;AAMpE,UAAU,MAAM;IACZ,eAAe,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;IACrC,eAAe,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1C,YAAY,EAAE,MAAM,CAAC;IACrB,qCAAqC,EAAE,OAAO,CAAC;CAClD;AAED,eAAO,MAAM,yBAAyB,UAAW,MAAM,gBA+EtD,CAAC"}
|
|
@@ -7,11 +7,11 @@ export const NewProductVersionSelector = (props) => {
|
|
|
7
7
|
const [isOpen, setIsOpen] = useState(false);
|
|
8
8
|
const [selected, setSelected] = useState('');
|
|
9
9
|
const [selectVersionOptions, setSelectVersionOptions] = React.useState([]);
|
|
10
|
-
const [showValidationLocal, setShowValidationLocal] = useState(props.
|
|
10
|
+
const [showValidationLocal, setShowValidationLocal] = useState(props.isNextBtnClickedToShowValidationError);
|
|
11
11
|
useEffect(() => {
|
|
12
|
-
setShowValidationLocal(props.
|
|
12
|
+
setShowValidationLocal(props.isNextBtnClickedToShowValidationError);
|
|
13
13
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
14
|
-
}, [props.
|
|
14
|
+
}, [props.isNextBtnClickedToShowValidationError]);
|
|
15
15
|
useEffect(() => {
|
|
16
16
|
if (isEmpty(props.selectedProduct)) {
|
|
17
17
|
setSelected('');
|
|
@@ -26,7 +26,6 @@ export default function ProductSelector(props) {
|
|
|
26
26
|
product: state.caseDetails.product,
|
|
27
27
|
version: state.caseDetails.version,
|
|
28
28
|
}), isEqual);
|
|
29
|
-
const handleFormSubmit = (e) => e.preventDefault();
|
|
30
29
|
const { routeState: { isCaseCreate }, } = useContext(RouteContext);
|
|
31
30
|
/**
|
|
32
31
|
* The all product selector and top product selector should always be "selected" because
|
|
@@ -38,7 +37,7 @@ export default function ProductSelector(props) {
|
|
|
38
37
|
allProducts.isFetching && React.createElement(ProductSelectorLoader, null),
|
|
39
38
|
React.createElement(AlertMessage, { variant: AlertType.DANGER, className: "push-top", title: t('There was an error loading products.'), show: allProducts.isError }),
|
|
40
39
|
!allProducts.isFetching && !allProducts.isError && (React.createElement(React.Fragment, null,
|
|
41
|
-
React.createElement("form",
|
|
40
|
+
React.createElement("form", null,
|
|
42
41
|
React.createElement(AllProductsSelector, { isDropdownSelected: true, routeProps: props.routeProps, checkEntitledProduct: isCaseCreate ? true : false, ref: productSelectorRef }),
|
|
43
42
|
product === 'Subscription Watch' && (React.createElement(Alert, { isInline: true, variant: AlertVariant.warning, title: React.createElement(Trans, null,
|
|
44
43
|
' ',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProductSelectorLoader.d.ts","sourceRoot":"","sources":["../../../../src/components/ProductSelector/ProductSelectorLoader.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ProductSelectorLoader.d.ts","sourceRoot":"","sources":["../../../../src/components/ProductSelector/ProductSelectorLoader.tsx"],"names":[],"mappings":"AAGA,wBAAgB,qBAAqB,gBAkBpC"}
|
|
@@ -1,21 +1,14 @@
|
|
|
1
|
+
import { Skeleton } from '@patternfly/react-core';
|
|
1
2
|
import React from 'react';
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
React.createElement(
|
|
6
|
-
React.createElement(
|
|
7
|
-
React.createElement(
|
|
8
|
-
React.createElement(
|
|
9
|
-
React.createElement(
|
|
10
|
-
React.createElement(
|
|
11
|
-
React.createElement(
|
|
12
|
-
React.createElement(
|
|
13
|
-
React.createElement("rect", { x: "25", y: "230", width: "270", height: "15" }),
|
|
14
|
-
React.createElement("circle", { cx: "10", cy: "280", r: "8" }),
|
|
15
|
-
React.createElement("rect", { x: "25", y: "280", width: "200", height: "15" }),
|
|
16
|
-
React.createElement("circle", { cx: "10", cy: "330", r: "8" }),
|
|
17
|
-
React.createElement("rect", { x: "25", y: "330", width: "170", height: "15" }),
|
|
18
|
-
React.createElement("circle", { cx: "10", cy: "380", r: "8" }),
|
|
19
|
-
React.createElement("rect", { x: "25", y: "380", width: "220", height: "15" }),
|
|
20
|
-
React.createElement("rect", { x: "0", y: "450", width: "400", height: "15" })));
|
|
3
|
+
export function ProductSelectorLoader() {
|
|
4
|
+
return (React.createElement("div", { style: { width: '100%', position: 'relative', height: '720px' } },
|
|
5
|
+
React.createElement(Skeleton, { height: "15px", width: "100px", style: { top: '0px' } }),
|
|
6
|
+
React.createElement(Skeleton, { height: "30px", width: "100%", style: { top: '30px' } }),
|
|
7
|
+
React.createElement(Skeleton, { height: "15px", width: "80px", style: { top: '90px' } }),
|
|
8
|
+
React.createElement(Skeleton, { height: "30px", width: "63%", style: { top: '120px' } }),
|
|
9
|
+
React.createElement(Skeleton, { height: "15px", width: "100px", style: { top: '90px', left: '68%' } }),
|
|
10
|
+
React.createElement(Skeleton, { height: "30px", width: "32%", style: { top: '120px', left: '68%' } }),
|
|
11
|
+
React.createElement(Skeleton, { height: "145px", width: "100%", style: { top: '200px' } }),
|
|
12
|
+
React.createElement(Skeleton, { height: "145px", width: "100%", style: { top: '375px' } }),
|
|
13
|
+
React.createElement(Skeleton, { height: "145px", width: "100%", style: { top: '550px' } })));
|
|
21
14
|
}
|
|
@@ -8,7 +8,7 @@ const defaultProps = {
|
|
|
8
8
|
htmlForId: '',
|
|
9
9
|
};
|
|
10
10
|
const ProductVersionDropdownSelector = forwardRef((props, ref) => {
|
|
11
|
-
const { routeState: { isCaseCreate,
|
|
11
|
+
const { routeState: { isCaseCreate, isNextBtnClickedToShowValidationError }, } = useContext(RouteContext);
|
|
12
12
|
return (React.createElement(React.Fragment, null,
|
|
13
13
|
React.createElement("div", { className: "product-selector-wrapper" },
|
|
14
14
|
React.createElement("label", { htmlFor: "product-selector-dropdown-downshift-search", ref: ref },
|
|
@@ -16,14 +16,14 @@ const ProductVersionDropdownSelector = forwardRef((props, ref) => {
|
|
|
16
16
|
React.createElement(Trans, null, "Product"),
|
|
17
17
|
' ',
|
|
18
18
|
React.createElement("span", { className: "form-required", "aria-hidden": true }, "*"))),
|
|
19
|
-
React.createElement(NewProductDropdownSelector, { products: props.products, onProductChange: props.onProductChange, selectedProduct: props.selectedProduct, onVersionChange: props.onVersionChange,
|
|
19
|
+
React.createElement(NewProductDropdownSelector, { products: props.products, onProductChange: props.onProductChange, selectedProduct: props.selectedProduct, onVersionChange: props.onVersionChange, isNextBtnClickedToShowValidationError: isNextBtnClickedToShowValidationError, isCaseCreate: isCaseCreate })),
|
|
20
20
|
React.createElement("div", { className: "version-selector-wrapper" },
|
|
21
21
|
React.createElement("label", { htmlFor: "version-selector-dropdown-toggle" },
|
|
22
22
|
React.createElement("h3", { className: "subheading subheading-sm" },
|
|
23
23
|
React.createElement(Trans, null, "Version"),
|
|
24
24
|
' ',
|
|
25
25
|
React.createElement("span", { className: "form-required", "aria-hidden": true }, "*"))),
|
|
26
|
-
React.createElement(NewProductVersionSelector, { selectedProduct: props.selectedProduct, onVersionChange: props.onVersionChange, versionState: props.version,
|
|
26
|
+
React.createElement(NewProductVersionSelector, { selectedProduct: props.selectedProduct, onVersionChange: props.onVersionChange, versionState: props.version, isNextBtnClickedToShowValidationError: isNextBtnClickedToShowValidationError }))));
|
|
27
27
|
});
|
|
28
28
|
ProductVersionDropdownSelector.defaultProps = defaultProps;
|
|
29
29
|
export { ProductVersionDropdownSelector };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ClusterRecommendationToast.d.ts","sourceRoot":"","sources":["../../../../src/components/Recommendations/ClusterRecommendationToast.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ClusterRecommendationToast.d.ts","sourceRoot":"","sources":["../../../../src/components/Recommendations/ClusterRecommendationToast.tsx"],"names":[],"mappings":"AAIA,OAAc,EAAE,EAAE,EAAmC,MAAM,OAAO,CAAC;AAUnE,UAAU,MAAM;CAAG;AAEnB,QAAA,MAAM,0BAA0B,EAAE,EAAE,CAAC,MAAM,CAsD1C,CAAC;AAEF,eAAe,0BAA0B,CAAC"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Alert, AlertActionCloseButton, Button } from '@patternfly/react-core';
|
|
2
2
|
import { GlobalMetadataStateContext } from '@rh-support/react-context';
|
|
3
|
-
import
|
|
3
|
+
import isEmpty from 'lodash/isEmpty';
|
|
4
|
+
import isEqual from 'lodash/isEqual';
|
|
4
5
|
import React, { useContext, useEffect, useState } from 'react';
|
|
5
6
|
import { Trans } from 'react-i18next';
|
|
6
7
|
import { useCaseSelector } from '../../context/CaseContext';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Button } from '@patternfly/react-core';
|
|
2
2
|
import { GlobalMetadataStateContext } from '@rh-support/react-context';
|
|
3
|
-
import
|
|
3
|
+
import isEqual from 'lodash/isEqual';
|
|
4
4
|
import React, { useContext } from 'react';
|
|
5
5
|
import { Trans } from 'react-i18next';
|
|
6
6
|
import { useCaseSelector } from '../../context/CaseContext';
|
|
@@ -8,7 +8,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
8
8
|
});
|
|
9
9
|
};
|
|
10
10
|
import { Button, Modal, ModalVariant } from '@patternfly/react-core';
|
|
11
|
-
import
|
|
11
|
+
import isEqual from 'lodash/isEqual';
|
|
12
12
|
import React, { useContext } from 'react';
|
|
13
13
|
import { Trans, useTranslation } from 'react-i18next';
|
|
14
14
|
import { useCaseDispatch, useCaseSelector } from '../../context/CaseContext';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SessionRestore.d.ts","sourceRoot":"","sources":["../../../../src/components/SessionRestore/SessionRestore.tsx"],"names":[],"mappings":"AAUA,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAQvD,OAAO,EAGH,eAAe,EAElB,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"SessionRestore.d.ts","sourceRoot":"","sources":["../../../../src/components/SessionRestore/SessionRestore.tsx"],"names":[],"mappings":"AAUA,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAQvD,OAAO,EAGH,eAAe,EAElB,MAAM,iCAAiC,CAAC;AAgBzC,UAAU,MAAM;IACZ,UAAU,EAAE,mBAAmB,CAAC,eAAe,CAAC,CAAC;CACpD;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,eAgU3C"}
|
|
@@ -10,20 +10,19 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
10
10
|
import { pcm } from '@cee-eng/hydrajs';
|
|
11
11
|
import { useDebounce, useDeepCompareDebounce, usePrevious } from '@rh-support/components';
|
|
12
12
|
import { GlobalMetadataStateContext } from '@rh-support/react-context';
|
|
13
|
-
import { getUserAgentForCaseMode
|
|
13
|
+
import { getUserAgentForCaseMode } from '@rh-support/utils';
|
|
14
14
|
import includes from 'lodash/includes';
|
|
15
15
|
import isEmpty from 'lodash/isEmpty';
|
|
16
16
|
import isEqual from 'lodash/isEqual';
|
|
17
17
|
import orderBy from 'lodash/orderBy';
|
|
18
18
|
import React, { useContext, useEffect, useState } from 'react';
|
|
19
19
|
import { useCaseDispatch, useCaseSelector } from '../../context/CaseContext';
|
|
20
|
-
import { RouteContext
|
|
20
|
+
import { RouteContext } from '../../context/RouteContext';
|
|
21
21
|
import { SessionRestoreDispatchContext, SessionRestoreStateContext } from '../../context/SessionRestoreContext';
|
|
22
22
|
import { CaseReducerConstants, SESSION_REFERRER_URL_LIMIT } from '../../reducers/CaseConstNTypes';
|
|
23
23
|
import { getSessionDetailsFromCase } from '../../reducers/CaseHelpers';
|
|
24
24
|
import { setCaseAccountNumber, setCaseOwner, setCaseState, updateCaseWithSession } from '../../reducers/CaseReducer';
|
|
25
25
|
import { AppRouteSections, sessionRestoreCardSections, } from '../../reducers/RouteConstNTypes';
|
|
26
|
-
import { getAppRouteSectionsSequence, getDefaultSection, RouteReducerConstants } from '../../reducers/RouteReducer';
|
|
27
26
|
import { createSession, getRelevantSessionFromSessions, loadPreviousSessions, markAllSessionsUnresolved, updateActiveSessionId, updateSession, } from '../../reducers/SessionRestoreReducer';
|
|
28
27
|
import RouteUtils from '../../utils/routeUtils';
|
|
29
28
|
import { resetAttachment } from '../shared/fileUpload';
|
|
@@ -34,7 +33,6 @@ import { SessionRestoreCard } from './SessionRestoreCard';
|
|
|
34
33
|
export function SessionRestore(props) {
|
|
35
34
|
const sessionRestoreDispatch = useContext(SessionRestoreDispatchContext);
|
|
36
35
|
const dispatchToAttachmentReducer = useContext(AttachmentDispatchContext);
|
|
37
|
-
const dispatchToRouteReducer = useRouteDispatchContext();
|
|
38
36
|
const { sessionRestore } = useContext(SessionRestoreStateContext);
|
|
39
37
|
const { selectedNotificationContacts, cepDetails, caseDetails, caseCreation500ErrorStatus } = useCaseSelector((state) => ({
|
|
40
38
|
openshiftClusterID: state.caseDetails.openshiftClusterID,
|
|
@@ -48,11 +46,10 @@ export function SessionRestore(props) {
|
|
|
48
46
|
const queryParamsFromUrl = RouteUtils.getQueryParams(props.routeProps);
|
|
49
47
|
const currentUrlSeSessionId = queryParamsFromUrl.seSessionId;
|
|
50
48
|
const previousUrlSeSessionId = usePrevious(currentUrlSeSessionId);
|
|
51
|
-
const { routeState: { activeSection, isCaseCreate, isSearchIntent
|
|
49
|
+
const { routeState: { activeSection, isCaseCreate, isSearchIntent }, } = useContext(RouteContext);
|
|
52
50
|
const [isRestoring, setIsRestoring] = useState(false);
|
|
53
51
|
const [previousSessions, setPreviousSessions] = useState([]);
|
|
54
52
|
const previousActiveSessionId = usePrevious(sessionRestore.activeSessionId);
|
|
55
|
-
const isIdea = caseDetails.caseType === PreviousCaseTypes.FEATURE_ENHANCEMENT;
|
|
56
53
|
/**
|
|
57
54
|
* Fetching previous sessions on load
|
|
58
55
|
*/
|
|
@@ -186,7 +183,6 @@ export function SessionRestore(props) {
|
|
|
186
183
|
caseDispatch({ type: CaseReducerConstants.resetCaseState });
|
|
187
184
|
setCaseAccountNumber(caseDispatch, loggedInUserRights.data.getAccountNumber(), true, loggedInUsersAccount.data);
|
|
188
185
|
setCaseOwner(caseDispatch, loggedInUserRights.data.getHydraContactFromLoggedInUser(), sessionItem.sessionDetails.product);
|
|
189
|
-
dispatchToRouteReducer({ type: RouteReducerConstants.resetRouteState });
|
|
190
186
|
}
|
|
191
187
|
const sessionDetails = sessionRestore.previousSessions.data[sessionItem.session.id].sessionDetails;
|
|
192
188
|
// Automatically restoring a troubleshooting session in case creation can lead to overwriting open-case section details
|
|
@@ -208,8 +204,7 @@ export function SessionRestore(props) {
|
|
|
208
204
|
product: sessionItem.sessionDetails.product,
|
|
209
205
|
version: sessionItem.sessionDetails.version,
|
|
210
206
|
};
|
|
211
|
-
|
|
212
|
-
RouteUtils.navigateToSection(props.routeProps, getDefaultSection(isCaseCreate, isSearchIntent, isIdea), getAppRouteSectionsSequence(sectionsToHide, isCaseCreate, isSearchIntent, isIdea), isCaseCreate, isSearchIntent, isIdea, true, newParams);
|
|
207
|
+
RouteUtils.navigateToDefaltSection(props.routeProps, isCaseCreate, isSearchIntent, true, newParams);
|
|
213
208
|
}
|
|
214
209
|
else {
|
|
215
210
|
updateActiveSessionId(sessionRestoreDispatch, sessionItem.session.id);
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Alert, AlertActionCloseButton, AlertActionLink, AlertVariant } from '@patternfly/react-core';
|
|
2
|
-
import
|
|
2
|
+
import isEqual from 'lodash/isEqual';
|
|
3
3
|
import React from 'react';
|
|
4
4
|
import { Trans, useTranslation } from 'react-i18next';
|
|
5
5
|
import { useCaseDispatch, useCaseSelector } from '../../context/CaseContext';
|
|
@@ -82,7 +82,7 @@ export default function SubmitCase() {
|
|
|
82
82
|
? false
|
|
83
83
|
: attachmentState.caseFiles.selectedLocalFiles.every((localFile) => !isUploadedAndAnalyzed(localFile));
|
|
84
84
|
const isNotAnIdea = caseType !== PreviousCaseTypes.FEATURE_ENHANCEMENT;
|
|
85
|
-
return (React.createElement(
|
|
85
|
+
return (React.createElement("article", { className: "gird-main" },
|
|
86
86
|
React.createElement(AlertMessage, { className: "push-top", title: t('Failed to add user.'), variant: AlertType.DANGER, show: addNotifiedUserError }),
|
|
87
87
|
React.createElement(AlertMessage, { className: "push-top", variant: AlertType.DANGER, show: caseCreationError, title: t("Sorry, we're experiencing an error"), isInline: true },
|
|
88
88
|
React.createElement(React.Fragment, null, caseCreationErrorMessage)),
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import '@patternfly/pfe-accordion';
|
|
2
2
|
import { pcm } from '@cee-eng/hydrajs';
|
|
3
3
|
import { Tooltip } from '@patternfly/react-core';
|
|
4
|
-
import
|
|
4
|
+
import map from 'lodash/map';
|
|
5
5
|
import React from 'react';
|
|
6
6
|
import RouteUtils from '../../utils/routeUtils';
|
|
7
7
|
const { SessionResourceSource } = pcm.preCase.session;
|
|
@@ -37,8 +37,8 @@ function TroubleshootSection(props) {
|
|
|
37
37
|
const canAddAttachments = ability.can(resourceActions.PATCH, resources.CASE_CREATE, CaseListFields.ATTACHMENTS);
|
|
38
38
|
const isNotAnIdea = caseType !== PreviousCaseTypes.FEATURE_ENHANCEMENT;
|
|
39
39
|
return (React.createElement(React.Fragment, null,
|
|
40
|
-
!isCreatingCase && (React.createElement("section",
|
|
41
|
-
React.createElement(OpenShiftClusterId,
|
|
40
|
+
!isCreatingCase && (React.createElement("section", null,
|
|
41
|
+
React.createElement(OpenShiftClusterId, { className: "push-bottom" }))),
|
|
42
42
|
React.createElement("section", null,
|
|
43
43
|
React.createElement("header", null,
|
|
44
44
|
React.createElement("h3", null,
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { AppRouteSections } from '../../reducers/RouteConstNTypes';
|
|
2
|
-
export declare function useIsSectionValid(sectionName
|
|
2
|
+
export declare function useIsSectionValid(sectionName: AppRouteSections): {
|
|
3
3
|
isSectionValid: boolean;
|
|
4
4
|
isSectionValidFn: (sectionNameLocal: any) => boolean;
|
|
5
5
|
isActiveSectionValid: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useIsSectionValid.d.ts","sourceRoot":"","sources":["../../../../src/components/shared/useIsSectionValid.tsx"],"names":[],"mappings":"AAyBA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"useIsSectionValid.d.ts","sourceRoot":"","sources":["../../../../src/components/shared/useIsSectionValid.tsx"],"names":[],"mappings":"AAyBA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAEnE,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,gBAAgB;;;;;EA4K9D"}
|
|
@@ -2,16 +2,15 @@ import { GlobalMetadataStateContext } from '@rh-support/react-context';
|
|
|
2
2
|
import find from 'lodash/find';
|
|
3
3
|
import isEmpty from 'lodash/isEmpty';
|
|
4
4
|
import isEqual from 'lodash/isEqual';
|
|
5
|
-
import { useContext
|
|
5
|
+
import { useContext } from 'react';
|
|
6
6
|
import { useCaseSelector } from '../../context/CaseContext';
|
|
7
7
|
import { RecommendationStateContext } from '../../context/RecommendationContext';
|
|
8
|
-
import { RouteContext
|
|
8
|
+
import { RouteContext } from '../../context/RouteContext';
|
|
9
9
|
import { TCStateContext } from '../../context/TopContentContext';
|
|
10
10
|
import { CASE_REFERENCE_NUMBER_LIMIT, CONTACT_INFO_24X7_LIMIT, DESCRIPTION_LENGTH_LIMIT, HOSTNAME_LENGTH_LIMIT, PHONE_LIMIT, SUMMARY_LENGTH_LIMIT, } from '../../reducers/CaseConstNTypes';
|
|
11
11
|
import { isCaseInformationSectionValid, isCaseManagementStateValid, isCaseStateValid, isClusterIDValid, isIdeaCaseStateValid, } from '../../reducers/CaseHelpers';
|
|
12
12
|
import { AppRouteSections } from '../../reducers/RouteConstNTypes';
|
|
13
|
-
|
|
14
|
-
export function useIsSectionValid(sectionName = null) {
|
|
13
|
+
export function useIsSectionValid(sectionName) {
|
|
15
14
|
var _a, _b;
|
|
16
15
|
const { caseState, caseType, product, version, contactSSOName, accountNumber, summary, description, hostname, contactInfo24x7, alternateId, selectedAccountDetails, phone, } = useCaseSelector((state) => ({
|
|
17
16
|
caseState: state,
|
|
@@ -34,7 +33,6 @@ export function useIsSectionValid(sectionName = null) {
|
|
|
34
33
|
const { recommendationState } = useContext(RecommendationStateContext);
|
|
35
34
|
const isEntitledProduct = (_b = find((_a = allProducts === null || allProducts === void 0 ? void 0 : allProducts.data) === null || _a === void 0 ? void 0 : _a.productsResult, (p) => p.product === caseState.caseDetails.product)) === null || _b === void 0 ? void 0 : _b.isEntitledProduct;
|
|
36
35
|
const { routeState: { activeSection, isSearchIntent }, } = useContext(RouteContext);
|
|
37
|
-
const dispatchToRouteReducer = useContext(RouteDispatchContext);
|
|
38
36
|
const isGetSupportSectionValidLocal = () => {
|
|
39
37
|
return (!isEmpty(caseType) &&
|
|
40
38
|
!isEmpty(accountNumber) &&
|
|
@@ -110,6 +108,8 @@ export function useIsSectionValid(sectionName = null) {
|
|
|
110
108
|
return isReviewSectionValid();
|
|
111
109
|
case AppRouteSections.DESCRIBE_IDEA:
|
|
112
110
|
return isDescribeIdeaSectionValid();
|
|
111
|
+
case AppRouteSections.SUBMIT_CASE:
|
|
112
|
+
return true;
|
|
113
113
|
default:
|
|
114
114
|
return false;
|
|
115
115
|
}
|
|
@@ -130,25 +130,6 @@ export function useIsSectionValid(sectionName = null) {
|
|
|
130
130
|
return '';
|
|
131
131
|
}
|
|
132
132
|
};
|
|
133
|
-
useEffect(() => {
|
|
134
|
-
if (isSectionValid(sectionName)) {
|
|
135
|
-
dispatchToRouteReducer({
|
|
136
|
-
type: RouteReducerConstants.setShowValidationErrorAlert,
|
|
137
|
-
payload: {
|
|
138
|
-
showValidationErrorAlert: true,
|
|
139
|
-
},
|
|
140
|
-
});
|
|
141
|
-
}
|
|
142
|
-
else {
|
|
143
|
-
dispatchToRouteReducer({
|
|
144
|
-
type: RouteReducerConstants.setShowValidationErrorAlert,
|
|
145
|
-
payload: {
|
|
146
|
-
showValidationErrorAlert: false,
|
|
147
|
-
},
|
|
148
|
-
});
|
|
149
|
-
}
|
|
150
|
-
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
151
|
-
}, [sectionName, dispatchToRouteReducer]);
|
|
152
133
|
return {
|
|
153
134
|
isSectionValid: isSectionValid(sectionName),
|
|
154
135
|
isSectionValidFn: isSectionValid,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GlobalTroubleshootEffects.d.ts","sourceRoot":"","sources":["../../../../src/components/wizardLayout/GlobalTroubleshootEffects.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"GlobalTroubleshootEffects.d.ts","sourceRoot":"","sources":["../../../../src/components/wizardLayout/GlobalTroubleshootEffects.tsx"],"names":[],"mappings":"AAWA,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAWvD,OAAO,EAAqB,eAAe,EAAE,MAAM,iCAAiC,CAAC;AASrF,UAAU,MAAM;IACZ,UAAU,EAAE,mBAAmB,CAAC,eAAe,CAAC,CAAC;CACpD;AAED,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,MAAM,eA+VtD"}
|