V4.8.16 dev (#3431)
* feat: add feishu & yuque dataset (#3379) * feat: add feishu & yuque dataset * fix ts * fix ts * move type position * fix * fix: merge interface * fix * feat: dingtalk sso support (#3408) * fix: optional sso state * feat: dingtalk bot * feat: dingtalk sso login * chore: move i18n to user namespace * feat: dingtalk bot integration (#3415) * feat: dingtalk bot integration * docs: config dingtalk bot * feat:sear XNG服务 (#3413) * feat:sear XNG服务 * 补充了courseUrl * 添加了官方文档 * 错误时返回情况修正了一下 * Tracks (#3420) * feat: node intro * feat: add domain track * dingding sso login * perf: api dataset code and add doc * feat: tracks * feat: searXNG plugins * fix: ts * feat: delete node tracks (#3423) * fix: dingtalk bot GET verification (#3424) * 4.8.16 test: fix: plugin inputs render;fix: ui offset (#3426) * fix: ui offset * perf: dingding talk * fix: plugin inputs render * feat: menu all folder (#3429) * fix: recall code --------- Co-authored-by: heheer <heheer@sealos.io> Co-authored-by: a.e. <49438478+I-Info@users.noreply.github.com> Co-authored-by: Jiangween <145003935+Jiangween@users.noreply.github.com>
This commit is contained in:
21
projects/app/src/web/common/middle/tracks/utils.ts
Normal file
21
projects/app/src/web/common/middle/tracks/utils.ts
Normal file
@@ -0,0 +1,21 @@
|
||||
import { POST } from '@/web/common/api/request';
|
||||
import { TrackEnum } from '@fastgpt/global/common/middle/tracks/constants';
|
||||
import { useSystemStore } from '../../system/useSystemStore';
|
||||
|
||||
const createTrack = ({ event, data }: { event: TrackEnum; data: any }) => {
|
||||
if (!useSystemStore.getState()?.feConfigs?.isPlus) return;
|
||||
|
||||
return POST('/common/tracks/push', {
|
||||
event,
|
||||
data
|
||||
});
|
||||
};
|
||||
|
||||
export const webPushTrack = {
|
||||
useAppTemplate: (data: { id: string; name: string }) => {
|
||||
return createTrack({
|
||||
event: TrackEnum.useAppTemplate,
|
||||
data
|
||||
});
|
||||
}
|
||||
};
|
||||
@@ -8,7 +8,12 @@ import { TrackEventName } from '../common/system/constants';
|
||||
|
||||
export const useInitApp = () => {
|
||||
const router = useRouter();
|
||||
const { hiId, bd_vid, k } = router.query as { hiId?: string; bd_vid?: string; k?: string };
|
||||
const { hiId, bd_vid, k, sourceDomain } = router.query as {
|
||||
hiId?: string;
|
||||
bd_vid?: string;
|
||||
k?: string;
|
||||
sourceDomain?: string;
|
||||
};
|
||||
const { loadGitStar, setInitd, feConfigs } = useSystemStore();
|
||||
const [scripts, setScripts] = useState<FastGPTFeConfigsType['scripts']>([]);
|
||||
const [title, setTitle] = useState(process.env.SYSTEM_NAME || 'AI');
|
||||
@@ -61,7 +66,16 @@ export const useInitApp = () => {
|
||||
hiId && localStorage.setItem('inviterId', hiId);
|
||||
bd_vid && sessionStorage.setItem('bd_vid', bd_vid);
|
||||
k && sessionStorage.setItem('fastgpt_sem', JSON.stringify({ keyword: k }));
|
||||
}, [bd_vid, hiId, k]);
|
||||
|
||||
const formatSourceDomain = (() => {
|
||||
if (sourceDomain) return sourceDomain;
|
||||
return document.referrer;
|
||||
})();
|
||||
console.log(formatSourceDomain, '-=-=');
|
||||
if (formatSourceDomain && !sessionStorage.getItem('sourceDomain')) {
|
||||
sessionStorage.setItem('sourceDomain', formatSourceDomain);
|
||||
}
|
||||
}, [bd_vid, hiId, k, sourceDomain]);
|
||||
|
||||
return {
|
||||
feConfigs,
|
||||
|
||||
@@ -1,6 +1,10 @@
|
||||
import { AppTypeEnum } from '@fastgpt/global/core/app/constants';
|
||||
import { AppDetailType } from '@fastgpt/global/core/app/type.d';
|
||||
import type { FeishuAppType, OutLinkEditType } from '@fastgpt/global/support/outLink/type.d';
|
||||
import type {
|
||||
DingtalkAppType,
|
||||
FeishuAppType,
|
||||
OutLinkEditType
|
||||
} from '@fastgpt/global/support/outLink/type.d';
|
||||
import { AppPermission } from '@fastgpt/global/support/permission/app/controller';
|
||||
export const defaultApp: AppDetailType = {
|
||||
_id: '',
|
||||
@@ -39,6 +43,14 @@ export const defaultFeishuOutLinkForm: OutLinkEditType<FeishuAppType> = {
|
||||
}
|
||||
};
|
||||
|
||||
export const defaultDingtalkOutlinkForm: OutLinkEditType<DingtalkAppType> = {
|
||||
name: '',
|
||||
limit: {
|
||||
QPM: 100,
|
||||
maxUsagePoints: -1
|
||||
}
|
||||
};
|
||||
|
||||
export enum TTSTypeEnum {
|
||||
none = 'none',
|
||||
web = 'web',
|
||||
|
||||
@@ -66,6 +66,7 @@ import type {
|
||||
listExistIdQuery,
|
||||
listExistIdResponse
|
||||
} from '@/pages/api/core/dataset/apiDataset/listExistId';
|
||||
import { FeishuServer, YuqueServer } from '@fastgpt/global/core/dataset/apiDataset';
|
||||
|
||||
/* ======================== dataset ======================= */
|
||||
export const getDatasets = (data: GetDatasetListBody) =>
|
||||
|
||||
@@ -65,3 +65,13 @@ export enum ImportProcessWayEnum {
|
||||
auto = 'auto',
|
||||
custom = 'custom'
|
||||
}
|
||||
|
||||
export const datasetTypeCourseMap: Record<`${DatasetTypeEnum}`, string> = {
|
||||
[DatasetTypeEnum.folder]: '',
|
||||
[DatasetTypeEnum.dataset]: '',
|
||||
[DatasetTypeEnum.apiDataset]: '/docs/guide/knowledge_base/api_dataset/',
|
||||
[DatasetTypeEnum.websiteDataset]: '/docs/guide/knowledge_base/websync/',
|
||||
[DatasetTypeEnum.feishu]: '/docs/guide/knowledge_base/lark_dataset/',
|
||||
[DatasetTypeEnum.yuque]: '/docs/guide/knowledge_base/yuque_dataset/',
|
||||
[DatasetTypeEnum.externalFile]: ''
|
||||
};
|
||||
|
||||
@@ -121,6 +121,19 @@ export const DatasetPageContextProvider = ({
|
||||
baseUrl: data.apiServer.baseUrl,
|
||||
authorization: ''
|
||||
}
|
||||
: undefined,
|
||||
yuqueServer: data.yuqueServer
|
||||
? {
|
||||
userId: data.yuqueServer.userId,
|
||||
token: ''
|
||||
}
|
||||
: undefined,
|
||||
feishuServer: data.feishuServer
|
||||
? {
|
||||
appId: data.feishuServer.appId,
|
||||
appSecret: '',
|
||||
folderToken: data.feishuServer.folderToken
|
||||
}
|
||||
: undefined
|
||||
}));
|
||||
}
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
.react-flow {
|
||||
overflow: visible;
|
||||
}
|
||||
.react-flow__panel.react-flow__attribution {
|
||||
z-index: 0;
|
||||
left: 0;
|
||||
|
||||
@@ -9,7 +9,10 @@ import type {
|
||||
OauthLoginProps,
|
||||
PostLoginProps
|
||||
} from '@fastgpt/global/support/user/api.d';
|
||||
import { GetWXLoginQRResponse } from '@fastgpt/global/support/user/login/api.d';
|
||||
import {
|
||||
AccountRegisterBody,
|
||||
GetWXLoginQRResponse
|
||||
} from '@fastgpt/global/support/user/login/api.d';
|
||||
|
||||
export const sendAuthCode = (data: {
|
||||
username: string;
|
||||
@@ -33,16 +36,7 @@ export const postRegister = ({
|
||||
inviterId,
|
||||
bd_vid,
|
||||
fastgpt_sem
|
||||
}: {
|
||||
username: string;
|
||||
code: string;
|
||||
password: string;
|
||||
inviterId?: string;
|
||||
bd_vid?: string;
|
||||
fastgpt_sem?: {
|
||||
keyword: string;
|
||||
};
|
||||
}) =>
|
||||
}: AccountRegisterBody) =>
|
||||
POST<ResLogin>(`/proApi/support/user/account/register/emailAndPhone`, {
|
||||
username,
|
||||
code,
|
||||
|
||||
Reference in New Issue
Block a user