@rh-support/troubleshoot 2.6.48 → 2.6.49
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/CaseEditView/ActiveCustomerEscalation/ActiveCustomerEscalation.d.ts +0 -1
- package/lib/esm/components/CaseEditView/ActiveCustomerEscalation/ActiveCustomerEscalation.d.ts.map +1 -1
- package/lib/esm/components/CaseEditView/ActiveCustomerEscalation/ActiveCustomerEscalation.js +5 -31
- package/lib/esm/components/CaseEditView/ActiveCustomerEscalation/RequestEscalationModal.d.ts.map +1 -1
- package/lib/esm/components/CaseEditView/ActiveCustomerEscalation/RequestEscalationModal.js +34 -33
- package/lib/esm/components/CaseEditView/CaseDetailsAside.d.ts.map +1 -1
- package/lib/esm/components/CaseEditView/CaseDetailsAside.js +2 -3
- package/lib/esm/components/CaseEditView/CaseDetailsTabs.d.ts.map +1 -1
- package/lib/esm/components/CaseEditView/CaseDetailsTabs.js +0 -1
- package/lib/esm/components/CaseEditView/CaseSolutions/CaseSolutions.d.ts.map +1 -1
- package/lib/esm/components/CaseEditView/CaseSolutions/CaseSolutions.js +18 -14
- package/lib/esm/components/CaseEditView/CaseSolutions/CaseSolutionsItem.js +1 -1
- package/lib/esm/components/CaseEditView/ConfirmationModals/ReopenCaseModal.d.ts.map +1 -1
- package/lib/esm/components/CaseEditView/ConfirmationModals/ReopenCaseModal.js +22 -16
- package/lib/esm/components/CaseEditView/RequestRemoteSession/ESSRemoteSession.d.ts.map +1 -1
- package/lib/esm/components/CaseEditView/RequestRemoteSession/ESSRemoteSession.js +2 -2
- package/lib/esm/components/CaseEditView/RequestRemoteSession/NewEssTermsModal.d.ts.map +1 -1
- package/lib/esm/components/CaseEditView/RequestRemoteSession/NewEssTermsModal.js +102 -53
- package/lib/esm/components/CaseEditView/RequestRemoteSession/RemoteSessionAgreement.d.ts.map +1 -1
- package/lib/esm/components/CaseEditView/RequestRemoteSession/RemoteSessionAgreement.js +1 -1
- package/lib/esm/components/CaseEditView/RequestRemoteSession/RemoteSessionAgreementModal.d.ts.map +1 -1
- package/lib/esm/components/CaseEditView/RequestRemoteSession/RemoteSessionAgreementModal.js +21 -23
- package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseHostname.js +2 -4
- package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CasePhoneNumberConfirmAlert.d.ts.map +1 -1
- package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CasePhoneNumberConfirmAlert.js +4 -7
- package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/PostComment.d.ts.map +1 -1
- package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/PostComment.js +1 -1
- package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/VerifyCaseStatusModal/VerifyCaseStatusModal.d.ts.map +1 -1
- package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/VerifyCaseStatusModal/VerifyCaseStatusModal.js +9 -7
- package/lib/esm/components/CaseEditView/Tabs/CaseHistory/Timeline.css +8 -0
- package/lib/esm/components/CaseInformation/Fts.d.ts.map +1 -1
- package/lib/esm/components/CaseInformation/Fts.js +2 -6
- package/lib/esm/components/CaseInformation/Severity.js +1 -1
- package/lib/esm/components/CaseInformation/SupportLevel.d.ts.map +1 -1
- package/lib/esm/components/CaseInformation/SupportLevel.js +1 -1
- package/lib/esm/components/CaseManagement/OpenshiftDropdownV4.d.ts +0 -3
- package/lib/esm/components/CaseManagement/OpenshiftDropdownV4.d.ts.map +1 -1
- package/lib/esm/components/CaseManagement/OpenshiftDropdownV4.js +24 -16
- package/lib/esm/components/CaseManagement/RHAssociatesSelector.d.ts.map +1 -1
- package/lib/esm/components/CaseManagement/RHAssociatesSelector.js +7 -5
- package/lib/esm/components/CaseManagement/SendNotifications/AddCustomEmailToAccountModal.d.ts.map +1 -1
- package/lib/esm/components/CaseManagement/SendNotifications/AddCustomEmailToAccountModal.js +18 -20
- package/lib/esm/components/CaseManagement/SendNotifications/CaseContactSelector.d.ts.map +1 -1
- package/lib/esm/components/CaseManagement/SendNotifications/CaseContactSelector.js +9 -6
- package/lib/esm/components/CaseManagement/SendNotifications/NonOrgCaseNotifyeesSelector.d.ts.map +1 -1
- package/lib/esm/components/CaseManagement/SendNotifications/NonOrgCaseNotifyeesSelector.js +15 -22
- package/lib/esm/components/Cve/CveModal.d.ts.map +1 -1
- package/lib/esm/components/Cve/CveModal.js +3 -2
- package/lib/esm/components/Cve/CveSidebar.js +1 -1
- package/lib/esm/components/OpenCase/SupportTypeSelectorPage.js +1 -1
- package/lib/esm/components/ProductSelector/AllProductsSelector.d.ts.map +1 -1
- package/lib/esm/components/ProductSelector/AllProductsSelector.js +9 -6
- package/lib/esm/components/ProductSelector/NewProductDropdownSelector.d.ts.map +1 -1
- package/lib/esm/components/ProductSelector/NewProductDropdownSelector.js +10 -1
- package/lib/esm/components/Recommendations/AsideResults.d.ts.map +1 -1
- package/lib/esm/components/Recommendations/AsideResults.js +2 -2
- package/lib/esm/components/Recommendations/ClusterRecommendationsModal.d.ts.map +1 -1
- package/lib/esm/components/Recommendations/ClusterRecommendationsModal.js +7 -4
- package/lib/esm/components/Recommendations/EARules/EARuleInfoAccordion.d.ts.map +1 -1
- package/lib/esm/components/Recommendations/EARules/EARuleInfoAccordion.js +3 -1
- package/lib/esm/components/Recommendations/InsightsResults.js +1 -1
- package/lib/esm/components/Recommendations/InsightsRuleInfo.d.ts.map +1 -1
- package/lib/esm/components/Recommendations/InsightsRuleInfo.js +9 -2
- package/lib/esm/components/Recommendations/RecommendationFeedbackModal.d.ts.map +1 -1
- package/lib/esm/components/Recommendations/RecommendationFeedbackModal.js +4 -4
- package/lib/esm/components/Recommendations/Recommendations.js +1 -1
- package/lib/esm/components/Recommendations/RulesModal.d.ts.map +1 -1
- package/lib/esm/components/Recommendations/RulesModal.js +7 -4
- package/lib/esm/components/Recommendations/WatsonxAiIcon.js +1 -1
- package/lib/esm/components/SessionRestore/RestoreLastSessionModal.d.ts.map +1 -1
- package/lib/esm/components/SessionRestore/RestoreLastSessionModal.js +5 -3
- package/lib/esm/components/SessionRestore/SessionRestore.js +1 -1
- package/lib/esm/components/Suggestions/Suggestions.d.ts.map +1 -1
- package/lib/esm/components/Suggestions/Suggestions.js +17 -12
- package/lib/esm/components/Suggestions/TopContent.d.ts.map +1 -1
- package/lib/esm/components/Suggestions/TopContent.js +13 -13
- package/lib/esm/components/TroubleshootSection/AskRedHat.d.ts.map +1 -1
- package/lib/esm/components/TroubleshootSection/AskRedHat.js +14 -6
- package/lib/esm/components/TroubleshootSection/ResponseActions.d.ts.map +1 -1
- package/lib/esm/components/TroubleshootSection/ResponseActions.js +1 -1
- package/lib/esm/components/TroubleshootSection/TroubleshootSection.js +1 -1
- package/lib/esm/components/TroubleshootSection/UserFeedback.d.ts +1 -0
- package/lib/esm/components/TroubleshootSection/UserFeedback.d.ts.map +1 -1
- package/lib/esm/components/TroubleshootSection/UserFeedback.js +2 -2
- package/lib/esm/components/shared/fileUpload/WidgetFileUploader.js +3 -3
- package/lib/esm/components/shared/fileUpload/css/fileSelector.css +1 -0
- package/lib/esm/components/shared/input/ContactSelectorInternal.d.ts +1 -0
- package/lib/esm/components/shared/input/ContactSelectorInternal.d.ts.map +1 -1
- package/lib/esm/components/shared/input/ContactSelectorInternal.js +6 -1
- package/lib/esm/components/shared/useIsSectionValid.d.ts.map +1 -1
- package/lib/esm/components/shared/useIsSectionValid.js +7 -1
- package/lib/esm/components/wizardLayout/GlobalTroubleshootEffects.d.ts.map +1 -1
- package/lib/esm/components/wizardLayout/GlobalTroubleshootEffects.js +8 -2
- package/lib/esm/components/wizardLayout/WizardAside.js +3 -3
- package/lib/esm/components/wizardLayout/WizardMain.d.ts.map +1 -1
- package/lib/esm/components/wizardLayout/WizardMain.js +45 -45
- package/lib/esm/components/wizardLayout/WizardNavigation.d.ts +2 -2
- package/lib/esm/components/wizardLayout/WizardNavigation.d.ts.map +1 -1
- package/lib/esm/components/wizardLayout/WizardNavigation.js +14 -10
- package/lib/esm/css/AskRedHat.css +40 -7
- package/lib/esm/css/app.css +5 -4
- package/lib/esm/css/case.css +39 -6
- package/lib/esm/css/results.css +2 -2
- package/lib/esm/scss/_main.scss +70 -7
- package/lib/esm/scss/_pf-overrides.scss +37 -10
- package/package.json +6 -6
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WizardMain.d.ts","sourceRoot":"","sources":["../../../../src/components/wizardLayout/WizardMain.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"WizardMain.d.ts","sourceRoot":"","sources":["../../../../src/components/wizardLayout/WizardMain.tsx"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EAAE,EAAE,QAAQ,EAAE,cAAc,EAAqD,MAAM,OAAO,CAAC;AAE3G,OAAO,EAAS,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAe9D,OAAO,EAAoB,eAAe,EAAE,MAAM,iCAAiC,CAAC;AA0FpF,UAAU,MAAM;IACZ,UAAU,EAAE,mBAAmB,CAAC,eAAe,CAAC,CAAC;IACjD,qBAAqB,EAAE,CAAC,cAAc,EAAE,OAAO,KAAK,IAAI,CAAC;IACzD,mBAAmB,EAAE,CAAC,gCAAgC,EAAE,OAAO,KAAK,IAAI,CAAC;IACzE,YAAY,EAAE,OAAO,CAAC;IACtB,eAAe,EAAE,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC;IACnD,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,4BAA4B,CAAC,EAAE,OAAO,CAAC;IACvC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,sBAAsB,CAAC,EAAE,OAAO,CAAC;CACpC;AAED,iBAAS,UAAU,CAAC,KAAK,EAAE,MAAM,qBA2XhC;AACD,eAAe,UAAU,CAAC"}
|
|
@@ -20,8 +20,9 @@ var __rest = (this && this.__rest) || function (s, e) {
|
|
|
20
20
|
};
|
|
21
21
|
import { Env } from '@cee-eng/hydrajs';
|
|
22
22
|
import { askRHDirectAIResponse, getRHDirectStatusCheck, } from '@ifd-ui/ask-redhat-core';
|
|
23
|
-
import {
|
|
23
|
+
import { Wizard, WizardNav, WizardNavItem, WizardStep, } from '@patternfly/react-core';
|
|
24
24
|
import { LoadingIndicator } from '@rh-support/components';
|
|
25
|
+
import i18n from 'i18next';
|
|
25
26
|
import isEqual from 'lodash/isEqual';
|
|
26
27
|
import React, { Suspense, useContext, useEffect, useRef, useState } from 'react';
|
|
27
28
|
import { useTranslation } from 'react-i18next';
|
|
@@ -85,17 +86,17 @@ const generateAIQuestion = (activeSection, product, version, summary, issue, cas
|
|
|
85
86
|
return `${prefix} ${baseMessageMap[lang] || baseMessageMap.en}`;
|
|
86
87
|
};
|
|
87
88
|
function WizardMain(props) {
|
|
89
|
+
var _a, _b, _c;
|
|
88
90
|
const [showRestFlag, setShowRestFlag] = useState(false);
|
|
89
91
|
const [aiServicesAvailable, setAIServicesAvailable] = useState(false); // default to false until services are confirmed available
|
|
90
92
|
const recommendationDispatch = useContext(RecommendationDispatchContext);
|
|
91
|
-
const { isCreatingCase, product, version, summary, issue, caseType
|
|
93
|
+
const { isCreatingCase, product, version, summary, issue, caseType } = useCaseSelector((state) => ({
|
|
92
94
|
isCreatingCase: state.isCreatingCase,
|
|
93
95
|
product: state.caseDetails.product,
|
|
94
96
|
version: state.caseDetails.version,
|
|
95
97
|
summary: state.caseDetails.summary,
|
|
96
98
|
issue: state.caseDetails.issue,
|
|
97
99
|
caseType: state.caseDetails.caseType,
|
|
98
|
-
caseLanguage: state.caseDetails.caseLanguage,
|
|
99
100
|
}), isEqual);
|
|
100
101
|
const { routeState: { isCaseCreate, activeSection }, } = useContext(RouteContext);
|
|
101
102
|
const aiResponseDispatch = useAIResponseDispatch();
|
|
@@ -261,53 +262,52 @@ function WizardMain(props) {
|
|
|
261
262
|
const customNav = (isExpanded, steps, activeStep, goToStepByIndex) => (React.createElement(WizardNav, { isExpanded: isExpanded }, steps.map((step) => {
|
|
262
263
|
return (React.createElement(WizardNavItem, { key: step.id, id: step.id, content: step.name, isCurrent: activeStep.id === step.id, isDisabled: !step.canJumpTo, stepIndex: step.index, onClick: () => goToStepByIndex(step.index) }));
|
|
263
264
|
})));
|
|
264
|
-
const
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
265
|
+
const aiResponseState = useAIResponseState();
|
|
266
|
+
const config = {
|
|
267
|
+
appSourceId: appSourceId_ARH,
|
|
268
|
+
authToken: (_b = (_a = window === null || window === void 0 ? void 0 : window.sessionjs) === null || _a === void 0 ? void 0 : _a.getEncodedToken()) !== null && _b !== void 0 ? _b : '',
|
|
269
|
+
packageVersion: (_c = window === null || window === void 0 ? void 0 : window.supportVersionInfo) === null || _c === void 0 ? void 0 : _c.packageVersion,
|
|
270
|
+
appEnv: Env.getEnvName(),
|
|
271
|
+
};
|
|
272
|
+
const fetchARHResponse = () => __awaiter(this, void 0, void 0, function* () {
|
|
273
|
+
var _a;
|
|
274
|
+
const detailedQuestion = generateAIQuestion(activeSection || '', product, version, summary, issue, caseType || '', i18n.language || 'en');
|
|
275
|
+
//streaming callbacks
|
|
276
|
+
const streamingCallbacks = {
|
|
277
|
+
onChunk: (chunk, accumulatedResponse) => {
|
|
278
|
+
aiResponseDispatch(streamingChunkReceived(chunk, accumulatedResponse));
|
|
279
|
+
},
|
|
280
|
+
onComplete: (finalResponse) => {
|
|
281
|
+
aiResponseDispatch(streamingCompleted(finalResponse));
|
|
282
|
+
},
|
|
283
|
+
onError: (error) => {
|
|
284
|
+
aiResponseDispatch(streamingError(error));
|
|
285
|
+
},
|
|
273
286
|
};
|
|
287
|
+
aiResponseDispatch(streamingStarted());
|
|
288
|
+
try {
|
|
289
|
+
// Get existing conversation ID from state if available (need to map it with session data)
|
|
290
|
+
const existingConversationId = (_a = aiResponseState === null || aiResponseState === void 0 ? void 0 : aiResponseState.aiResponse) === null || _a === void 0 ? void 0 : _a.conversationId;
|
|
291
|
+
yield askRHDirectAIResponse(detailedQuestion, config, true, // response to be streamed or not
|
|
292
|
+
existingConversationId, streamingCallbacks);
|
|
293
|
+
}
|
|
294
|
+
catch (error) {
|
|
295
|
+
const errorMessage = error instanceof Error ? error.message : 'Failed to get AI response';
|
|
296
|
+
aiResponseDispatch(streamingError(errorMessage));
|
|
297
|
+
}
|
|
298
|
+
});
|
|
299
|
+
const CustomFooter = (activeStep, goToNextStep, goToPrevStep) => {
|
|
274
300
|
useEffect(() => {
|
|
275
|
-
if (steps.length > 2 && activeStep.index === 2 && isNextButtonClicked) {
|
|
276
|
-
|
|
301
|
+
if (steps.length > 2 && (activeStep === null || activeStep === void 0 ? void 0 : activeStep.index) === 2 && isNextButtonClicked) {
|
|
302
|
+
goToNextStep({});
|
|
277
303
|
}
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
var _a;
|
|
281
|
-
const detailedQuestion = generateAIQuestion(activeSection || '', product, version, summary, issue, caseType || '', caseLanguage || 'en');
|
|
282
|
-
//streaming callbacks
|
|
283
|
-
const streamingCallbacks = {
|
|
284
|
-
onChunk: (chunk, accumulatedResponse) => {
|
|
285
|
-
aiResponseDispatch(streamingChunkReceived(chunk, accumulatedResponse));
|
|
286
|
-
},
|
|
287
|
-
onComplete: (finalResponse) => {
|
|
288
|
-
aiResponseDispatch(streamingCompleted(finalResponse));
|
|
289
|
-
},
|
|
290
|
-
onError: (error) => {
|
|
291
|
-
aiResponseDispatch(streamingError(error));
|
|
292
|
-
},
|
|
293
|
-
};
|
|
294
|
-
aiResponseDispatch(streamingStarted());
|
|
295
|
-
try {
|
|
296
|
-
// Get existing conversation ID from state if available (need to map it with session data)
|
|
297
|
-
const existingConversationId = (_a = aiResponseState === null || aiResponseState === void 0 ? void 0 : aiResponseState.aiResponse) === null || _a === void 0 ? void 0 : _a.conversationId;
|
|
298
|
-
yield askRHDirectAIResponse(detailedQuestion, config, true, // response to be streamed or not
|
|
299
|
-
existingConversationId, streamingCallbacks);
|
|
300
|
-
}
|
|
301
|
-
catch (error) {
|
|
302
|
-
const errorMessage = error instanceof Error ? error.message : 'Failed to get AI response';
|
|
303
|
-
aiResponseDispatch(streamingError(errorMessage));
|
|
304
|
-
}
|
|
305
|
-
});
|
|
304
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
305
|
+
}, [activeStep, steps.length, isNextButtonClicked, goToNextStep]);
|
|
306
306
|
const handleContinueClick = () => __awaiter(this, void 0, void 0, function* () {
|
|
307
307
|
// Navigate to next step first
|
|
308
308
|
isNextButtonClickedRef.current = true;
|
|
309
309
|
setIsNextButtonClicked(true);
|
|
310
|
-
goToNextStep();
|
|
310
|
+
goToNextStep({});
|
|
311
311
|
focusWizardMainPanel();
|
|
312
312
|
// Fetch ARH response if conditions are met
|
|
313
313
|
if (shouldEnableARHServices() && aiServicesAvailable) {
|
|
@@ -316,7 +316,7 @@ function WizardMain(props) {
|
|
|
316
316
|
});
|
|
317
317
|
return (React.createElement(WizardNavigation, { routeProps: props.routeProps, onNext: handleContinueClick, onBack: () => {
|
|
318
318
|
isBackButtonClickedRef.current = true;
|
|
319
|
-
goToPrevStep();
|
|
319
|
+
goToPrevStep({});
|
|
320
320
|
focusWizardMainPanel();
|
|
321
321
|
}, activeStep: activeStep, onSubmit: onSubmit, confirmSupportModal: props.confirmSupportModal, onShowRestUpdate: (flag) => setShowRestFlag(flag), userSeenRecommendations: userSeenRecommendations, setUserSeenRecommendations: setUserSeenRecommendations, userClickedNextonRecommendationsFn: setUserClickedNextonRecommendations, userClickedNextonRecommendationsValue: userClickedNextonRecommendations, setUserCanNavigateToTroubleshoot: setUserCanNavigateToTroubleshoot, resultsRowRef: resultsRowRef, setUserScrolledLabel: setUserScrolledLabel, isAIChatMode: props.isAIChatMode, onReturnToCaseCreation: handleReturnToCaseCreation }));
|
|
322
322
|
};
|
|
@@ -329,7 +329,7 @@ function WizardMain(props) {
|
|
|
329
329
|
// in useWizard file then add it to step squences in RouteConstNTypes
|
|
330
330
|
return (React.createElement(React.Fragment, null,
|
|
331
331
|
React.createElement(NewFeatureModal, null),
|
|
332
|
-
steps.length !== 0 && (React.createElement(Route, { path: `${RouteUtils.seBasePath}/(${steps[0].id}|describe-issue|open-case)`, render: () => (React.createElement(Wizard, { isVisitRequired: true, nav: customNav, navAriaLabel: ` navAriaLabel steps `, footer:
|
|
332
|
+
steps.length !== 0 && (React.createElement(Route, { path: `${RouteUtils.seBasePath}/(${steps[0].id}|describe-issue|open-case)`, render: () => (React.createElement(Wizard, { isVisitRequired: true, nav: customNav, navAriaLabel: ` navAriaLabel steps `, footer: CustomFooter, onStepChange: onCurrentStepChanged }, wizardSteps)) })),
|
|
333
333
|
React.createElement(Route, { exact: true, path: `${RouteUtils.seBasePath}/${AppRouteSections.SUBMIT_CASE}`, render: () => renderSubmitCasePage() })));
|
|
334
334
|
}
|
|
335
335
|
export default WizardMain;
|
|
@@ -3,8 +3,8 @@ import { RouteComponentProps } from 'react-router-dom';
|
|
|
3
3
|
import { IRouteUrlParams, ISectionConfiguration } from '../../reducers/RouteConstNTypes';
|
|
4
4
|
interface IProps {
|
|
5
5
|
routeProps: RouteComponentProps<IRouteUrlParams>;
|
|
6
|
-
onNext: () => void;
|
|
7
|
-
onBack: () => void;
|
|
6
|
+
onNext: (e: React.MouseEvent<HTMLButtonElement>) => void;
|
|
7
|
+
onBack: (e: React.MouseEvent<HTMLButtonElement>) => void;
|
|
8
8
|
activeStep: Partial<ISectionConfiguration>;
|
|
9
9
|
onSubmit: () => void;
|
|
10
10
|
confirmSupportModal: (hasPreferredSecureSupportAccount: boolean) => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WizardNavigation.d.ts","sourceRoot":"","sources":["../../../../src/components/wizardLayout/WizardNavigation.tsx"],"names":[],"mappings":"AAcA,OAAO,KAAkD,MAAM,OAAO,CAAC;AAEvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAOvD,OAAO,EAAoB,eAAe,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAM3G,UAAU,MAAM;IACZ,UAAU,EAAE,mBAAmB,CAAC,eAAe,CAAC,CAAC;IACjD,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"WizardNavigation.d.ts","sourceRoot":"","sources":["../../../../src/components/wizardLayout/WizardNavigation.tsx"],"names":[],"mappings":"AAcA,OAAO,KAAkD,MAAM,OAAO,CAAC;AAEvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAOvD,OAAO,EAAoB,eAAe,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAM3G,UAAU,MAAM;IACZ,UAAU,EAAE,mBAAmB,CAAC,eAAe,CAAC,CAAC;IACjD,MAAM,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,KAAK,IAAI,CAAC;IACzD,MAAM,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,KAAK,IAAI,CAAC;IACzD,UAAU,EAAE,OAAO,CAAC,qBAAqB,CAAC,CAAC;IAC3C,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,mBAAmB,EAAE,CAAC,gCAAgC,EAAE,OAAO,KAAK,IAAI,CAAC;IACzE,gBAAgB,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IAC1C,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,0BAA0B,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC;IAC5E,kCAAkC,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC;IACpF,qCAAqC,CAAC,EAAE,OAAO,CAAC;IAChD,gCAAgC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC;IACjF,aAAa,CAAC,EAAE,GAAG,CAAC;IACpB,oBAAoB,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC;IACrE,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,sBAAsB,CAAC,EAAE,MAAM,IAAI,CAAC;CACvC;AAGD,iBAAS,gBAAgB,CAAC,KAAK,EAAE,MAAM,qBAsVtC;kBAtVQ,gBAAgB;;;AAwVzB,eAAe,gBAAgB,CAAC"}
|
|
@@ -9,7 +9,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
9
9
|
};
|
|
10
10
|
import { pcm } from '@cee-eng/hydrajs';
|
|
11
11
|
import { Button, ButtonVariant, WizardFooterWrapper } from '@patternfly/react-core';
|
|
12
|
-
import { useFetch } from '@rh-support/components';
|
|
12
|
+
import { useFetch, usePrevious } from '@rh-support/components';
|
|
13
13
|
import { GlobalMetadataStateContext, useCanCreateCase } from '@rh-support/react-context';
|
|
14
14
|
import { dtmTrackEventCaseCreationStepEncountered, getResTypeFromUrl, PreviousToNewCaseTypeMap, scrollIntoView, } from '@rh-support/utils';
|
|
15
15
|
import find from 'lodash/find';
|
|
@@ -51,6 +51,7 @@ function WizardNavigation(props) {
|
|
|
51
51
|
const { activeSectionError, isSectionValidFn } = useIsSectionValid(activeSection);
|
|
52
52
|
const [isRecsModalVisible, setIsRecsModalVisible] = useState(false);
|
|
53
53
|
const previousRecommendationTop = useRef(0);
|
|
54
|
+
const previousStep = usePrevious(props.activeStep);
|
|
54
55
|
const { request: resolveSessionRequest } = useFetch(pcm.preCase.session.resolveSession);
|
|
55
56
|
const { sessionRestore: { activeSessionId, sessionResourceTracking }, } = useContext(SessionRestoreStateContext);
|
|
56
57
|
const { SessionResourceSource } = pcm.preCase.session;
|
|
@@ -59,12 +60,15 @@ function WizardNavigation(props) {
|
|
|
59
60
|
}), isEqual);
|
|
60
61
|
const caseDispatch = useCaseDispatch();
|
|
61
62
|
useEffect(() => {
|
|
62
|
-
var _a;
|
|
63
|
+
var _a, _b;
|
|
64
|
+
if ((previousStep === null || previousStep === void 0 ? void 0 : previousStep.id) === ((_a = props.activeStep) === null || _a === void 0 ? void 0 : _a.id)) {
|
|
65
|
+
return;
|
|
66
|
+
}
|
|
63
67
|
const isCreatingCase = RouteUtils.getQueryParams(props.routeProps).caseCreate === 'true';
|
|
64
68
|
dtmTrackEventCaseCreationStepEncountered(isCreatingCase,
|
|
65
69
|
// @ts-ignore
|
|
66
70
|
props.activeStep.name, props.activeStep.id === AppRouteSections.GET_SUPPORT ||
|
|
67
|
-
props.activeStep.id === AppRouteSections.TROUBLESHOOT, (
|
|
71
|
+
props.activeStep.id === AppRouteSections.TROUBLESHOOT, (_b = caseState.caseDetails) === null || _b === void 0 ? void 0 : _b.caseNumber, PreviousToNewCaseTypeMap[caseState.caseDetails.caseType], caseState.caseDetails.summary, caseState.caseDetails.product, caseState.caseDetails.version);
|
|
68
72
|
if (props.activeStep.id === AppRouteSections.RESOURCES) {
|
|
69
73
|
window.scrollTo({
|
|
70
74
|
top: 0,
|
|
@@ -72,7 +76,7 @@ function WizardNavigation(props) {
|
|
|
72
76
|
});
|
|
73
77
|
}
|
|
74
78
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
75
|
-
}, [props.activeStep.id]);
|
|
79
|
+
}, [previousStep === null || previousStep === void 0 ? void 0 : previousStep.id, props.activeStep.id]);
|
|
76
80
|
const [hasUserScrolled, setHasUserScrolled] = useState(false);
|
|
77
81
|
useEffect(() => {
|
|
78
82
|
if (props.activeStep.id !== (isCaseCreate ? AppRouteSections.SUMMARIZE : AppRouteSections.TROUBLESHOOT) ||
|
|
@@ -135,7 +139,7 @@ function WizardNavigation(props) {
|
|
|
135
139
|
}
|
|
136
140
|
};
|
|
137
141
|
}, [recommendationState.numFound, hasUserScrolled, props, isCaseCreate]);
|
|
138
|
-
const onNext = () => {
|
|
142
|
+
const onNext = (e) => {
|
|
139
143
|
var _a;
|
|
140
144
|
updateisNextBtnClickedToShowValidationError(dispatchToRouteReducer, true);
|
|
141
145
|
//handle the new changes for 13406:
|
|
@@ -171,19 +175,19 @@ function WizardNavigation(props) {
|
|
|
171
175
|
// to show all steps, a delay needed in order to steps array
|
|
172
176
|
// to be updated
|
|
173
177
|
window.setTimeout(() => {
|
|
174
|
-
props.onNext && props.onNext();
|
|
178
|
+
props.onNext && props.onNext(e);
|
|
175
179
|
}, 10);
|
|
176
180
|
}
|
|
177
181
|
else {
|
|
178
|
-
props.onNext && props.onNext();
|
|
182
|
+
props.onNext && props.onNext(e);
|
|
179
183
|
}
|
|
180
184
|
}
|
|
181
185
|
return;
|
|
182
186
|
};
|
|
183
|
-
const onBack = () => {
|
|
187
|
+
const onBack = (e) => {
|
|
184
188
|
if (props.activeStep.hidRestOnBack)
|
|
185
189
|
props.onShowRestUpdate(false);
|
|
186
|
-
props.onBack();
|
|
190
|
+
props.onBack(e);
|
|
187
191
|
};
|
|
188
192
|
const onRecsFeedbackModalToggle = () => {
|
|
189
193
|
setIsRecsModalVisible((visible) => !visible);
|
|
@@ -250,7 +254,7 @@ function WizardNavigation(props) {
|
|
|
250
254
|
return (React.createElement(React.Fragment, null,
|
|
251
255
|
React.createElement(WizardFooterWrapper, null,
|
|
252
256
|
props.isAIChatMode && activeSection === AppRouteSections.RESOURCES ? (React.createElement(Button, { onClick: props.onReturnToCaseCreation, variant: "link", className: "return-to-case-btn" }, isCaseCreate ? t('Return to case creation') : t('Return to resources'))) : (React.createElement(React.Fragment, null,
|
|
253
|
-
props.activeStep.order !== 0 && (React.createElement("button", { onClick: () => onBack(), className: "btn btn-app btn-open-white main-nav-button", "data-tracking-id": `prev-of-${activeSection}`, type: "button", disabled: isDisabledGoBack() }, t('Go back'))),
|
|
257
|
+
props.activeStep.order !== 0 && (React.createElement("button", { onClick: () => onBack({}), className: "btn btn-app btn-open-white main-nav-button", "data-tracking-id": `prev-of-${activeSection}`, type: "button", disabled: isDisabledGoBack() }, t('Go back'))),
|
|
254
258
|
React.createElement("button", { disabled: nextButtonDisabledLogic(), onClick: onNext, className: "btn btn-app btn-primary main-nav-button", "data-tracking-id": `next-of-${activeSection}`, type: "button" }, t(props.activeStep.nextButtonLabel)),
|
|
255
259
|
activeSection === AppRouteSections.RESOURCES && isFileRecommendationsTriggered && (React.createElement(Button, { onClick: handleFileRecsSelfSolved, variant: ButtonVariant.secondary, className: "issue-solved-button solved-issue-button", "data-tracking-id": "troubleshoot-self-solved-issue" }, t('I solved my issue'))))),
|
|
256
260
|
React.createElement(RecommendationFeedbackModal, { isModalOpen: isRecsModalVisible, handleModalToggle: onRecsFeedbackModalToggle, modalContent: t(`Great, we're glad that resolved your issue`) }),
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
.ask-redhat {
|
|
2
|
-
padding:
|
|
2
|
+
padding-bottom: 2rem;
|
|
3
3
|
}
|
|
4
4
|
|
|
5
5
|
.ask-redhat-title {
|
|
@@ -36,12 +36,12 @@
|
|
|
36
36
|
}
|
|
37
37
|
|
|
38
38
|
.ask-redhat-content--expanded {
|
|
39
|
-
max-height: calc(100vh -
|
|
39
|
+
max-height: calc(100vh - 382px);
|
|
40
40
|
transition: max-height 0.8s ease !important;
|
|
41
41
|
}
|
|
42
42
|
|
|
43
43
|
.ask-redhat-content--expanded-scrollable {
|
|
44
|
-
max-height: calc(100vh -
|
|
44
|
+
max-height: calc(100vh - 453px);
|
|
45
45
|
overflow-y: auto;
|
|
46
46
|
}
|
|
47
47
|
|
|
@@ -65,15 +65,14 @@
|
|
|
65
65
|
|
|
66
66
|
.ask-redhat-footer-wrapper {
|
|
67
67
|
position: relative;
|
|
68
|
-
margin-top:
|
|
69
|
-
padding-bottom:
|
|
68
|
+
margin-top: 24px;
|
|
69
|
+
padding-bottom: 16px;
|
|
70
70
|
}
|
|
71
71
|
|
|
72
72
|
.ask-redhat-footer {
|
|
73
73
|
display: flex;
|
|
74
74
|
justify-content: space-between;
|
|
75
75
|
align-items: center;
|
|
76
|
-
margin: 1.5rem 0 2rem;
|
|
77
76
|
}
|
|
78
77
|
|
|
79
78
|
.ask-redhat-footer-text {
|
|
@@ -125,6 +124,7 @@
|
|
|
125
124
|
height: 100%;
|
|
126
125
|
}
|
|
127
126
|
|
|
127
|
+
|
|
128
128
|
.ask-redhat-chat-button .pf-v6-c-button__icon {
|
|
129
129
|
display: flex;
|
|
130
130
|
align-items: center;
|
|
@@ -235,7 +235,6 @@
|
|
|
235
235
|
border-radius: 40px;
|
|
236
236
|
background: var(--gradient-red-purple) !important;
|
|
237
237
|
color: #000;
|
|
238
|
-
position: absolute;
|
|
239
238
|
left: 50%;
|
|
240
239
|
transform: translateX(-50%);
|
|
241
240
|
z-index: 3;
|
|
@@ -357,3 +356,37 @@ body:has(.pf-chatbot--embedded) .pf-v6-c-wizard__main-body:last-child {
|
|
|
357
356
|
.response-actions-wrapper {
|
|
358
357
|
margin-top: 24px;
|
|
359
358
|
}
|
|
359
|
+
|
|
360
|
+
.pf-chatbot__header {
|
|
361
|
+
color: #151515 !important;
|
|
362
|
+
background-color: #f2f2f2 !important;
|
|
363
|
+
}
|
|
364
|
+
|
|
365
|
+
.ask-redhat-core .pf-chatbot__header .pf-v6-c-title {
|
|
366
|
+
font-size: 16px !important;
|
|
367
|
+
font-weight: 600 !important;
|
|
368
|
+
}
|
|
369
|
+
|
|
370
|
+
.ask-redhat-core .pf-chatbot__beta-label .pf-v6-c-label__content {
|
|
371
|
+
color: #707070 !important;
|
|
372
|
+
line-height: var(--global-font-line-height-figma-only-body-small, 18px) !important;
|
|
373
|
+
}
|
|
374
|
+
|
|
375
|
+
.ask-redhat-core .pf-chatbot__header-container:after {
|
|
376
|
+
display: none !important;
|
|
377
|
+
}
|
|
378
|
+
|
|
379
|
+
.ask-redhat-core .pf-chatbot__expand-collapse-button {
|
|
380
|
+
color: #151515 !important;
|
|
381
|
+
font-size: var(--global-font-size-body-sm, 12px) !important;
|
|
382
|
+
}
|
|
383
|
+
|
|
384
|
+
.pf-v6-c-button__icon.pf-m-end {
|
|
385
|
+
margin-left: 0 !important;
|
|
386
|
+
display: flex !important;
|
|
387
|
+
padding: 8px !important;
|
|
388
|
+
align-items: center !important;
|
|
389
|
+
gap: 5px !important;
|
|
390
|
+
border-radius: var(--global-border-radius-small, 6px) !important;
|
|
391
|
+
background: #fff !important;
|
|
392
|
+
}
|
package/lib/esm/css/app.css
CHANGED
|
@@ -91,10 +91,6 @@ form textarea.form-control:focus {
|
|
|
91
91
|
border-bottom-color: #06c;
|
|
92
92
|
}
|
|
93
93
|
|
|
94
|
-
form textarea {
|
|
95
|
-
resize: vertical !important;
|
|
96
|
-
}
|
|
97
|
-
|
|
98
94
|
.pf-v6-c-form-control.pf-m-warning {
|
|
99
95
|
border-bottom-color: var(--pf-v5-c-form-control--m-warning--BorderBottomColor);
|
|
100
96
|
border-bottom-width: 2px;
|
|
@@ -345,6 +341,7 @@ input[type='checkbox'] {
|
|
|
345
341
|
|
|
346
342
|
.list-flushleft li {
|
|
347
343
|
margin-bottom: 0.5em;
|
|
344
|
+
list-style-type: none;
|
|
348
345
|
}
|
|
349
346
|
|
|
350
347
|
.list-flushleft li:last-child {
|
|
@@ -448,3 +445,7 @@ input[type='checkbox'] {
|
|
|
448
445
|
row-gap: 9px;
|
|
449
446
|
line-height: 2px;
|
|
450
447
|
}
|
|
448
|
+
|
|
449
|
+
#additional-information-section textarea {
|
|
450
|
+
resize: none !important;
|
|
451
|
+
}
|
package/lib/esm/css/case.css
CHANGED
|
@@ -177,15 +177,36 @@ button,
|
|
|
177
177
|
}
|
|
178
178
|
|
|
179
179
|
.clipboard-wrapper {
|
|
180
|
+
display: flex;
|
|
180
181
|
position: relative;
|
|
181
182
|
}
|
|
182
183
|
|
|
183
|
-
.
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
184
|
+
.clipboard-wrapper svg {
|
|
185
|
+
color: var(--pf-t--global--text--color--link--default);
|
|
186
|
+
}
|
|
187
|
+
|
|
188
|
+
.clipboard-wrapper :first-child {
|
|
189
|
+
white-space: nowrap;
|
|
190
|
+
overflow: hidden;
|
|
191
|
+
text-overflow: ellipsis;
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
.helper-text-size {
|
|
195
|
+
font-size: var(--pf-t--global--font--size--100);
|
|
196
|
+
}
|
|
197
|
+
|
|
198
|
+
.label-text-size {
|
|
199
|
+
font-size: var(--pf-t--global--font--size--300);
|
|
200
|
+
}
|
|
201
|
+
|
|
202
|
+
.request-collaboration-input {
|
|
203
|
+
background-color: var(--pf-t--global--background--color--200);
|
|
204
|
+
border: var(--pf-t--global--border--width--box--default) solid var(--pf-t--global--border--color--100);
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
.copy-button {
|
|
208
|
+
display: flex;
|
|
209
|
+
align-items: center;
|
|
189
210
|
}
|
|
190
211
|
|
|
191
212
|
.clip-code-raw-btn {
|
|
@@ -363,3 +384,15 @@ input[aria-invalid='true'].pf-v6-c-form-control {
|
|
|
363
384
|
min-width: 552px;
|
|
364
385
|
}
|
|
365
386
|
}
|
|
387
|
+
|
|
388
|
+
#reopen-case-description {
|
|
389
|
+
resize: none !important;
|
|
390
|
+
}
|
|
391
|
+
|
|
392
|
+
.add-watcher-button {
|
|
393
|
+
max-width: 15rem;
|
|
394
|
+
}
|
|
395
|
+
|
|
396
|
+
.remove-watcher-button {
|
|
397
|
+
max-width: 15rem;
|
|
398
|
+
}
|
package/lib/esm/css/results.css
CHANGED
package/lib/esm/scss/_main.scss
CHANGED
|
@@ -81,6 +81,17 @@ div.support-grid-case-details.support-case {
|
|
|
81
81
|
}
|
|
82
82
|
}
|
|
83
83
|
}
|
|
84
|
+
.grid-aside-content-inner-div {
|
|
85
|
+
margin: 0px !important;
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
.card-heading {
|
|
89
|
+
margin-bottom: 0px;
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
#case-details-top-recommendations-pagination-bottom-pagination {
|
|
93
|
+
justify-content: flex-start;
|
|
94
|
+
}
|
|
84
95
|
}
|
|
85
96
|
}
|
|
86
97
|
|
|
@@ -258,6 +269,7 @@ div.support-grid-case-details.support-case {
|
|
|
258
269
|
justify-content: space-between;
|
|
259
270
|
-ms-flex-wrap: wrap;
|
|
260
271
|
flex-wrap: wrap;
|
|
272
|
+
border-radius: 8px;
|
|
261
273
|
|
|
262
274
|
& > * {
|
|
263
275
|
margin: 9px;
|
|
@@ -303,6 +315,7 @@ div.support-grid-case-details.support-case {
|
|
|
303
315
|
}
|
|
304
316
|
|
|
305
317
|
.case-overview-secondary {
|
|
318
|
+
border-radius: 8px;
|
|
306
319
|
.form-group {
|
|
307
320
|
margin-bottom: 0;
|
|
308
321
|
}
|
|
@@ -647,24 +660,30 @@ mark {
|
|
|
647
660
|
margin-left: -2rem;
|
|
648
661
|
}
|
|
649
662
|
|
|
663
|
+
.list-icons li:last-child {
|
|
664
|
+
margin-bottom: 0;
|
|
665
|
+
}
|
|
666
|
+
|
|
650
667
|
// pinning feature - can't be overly specific here
|
|
651
668
|
.recommendation-header {
|
|
652
669
|
font-size: 14px;
|
|
653
670
|
font-weight: 600;
|
|
654
671
|
|
|
655
672
|
.pinned-resource {
|
|
656
|
-
color: var(--pf-
|
|
673
|
+
color: var(--pf-t--global--text--color--link--default);
|
|
657
674
|
}
|
|
658
675
|
|
|
659
|
-
button:hover[title='Link'] {
|
|
676
|
+
button:hover[title='Link'] svg {
|
|
660
677
|
color: #6ca100;
|
|
661
678
|
}
|
|
662
679
|
|
|
663
680
|
button[title='Unlink'] {
|
|
664
|
-
|
|
681
|
+
svg {
|
|
682
|
+
color: #6ca100;
|
|
683
|
+
}
|
|
665
684
|
|
|
666
|
-
&:hover {
|
|
667
|
-
color: var(
|
|
685
|
+
&:hover svg {
|
|
686
|
+
color: var(pf-t--global--icon--color--status--danger--default);
|
|
668
687
|
}
|
|
669
688
|
}
|
|
670
689
|
}
|
|
@@ -765,10 +784,10 @@ p.pref-case-popover-text {
|
|
|
765
784
|
}
|
|
766
785
|
|
|
767
786
|
.support-types-card {
|
|
768
|
-
border:
|
|
787
|
+
border: var(--pf-t--global--border--width--box--default) solid var(--pf-t--global--border--color--default);
|
|
769
788
|
|
|
770
789
|
&.pf-m-selected {
|
|
771
|
-
border:
|
|
790
|
+
border: var(--pf-t--global--border--width--box--clicked) solid var(--pf-t--global--border--color--clicked);
|
|
772
791
|
}
|
|
773
792
|
}
|
|
774
793
|
|
|
@@ -968,6 +987,7 @@ svg.pf-v6-u-ml-xs.icon-size {
|
|
|
968
987
|
button {
|
|
969
988
|
padding: 0;
|
|
970
989
|
display: flex;
|
|
990
|
+
min-width: 7rem;
|
|
971
991
|
}
|
|
972
992
|
.eval-icons span {
|
|
973
993
|
color: var(--pf-v5-global--primary-color--200);
|
|
@@ -981,6 +1001,23 @@ svg.pf-v6-u-ml-xs.icon-size {
|
|
|
981
1001
|
padding: 0.2rem;
|
|
982
1002
|
}
|
|
983
1003
|
|
|
1004
|
+
#case-details-pinned-recommendations {
|
|
1005
|
+
margin-bottom: 0;
|
|
1006
|
+
}
|
|
1007
|
+
|
|
1008
|
+
.card-body-wrapper {
|
|
1009
|
+
display: flex;
|
|
1010
|
+
padding: 16px;
|
|
1011
|
+
flex-direction: column;
|
|
1012
|
+
align-items: flex-start;
|
|
1013
|
+
gap: 16px;
|
|
1014
|
+
border-radius: 0px 0px var(--global-border-radius-medium, 16px) var(--global-border-radius-medium, 16px);
|
|
1015
|
+
border-right: 1px solid var(--global-border-color-default, #c7c7c7);
|
|
1016
|
+
border-bottom: 1px solid var(--global-border-color-default, #c7c7c7);
|
|
1017
|
+
border-left: 1px solid var(--global-border-color-default, #c7c7c7);
|
|
1018
|
+
background: #fff;
|
|
1019
|
+
}
|
|
1020
|
+
|
|
984
1021
|
.card-body-wrapper {
|
|
985
1022
|
display: flex;
|
|
986
1023
|
padding: 16px;
|
|
@@ -1097,6 +1134,7 @@ svg.pf-v6-u-ml-xs.icon-size {
|
|
|
1097
1134
|
|
|
1098
1135
|
.review-form {
|
|
1099
1136
|
background-color: #e0e0e0 !important;
|
|
1137
|
+
border-radius: 8px;
|
|
1100
1138
|
}
|
|
1101
1139
|
|
|
1102
1140
|
.ai-label-text {
|
|
@@ -1148,6 +1186,7 @@ svg.pf-v6-u-ml-xs.icon-size {
|
|
|
1148
1186
|
padding: 1px;
|
|
1149
1187
|
border-radius: 20px;
|
|
1150
1188
|
height: 32px;
|
|
1189
|
+
margin-bottom: 18px;
|
|
1151
1190
|
}
|
|
1152
1191
|
|
|
1153
1192
|
.single-select-toggle-text {
|
|
@@ -1254,3 +1293,27 @@ svg.pf-v6-u-ml-xs.icon-size {
|
|
|
1254
1293
|
.cursor-pointer {
|
|
1255
1294
|
cursor: pointer;
|
|
1256
1295
|
}
|
|
1296
|
+
|
|
1297
|
+
#file-uploader-title {
|
|
1298
|
+
margin-bottom: 0;
|
|
1299
|
+
}
|
|
1300
|
+
|
|
1301
|
+
.file-upload-body {
|
|
1302
|
+
padding-top: 0;
|
|
1303
|
+
}
|
|
1304
|
+
|
|
1305
|
+
.article-recommendations-card h3 {
|
|
1306
|
+
margin-bottom: 0;
|
|
1307
|
+
}
|
|
1308
|
+
|
|
1309
|
+
.postcomment-submit:disabled {
|
|
1310
|
+
color: var(--pf-v6-c-button--disabled--Color);
|
|
1311
|
+
}
|
|
1312
|
+
|
|
1313
|
+
.remote-session-button:disabled {
|
|
1314
|
+
color: var(--pf-v6-c-button--disabled--Color);
|
|
1315
|
+
}
|
|
1316
|
+
|
|
1317
|
+
.send-notifications-add:disabled {
|
|
1318
|
+
color: var(--pf-v6-c-button--disabled--Color) !important;
|
|
1319
|
+
}
|