@taskon/widget-react 0.0.1-beta.2 → 0.0.1-beta.4

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.
Files changed (44) hide show
  1. package/README.md +56 -17
  2. package/dist/CommunityTaskList.css +1593 -1741
  3. package/dist/EligibilityInfo.css +1275 -582
  4. package/dist/LeaderboardWidget.css +355 -152
  5. package/dist/PageBuilder.css +0 -2
  6. package/dist/Quest.css +1140 -903
  7. package/dist/TaskOnProvider.css +50 -31
  8. package/dist/UserCenterWidget.css +108 -237
  9. package/dist/UserCenterWidget2.css +2016 -711
  10. package/dist/chunks/{CommunityTaskList-BlH1Wdd5.js → CommunityTaskList-C9Gv8KOF.js} +962 -827
  11. package/dist/chunks/{EligibilityInfo-C7GZ2G5u.js → EligibilityInfo-D-Fuy9GE.js} +1137 -449
  12. package/dist/chunks/{LeaderboardWidget-CmYfDeHV.js → LeaderboardWidget-BV2D2q1N.js} +15 -10
  13. package/dist/chunks/{PageBuilder-Bw0zSkFh.js → PageBuilder-DQoU4Mwf.js} +5 -5
  14. package/dist/chunks/{Quest-DKFZ-pPU.js → Quest-B5NyVr3o.js} +516 -325
  15. package/dist/chunks/{TaskOnProvider-BD6Vp2x8.js → TaskOnProvider-93UxARFo.js} +2 -207
  16. package/dist/chunks/{ThemeProvider-wnSXrNQb.js → ThemeProvider-CPI_roeh.js} +249 -57
  17. package/dist/chunks/{UserCenterWidget-Cw6h_5hT.js → UserCenterWidget-BRtigY_S.js} +206 -1002
  18. package/dist/chunks/UserCenterWidget-cADBSVg7.js +8358 -0
  19. package/dist/chunks/{WidgetShell-D_5OjvNZ.js → dynamic-import-helper-DwXlQC0S.js} +607 -40
  20. package/dist/chunks/useToast-CaRkylKe.js +304 -0
  21. package/dist/chunks/{usercenter-ja-uu-XfVF9.js → usercenter-ja-B2465c1O.js} +4 -10
  22. package/dist/chunks/{usercenter-ko-DYgUOVzd.js → usercenter-ko-xAEYxqLg.js} +4 -10
  23. package/dist/community-task.d.ts +34 -3
  24. package/dist/community-task.js +1 -1
  25. package/dist/core.d.ts +40 -3
  26. package/dist/core.js +9 -10
  27. package/dist/dynamic-import-helper.css +596 -289
  28. package/dist/index.d.ts +207 -10
  29. package/dist/index.js +21 -19
  30. package/dist/leaderboard.d.ts +8 -1
  31. package/dist/leaderboard.js +2 -2
  32. package/dist/page-builder.js +1 -1
  33. package/dist/quest.d.ts +8 -2
  34. package/dist/quest.js +1 -1
  35. package/dist/user-center.d.ts +20 -136
  36. package/dist/user-center.js +19 -236
  37. package/package.json +10 -2
  38. package/dist/TipPopover.css +0 -210
  39. package/dist/WidgetShell.css +0 -182
  40. package/dist/chunks/TipPopover-BrW8jo71.js +0 -2926
  41. package/dist/chunks/UserCenterWidget-BE329iS7.js +0 -3546
  42. package/dist/chunks/dynamic-import-helper-DxEFwm31.js +0 -537
  43. package/dist/chunks/useToast-B-wyO5zL.js +0 -93
  44. package/dist/chunks/useWidgetLocale-JDelxtt8.js +0 -74
@@ -1,10 +1,8 @@
1
- import { B as Button, T as Table, P as Pagination, _ as __variableDynamicImportRuntimeHelper, u as usePagination } from "./dynamic-import-helper-DxEFwm31.js";
1
+ import { B as Button, T as Table, P as Pagination, D as Dialog, a as useResolvedWidgetConfig, W as WidgetShell, _ as __variableDynamicImportRuntimeHelper, u as usePagination } from "./dynamic-import-helper-DwXlQC0S.js";
2
2
  import { jsx, jsxs } from "react/jsx-runtime";
3
3
  import { useState, useCallback, useEffect, useMemo } from "react";
4
- import { createLeaderboardApi, LeaderboardContentType, formatRankRange, RewardsDistributeType, formatRewardText, calculatePrizePool, RewardType, LeaderboardTableColumn, isAllTimeResponse, isCampaignResponse } from "@taskon/core";
5
- import { b as useTaskOnContext } from "./ThemeProvider-wnSXrNQb.js";
6
- import { D as Dialog, u as useResolvedWidgetConfig, W as WidgetShell } from "./WidgetShell-D_5OjvNZ.js";
7
- import { u as useWidgetLocale } from "./useWidgetLocale-JDelxtt8.js";
4
+ import { createLeaderboardApi, LeaderboardContentType, formatRankRange, RewardsDistributeType, formatRewardText, calculatePrizePool, RewardType, LeaderboardTableColumn, truncateAddress, isAllTimeResponse, isCampaignResponse } from "@taskon/core";
5
+ import { d as useTaskOnContext, b as useWidgetLocale } from "./ThemeProvider-CPI_roeh.js";
8
6
  import '../LeaderboardWidget.css';function useLeaderboard(options) {
9
7
  const { client } = useTaskOnContext();
10
8
  const [data, setData] = useState(null);
@@ -174,6 +172,7 @@ function RankBadge({ rank, isAllTime = false, className = "" }) {
174
172
  function UserCell({
175
173
  userId,
176
174
  userName,
175
+ displayName,
177
176
  avatar,
178
177
  isCurrentUser = false,
179
178
  youLabel = "YOU",
@@ -201,7 +200,7 @@ function UserCell({
201
200
  handleClick();
202
201
  }
203
202
  } : void 0,
204
- children: /* @__PURE__ */ jsx("span", { className: "taskon-leaderboard-user__name", children: userName })
203
+ children: /* @__PURE__ */ jsx("span", { className: "taskon-leaderboard-user__name", children: displayName ?? userName })
205
204
  }
206
205
  );
207
206
  }
@@ -467,6 +466,9 @@ function convertCampaignData(data) {
467
466
  };
468
467
  });
469
468
  }
469
+ function formatUserDisplayName(userName) {
470
+ return truncateAddress(userName, 6, 6);
471
+ }
470
472
  function LeaderboardTable({
471
473
  tabConfig,
472
474
  allTimeData,
@@ -510,6 +512,7 @@ function LeaderboardTable({
510
512
  {
511
513
  userId: row.userId,
512
514
  userName: row.userName,
515
+ displayName: formatUserDisplayName(row.userName),
513
516
  avatar: row.avatar,
514
517
  isCurrentUser: currentUserId === row.userId,
515
518
  youLabel: messages.you,
@@ -870,7 +873,7 @@ const en = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
870
873
  you
871
874
  }, Symbol.toStringTag, { value: "Module" }));
872
875
  function LeaderboardWidget(props) {
873
- const { widgetId } = props;
876
+ const { widgetId, themeMode } = props;
874
877
  const { functionConfig, cloudTheme, isConfigLoading, configError } = useResolvedWidgetConfig(widgetId);
875
878
  const mergedConfig = useMemo(() => {
876
879
  return mergeLeaderboardConfig(
@@ -878,21 +881,23 @@ function LeaderboardWidget(props) {
878
881
  functionConfig ?? null
879
882
  );
880
883
  }, [props.config, functionConfig]);
884
+ const isConfigured = !!mergedConfig.config && Array.isArray(mergedConfig.config.leaderboards) && mergedConfig.config.leaderboards.length > 0;
881
885
  return /* @__PURE__ */ jsx(
882
886
  WidgetShell,
883
887
  {
884
888
  widgetId,
885
889
  isConfigLoading,
886
890
  cloudTheme,
891
+ themeMode,
887
892
  className: "taskon-leaderboard",
888
- errorMessage: configError ?? (!mergedConfig.config ? "Leaderboard config is required. Please provide config via props or widgetId." : void 0),
889
- children: /* @__PURE__ */ jsx(
893
+ errorMessage: configError ?? (!isConfigured ? "未配置" : void 0),
894
+ children: isConfigured ? /* @__PURE__ */ jsx(
890
895
  LeaderboardWidgetInner,
891
896
  {
892
897
  ...props,
893
898
  config: mergedConfig.config
894
899
  }
895
- )
900
+ ) : null
896
901
  }
897
902
  );
898
903
  }
@@ -1,11 +1,11 @@
1
1
  import { jsx } from "react/jsx-runtime";
2
2
  import { useState, useEffect, useMemo, useRef } from "react";
3
3
  import { DEFAULT_PAGE_BUILDER_CONFIG, createPageBuilderApi, parsePageBuilderConfig, SectionLayoutType, WidgetTypeEnum, SECTION_LAYOUT_RATIOS } from "@taskon/core";
4
- import { Q as QuestWidget } from "./Quest-DKFZ-pPU.js";
5
- import { a as CommunityTaskList } from "./CommunityTaskList-BlH1Wdd5.js";
6
- import { L as LeaderboardWidget } from "./LeaderboardWidget-CmYfDeHV.js";
7
- import { U as UserCenterWidget } from "./UserCenterWidget-Cw6h_5hT.js";
8
- import { b as useTaskOnContext } from "./ThemeProvider-wnSXrNQb.js";
4
+ import { Q as QuestWidget } from "./Quest-B5NyVr3o.js";
5
+ import { a as CommunityTaskList } from "./CommunityTaskList-C9Gv8KOF.js";
6
+ import { L as LeaderboardWidget } from "./LeaderboardWidget-BV2D2q1N.js";
7
+ import { U as UserCenterWidget } from "./UserCenterWidget-BRtigY_S.js";
8
+ import { d as useTaskOnContext } from "./ThemeProvider-CPI_roeh.js";
9
9
  import '../PageBuilder.css';function usePageBuilderConfig(pageId, localConfig) {
10
10
  const { client } = useTaskOnContext();
11
11
  const [config, setConfig] = useState(