fix: Tweaks tab dissapearing with hook component
This commit is contained in:
parent
02ffc81538
commit
ec1e37a7d9
4 changed files with 20 additions and 11 deletions
|
|
@ -26,6 +26,7 @@ import {
|
||||||
TabsTrigger,
|
TabsTrigger,
|
||||||
} from "../../components/ui/tabs";
|
} from "../../components/ui/tabs";
|
||||||
import { LANGFLOW_SUPPORTED_TYPES } from "../../constants/constants";
|
import { LANGFLOW_SUPPORTED_TYPES } from "../../constants/constants";
|
||||||
|
import getTabsOrder from "../../modals/apiModal/utils/get-tabs-order";
|
||||||
import { Case } from "../../shared/components/caseComponent";
|
import { Case } from "../../shared/components/caseComponent";
|
||||||
import { useDarkStore } from "../../stores/darkStore";
|
import { useDarkStore } from "../../stores/darkStore";
|
||||||
import useFlowStore from "../../stores/flowStore";
|
import useFlowStore from "../../stores/flowStore";
|
||||||
|
|
@ -56,6 +57,8 @@ export default function CodeTabsComponent({
|
||||||
setActiveTweaks,
|
setActiveTweaks,
|
||||||
activeTweaks,
|
activeTweaks,
|
||||||
allowExport = false,
|
allowExport = false,
|
||||||
|
isThereTweaks = false,
|
||||||
|
isThereWH = false,
|
||||||
}: codeTabsPropsType) {
|
}: codeTabsPropsType) {
|
||||||
const [isCopied, setIsCopied] = useState<Boolean>(false);
|
const [isCopied, setIsCopied] = useState<Boolean>(false);
|
||||||
const [data, setData] = useState(flow ? flow["data"]!["nodes"] : null);
|
const [data, setData] = useState(flow ? flow["data"]!["nodes"] : null);
|
||||||
|
|
@ -93,6 +96,8 @@ export default function CodeTabsComponent({
|
||||||
return node.data.node.template[templateParam].type;
|
return node.data.node.template[templateParam].type;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
const tabsOrder = getTabsOrder(isThereWH, isThereTweaks);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Tabs
|
<Tabs
|
||||||
value={activeTab}
|
value={activeTab}
|
||||||
|
|
@ -168,11 +173,11 @@ export default function CodeTabsComponent({
|
||||||
|
|
||||||
{tabs.map((tab, idx) => (
|
{tabs.map((tab, idx) => (
|
||||||
<TabsContent
|
<TabsContent
|
||||||
value={idx.toString()}
|
value={idx.toString()}
|
||||||
className="api-modal-tabs-content overflow-hidden"
|
className="api-modal-tabs-content overflow-hidden"
|
||||||
key={idx} // Remember to add a unique key prop
|
key={idx} // Remember to add a unique key prop
|
||||||
>
|
>
|
||||||
{idx < 5 ? (
|
{tabsOrder[idx].toLowerCase() !== "tweaks" ? (
|
||||||
<div className="flex h-full w-full flex-col">
|
<div className="flex h-full w-full flex-col">
|
||||||
{tab.description && (
|
{tab.description && (
|
||||||
<div
|
<div
|
||||||
|
|
@ -188,7 +193,7 @@ export default function CodeTabsComponent({
|
||||||
{tab.code}
|
{tab.code}
|
||||||
</SyntaxHighlighter>
|
</SyntaxHighlighter>
|
||||||
</div>
|
</div>
|
||||||
) : idx === 5 ? (
|
) : tabsOrder[idx].toLowerCase() === "tweaks" ? (
|
||||||
<>
|
<>
|
||||||
<div className="api-modal-according-display">
|
<div className="api-modal-according-display">
|
||||||
<div
|
<div
|
||||||
|
|
|
||||||
|
|
@ -43,12 +43,13 @@ const ApiModal = forwardRef(
|
||||||
setOpen?: (a: boolean | ((o?: boolean) => boolean)) => void;
|
setOpen?: (a: boolean | ((o?: boolean) => boolean)) => void;
|
||||||
},
|
},
|
||||||
ref,
|
ref,
|
||||||
) => {
|
) => {
|
||||||
|
const tweaksCode = buildTweaks(flow);
|
||||||
const tweak = useTweaksStore((state) => state.tweak);
|
const tweak = useTweaksStore((state) => state.tweak);
|
||||||
const addTweaks = useTweaksStore((state) => state.setTweak);
|
const addTweaks = useTweaksStore((state) => state.setTweak);
|
||||||
const setTweaksList = useTweaksStore((state) => state.setTweaksList);
|
const setTweaksList = useTweaksStore((state) => state.setTweaksList);
|
||||||
const tweaksList = useTweaksStore((state) => state.tweaksList);
|
const tweaksList = useTweaksStore((state) => state.tweaksList);
|
||||||
|
const isThereTweaks = Object.keys(tweaksCode).length > 0;
|
||||||
const [activeTweaks, setActiveTweaks] = useState(false);
|
const [activeTweaks, setActiveTweaks] = useState(false);
|
||||||
const { autoLogin } = useContext(AuthContext);
|
const { autoLogin } = useContext(AuthContext);
|
||||||
const [open, setOpen] =
|
const [open, setOpen] =
|
||||||
|
|
@ -82,7 +83,6 @@ const ApiModal = forwardRef(
|
||||||
const pythonCode = getPythonCode(flow?.name, tweak);
|
const pythonCode = getPythonCode(flow?.name, tweak);
|
||||||
const widgetCode = getWidgetCode(flow?.id, flow?.name, autoLogin);
|
const widgetCode = getWidgetCode(flow?.id, flow?.name, autoLogin);
|
||||||
const includeWebhook = flow.webhook;
|
const includeWebhook = flow.webhook;
|
||||||
const tweaksCode = buildTweaks(flow);
|
|
||||||
const codesArray = [
|
const codesArray = [
|
||||||
runCurlCode,
|
runCurlCode,
|
||||||
webhookCurlCode,
|
webhookCurlCode,
|
||||||
|
|
@ -121,7 +121,7 @@ const ApiModal = forwardRef(
|
||||||
|
|
||||||
filterNodes();
|
filterNodes();
|
||||||
|
|
||||||
if (Object.keys(tweaksCode).length > 0) {
|
if (isThereTweaks) {
|
||||||
setActiveTab("0");
|
setActiveTab("0");
|
||||||
setTabs(createTabsArray(codesArray, includeWebhook, true));
|
setTabs(createTabsArray(codesArray, includeWebhook, true));
|
||||||
} else {
|
} else {
|
||||||
|
|
@ -215,7 +215,6 @@ const ApiModal = forwardRef(
|
||||||
);
|
);
|
||||||
const pythonCode = getPythonCode(flow?.name, cloneTweak);
|
const pythonCode = getPythonCode(flow?.name, cloneTweak);
|
||||||
const widgetCode = getWidgetCode(flow?.id, flow?.name, autoLogin);
|
const widgetCode = getWidgetCode(flow?.id, flow?.name, autoLogin);
|
||||||
const isThereTweaks = Object.keys(tweaksCode).length > 0;
|
|
||||||
const codesObj = getCodesObj({
|
const codesObj = getCodesObj({
|
||||||
runCurlCode,
|
runCurlCode,
|
||||||
webhookCurlCode,
|
webhookCurlCode,
|
||||||
|
|
@ -251,6 +250,8 @@ const ApiModal = forwardRef(
|
||||||
</BaseModal.Header>
|
</BaseModal.Header>
|
||||||
<BaseModal.Content overflowHidden>
|
<BaseModal.Content overflowHidden>
|
||||||
<CodeTabsComponent
|
<CodeTabsComponent
|
||||||
|
isThereTweaks={isThereTweaks}
|
||||||
|
isThereWH={includeWebhook ?? false}
|
||||||
flow={flow}
|
flow={flow}
|
||||||
tabs={tabs!}
|
tabs={tabs!}
|
||||||
activeTab={activeTab}
|
activeTab={activeTab}
|
||||||
|
|
|
||||||
|
|
@ -1,10 +1,11 @@
|
||||||
|
import { cloneDeep } from "lodash";
|
||||||
import { TABS_ORDER } from "../../../constants/constants";
|
import { TABS_ORDER } from "../../../constants/constants";
|
||||||
|
|
||||||
export default function getTabsOrder(
|
export default function getTabsOrder(
|
||||||
isThereWH: boolean = false,
|
isThereWH: boolean = false,
|
||||||
isThereTweaks: boolean = false,
|
isThereTweaks: boolean = false,
|
||||||
): string[] {
|
): string[] {
|
||||||
const defaultOrder = TABS_ORDER;
|
const defaultOrder = cloneDeep(TABS_ORDER);
|
||||||
if (isThereTweaks) {
|
if (isThereTweaks) {
|
||||||
defaultOrder.push("tweaks");
|
defaultOrder.push("tweaks");
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -695,6 +695,8 @@ type codeTabsFuncTempType = {
|
||||||
};
|
};
|
||||||
|
|
||||||
export type codeTabsPropsType = {
|
export type codeTabsPropsType = {
|
||||||
|
isThereTweaks?: boolean;
|
||||||
|
isThereWH?: boolean;
|
||||||
flow?: FlowType;
|
flow?: FlowType;
|
||||||
tabs: Array<tabsArrayType>;
|
tabs: Array<tabsArrayType>;
|
||||||
activeTab: string;
|
activeTab: string;
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue