vue-layout-gitcode 1.0.24 → 1.0.26

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.
@@ -1,4 +1,4 @@
1
- import { defineComponent, computed, openBlock, createBlock, unref, normalizeProps, mergeProps, createElementBlock, normalizeClass, renderSlot, normalizeStyle, createElementVNode, h, getCurrentInstance, effectScope, inject, onMounted, onUnmounted, shallowRef, ref, onBeforeMount, watch, Fragment, isRef, createVNode, Text, provide, reactive, withCtx, toDisplayString as toDisplayString$1, createCommentVNode, renderList, createTextVNode, Transition, withModifiers, render, resolveComponent, watchEffect, guardReactiveProps, onBeforeUnmount, nextTick, defineAsyncComponent, withDirectives, vShow, withKeys, resolveDynamicComponent, toRaw, mergeModels, useModel as useModel$1, watchPostEffect, createSlots } from "vue";
1
+ import { defineComponent, computed, openBlock, createBlock, unref, normalizeProps, mergeProps, createElementBlock, normalizeClass, renderSlot, normalizeStyle, createElementVNode, reactive, readonly, inject, h, getCurrentInstance, effectScope, onMounted, onUnmounted, shallowRef, ref, onBeforeMount, watch, Fragment, isRef, createVNode, Text, provide, withCtx, toDisplayString as toDisplayString$1, createCommentVNode, renderList, createTextVNode, Transition, withModifiers, render, resolveComponent, watchEffect, guardReactiveProps, onBeforeUnmount, nextTick, defineAsyncComponent, withDirectives, vShow, withKeys, resolveDynamicComponent, toRaw, mergeModels, useModel as useModel$1, watchPostEffect, createSlots } from "vue";
2
2
  import { Button } from "vue-devui-lal/button";
3
3
  import { Popover } from "vue-devui-lal/popover";
4
4
  import { Tooltip } from "vue-devui-lal/tooltip";
@@ -114,16 +114,100 @@ const defaultConfig = {
114
114
  VITE_SECRET_KEY: "SA!nUNPZ5o!OSV&B",
115
115
  VITE_SECRET_IV: "SA!nwwwZ5o!OSV&B"
116
116
  };
117
- let layoutConfig$5 = { ...defaultConfig };
117
+ let layoutConfig$5 = reactive({ ...defaultConfig });
118
118
  function setLayoutConfig(customConfig) {
119
- layoutConfig$5 = {
120
- ...layoutConfig$5,
121
- ...customConfig
122
- };
119
+ Object.assign(layoutConfig$5, customConfig);
123
120
  }
124
121
  function useLayoutConfig() {
125
- return layoutConfig$5;
122
+ return readonly(layoutConfig$5);
126
123
  }
124
+ async function reqCatch(req, params) {
125
+ try {
126
+ const data = await req(params);
127
+ return {
128
+ data,
129
+ error: null
130
+ };
131
+ } catch (e) {
132
+ return {
133
+ data: null,
134
+ error: e
135
+ };
136
+ }
137
+ }
138
+ async function reqCatchV2(req) {
139
+ try {
140
+ const data = await req();
141
+ return {
142
+ data,
143
+ error: null
144
+ };
145
+ } catch (e) {
146
+ return {
147
+ data: null,
148
+ error: e
149
+ };
150
+ }
151
+ }
152
+ function asideRequest(request) {
153
+ return {
154
+ // 数据上报
155
+ report(eventId, data, headers = {}) {
156
+ return reqCatch(() => request({
157
+ url: `/api/v1/report`,
158
+ method: "post",
159
+ data,
160
+ params: {
161
+ event_id: eventId
162
+ },
163
+ headers
164
+ }, { ignoreError: true }));
165
+ },
166
+ // 我参与的项目
167
+ getMyProjects(params) {
168
+ return reqCatch(() => request({
169
+ url: `/api/v2/projects/user_projects/related_me`,
170
+ method: "get",
171
+ params
172
+ }), params);
173
+ },
174
+ // 我参与的组织
175
+ getMyGroups(params) {
176
+ return reqCatch(() => request({
177
+ url: "/api/v2/groups/user_groups/related_me",
178
+ method: "get",
179
+ params
180
+ }), params);
181
+ }
182
+ };
183
+ }
184
+ const useReport = async (eventID, eventParams, request) => {
185
+ const globalStore = inject("globalStore");
186
+ if (eventID === "pageview" && window._hmt) {
187
+ const path = window.location.pathname + window.location.search;
188
+ window._hmt.push(["_trackPageview", path]);
189
+ }
190
+ if ((globalStore == null ? void 0 : globalStore.httpStatus) !== 200) {
191
+ eventParams.http_code = globalStore == null ? void 0 : globalStore.httpStatus;
192
+ }
193
+ return await request(eventID, eventParams);
194
+ };
195
+ const useRequestReport = (request, globalStore) => {
196
+ const useReport2 = async (eventID, eventParams, headers) => {
197
+ if (eventID === "pageview" && window._hmt) {
198
+ const path = window.location.pathname + window.location.search;
199
+ window._hmt.push(["_trackPageview", path]);
200
+ }
201
+ if ((globalStore == null ? void 0 : globalStore.httpStatus) !== 200) {
202
+ eventParams.http_code = globalStore == null ? void 0 : globalStore.httpStatus;
203
+ }
204
+ const API = asideRequest(request);
205
+ return await API.report(eventID, eventParams, headers);
206
+ };
207
+ return {
208
+ useReport: useReport2
209
+ };
210
+ };
127
211
  function generateRandomString(length) {
128
212
  let result2 = "";
129
213
  const characters = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
@@ -10518,11 +10602,9 @@ const setPassportPrefix = (url, method) => {
10518
10602
  }
10519
10603
  return url;
10520
10604
  };
10521
- layoutConfig$3.VITE_API_HOST;
10522
10605
  const proxyService = (params, customConfigs) => {
10523
- const baseUrl = useLayoutConfig().VITE_API_HOST;
10524
10606
  const service = axios$1.create({
10525
- baseURL: baseUrl,
10607
+ baseURL: layoutConfig$3.VITE_API_HOST,
10526
10608
  timeout: (customConfigs == null ? void 0 : customConfigs.customTimeout) || 3e4,
10527
10609
  withCredentials: true
10528
10610
  });
@@ -10569,61 +10651,6 @@ const proxyService = (params, customConfigs) => {
10569
10651
  );
10570
10652
  return service(params);
10571
10653
  };
10572
- const useReport = async (eventID, eventParams, request) => {
10573
- const globalStore = inject("globalStore");
10574
- if (eventID === "pageview" && window._hmt) {
10575
- const path = window.location.pathname + window.location.search;
10576
- window._hmt.push(["_trackPageview", path]);
10577
- }
10578
- if ((globalStore == null ? void 0 : globalStore.httpStatus) !== 200) {
10579
- eventParams.http_code = globalStore == null ? void 0 : globalStore.httpStatus;
10580
- }
10581
- return await request(eventID, eventParams);
10582
- };
10583
- async function reqCatch(req, params) {
10584
- try {
10585
- const data = await req(params);
10586
- return {
10587
- data,
10588
- error: null
10589
- };
10590
- } catch (e) {
10591
- return {
10592
- data: null,
10593
- error: e
10594
- };
10595
- }
10596
- }
10597
- async function reqCatchV2(req) {
10598
- try {
10599
- const data = await req();
10600
- return {
10601
- data,
10602
- error: null
10603
- };
10604
- } catch (e) {
10605
- return {
10606
- data: null,
10607
- error: e
10608
- };
10609
- }
10610
- }
10611
- function toolsFloatRequest(request) {
10612
- return {
10613
- // 数据上报
10614
- report(eventId, data, headers = {}) {
10615
- return reqCatch(() => request({
10616
- url: `/api/v1/report`,
10617
- method: "post",
10618
- data,
10619
- params: {
10620
- event_id: eventId
10621
- },
10622
- headers
10623
- }, { ignoreError: true }));
10624
- }
10625
- };
10626
- }
10627
10654
  const _hoisted_1$t = { class: "home-nav-right" };
10628
10655
  const _hoisted_2$j = { class: "home-nav-tooltip-wrapper" };
10629
10656
  const _hoisted_3$g = { class: "home-nav-text" };
@@ -10687,7 +10714,8 @@ const _sfc_main$z = /* @__PURE__ */ defineComponent({
10687
10714
  const { t: t2 } = i18n.global;
10688
10715
  const props = __props;
10689
10716
  provide("globalStore", computed(() => props.globalStore));
10690
- const API = toolsFloatRequest(props.request);
10717
+ const { useReport: useReport2 } = useRequestReport(props.request, props.globalStore);
10718
+ provide("useReport", useReport2);
10691
10719
  const visibleItems = computed(() => {
10692
10720
  switch (props.sceneValue) {
10693
10721
  case SceneValue.news:
@@ -10754,10 +10782,10 @@ const _sfc_main$z = /* @__PURE__ */ defineComponent({
10754
10782
  };
10755
10783
  const NPSOffsetOptions = reactive({ mainAxis: 10, crossAxis: -30 });
10756
10784
  const handleNpsSubmit = () => {
10757
- useReport(ToolsFloatReportEvent.NPS, {
10785
+ useReport2(ToolsFloatReportEvent.NPS, {
10758
10786
  nps_score: rateNow.value + 1,
10759
10787
  nps_comment: opinionText.value
10760
- }, API.report);
10788
+ });
10761
10789
  process2.value = false;
10762
10790
  NPSOffsetOptions.crossAxis = 0;
10763
10791
  window.dispatchEvent(new Event("resize"));
@@ -10799,16 +10827,16 @@ const _sfc_main$z = /* @__PURE__ */ defineComponent({
10799
10827
  handleLogin("login");
10800
10828
  return;
10801
10829
  }
10802
- useReport(ToolsFloatReportEvent.AD_CLICK, {
10830
+ useReport2(ToolsFloatReportEvent.AD_CLICK, {
10803
10831
  ad_title: activeAdItem.value.title
10804
- }, API.report);
10832
+ });
10805
10833
  window.open(href);
10806
10834
  }
10807
10835
  };
10808
10836
  const handleActiveClose = () => {
10809
- useReport(ToolsFloatReportEvent.AD_CLOSE, {
10837
+ useReport2(ToolsFloatReportEvent.AD_CLOSE, {
10810
10838
  ad_title: activeAdItem.value.title
10811
- }, API.report);
10839
+ });
10812
10840
  activeAdJson.value = null;
10813
10841
  localStorage.setItem("closeActive", "1");
10814
10842
  const dateString = (/* @__PURE__ */ new Date()).toLocaleDateString("zh-CN");
@@ -11080,9 +11108,9 @@ const _sfc_main$z = /* @__PURE__ */ defineComponent({
11080
11108
  };
11081
11109
  }
11082
11110
  });
11083
- const index_vue_vue_type_style_index_0_scoped_4d2dee06_lang = "";
11111
+ const index_vue_vue_type_style_index_0_scoped_5bbc69ea_lang = "";
11084
11112
  const index_vue_vue_type_style_index_1_lang$3 = "";
11085
- const ToolsFloat = /* @__PURE__ */ _export_sfc(_sfc_main$z, [["__scopeId", "data-v-4d2dee06"]]);
11113
+ const ToolsFloat = /* @__PURE__ */ _export_sfc(_sfc_main$z, [["__scopeId", "data-v-5bbc69ea"]]);
11086
11114
  function usePopup(className, rootElement) {
11087
11115
  const root2 = rootElement || document.getElementById("app");
11088
11116
  let cacheClass = "popup-container";
@@ -14125,7 +14153,6 @@ const _sfc_main$w = /* @__PURE__ */ defineComponent({
14125
14153
  __name: "AiHubMenus",
14126
14154
  setup(__props) {
14127
14155
  const layoutConfig2 = useLayoutConfig();
14128
- const AI_HOST = layoutConfig2.VITE_AI_HOST;
14129
14156
  const { t: t2 } = i18n.global;
14130
14157
  const API = headRequest(inject("request"));
14131
14158
  const repoInfo = inject("repoInfo");
@@ -14134,21 +14161,21 @@ const _sfc_main$w = /* @__PURE__ */ defineComponent({
14134
14161
  label: t2("gitCodeLayout.aihub.model"),
14135
14162
  icon: "gt-model_default",
14136
14163
  activeIcon: "gt-model_red",
14137
- url: `${AI_HOST}/models`,
14164
+ url: `${layoutConfig2.VITE_AI_HOST}/models`,
14138
14165
  repoType: RepoType.model
14139
14166
  },
14140
14167
  {
14141
14168
  label: t2("gitCodeLayout.aihub.dataSet"),
14142
14169
  icon: "gt-dataset_default",
14143
14170
  activeIcon: "gt-dataset_red",
14144
- url: `${AI_HOST}/datasets`,
14171
+ url: `${layoutConfig2.VITE_AI_HOST}/datasets`,
14145
14172
  repoType: RepoType.dataset
14146
14173
  },
14147
14174
  {
14148
14175
  label: "Spaces",
14149
14176
  icon: "gt-space_default",
14150
14177
  activeIcon: "gt-space_red",
14151
- url: `${AI_HOST}/space`,
14178
+ url: `${layoutConfig2.VITE_AI_HOST}/space`,
14152
14179
  repoType: RepoType.spaces
14153
14180
  },
14154
14181
  {
@@ -14156,13 +14183,13 @@ const _sfc_main$w = /* @__PURE__ */ defineComponent({
14156
14183
  id: aiThemeMenuId,
14157
14184
  icon: "gt-a-Property1Default7",
14158
14185
  activeIcon: "gt-a-Property1red6",
14159
- url: `${AI_HOST}/theme`
14186
+ url: `${layoutConfig2.VITE_AI_HOST}/theme`
14160
14187
  },
14161
14188
  {
14162
14189
  label: "大赛",
14163
14190
  icon: "gt-a-plane-GrowthCenter1",
14164
14191
  activeIcon: "gt-a-plane-GrowthCenter-1",
14165
- url: `${AI_HOST}/competition`
14192
+ url: `${layoutConfig2.VITE_AI_HOST}/competition`
14166
14193
  }
14167
14194
  ];
14168
14195
  const activeMenu = computed(() => {
@@ -14176,14 +14203,14 @@ const _sfc_main$w = /* @__PURE__ */ defineComponent({
14176
14203
  return {
14177
14204
  icon: item.icon,
14178
14205
  name: item.tag_name || "国产模型专区",
14179
- url: `${AI_HOST}/theme/${item.theme_id}`
14206
+ url: `${layoutConfig2.VITE_AI_HOST}/theme/${item.theme_id}`
14180
14207
  };
14181
14208
  });
14182
14209
  themeTablist.value = [
14183
14210
  {
14184
14211
  icon: "gt-a-line-alltopics",
14185
14212
  name: "全部主题",
14186
- url: `${AI_HOST}/theme`
14213
+ url: `${layoutConfig2.VITE_AI_HOST}/theme`
14187
14214
  },
14188
14215
  ...dataResult
14189
14216
  ];
@@ -14283,9 +14310,9 @@ const _sfc_main$w = /* @__PURE__ */ defineComponent({
14283
14310
  };
14284
14311
  }
14285
14312
  });
14286
- const AiHubMenus_vue_vue_type_style_index_0_scoped_4ebc3fdb_lang = "";
14313
+ const AiHubMenus_vue_vue_type_style_index_0_scoped_6698fe9d_lang = "";
14287
14314
  const AiHubMenus_vue_vue_type_style_index_1_lang = "";
14288
- const AiHubMenus = /* @__PURE__ */ _export_sfc(_sfc_main$w, [["__scopeId", "data-v-4ebc3fdb"]]);
14315
+ const AiHubMenus = /* @__PURE__ */ _export_sfc(_sfc_main$w, [["__scopeId", "data-v-6698fe9d"]]);
14289
14316
  const _hoisted_1$q = ["src"];
14290
14317
  const _sfc_main$v = /* @__PURE__ */ defineComponent({
14291
14318
  ...{ name: "FlashTag" },
@@ -16202,7 +16229,6 @@ const _sfc_main$u = /* @__PURE__ */ defineComponent({
16202
16229
  setup(__props, { emit: __emit }) {
16203
16230
  const { t: t2 } = i18n.global;
16204
16231
  const layoutConfig2 = useLayoutConfig();
16205
- const AI_HOST = layoutConfig2.VITE_AI_HOST;
16206
16232
  const breadcrumb = useBreadcrumb();
16207
16233
  console.log("breadcrumb", breadcrumb);
16208
16234
  const breadcrumbRef = ref(null);
@@ -16265,7 +16291,7 @@ const _sfc_main$u = /* @__PURE__ */ defineComponent({
16265
16291
  return;
16266
16292
  if (!topicTag.value)
16267
16293
  return;
16268
- const aiUrl = `${AI_HOST}${topicTag.value.linkUrl}`;
16294
+ const aiUrl = `${layoutConfig2.VITE_AI_HOST}${topicTag.value.linkUrl}`;
16269
16295
  location.href = aiUrl;
16270
16296
  };
16271
16297
  const showTimeTopic = computed(() => {
@@ -16295,7 +16321,7 @@ const _sfc_main$u = /* @__PURE__ */ defineComponent({
16295
16321
  return inAIHub.value && !_ctx.errorCode ? (openBlock(), createElementBlock("div", _hoisted_1$p, [
16296
16322
  createVNode(GLink, {
16297
16323
  class: "aihub-layout-logo",
16298
- href: unref(AI_HOST)
16324
+ href: unref(layoutConfig2).VITE_AI_HOST
16299
16325
  }, {
16300
16326
  default: withCtx(() => [
16301
16327
  _cache[1] || (_cache[1] = createElementVNode("img", { src: _imports_0 }, null, -1)),
@@ -16534,9 +16560,9 @@ const _sfc_main$u = /* @__PURE__ */ defineComponent({
16534
16560
  };
16535
16561
  }
16536
16562
  });
16537
- const HeaderCustom_vue_vue_type_style_index_0_scoped_a262eeb6_lang = "";
16563
+ const HeaderCustom_vue_vue_type_style_index_0_scoped_04c17768_lang = "";
16538
16564
  const HeaderCustom_vue_vue_type_style_index_1_lang = "";
16539
- const HeaderCustom = /* @__PURE__ */ _export_sfc(_sfc_main$u, [["__scopeId", "data-v-a262eeb6"]]);
16565
+ const HeaderCustom = /* @__PURE__ */ _export_sfc(_sfc_main$u, [["__scopeId", "data-v-04c17768"]]);
16540
16566
  const logo = "data:image/png;base64,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";
16541
16567
  const _hoisted_1$o = ["src"];
16542
16568
  const _sfc_main$t = /* @__PURE__ */ defineComponent({
@@ -16916,7 +16942,6 @@ const _sfc_main$p = /* @__PURE__ */ defineComponent({
16916
16942
  });
16917
16943
  const Notice_vue_vue_type_style_index_0_scoped_061b58d4_lang = "";
16918
16944
  const Notice = /* @__PURE__ */ _export_sfc(_sfc_main$p, [["__scopeId", "data-v-061b58d4"]]);
16919
- const UserLevel_vue_vue_type_style_index_0_scoped_d8f2452d_lang = "";
16920
16945
  const _hoisted_1$m = {
16921
16946
  key: 0,
16922
16947
  class: "user-level-avatar-badge"
@@ -16929,7 +16954,8 @@ const _hoisted_6$6 = ["src"];
16929
16954
  const _hoisted_7$4 = { class: "custom-btn" };
16930
16955
  const _hoisted_8$4 = { class: "flex items-center justify-center" };
16931
16956
  const maxLevel = 3;
16932
- const _sfc_main$o = /* @__PURE__ */ Object.assign({ name: "UserLevel" }, {
16957
+ const _sfc_main$o = /* @__PURE__ */ defineComponent({
16958
+ ...{ name: "UserLevel" },
16933
16959
  __name: "UserLevel",
16934
16960
  props: ["accountInfo"],
16935
16961
  setup(__props) {
@@ -16952,14 +16978,14 @@ const _sfc_main$o = /* @__PURE__ */ Object.assign({ name: "UserLevel" }, {
16952
16978
  level: "https://cdn-static.gitcode.com/static/images/points/l-v3.png"
16953
16979
  }
16954
16980
  };
16955
- const API = headRequest(inject("request"));
16981
+ const useReport2 = inject("useReport");
16956
16982
  const router2 = useRouter();
16957
16983
  const userLevel = computed(() => {
16958
16984
  return props.accountInfo.level;
16959
16985
  });
16960
16986
  const handleUpgrade = () => {
16961
16987
  handleAvatarRedPoint(CLICK_TIME_MODULE.GROWTH_CENTER, props.accountInfo.username);
16962
- useReport("score_entrance_click", {}, API.report);
16988
+ useReport2("score_entrance_click", {});
16963
16989
  router2.push("/setting/points");
16964
16990
  };
16965
16991
  const levelInfo = computed(() => {
@@ -16998,7 +17024,8 @@ const _sfc_main$o = /* @__PURE__ */ Object.assign({ name: "UserLevel" }, {
16998
17024
  };
16999
17025
  }
17000
17026
  });
17001
- const UserLevel = /* @__PURE__ */ _export_sfc(_sfc_main$o, [["__scopeId", "data-v-d8f2452d"]]);
17027
+ const UserLevel_vue_vue_type_style_index_0_scoped_9dda511e_lang = "";
17028
+ const UserLevel = /* @__PURE__ */ _export_sfc(_sfc_main$o, [["__scopeId", "data-v-9dda511e"]]);
17002
17029
  const _hoisted_1$l = { class: "g-user-drawer-info-list pl-[16px]" };
17003
17030
  const _hoisted_2$f = { class: "max-w-[200px]" };
17004
17031
  const _hoisted_3$c = ["title"];
@@ -17106,8 +17133,7 @@ const _sfc_main$n = /* @__PURE__ */ defineComponent({
17106
17133
  item.action();
17107
17134
  }
17108
17135
  if (item == null ? void 0 : item.link) {
17109
- const origin2 = layoutConfig2.VITE_HOST;
17110
- const link = origin2 + item.link;
17136
+ const link = `${layoutConfig2.VITE_HOST}${item.link}`;
17111
17137
  window.open(link, "_self");
17112
17138
  }
17113
17139
  }
@@ -17185,8 +17211,8 @@ const _sfc_main$n = /* @__PURE__ */ defineComponent({
17185
17211
  };
17186
17212
  }
17187
17213
  });
17188
- const UserAvatarMenu_vue_vue_type_style_index_0_scoped_cb694a6e_lang = "";
17189
- const UserAvatarMenu = /* @__PURE__ */ _export_sfc(_sfc_main$n, [["__scopeId", "data-v-cb694a6e"]]);
17214
+ const UserAvatarMenu_vue_vue_type_style_index_0_scoped_94d31c85_lang = "";
17215
+ const UserAvatarMenu = /* @__PURE__ */ _export_sfc(_sfc_main$n, [["__scopeId", "data-v-94d31c85"]]);
17190
17216
  const _hoisted_1$k = { class: "g-user-avatar flex-center ml-1" };
17191
17217
  const _hoisted_2$e = {
17192
17218
  key: 0,
@@ -17200,16 +17226,16 @@ const _sfc_main$m = /* @__PURE__ */ defineComponent({
17200
17226
  __name: "UserAvatar",
17201
17227
  props: ["isChatBot", "loginOutFinish", "inAIHub", "independence"],
17202
17228
  setup(__props) {
17203
- const API = headRequest(inject("request"));
17204
17229
  const accountInfo = ref(JSON.parse(localStorage.getItem("userInfo") || "{}"));
17205
17230
  console.log("accountInfo", accountInfo.value.avatar);
17206
17231
  const haveVisited = ref(false);
17232
+ const useReport2 = inject("useReport");
17207
17233
  const handleToggle = (status) => {
17208
17234
  visitedClick();
17209
17235
  const params = { need_tips: accountInfo.value.need_tips, prompt_style: accountInfo.value.style_tips };
17210
- useReport("score_personal_center_avatar_click", params, API.report);
17236
+ useReport2("score_personal_center_avatar_click", params);
17211
17237
  if (status) {
17212
- useReport("score_personal_center_dropdown", params, API.report);
17238
+ useReport2("score_personal_center_dropdown", params);
17213
17239
  }
17214
17240
  nextTick(() => {
17215
17241
  if (judgeDrawerScroll()) {
@@ -17295,9 +17321,9 @@ const _sfc_main$m = /* @__PURE__ */ defineComponent({
17295
17321
  };
17296
17322
  }
17297
17323
  });
17298
- const UserAvatar_vue_vue_type_style_index_0_scoped_dda1f98a_lang = "";
17324
+ const UserAvatar_vue_vue_type_style_index_0_scoped_24885581_lang = "";
17299
17325
  const UserAvatar_vue_vue_type_style_index_1_lang = "";
17300
- const UserAvatar = /* @__PURE__ */ _export_sfc(_sfc_main$m, [["__scopeId", "data-v-dda1f98a"]]);
17326
+ const UserAvatar = /* @__PURE__ */ _export_sfc(_sfc_main$m, [["__scopeId", "data-v-24885581"]]);
17301
17327
  var EVENT_NAME = /* @__PURE__ */ ((EVENT_NAME2) => {
17302
17328
  EVENT_NAME2["START_SEARCH"] = "开始搜索";
17303
17329
  EVENT_NAME2["SEARCH"] = "搜索";
@@ -17467,17 +17493,18 @@ const _sfc_main$l = /* @__PURE__ */ defineComponent({
17467
17493
  setup(__props) {
17468
17494
  var _a;
17469
17495
  const { t: $t } = i18n.global;
17470
- const ProjectSearch = defineAsyncComponent(() => import("./ProjectSearch-9f9c0147.js"));
17471
- const UserSearch = defineAsyncComponent(() => import("./UserSearch-90939207.js"));
17472
- const GloabarSearch = defineAsyncComponent(() => import("./GloabarSearch-f28fbeed.js"));
17473
- const SearchHistoryList = defineAsyncComponent(() => import("./SearchHistoryList-60be8e43.js"));
17474
- const SearchScopeList = defineAsyncComponent(() => import("./SearchScopeList-219689f3.js"));
17475
- const SearchPrefixTag = defineAsyncComponent(() => import("./SearchPrefixTag-9c65808f.js"));
17476
- const SearchRecommed = defineAsyncComponent(() => import("./SearchRecommed-264ad90c.js"));
17496
+ const ProjectSearch = defineAsyncComponent(() => import("./ProjectSearch-6bd17326.js"));
17497
+ const UserSearch = defineAsyncComponent(() => import("./UserSearch-82148d1d.js"));
17498
+ const GloabarSearch = defineAsyncComponent(() => import("./GloabarSearch-befb8445.js"));
17499
+ const SearchHistoryList = defineAsyncComponent(() => import("./SearchHistoryList-96f825cc.js"));
17500
+ const SearchScopeList = defineAsyncComponent(() => import("./SearchScopeList-0349efdd.js"));
17501
+ const SearchPrefixTag = defineAsyncComponent(() => import("./SearchPrefixTag-89c95d8d.js"));
17502
+ const SearchRecommed = defineAsyncComponent(() => import("./SearchRecommed-0b13500d.js"));
17477
17503
  const props = __props;
17478
17504
  const repoInfo = inject("repoInfo");
17479
17505
  const orgInfo = inject("orgInfo");
17480
17506
  const otherUserInfo = inject("otherUserInfo");
17507
+ const useReport2 = inject("useReport");
17481
17508
  const searchInfo = computed(() => {
17482
17509
  var _a2, _b;
17483
17510
  if (props.sceneValue === SceneValue.org && orgInfo.value) {
@@ -17660,7 +17687,7 @@ const _sfc_main$l = /* @__PURE__ */ defineComponent({
17660
17687
  const onSearch = () => {
17661
17688
  var _a2;
17662
17689
  _frEventTrack(EVENT_NAME.HEADER_START_SEARCH);
17663
- useReport("search-project", {}, () => {
17690
+ useReport2("search-project", {}, () => {
17664
17691
  });
17665
17692
  isFocus.value = false;
17666
17693
  inputRef.value.blur();
@@ -17702,7 +17729,7 @@ const _sfc_main$l = /* @__PURE__ */ defineComponent({
17702
17729
  }
17703
17730
  });
17704
17731
  const onFocus = () => {
17705
- useReport(REPO_EVENT.CLICK, {
17732
+ useReport2(REPO_EVENT.CLICK, {
17706
17733
  module_name: REPO_MODULE.SEARCH_BAR_CLICK
17707
17734
  }, () => {
17708
17735
  });
@@ -17787,7 +17814,7 @@ const _sfc_main$l = /* @__PURE__ */ defineComponent({
17787
17814
  { immediate: true }
17788
17815
  );
17789
17816
  onMounted(() => {
17790
- useReport(REPO_EVENT.SHOW, {
17817
+ useReport2(REPO_EVENT.SHOW, {
17791
17818
  module_name: REPO_MODULE.SEARCH_BAR_EXPO
17792
17819
  }, () => {
17793
17820
  });
@@ -17989,10 +18016,10 @@ const _sfc_main$l = /* @__PURE__ */ defineComponent({
17989
18016
  };
17990
18017
  }
17991
18018
  });
17992
- const index_vue_vue_type_style_index_0_scoped_d4208c89_lang = "";
18019
+ const index_vue_vue_type_style_index_0_scoped_75f5939b_lang = "";
17993
18020
  const index_vue_vue_type_style_index_1_lang$2 = "";
17994
- const Search = /* @__PURE__ */ _export_sfc(_sfc_main$l, [["__scopeId", "data-v-d4208c89"]]);
17995
- const NoticeModal = defineAsyncComponent(() => import("./notice-b01fc92d.js"));
18021
+ const Search = /* @__PURE__ */ _export_sfc(_sfc_main$l, [["__scopeId", "data-v-75f5939b"]]);
18022
+ const NoticeModal = defineAsyncComponent(() => import("./notice-16ade6fe.js"));
17996
18023
  function clearNotice() {
17997
18024
  if (localStorage.getItem("validator_email")) {
17998
18025
  localStorage.removeItem("validator_email");
@@ -18055,9 +18082,10 @@ const _sfc_main$k = /* @__PURE__ */ defineComponent({
18055
18082
  },
18056
18083
  emits: ["followDevCommunity", "followUser"],
18057
18084
  setup(__props, { emit: __emit }) {
18058
- const origin2 = `${useLayoutConfig().VITE_HOST}?p=seo`;
18085
+ const layoutConfig2 = useLayoutConfig();
18059
18086
  const route = useRoute();
18060
18087
  const props = __props;
18088
+ const { useReport: useReport2 } = useRequestReport(props.request, props.globalStore);
18061
18089
  const emit = __emit;
18062
18090
  provide("request", props.request);
18063
18091
  provide("globalStore", computed(() => props.globalStore));
@@ -18065,6 +18093,7 @@ const _sfc_main$k = /* @__PURE__ */ defineComponent({
18065
18093
  provide("orgInfo", computed(() => props.orgInfo));
18066
18094
  provide("userInfo", computed(() => props.userInfo));
18067
18095
  provide("otherUserInfo", computed(() => props.otherUserInfo));
18096
+ provide("useReport", useReport2);
18068
18097
  const visibleItems = computed(() => {
18069
18098
  if (props.headerFunctions && props.headerFunctions.length > 0) {
18070
18099
  return props.headerFunctions;
@@ -18225,8 +18254,8 @@ const _sfc_main$k = /* @__PURE__ */ defineComponent({
18225
18254
  showNameAndIcon.value && _ctx.independence ? (openBlock(), createBlock(GLink, {
18226
18255
  key: 1,
18227
18256
  class: normalizeClass(["g-toolbar-left-logo", unref(currentTheme)]),
18228
- href: origin2
18229
- }, null, 8, ["class"])) : createCommentVNode("", true),
18257
+ href: `${unref(layoutConfig2).VITE_HOST}?p=seo`
18258
+ }, null, 8, ["class", "href"])) : createCommentVNode("", true),
18230
18259
  showNameAndIcon.value && !_ctx.independence ? (openBlock(), createBlock(GLink, {
18231
18260
  key: 2,
18232
18261
  class: normalizeClass(["g-toolbar-left-logo", unref(currentTheme)]),
@@ -18330,8 +18359,8 @@ const _sfc_main$k = /* @__PURE__ */ defineComponent({
18330
18359
  };
18331
18360
  }
18332
18361
  });
18333
- const index_vue_vue_type_style_index_0_scoped_3b9c9bba_lang = "";
18334
- const GitCodeHeader = /* @__PURE__ */ _export_sfc(_sfc_main$k, [["__scopeId", "data-v-3b9c9bba"]]);
18362
+ const index_vue_vue_type_style_index_0_scoped_fe978b11_lang = "";
18363
+ const GitCodeHeader = /* @__PURE__ */ _export_sfc(_sfc_main$k, [["__scopeId", "data-v-fe978b11"]]);
18335
18364
  const createSetting = () => {
18336
18365
  const { t: t2 } = i18n.global;
18337
18366
  const settings = {
@@ -18514,38 +18543,6 @@ const transWebUrl = (url, params) => {
18514
18543
  const queryString = Object.entries(params).filter(([_, value]) => value !== void 0 && value !== null).map(([key, value]) => `${encodeURIComponent(key)}=${encodeURIComponent(String(value))}`).join("&");
18515
18544
  return queryString ? `${processedUrl}${separator}${queryString}` : processedUrl;
18516
18545
  };
18517
- function asideRequest(request) {
18518
- return {
18519
- // 数据上报
18520
- report(eventId, data, headers = {}) {
18521
- return reqCatch(() => request({
18522
- url: `/api/v1/report`,
18523
- method: "post",
18524
- data,
18525
- params: {
18526
- event_id: eventId
18527
- },
18528
- headers
18529
- }, { ignoreError: true }));
18530
- },
18531
- // 我参与的项目
18532
- getMyProjects(params) {
18533
- return reqCatch(() => request({
18534
- url: `/api/v2/projects/user_projects/related_me`,
18535
- method: "get",
18536
- params
18537
- }), params);
18538
- },
18539
- // 我参与的组织
18540
- getMyGroups(params) {
18541
- return reqCatch(() => request({
18542
- url: "/api/v2/groups/user_groups/related_me",
18543
- method: "get",
18544
- params
18545
- }), params);
18546
- }
18547
- };
18548
- }
18549
18546
  const _hoisted_1$f = { class: "devui-submenu layer_2 my-work-platform submenu-item relative" };
18550
18547
  const _hoisted_2$9 = {
18551
18548
  class: "devui-submenu-title layer_2",
@@ -18945,13 +18942,14 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent({
18945
18942
  sceneValue: { default: SceneValue.home },
18946
18943
  isLogin: { type: Boolean, default: false },
18947
18944
  asideDefaultWidth: { default: 240 },
18948
- asideSetShowLittle: { type: Boolean, default: false }
18945
+ asideSetShowLittle: { type: Boolean, default: false },
18946
+ showPreferencesSetting: { type: Boolean },
18947
+ showThemeSetting: { type: Boolean },
18948
+ showLangSetting: { type: Boolean }
18949
18949
  },
18950
- emits: ["onSelect"],
18950
+ emits: ["onMenuClick"],
18951
18951
  setup(__props, { emit: __emit }) {
18952
18952
  const layoutConfig2 = useLayoutConfig();
18953
- const AI_HOST = layoutConfig2.VITE_AI_HOST;
18954
- const NEWS_HOST = layoutConfig2.VITE_NEWS_HOST;
18955
18953
  const router2 = useRouter();
18956
18954
  const route = useRoute();
18957
18955
  const { t: t2, locale: locale2 } = i18n.global;
@@ -18960,6 +18958,7 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent({
18960
18958
  const props = __props;
18961
18959
  const request = inject("request");
18962
18960
  const userInfo = inject("userInfo");
18961
+ const useReport2 = inject("useReport");
18963
18962
  const emits = __emit;
18964
18963
  const visibleItems = computed(() => {
18965
18964
  switch (props.sceneValue) {
@@ -18984,10 +18983,20 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent({
18984
18983
  };
18985
18984
  const username = computed(() => (userInfo == null ? void 0 : userInfo.username) || JSON.parse(localStorage.getItem("userInfo") || "{}").username);
18986
18985
  const showPreferencesSetting = computed(() => {
18986
+ if (props.showPreferencesSetting !== void 0)
18987
+ return !props.asideSetShowLittle && props.showPreferencesSetting;
18987
18988
  return !props.asideSetShowLittle && route.name !== AICopilot_ROUTE_NAME && isModuleVisible(AsideDisplayItem.PREFERENCE);
18988
18989
  });
18989
- const aiHubSceneValue = [SceneValue.aiHome, SceneValue.aiGuide];
18990
- const inAIHub = computed(() => aiHubSceneValue.includes(props.sceneValue));
18990
+ const showThemeSetting = computed(() => {
18991
+ if (props.showPreferencesSetting !== void 0 && props.showThemeSetting !== void 0)
18992
+ return props.showThemeSetting;
18993
+ return ![SceneValue.aiHome, SceneValue.aiGuide].includes(props.sceneValue);
18994
+ });
18995
+ const showLangSetting = computed(() => {
18996
+ if (props.showPreferencesSetting !== void 0 && props.showLangSetting !== void 0)
18997
+ return props.showLangSetting;
18998
+ return true;
18999
+ });
18991
19000
  const isEn = computed(() => {
18992
19001
  return locale2.value === LANG_EN;
18993
19002
  });
@@ -19081,8 +19090,8 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent({
19081
19090
  icon: 'gt-a-plane-AICommunity',
19082
19091
  activeIcon: 'gt-a-plane-AICommunity-red',
19083
19092
  label: aiTitle.value,
19084
- host: AI_HOST,
19085
- href: `${AI_HOST}/models`,
19093
+ host: layoutConfig.VITE_AI_HOST,
19094
+ href: `${layoutConfig.VITE_AI_HOST}/models`,
19086
19095
  hidden: !checkAihub(),
19087
19096
  openBlank: true
19088
19097
  },
@@ -19100,8 +19109,8 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent({
19100
19109
  activeIcon: "gt-plane-consulting-2",
19101
19110
  label: t2("gitCodeLayout.home.informationCenter"),
19102
19111
  openBlank: true,
19103
- host: NEWS_HOST,
19104
- href: `${NEWS_HOST}/news?lang=${locale2.value}`
19112
+ host: layoutConfig2.VITE_NEWS_HOST,
19113
+ href: `${layoutConfig2.VITE_NEWS_HOST}/news?lang=${locale2.value}`
19105
19114
  },
19106
19115
  {
19107
19116
  key: "competition",
@@ -19109,8 +19118,8 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent({
19109
19118
  activeIcon: "gt-a-plane-AICompetition2",
19110
19119
  label: t2("gitCodeLayout.home.competition"),
19111
19120
  openBlank: true,
19112
- host: AI_HOST,
19113
- href: `${AI_HOST}/competition/?utm_source=toolbar`
19121
+ host: layoutConfig2.VITE_AI_HOST,
19122
+ href: `${layoutConfig2.VITE_AI_HOST}/competition/?utm_source=toolbar`
19114
19123
  }
19115
19124
  /* {
19116
19125
  key: 'trusted',
@@ -19127,7 +19136,7 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent({
19127
19136
  return menuArr;
19128
19137
  });
19129
19138
  const API = asideRequest(request);
19130
- const onSelect = (e) => {
19139
+ const onMenuClick = (e) => {
19131
19140
  var _a;
19132
19141
  const parentNode = e.el.parentNode;
19133
19142
  const routeDataStr = parentNode == null ? void 0 : parentNode.getAttribute("data-route");
@@ -19135,13 +19144,13 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent({
19135
19144
  const openMode = (parentNode == null ? void 0 : parentNode.getAttribute("data-openBlank")) ? "_blank" : "_self";
19136
19145
  const url = (parentNode == null ? void 0 : parentNode.getAttribute("data-href")) || "";
19137
19146
  const host = (parentNode == null ? void 0 : parentNode.getAttribute("data-host")) || "";
19138
- if (host === AI_HOST) {
19139
- useReport(AsideReportEvent.AI_CLICK, {}, API.report);
19147
+ if (host === layoutConfig2.VITE_AI_HOST) {
19148
+ useReport2(AsideReportEvent.AI_CLICK, {});
19140
19149
  }
19141
19150
  if (routeData) {
19142
19151
  if (routeData.login && !props.isLogin) {
19143
19152
  if (sizeStore.isMobile.value) {
19144
- emits("onSelect");
19153
+ emits("onMenuClick");
19145
19154
  }
19146
19155
  emitEvent("login");
19147
19156
  return;
@@ -19166,7 +19175,7 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent({
19166
19175
  checkMenu();
19167
19176
  return false;
19168
19177
  }
19169
- emits("onSelect");
19178
+ emits("onMenuClick");
19170
19179
  };
19171
19180
  function checkMenu() {
19172
19181
  if (!route)
@@ -19251,7 +19260,7 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent({
19251
19260
  onMouseleave: handleMouseLeave
19252
19261
  }, [
19253
19262
  createVNode(unref(Menu), {
19254
- onSelect,
19263
+ onSelect: onMenuClick,
19255
19264
  "open-keys": ["team", "project"],
19256
19265
  mode: "vertical",
19257
19266
  "default-select-keys": defaultSelectKeys.value,
@@ -19447,10 +19456,12 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent({
19447
19456
  withDirectives(createElementVNode("div", _hoisted_19$1, [
19448
19457
  createVNode(_sfc_main$i)
19449
19458
  ], 512), [
19450
- [vShow, !inAIHub.value]
19459
+ [vShow, showThemeSetting.value]
19451
19460
  ]),
19452
- createElementVNode("div", _hoisted_20$1, [
19461
+ withDirectives(createElementVNode("div", _hoisted_20$1, [
19453
19462
  createVNode(_sfc_main$j)
19463
+ ], 512), [
19464
+ [vShow, showLangSetting.value]
19454
19465
  ])
19455
19466
  ]),
19456
19467
  default: withCtx(() => [
@@ -19475,9 +19486,9 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent({
19475
19486
  };
19476
19487
  }
19477
19488
  });
19478
- const asideContent_vue_vue_type_style_index_0_scoped_a76aff65_lang = "";
19489
+ const asideContent_vue_vue_type_style_index_0_scoped_867b35df_lang = "";
19479
19490
  const asideContent_vue_vue_type_style_index_1_lang = "";
19480
- const AsideContent = /* @__PURE__ */ _export_sfc(_sfc_main$g, [["__scopeId", "data-v-a76aff65"]]);
19491
+ const AsideContent = /* @__PURE__ */ _export_sfc(_sfc_main$g, [["__scopeId", "data-v-867b35df"]]);
19481
19492
  const _hoisted_1$d = { class: "p-[16px] flex justify-between items-center h-[60px]" };
19482
19493
  const _sfc_main$f = /* @__PURE__ */ defineComponent({
19483
19494
  __name: "index",
@@ -19489,14 +19500,19 @@ const _sfc_main$f = /* @__PURE__ */ defineComponent({
19489
19500
  request: { type: Function, default: proxyService },
19490
19501
  globalStore: { default: () => ({
19491
19502
  httpStatus: 200
19492
- }) }
19503
+ }) },
19504
+ showPreferencesSetting: { type: Boolean },
19505
+ showThemeSetting: { type: Boolean },
19506
+ showLangSetting: { type: Boolean }
19493
19507
  },
19494
19508
  setup(__props) {
19495
19509
  const route = useRoute();
19496
19510
  const props = __props;
19511
+ const { useReport: useReport2 } = useRequestReport(props.request, props.globalStore);
19497
19512
  provide("globalStore", computed(() => props.globalStore));
19498
19513
  provide("request", props.request);
19499
19514
  provide("userInfo", computed(() => props.userInfo));
19515
+ provide("useReport", useReport2);
19500
19516
  const showBgColor = computed(() => {
19501
19517
  if (route.meta.showBgColor)
19502
19518
  return true;
@@ -19556,8 +19572,11 @@ const _sfc_main$f = /* @__PURE__ */ defineComponent({
19556
19572
  sceneValue: _ctx.sceneValue,
19557
19573
  asideDefaultWidth: mainMarginLeftWidth.value,
19558
19574
  asideSetShowLittle: unref(asideSetShowLittle),
19559
- isLogin: _ctx.isLogin
19560
- }, null, 8, ["sceneValue", "asideDefaultWidth", "asideSetShowLittle", "isLogin"])) : createCommentVNode("", true)
19575
+ isLogin: _ctx.isLogin,
19576
+ showPreferencesSetting: _ctx.showPreferencesSetting,
19577
+ showThemeSetting: _ctx.showThemeSetting,
19578
+ showLangSetting: _ctx.showLangSetting
19579
+ }, null, 8, ["sceneValue", "asideDefaultWidth", "asideSetShowLittle", "isLogin", "showPreferencesSetting", "showThemeSetting", "showLangSetting"])) : createCommentVNode("", true)
19561
19580
  ]),
19562
19581
  _: 1
19563
19582
  }, 8, ["class", "style"])) : createCommentVNode("", true),
@@ -19585,11 +19604,14 @@ const _sfc_main$f = /* @__PURE__ */ defineComponent({
19585
19604
  asideVisible.value ? (openBlock(), createBlock(AsideContent, {
19586
19605
  key: 0,
19587
19606
  asideDefaultWidth: 240,
19588
- onOnSelect: handleClickMenu,
19607
+ onOnMenuClick: handleClickMenu,
19589
19608
  sceneValue: _ctx.sceneValue,
19590
19609
  isLogin: _ctx.isLogin,
19610
+ showPreferencesSetting: _ctx.showPreferencesSetting,
19611
+ showThemeSetting: _ctx.showThemeSetting,
19612
+ showLangSetting: _ctx.showLangSetting,
19591
19613
  style: { "height": "calc(100% - 60px)", "padding-top": "0" }
19592
- }, null, 8, ["sceneValue", "isLogin"])) : createCommentVNode("", true)
19614
+ }, null, 8, ["sceneValue", "isLogin", "showPreferencesSetting", "showThemeSetting", "showLangSetting"])) : createCommentVNode("", true)
19593
19615
  ]),
19594
19616
  _: 1
19595
19617
  }, 8, ["modelValue"])
@@ -19597,9 +19619,9 @@ const _sfc_main$f = /* @__PURE__ */ defineComponent({
19597
19619
  };
19598
19620
  }
19599
19621
  });
19600
- const index_vue_vue_type_style_index_0_scoped_084109a5_lang = "";
19622
+ const index_vue_vue_type_style_index_0_scoped_0670c992_lang = "";
19601
19623
  const index_vue_vue_type_style_index_1_lang$1 = "";
19602
- const GitCodeAside = /* @__PURE__ */ _export_sfc(_sfc_main$f, [["__scopeId", "data-v-084109a5"]]);
19624
+ const GitCodeAside = /* @__PURE__ */ _export_sfc(_sfc_main$f, [["__scopeId", "data-v-0670c992"]]);
19603
19625
  const repoInfoData = {
19604
19626
  "star_count": 0,
19605
19627
  "forks_count": 0,
@@ -20416,8 +20438,6 @@ async function csdnloginCheck(route, loginCallback, request) {
20416
20438
  return false;
20417
20439
  }
20418
20440
  const layoutConfig = useLayoutConfig();
20419
- const cookieDomain = layoutConfig.VITE_COOKIE_DOMAIN;
20420
- const VITE_API_HOST = layoutConfig.VITE_API_HOST;
20421
20441
  const { t: t$2 } = i18n.global;
20422
20442
  const GRAPH_CODE = 400007;
20423
20443
  const createLoginConfig = (request) => {
@@ -20509,11 +20529,11 @@ const createLoginConfig = (request) => {
20509
20529
  },
20510
20530
  // csdn授权后
20511
20531
  afterCsdnLogin(param) {
20512
- bindResultResolve(param);
20532
+ bindResultResolve(param, API);
20513
20533
  },
20514
20534
  // atomgit授权后
20515
20535
  afterAtomGitLogin(param) {
20516
- bindResultResolve(param);
20536
+ bindResultResolve(param, API);
20517
20537
  },
20518
20538
  // 微信授权前
20519
20539
  async beforeWechatLogin(param) {
@@ -20526,7 +20546,7 @@ const createLoginConfig = (request) => {
20526
20546
  },
20527
20547
  // 微信授权后
20528
20548
  afterWechatLogin(param) {
20529
- bindResultResolve(param);
20549
+ bindResultResolve(param, API);
20530
20550
  },
20531
20551
  // 其他三方授权前(gitee、github、hbuilder)
20532
20552
  beforeOtherLogin(param) {
@@ -20539,7 +20559,7 @@ const createLoginConfig = (request) => {
20539
20559
  },
20540
20560
  // 其他三方授权后
20541
20561
  afterOtherLogin(param) {
20542
- bindResultResolve(param);
20562
+ bindResultResolve(param, API);
20543
20563
  }
20544
20564
  };
20545
20565
  };
@@ -20573,7 +20593,7 @@ function setEmailValid(username, email) {
20573
20593
  }
20574
20594
  }
20575
20595
  function goAuthPage(type, noOpen = false) {
20576
- let url = `${VITE_API_HOST}${PASSPORT_PREFIX}/api/v1/oauth/login/${type}`;
20596
+ let url = `${layoutConfig.VITE_API_HOST}${PASSPORT_PREFIX}/api/v1/oauth/login/${type}`;
20577
20597
  if (type === AuthTypeEnum.CSDN) {
20578
20598
  const utm_source = "?namespace=getcsdnpassportuv";
20579
20599
  url = `${url}${utm_source}`;
@@ -20712,7 +20732,7 @@ function failResolve(params) {
20712
20732
  }
20713
20733
  function removeStatusAfterLogin() {
20714
20734
  localStorage.removeItem("loginReturnUrl");
20715
- api.set("third_utm_source_sign_path", "", { expires: -1, domain: cookieDomain });
20735
+ api.set("third_utm_source_sign_path", "", { expires: -1, domain: layoutConfig.VITE_COOKIE_DOMAIN });
20716
20736
  }
20717
20737
  function defaultBackResolve(url) {
20718
20738
  location.replace(removeIsLoginParam(url));
@@ -24292,7 +24312,7 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
24292
24312
  const MFA_vue_vue_type_style_index_0_lang = "";
24293
24313
  const MFA_vue_vue_type_style_index_1_scoped_3e0f827f_lang = "";
24294
24314
  const MFA = /* @__PURE__ */ _export_sfc(_sfc_main$4, [["__scopeId", "data-v-3e0f827f"]]);
24295
- const SlidCaptcha = defineAsyncComponent(() => import("./index-2406f21b.js"));
24315
+ const SlidCaptcha = defineAsyncComponent(() => import("./index-f6d6c76e.js"));
24296
24316
  const useSlidCaptcha = () => {
24297
24317
  const { mount, unMount } = usePopup("slid-captcha-popup");
24298
24318
  const open = (config) => {
@@ -24499,6 +24519,7 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
24499
24519
  const props = __props;
24500
24520
  const request = props.request;
24501
24521
  provide("request", request);
24522
+ const useReport2 = inject("useReport");
24502
24523
  const API = headRequest(request);
24503
24524
  const LoginConfig = createLoginConfig(request, props.loginSuccess);
24504
24525
  const usernameRegExp2 = /^(?!-)(?!.*-$)[a-zA-Z][a-zA-Z0-9_-]{1,18}[a-zA-Z0-9]$/;
@@ -24952,7 +24973,7 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
24952
24973
  const handleConfirm = async (info) => {
24953
24974
  var _a, _b;
24954
24975
  if (formType.value === "register") {
24955
- useReport("signup_submit", {}, API.report);
24976
+ useReport2("signup_submit", {});
24956
24977
  }
24957
24978
  const formData = await ((_a = FormRef.value) == null ? void 0 : _a.ValidateForm());
24958
24979
  if (!formData || formData.type === "fail")
@@ -25259,11 +25280,11 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
25259
25280
  }
25260
25281
  });
25261
25282
  const agreementReport = (eventId, type) => {
25262
- useReport(eventId, { type }, API.report);
25283
+ useReport2(eventId, { type });
25263
25284
  };
25264
25285
  function onModalClose() {
25265
25286
  if (formType.value === "register") {
25266
- useReport("signup_close", {}, API.report);
25287
+ useReport2("signup_close", {});
25267
25288
  }
25268
25289
  }
25269
25290
  function onClickModalClose() {
@@ -25275,13 +25296,13 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
25275
25296
  if (props.showClose) {
25276
25297
  emits("close");
25277
25298
  if (formType.value === "register") {
25278
- useReport("signup_button_close", {}, API.report);
25299
+ useReport2("signup_button_close", {});
25279
25300
  }
25280
25301
  }
25281
25302
  }
25282
25303
  watchPostEffect(() => {
25283
25304
  if (formType.value === "register") {
25284
- useReport("signup_view", {}, API.report);
25305
+ useReport2("signup_view", {});
25285
25306
  }
25286
25307
  });
25287
25308
  onBeforeUnmount(() => {
@@ -25642,9 +25663,9 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
25642
25663
  };
25643
25664
  }
25644
25665
  });
25645
- const index_vue_vue_type_style_index_0_scoped_4c0b3116_lang = "";
25666
+ const index_vue_vue_type_style_index_0_scoped_530b620d_lang = "";
25646
25667
  const index_vue_vue_type_style_index_1_lang = "";
25647
- const LoginModal = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["__scopeId", "data-v-4c0b3116"]]);
25668
+ const LoginModal = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["__scopeId", "data-v-530b620d"]]);
25648
25669
  const { t } = i18n.global;
25649
25670
  function useLogin(request) {
25650
25671
  const successMsg = t("gitCodeLayout.common.tips.welcome");
@@ -25818,25 +25839,24 @@ export {
25818
25839
  TOPIC_TYPE as T,
25819
25840
  _export_sfc as _,
25820
25841
  i18n as a,
25821
- useReport as b,
25822
- REPO_EVENT as c,
25823
- REPO_TYPE as d,
25842
+ REPO_EVENT as b,
25843
+ REPO_TYPE as c,
25844
+ useTimeFormat as d,
25824
25845
  extractRepoInfoWithURL as e,
25825
- useTimeFormat as f,
25826
- usePageResize as g,
25846
+ usePageResize as f,
25847
+ highlightWords as g,
25827
25848
  headRequest as h,
25828
25849
  isPhone as i,
25829
- highlightWords as j,
25830
- _frEventTrack as k,
25831
- debounce$1 as l,
25832
- useLayoutConfig as m,
25833
- ToolsFloat as n,
25834
- _sfc_main as o,
25835
- GitCodeHeader as p,
25836
- GitCodeLayoutEmitter as q,
25850
+ _frEventTrack as j,
25851
+ debounce$1 as k,
25852
+ useLayoutConfig as l,
25853
+ ToolsFloat as m,
25854
+ _sfc_main as n,
25855
+ GitCodeHeader as o,
25856
+ GitCodeLayoutEmitter as p,
25857
+ index as q,
25837
25858
  reqCatch as r,
25838
25859
  setLayoutConfig as s,
25839
25860
  transWebUrl as t,
25840
- useModel as u,
25841
- index as v
25861
+ useModel as u
25842
25862
  };