@opendesign-plus/components 0.0.1-rc.62 → 0.0.1-rc.64

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 (81) hide show
  1. package/dist/chunk-OElCookieNotice.cjs.js +1 -1
  2. package/dist/chunk-OElCookieNotice.es.js +4 -4
  3. package/dist/components/activity/index.d.ts +9 -9
  4. package/dist/components/banner/index.d.ts +6 -6
  5. package/dist/components/events/index.d.ts +20 -20
  6. package/dist/components/float-poster/OFloatPoster.vue.d.ts +24 -0
  7. package/dist/components/float-poster/index.d.ts +72 -0
  8. package/dist/components/float-poster/types.d.ts +21 -0
  9. package/dist/components/footer/index.d.ts +3 -3
  10. package/dist/components/header/OHeaderMobile.vue.d.ts +8 -8
  11. package/dist/components/header/components/HeaderNavMobile.vue.d.ts +1 -1
  12. package/dist/components/header/index.d.ts +28 -28
  13. package/dist/components/header-search/index.d.ts +13 -13
  14. package/dist/components/logo-swiper/index.d.ts +11 -11
  15. package/dist/components/meeting/OMeetingPlayback.vue.d.ts +6 -6
  16. package/dist/components/meeting/OMeetingSigCalendar.vue.d.ts +2 -1
  17. package/dist/components/meeting/components/OMeetingPlaybackVideo.vue.d.ts +1 -1
  18. package/dist/components/meeting/index.d.ts +37 -34
  19. package/dist/components/search/index.d.ts +11 -11
  20. package/dist/components/sig/components/OSigDetailInfoCard.vue.d.ts +3 -1
  21. package/dist/components/sig/components/OSigItem.vue.d.ts +0 -3
  22. package/dist/components/sig/components/utils.d.ts +38 -3
  23. package/dist/components/sig/types.d.ts +12 -7
  24. package/dist/components.cjs.js +42 -42
  25. package/dist/components.css +1 -1
  26. package/dist/components.es.js +9481 -9351
  27. package/dist/index.d.ts +1 -0
  28. package/dist/treeshaking/_virtual/icon-outlink.mjs +1 -1
  29. package/dist/treeshaking/components/activity/index.d.ts +9 -9
  30. package/dist/treeshaking/components/banner/index.d.ts +6 -6
  31. package/dist/treeshaking/components/events/index.d.ts +20 -20
  32. package/dist/treeshaking/components/float-poster/OFloatPoster.css +64 -0
  33. package/dist/treeshaking/components/float-poster/OFloatPoster.vue.d.ts +24 -0
  34. package/dist/treeshaking/components/float-poster/OFloatPoster.vue.mjs +7 -0
  35. package/dist/treeshaking/components/float-poster/OFloatPoster.vue2.mjs +84 -0
  36. package/dist/treeshaking/components/float-poster/index.d.ts +72 -0
  37. package/dist/treeshaking/components/float-poster/index.mjs +9 -0
  38. package/dist/treeshaking/components/float-poster/types.d.ts +21 -0
  39. package/dist/treeshaking/components/footer/index.d.ts +3 -3
  40. package/dist/treeshaking/components/header/OHeaderMobile.vue.d.ts +8 -8
  41. package/dist/treeshaking/components/header/components/HeaderNavMobile.vue.d.ts +1 -1
  42. package/dist/treeshaking/components/header/index.d.ts +28 -28
  43. package/dist/treeshaking/components/header-search/index.d.ts +13 -13
  44. package/dist/treeshaking/components/logo-swiper/OLogoSwiperItems.css +18 -18
  45. package/dist/treeshaking/components/logo-swiper/OLogoSwiperItems.vue.mjs +1 -1
  46. package/dist/treeshaking/components/logo-swiper/OLogoSwiperItems.vue2.mjs +5 -5
  47. package/dist/treeshaking/components/logo-swiper/index.d.ts +11 -11
  48. package/dist/treeshaking/components/meeting/OMeetingPlayback.vue.d.ts +6 -6
  49. package/dist/treeshaking/components/meeting/OMeetingSigCalendar.css +29 -1
  50. package/dist/treeshaking/components/meeting/OMeetingSigCalendar.vue.d.ts +2 -1
  51. package/dist/treeshaking/components/meeting/OMeetingSigCalendar.vue.mjs +20 -6
  52. package/dist/treeshaking/components/meeting/components/OMeetingPlaybackVideo.vue.d.ts +1 -1
  53. package/dist/treeshaking/components/meeting/index.d.ts +37 -34
  54. package/dist/treeshaking/components/search/index.d.ts +11 -11
  55. package/dist/treeshaking/components/sig/OSigDetail.css +82 -23
  56. package/dist/treeshaking/components/sig/OSigDetail.vue.mjs +54 -17
  57. package/dist/treeshaking/components/sig/OSigList.css +59 -5
  58. package/dist/treeshaking/components/sig/OSigList.vue.mjs +61 -59
  59. package/dist/treeshaking/components/sig/components/OSigDetailInfoCard.css +80 -1
  60. package/dist/treeshaking/components/sig/components/OSigDetailInfoCard.vue.d.ts +3 -1
  61. package/dist/treeshaking/components/sig/components/OSigDetailInfoCard.vue.mjs +36 -10
  62. package/dist/treeshaking/components/sig/components/OSigItem.css +387 -58
  63. package/dist/treeshaking/components/sig/components/OSigItem.vue.d.ts +0 -3
  64. package/dist/treeshaking/components/sig/components/OSigItem.vue.mjs +25 -45
  65. package/dist/treeshaking/components/sig/components/OSigMember.css +0 -60
  66. package/dist/treeshaking/components/sig/components/OSigMember.vue.mjs +12 -18
  67. package/dist/treeshaking/components/sig/components/OSigRepo.css +15 -0
  68. package/dist/treeshaking/components/sig/components/OSigRepo.vue.mjs +46 -41
  69. package/dist/treeshaking/components/sig/components/OSigUserContribute.css +24 -0
  70. package/dist/treeshaking/components/sig/components/OSigUserContribute.vue.mjs +12 -10
  71. package/dist/treeshaking/components/sig/components/utils.d.ts +38 -3
  72. package/dist/treeshaking/components/sig/components/utils.mjs +36 -3
  73. package/dist/treeshaking/components/sig/types.d.ts +12 -7
  74. package/dist/treeshaking/i18n/en.mjs +2 -2
  75. package/dist/treeshaking/i18n/zh.mjs +2 -2
  76. package/dist/treeshaking/index.d.ts +1 -0
  77. package/dist/treeshaking/index.mjs +2 -0
  78. package/package.json +1 -1
  79. package/dist/components/sig/components/config-sig.d.ts +0 -1
  80. package/dist/treeshaking/components/sig/components/config-sig.d.ts +0 -1
  81. package/dist/treeshaking/components/sig/components/config-sig.mjs +0 -4
@@ -6,36 +6,28 @@ import IconUser from "../../../_virtual/icon-user.mjs";
6
6
  import IconSigSpace from "../../../_virtual/sig-space.mjs";
7
7
  import _sfc_main$1 from "../../common/TooltipText.vue.mjs";
8
8
  import '../../common/TooltipText.css';
9
+ import { getGitUrl, getGitId } from "./utils.mjs";
9
10
  const _hoisted_1 = { class: "o-sig-item" };
10
11
  const _hoisted_2 = { class: "o-sig-item-header" };
11
12
  const _hoisted_3 = { class: "o-sig-link" };
12
13
  const _hoisted_4 = ["title"];
13
- const _hoisted_5 = { key: 0 };
14
- const _hoisted_6 = {
15
- key: 1,
16
- class: "o-sig-repo"
17
- };
18
- const _hoisted_7 = { class: "o-sig-repo-label" };
19
- const _hoisted_8 = { class: "o-sig-bottom" };
14
+ const _hoisted_5 = { class: "o-sig-bottom" };
15
+ const _hoisted_6 = { class: "o-sig-meta" };
16
+ const _hoisted_7 = { class: "o-sig-meta-text" };
17
+ const _hoisted_8 = { class: "o-sig-popup-content" };
20
18
  const _hoisted_9 = { class: "o-sig-meta" };
21
19
  const _hoisted_10 = { class: "o-sig-meta-text" };
22
20
  const _hoisted_11 = { class: "o-sig-popup-content" };
23
- const _hoisted_12 = { class: "o-sig-meta" };
24
- const _hoisted_13 = { class: "o-sig-meta-text" };
25
- const _hoisted_14 = { class: "o-sig-popup-content" };
26
21
  const _sfc_main = /* @__PURE__ */ defineComponent({
27
22
  __name: "OSigItem",
28
23
  props: {
29
- sig: {},
30
- locale: {},
31
- mobile: { type: Boolean },
32
- activeRepo: {}
24
+ sig: {}
33
25
  },
34
26
  emits: ["to-sig-detail"],
35
27
  setup(__props, { emit: __emit }) {
28
+ const { t, locale } = useI18n();
36
29
  const emit = __emit;
37
- const { t } = useI18n();
38
- const lastSeparator = (i, len) => i === (len ?? 0) - 1 ? "" : "、";
30
+ const lastSeparator = (i, len) => i === (len ?? 0) - 1 ? "" : locale.value === "zh" ? "、" : ", ";
39
31
  return (_ctx, _cache) => {
40
32
  return openBlock(), createElementBlock("div", _hoisted_1, [
41
33
  createElementVNode("div", _hoisted_2, [
@@ -48,14 +40,14 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
48
40
  class: "o-sig-type-tag"
49
41
  }, {
50
42
  default: withCtx(() => [
51
- createTextVNode(toDisplayString((__props.locale === "zh" ? __props.sig.feature_zh : __props.sig.feature_en) || unref(t)("sig.other")), 1)
43
+ createTextVNode(toDisplayString((unref(locale) === "zh" ? __props.sig.feature_zh : __props.sig.feature_en) || unref(t)("sig.other")), 1)
52
44
  ]),
53
45
  _: 1
54
46
  })
55
47
  ]),
56
48
  createElementVNode("div", _hoisted_3, [
57
49
  createVNode(unref(OLink), {
58
- href: `https://atomgit.com/${__props.sig.atomgitUrl}`,
50
+ href: __props.sig.git_url,
59
51
  target: "_blank",
60
52
  "hover-underline": false
61
53
  }, {
@@ -86,12 +78,12 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
86
78
  ]),
87
79
  _: 1
88
80
  }, 8, ["href"]),
89
- __props.sig.subscribeUrl ? (openBlock(), createBlock(unref(OButton), {
81
+ __props.sig.subscribe_url ? (openBlock(), createBlock(unref(OButton), {
90
82
  key: 0,
91
83
  size: "medium",
92
84
  color: "primary",
93
85
  round: "pill",
94
- href: __props.sig.subscribeUrl,
86
+ href: __props.sig.subscribe_url,
95
87
  target: "_blank"
96
88
  }, {
97
89
  default: withCtx(() => [
@@ -101,25 +93,13 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
101
93
  }, 8, ["href"])) : createCommentVNode("", true)
102
94
  ]),
103
95
  createElementVNode("div", {
104
- title: __props.activeRepo ? "" : __props.sig.description,
96
+ title: __props.sig.description,
105
97
  class: "o-sig-description"
106
98
  }, [
107
- !__props.activeRepo ? (openBlock(), createElementBlock("div", _hoisted_5, toDisplayString(__props.sig.description), 1)) : (openBlock(), createElementBlock("div", _hoisted_6, [
108
- createElementVNode("div", _hoisted_7, toDisplayString(unref(t)("sig.repo")) + ":", 1),
109
- createVNode(unref(OLink), {
110
- color: "primary",
111
- href: `https://atomgit.com/${__props.activeRepo}`,
112
- target: "_blank"
113
- }, {
114
- default: withCtx(() => [
115
- createTextVNode(toDisplayString(__props.activeRepo), 1)
116
- ]),
117
- _: 1
118
- }, 8, ["href"])
119
- ]))
99
+ createElementVNode("div", null, toDisplayString(__props.sig.description || "--"), 1)
120
100
  ], 8, _hoisted_4),
121
- createElementVNode("div", _hoisted_8, [
122
- createElementVNode("div", _hoisted_9, [
101
+ createElementVNode("div", _hoisted_5, [
102
+ createElementVNode("div", _hoisted_6, [
123
103
  createVNode(unref(OIcon), null, {
124
104
  default: withCtx(() => [
125
105
  createVNode(unref(IconSigSpace))
@@ -134,11 +114,11 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
134
114
  target: withCtx(() => {
135
115
  var _a;
136
116
  return [
137
- createElementVNode("p", _hoisted_10, toDisplayString(unref(t)("sig.repo")) + " " + toDisplayString((_a = __props.sig.repositories) == null ? void 0 : _a.length), 1)
117
+ createElementVNode("p", _hoisted_7, toDisplayString(unref(t)("sig.repo")) + " " + toDisplayString((_a = __props.sig.repositories) == null ? void 0 : _a.length), 1)
138
118
  ];
139
119
  }),
140
120
  default: withCtx(() => [
141
- createElementVNode("div", _hoisted_11, [
121
+ createElementVNode("div", _hoisted_8, [
142
122
  createVNode(unref(OScroller), {
143
123
  showType: "always",
144
124
  size: "small"
@@ -149,7 +129,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
149
129
  key: item,
150
130
  class: "o-sig-popup-item",
151
131
  color: "primary",
152
- href: `https://atomgit.com/${item}`,
132
+ href: unref(getGitUrl)(item),
153
133
  target: "_blank"
154
134
  }, {
155
135
  default: withCtx(() => {
@@ -170,7 +150,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
170
150
  })
171
151
  ]),
172
152
  createVNode(unref(ODivider), { direction: "v" }),
173
- createElementVNode("div", _hoisted_12, [
153
+ createElementVNode("div", _hoisted_9, [
174
154
  createVNode(unref(OIcon), null, {
175
155
  default: withCtx(() => [
176
156
  createVNode(unref(IconUser))
@@ -185,11 +165,11 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
185
165
  target: withCtx(() => {
186
166
  var _a;
187
167
  return [
188
- createElementVNode("p", _hoisted_13, "Maintainer " + toDisplayString((_a = __props.sig.maintainer_info) == null ? void 0 : _a.length), 1)
168
+ createElementVNode("p", _hoisted_10, "Maintainer " + toDisplayString((_a = __props.sig.maintainer_info) == null ? void 0 : _a.length), 1)
189
169
  ];
190
170
  }),
191
171
  default: withCtx(() => [
192
- createElementVNode("div", _hoisted_14, [
172
+ createElementVNode("div", _hoisted_11, [
193
173
  createVNode(unref(OScroller), {
194
174
  showType: "always",
195
175
  size: "small"
@@ -197,16 +177,16 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
197
177
  default: withCtx(() => [
198
178
  (openBlock(true), createElementBlock(Fragment, null, renderList(__props.sig.maintainer_info, (item, i) => {
199
179
  return openBlock(), createBlock(unref(OLink), {
200
- key: item.gitee_id,
180
+ key: i,
201
181
  class: "o-sig-popup-item",
202
182
  color: "primary",
203
- href: item.email ? `mailto:${item.email}` : void 0,
183
+ href: unref(getGitUrl)(item),
204
184
  target: "_blank"
205
185
  }, {
206
186
  default: withCtx(() => {
207
187
  var _a;
208
188
  return [
209
- createTextVNode(toDisplayString(item.gitee_id + lastSeparator(i, (_a = __props.sig.maintainer_info) == null ? void 0 : _a.length)), 1)
189
+ createTextVNode(toDisplayString(unref(getGitId)(item) + lastSeparator(i, (_a = __props.sig.maintainer_info) == null ? void 0 : _a.length)), 1)
210
190
  ];
211
191
  }),
212
192
  _: 2
@@ -193,36 +193,6 @@
193
193
  -webkit-box-orient: vertical;
194
194
  -webkit-line-clamp: 1;
195
195
  }
196
- @media (max-width: 840px) {
197
- .o-sig-detail-member .o-sig-detail-member-box .o-sig-detail-member-list .o-sig-detail-member-info .o-sig-detail-member-info-left .o-sig-detail-info .o-sig-detail-member-id {
198
- font-size: 16px;
199
- line-height: 24px;
200
- }
201
- }
202
- @media (max-width: 840px) and (min-width: 1201px) and (max-width: 1680px) {
203
- .o-sig-detail-member .o-sig-detail-member-box .o-sig-detail-member-list .o-sig-detail-member-info .o-sig-detail-member-info-left .o-sig-detail-info .o-sig-detail-member-id {
204
- font-size: 14px;
205
- line-height: 22px;
206
- }
207
- }
208
- @media (max-width: 840px) and (min-width: 841px) and (max-width: 1200px) {
209
- .o-sig-detail-member .o-sig-detail-member-box .o-sig-detail-member-list .o-sig-detail-member-info .o-sig-detail-member-info-left .o-sig-detail-info .o-sig-detail-member-id {
210
- font-size: 14px;
211
- line-height: 22px;
212
- }
213
- }
214
- @media (max-width: 840px) and (min-width: 601px) and (max-width: 840px) {
215
- .o-sig-detail-member .o-sig-detail-member-box .o-sig-detail-member-list .o-sig-detail-member-info .o-sig-detail-member-info-left .o-sig-detail-info .o-sig-detail-member-id {
216
- font-size: 14px;
217
- line-height: 22px;
218
- }
219
- }
220
- @media (max-width: 840px) and (max-width: 600px) {
221
- .o-sig-detail-member .o-sig-detail-member-box .o-sig-detail-member-list .o-sig-detail-member-info .o-sig-detail-member-info-left .o-sig-detail-info .o-sig-detail-member-id {
222
- font-size: 12px;
223
- line-height: 18px;
224
- }
225
- }
226
196
  .o-sig-detail-member .o-sig-detail-member-box .o-sig-detail-member-list .o-sig-detail-member-info .o-sig-detail-member-info-left .o-sig-detail-info .o-sig-detail-member-name {
227
197
  color: var(--o-color-info4);
228
198
  font-size: 12px;
@@ -252,36 +222,6 @@
252
222
  line-height: 18px;
253
223
  }
254
224
  }
255
- @media (max-width: 840px) {
256
- .o-sig-detail-member .o-sig-detail-member-box .o-sig-detail-member-list .o-sig-detail-member-info .o-sig-detail-member-info-left .o-sig-detail-info .o-sig-detail-member-name {
257
- font-size: 16px;
258
- line-height: 24px;
259
- }
260
- }
261
- @media (max-width: 840px) and (min-width: 1201px) and (max-width: 1680px) {
262
- .o-sig-detail-member .o-sig-detail-member-box .o-sig-detail-member-list .o-sig-detail-member-info .o-sig-detail-member-info-left .o-sig-detail-info .o-sig-detail-member-name {
263
- font-size: 14px;
264
- line-height: 22px;
265
- }
266
- }
267
- @media (max-width: 840px) and (min-width: 841px) and (max-width: 1200px) {
268
- .o-sig-detail-member .o-sig-detail-member-box .o-sig-detail-member-list .o-sig-detail-member-info .o-sig-detail-member-info-left .o-sig-detail-info .o-sig-detail-member-name {
269
- font-size: 14px;
270
- line-height: 22px;
271
- }
272
- }
273
- @media (max-width: 840px) and (min-width: 601px) and (max-width: 840px) {
274
- .o-sig-detail-member .o-sig-detail-member-box .o-sig-detail-member-list .o-sig-detail-member-info .o-sig-detail-member-info-left .o-sig-detail-info .o-sig-detail-member-name {
275
- font-size: 14px;
276
- line-height: 22px;
277
- }
278
- }
279
- @media (max-width: 840px) and (max-width: 600px) {
280
- .o-sig-detail-member .o-sig-detail-member-box .o-sig-detail-member-list .o-sig-detail-member-info .o-sig-detail-member-info-left .o-sig-detail-info .o-sig-detail-member-name {
281
- font-size: 12px;
282
- line-height: 18px;
283
- }
284
- }
285
225
  .o-sig-detail-member .o-sig-detail-member-box .o-sig-detail-member-list .o-sig-detail-member-info .o-sig-detail-member-info-id {
286
226
  align-items: center;
287
227
  }
@@ -9,7 +9,7 @@ import IconChevronDown from "../../../_virtual/icon-chevron-down.mjs";
9
9
  import { useI18n } from "../../../i18n/index.mjs";
10
10
  import { useScreen } from "@opendesign-plus/composables";
11
11
  import { useTheme } from "../../../shared/theme.mjs";
12
- import { detectGitPlatform } from "./utils.mjs";
12
+ import { getGitId, getGitUrl, detectGitPlatform } from "./utils.mjs";
13
13
  const _hoisted_1 = { class: "o-sig-detail-member" };
14
14
  const _hoisted_2 = { class: "o-sig-detail-core o-sig-floor-title" };
15
15
  const _hoisted_3 = { class: "o-sig-detail-member-box" };
@@ -100,12 +100,6 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
100
100
  const rem = committerData.value.length % cols;
101
101
  return rem === 0 ? 0 : cols - rem;
102
102
  });
103
- const getPlatformIcon = (url) => {
104
- const platform = detectGitPlatform(url);
105
- if (platform === "gitee") return "gitee";
106
- if (platform === "atomgit") return "atomgit";
107
- return "";
108
- };
109
103
  return (_ctx, _cache) => {
110
104
  return openBlock(), createElementBlock("div", _hoisted_1, [
111
105
  createElementVNode("p", _hoisted_2, toDisplayString(unref(t)("sig.sigCore", {
@@ -120,33 +114,33 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
120
114
  }]),
121
115
  style: normalizeStyle({ "--o-sig-detail-member-columns": columnsPerRow.value })
122
116
  }, [
123
- (openBlock(true), createElementBlock(Fragment, null, renderList(maintainerData.value, (member, idx) => {
117
+ (openBlock(true), createElementBlock(Fragment, null, renderList(maintainerData.value, (member) => {
124
118
  return openBlock(), createElementBlock("div", {
125
- key: member.gitee_id,
119
+ key: unref(getGitId)(member),
126
120
  class: "o-sig-detail-member-info"
127
121
  }, [
128
122
  createElementVNode("div", {
129
123
  class: normalizeClass(["o-sig-detail-member-info-left", { "o-sig-detail-member-info-id": !member.name }])
130
124
  }, [
131
125
  createVNode(_sfc_main$1, {
132
- name: member.user_login,
126
+ name: unref(getGitId)(member),
133
127
  size: "medium",
134
128
  "custom-size": unref(leLaptop) ? 32 : 0
135
129
  }, null, 8, ["name", "custom-size"]),
136
130
  createElementVNode("div", _hoisted_5, [
137
- createElementVNode("div", _hoisted_6, toDisplayString(member.user_login), 1),
131
+ createElementVNode("div", _hoisted_6, toDisplayString(unref(getGitId)(member)), 1),
138
132
  createElementVNode("div", _hoisted_7, toDisplayString(member.name), 1)
139
133
  ])
140
134
  ], 2),
141
135
  createElementVNode("div", _hoisted_8, [
142
136
  createElementVNode("a", {
143
- href: member.user_homepage_url,
137
+ href: unref(getGitUrl)(member),
144
138
  target: "_blank",
145
139
  rel: "noopener noreferrer"
146
140
  }, [
147
141
  createVNode(unref(OIcon), null, {
148
142
  default: withCtx(() => [
149
- getPlatformIcon(member.user_homepage_url) === "gitee" ? (openBlock(), createBlock(unref(IconGitee), { key: 0 })) : getPlatformIcon(member.user_homepage_url) === "atomgit" ? (openBlock(), createBlock(unref(IconAtomGit), { key: 1 })) : createCommentVNode("", true)
143
+ unref(detectGitPlatform)(unref(getGitUrl)(member)) === "gitee" ? (openBlock(), createBlock(unref(IconGitee), { key: 0 })) : unref(detectGitPlatform)(unref(getGitUrl)(member)) === "atomgit" ? (openBlock(), createBlock(unref(IconAtomGit), { key: 1 })) : createCommentVNode("", true)
150
144
  ]),
151
145
  _: 2
152
146
  }, 1024)
@@ -198,31 +192,31 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
198
192
  }, [
199
193
  (openBlock(true), createElementBlock(Fragment, null, renderList(committerData.value, (member) => {
200
194
  return openBlock(), createElementBlock("div", {
201
- key: member.gitee_id,
195
+ key: unref(getGitId)(member),
202
196
  class: "o-sig-detail-member-info"
203
197
  }, [
204
198
  createElementVNode("div", {
205
199
  class: normalizeClass(["o-sig-detail-member-info-left", { "o-sig-detail-member-info-id": !member.name }])
206
200
  }, [
207
201
  createVNode(_sfc_main$1, {
208
- name: member.user_login,
202
+ name: unref(getGitId)(member),
209
203
  size: "medium",
210
204
  "custom-size": unref(leLaptop) ? 32 : 0
211
205
  }, null, 8, ["name", "custom-size"]),
212
206
  createElementVNode("div", _hoisted_13, [
213
- createElementVNode("div", _hoisted_14, toDisplayString(member.user_login), 1),
207
+ createElementVNode("div", _hoisted_14, toDisplayString(unref(getGitId)(member)), 1),
214
208
  createElementVNode("div", _hoisted_15, toDisplayString(member.name), 1)
215
209
  ])
216
210
  ], 2),
217
211
  createElementVNode("div", _hoisted_16, [
218
212
  createElementVNode("a", {
219
- href: member.user_homepage_url,
213
+ href: unref(getGitUrl)(member),
220
214
  target: "_blank",
221
215
  rel: "noopener noreferrer"
222
216
  }, [
223
217
  createVNode(unref(OIcon), null, {
224
218
  default: withCtx(() => [
225
- getPlatformIcon(member.user_homepage_url) === "gitee" ? (openBlock(), createBlock(unref(IconGitee), { key: 0 })) : getPlatformIcon(member.user_homepage_url) === "atomgit" ? (openBlock(), createBlock(unref(IconAtomGit), { key: 1 })) : createCommentVNode("", true)
219
+ unref(detectGitPlatform)(unref(getGitUrl)(member)) === "gitee" ? (openBlock(), createBlock(unref(IconGitee), { key: 0 })) : unref(detectGitPlatform)(unref(getGitUrl)(member)) === "atomgit" ? (openBlock(), createBlock(unref(IconAtomGit), { key: 1 })) : createCommentVNode("", true)
226
220
  ]),
227
221
  _: 2
228
222
  }, 1024)
@@ -6,6 +6,9 @@
6
6
  transform: rotate(-180deg);
7
7
  }
8
8
  }
9
+ .o-sig-detail-repo .o-link-normal {
10
+ --link-color: var(--o-color-primary1);
11
+ }
9
12
  .o-sig-detail-repo .o-sig-detail-repo-table {
10
13
  margin-top: 24px;
11
14
  --table-edge-padding: calc(var(--table-cell-padding) * 2);
@@ -17,6 +20,15 @@
17
20
  table-layout: fixed;
18
21
  width: 100%;
19
22
  }
23
+ .o-sig-detail-repo .o-sig-detail-repo-table .o-table-inner-table colgroup col:nth-child(1) {
24
+ width: 20%;
25
+ }
26
+ .o-sig-detail-repo .o-sig-detail-repo-table .o-table-inner-table colgroup col:nth-child(2) {
27
+ width: 40%;
28
+ }
29
+ .o-sig-detail-repo .o-sig-detail-repo-table .o-table-inner-table colgroup col:nth-child(3) {
30
+ width: 40%;
31
+ }
20
32
  @media (max-width: 840px) {
21
33
  .o-sig-detail-repo .o-sig-detail-repo-table {
22
34
  margin-top: 12px;
@@ -60,6 +72,9 @@
60
72
  display: block;
61
73
  word-break: break-all;
62
74
  }
75
+ .o-sig-detail-repo .o-sig-detail-repo-table .o-table-body-cell .o-link {
76
+ display: inline-block;
77
+ }
63
78
  .o-sig-detail-repo .o-sig-detail-pagination {
64
79
  margin-top: var(--grid-column-gutter);
65
80
  display: flex;
@@ -2,6 +2,7 @@ import { defineComponent, ref, computed, watch, openBlock, createElementBlock, c
2
2
  import { ODataTable, OLink, OPagination } from "@opensig/opendesign";
3
3
  import { useI18n } from "../../../i18n/index.mjs";
4
4
  import { useScreen } from "@opendesign-plus/composables";
5
+ import { getGitId, getGitUrl } from "./utils.mjs";
5
6
  const _hoisted_1 = {
6
7
  id: "repositories",
7
8
  class: "o-sig-detail-repo"
@@ -28,8 +29,8 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
28
29
  return props.repositories.filter((item) => {
29
30
  var _a, _b, _c, _d, _e;
30
31
  if (((_a = conditions.value.repo) == null ? void 0 : _a.length) && !conditions.value.repo.includes(item.repo)) return false;
31
- if (((_b = conditions.value.maintainers) == null ? void 0 : _b.length) && !((_c = item.maintainers) == null ? void 0 : _c.some((m) => conditions.value.maintainers.includes(m.user_login)))) return false;
32
- if (((_d = conditions.value.committers) == null ? void 0 : _d.length) && !((_e = item.committers) == null ? void 0 : _e.some((c) => conditions.value.committers.includes(c.user_login)))) return false;
32
+ if (((_b = conditions.value.maintainers) == null ? void 0 : _b.length) && !((_c = item.maintainers) == null ? void 0 : _c.some((m) => conditions.value.maintainers.includes(getGitId(m))))) return false;
33
+ if (((_d = conditions.value.committers) == null ? void 0 : _d.length) && !((_e = item.committers) == null ? void 0 : _e.some((c) => conditions.value.committers.includes(getGitId(c))))) return false;
33
34
  return true;
34
35
  });
35
36
  });
@@ -45,55 +46,58 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
45
46
  }
46
47
  return filteredData.value.slice(0, currentPage.value * pageSize.value);
47
48
  });
49
+ const columns = ref([]);
50
+ const handleColumns = () => {
51
+ const repos = props.repositories;
52
+ columns.value = [
53
+ {
54
+ key: "repo",
55
+ label: t("sig.repositoryName"),
56
+ filter: {
57
+ optionsFn: () => repos.map((item) => ({ label: item.repo, value: item.repo })),
58
+ multiple: false
59
+ }
60
+ },
61
+ {
62
+ key: "maintainers",
63
+ label: t("sig.maintainerEn"),
64
+ filter: {
65
+ optionsFn: () => uniqueLogins(repos, "maintainers"),
66
+ multiple: false
67
+ }
68
+ },
69
+ {
70
+ key: "committers",
71
+ label: t("sig.committer"),
72
+ filter: {
73
+ optionsFn: () => uniqueLogins(repos, "committers"),
74
+ multiple: false
75
+ }
76
+ }
77
+ ];
78
+ };
48
79
  watch(
49
80
  () => props.repositories,
50
81
  () => {
51
82
  conditions.value = {};
52
83
  currentPage.value = 1;
53
- }
84
+ handleColumns();
85
+ },
86
+ { deep: true, immediate: true }
54
87
  );
55
88
  const onConditionUpdate = (payload) => {
56
89
  if (payload) {
57
- conditions.value = { ...conditions.value, [payload.key]: payload.newVal };
58
90
  currentPage.value = 1;
91
+ conditions.value = { ...conditions.value, [payload.key]: payload.newVal };
59
92
  }
60
93
  };
61
94
  const uniqueLogins = (rows, field) => {
62
95
  const set = /* @__PURE__ */ new Set();
63
96
  rows.forEach(
64
- (item) => (item[field] || []).forEach((p) => p.user_login && set.add(p.user_login))
97
+ (item) => (item[field] || []).forEach((p) => getGitId(p) && set.add(getGitId(p)))
65
98
  );
66
99
  return [...set].map((v) => ({ label: v, value: v }));
67
100
  };
68
- const columns = computed(() => [
69
- {
70
- key: "repo",
71
- label: t("sig.repositoryName"),
72
- width: "20%",
73
- filter: {
74
- optionsFn: () => props.repositories.map((item) => ({ label: item.repo, value: item.repo })),
75
- multiple: false
76
- }
77
- },
78
- {
79
- key: "maintainers",
80
- label: t("sig.maintainerEn"),
81
- width: "40%",
82
- filter: {
83
- optionsFn: () => uniqueLogins(props.repositories, "maintainers"),
84
- multiple: false
85
- }
86
- },
87
- {
88
- key: "committers",
89
- label: t("sig.committer"),
90
- width: "40%",
91
- filter: {
92
- optionsFn: () => uniqueLogins(props.repositories, "committers"),
93
- multiple: false
94
- }
95
- }
96
- ]);
97
101
  return (_ctx, _cache) => {
98
102
  return openBlock(), createElementBlock("div", _hoisted_1, [
99
103
  createElementVNode("h2", _hoisted_2, toDisplayString(unref(t)("sig.repoList", { count: filteredData.value.length })), 1),
@@ -104,13 +108,14 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
104
108
  border: "row-frame",
105
109
  data: repositoryList.value,
106
110
  "row-key": "repo",
111
+ "min-table-width": 600,
107
112
  onConditionUpdate
108
113
  }, {
109
114
  td_repo: withCtx(({ row }) => [
110
115
  createVNode(unref(OLink), {
111
116
  target: "_blank",
112
117
  rel: "noopener noreferrer",
113
- href: `https://atomgit.com/${row.repo}`
118
+ href: unref(getGitUrl)(row.repo)
114
119
  }, {
115
120
  default: withCtx(() => [
116
121
  createTextVNode(toDisplayString(row.repo), 1)
@@ -121,13 +126,13 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
121
126
  td_maintainers: withCtx(({ row }) => [
122
127
  (openBlock(true), createElementBlock(Fragment, null, renderList(row.maintainers, (item, index) => {
123
128
  return openBlock(), createBlock(unref(OLink), {
124
- key: item.user_login,
125
129
  target: "_blank",
130
+ key: index,
126
131
  rel: "noopener noreferrer",
127
- href: item.user_homepage_url
132
+ href: unref(getGitUrl)(item)
128
133
  }, {
129
134
  default: withCtx(() => [
130
- createTextVNode(toDisplayString(item.user_login) + " ", 1),
135
+ createTextVNode(toDisplayString(unref(getGitId)(item)) + " ", 1),
131
136
  withDirectives(createElementVNode("span", null, toDisplayString(unref(locale) === "zh" ? "、" : ", "), 513), [
132
137
  [vShow, index !== row.maintainers.length - 1]
133
138
  ])
@@ -141,13 +146,13 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
141
146
  return [
142
147
  ((_a = row.committers) == null ? void 0 : _a.length) ? (openBlock(true), createElementBlock(Fragment, { key: 0 }, renderList(row.committers, (item, index) => {
143
148
  return openBlock(), createBlock(unref(OLink), {
144
- key: item.user_login,
149
+ key: index,
145
150
  target: "_blank",
146
151
  rel: "noopener noreferrer",
147
- href: item.user_homepage_url
152
+ href: unref(getGitUrl)(item)
148
153
  }, {
149
154
  default: withCtx(() => [
150
- createTextVNode(toDisplayString(item.user_login) + " ", 1),
155
+ createTextVNode(toDisplayString(unref(getGitId)(item)) + " ", 1),
151
156
  withDirectives(createElementVNode("span", null, toDisplayString(unref(locale) === "zh" ? "、" : ", "), 513), [
152
157
  [vShow, index !== row.committers.length - 1]
153
158
  ])
@@ -6,6 +6,11 @@
6
6
  transform: rotate(-180deg);
7
7
  }
8
8
  }
9
+ .o-sig-detail-contribute .o-input {
10
+ --_box-bg-color: var(--o-color-fill2);
11
+ --_box-bg-color-hover: var(--o-color-fill2);
12
+ --_box-bg-color-focus: var(--o-color-fill2);
13
+ }
9
14
  .o-sig-detail-contribute .o-sig-detail-contribute-title {
10
15
  font-weight: 600;
11
16
  font-size: 20px;
@@ -194,13 +199,31 @@
194
199
  .o-sig-detail-contribute .o-table {
195
200
  margin-top: var(--o-gap-3);
196
201
  }
202
+ .o-sig-detail-contribute .o-table .o-scroller-container {
203
+ min-width: 0;
204
+ }
197
205
  .o-sig-detail-contribute .o-table table {
198
206
  display: table;
199
207
  width: 100%;
208
+ table-layout: fixed;
209
+ }
210
+ .o-sig-detail-contribute .o-table table colgroup col:nth-child(1) {
211
+ width: 80px;
212
+ }
213
+ .o-sig-detail-contribute .o-table table colgroup col:nth-child(2) {
214
+ width: 180px;
215
+ }
216
+ @media (max-width: 840px) {
217
+ .o-sig-detail-contribute .o-table table colgroup col:nth-child(2) {
218
+ width: 120px;
219
+ }
200
220
  }
201
221
  .o-sig-detail-contribute .o-table thead::after {
202
222
  display: none;
203
223
  }
224
+ .o-sig-detail-contribute .o-table .o-table-cell__inner-content {
225
+ word-break: keep-all;
226
+ }
204
227
  .o-sig-detail-contribute .user-id-link {
205
228
  display: flex;
206
229
  flex-wrap: nowrap;
@@ -222,6 +245,7 @@
222
245
  min-width: 0;
223
246
  }
224
247
  .o-sig-detail-contribute .o-sig-detail-contribute-cell {
248
+ width: 100%;
225
249
  display: flex;
226
250
  align-items: center;
227
251
  flex-wrap: nowrap;
@@ -1,10 +1,11 @@
1
1
  import { defineComponent, computed, ref, onMounted, openBlock, createElementBlock, createElementVNode, toDisplayString, unref, createVNode, withCtx, normalizeClass, Fragment, renderList, createTextVNode, createBlock, createCommentVNode, normalizeStyle } from "vue";
2
- import { OCard, OForm, OFormItem, ORadioGroup, ORadio, OToggle, ODateRangePicker, OInput, OIcon, OIconSearch, OCheckboxGroup, OCheckbox, OTable, OProgress, OLink, OPagination } from "@opensig/opendesign";
2
+ import { OCard, OForm, OFormItem, ORadioGroup, ORadio, OToggle, ODateRangePicker, OInput, OIcon, OIconSearch, OCheckboxGroup, OCheckbox, ODataTable, OProgress, OLink, OPagination } from "@opensig/opendesign";
3
3
  import { refDebounced } from "@vueuse/core";
4
4
  import { useI18n } from "../../../i18n/index.mjs";
5
5
  import { useScreen } from "@opendesign-plus/composables";
6
6
  import _sfc_main$1 from "../../common/TooltipText.vue.mjs";
7
7
  import '../../common/TooltipText.css';
8
+ import { getGitUrl, getGitId } from "./utils.mjs";
8
9
  const _hoisted_1 = { class: "o-sig-detail-contribute" };
9
10
  const _hoisted_2 = { class: "o-sig-floor-title" };
10
11
  const _hoisted_3 = { class: "o-sig-detail-contribute-title" };
@@ -79,8 +80,8 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
79
80
  });
80
81
  const columns = computed(() => {
81
82
  return [
82
- { key: "number", label: t("sig.NUMBER"), style: { width: "60px" } },
83
- { key: "user_login", label: "GitCode ID", style: { width: isPhone.value ? "100px" : "180px" } },
83
+ { key: "idx", label: t("sig.NUMBER") },
84
+ { key: "user_login", label: "GitCode ID" },
84
85
  { key: "contribute", label: typeLabel.value }
85
86
  ];
86
87
  });
@@ -256,14 +257,15 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
256
257
  _: 1
257
258
  }, 8, ["modelValue"])
258
259
  ]),
259
- createVNode(unref(OTable), {
260
+ createVNode(unref(ODataTable), {
260
261
  data: displayContributionData.value,
261
262
  columns: columns.value,
263
+ size: "small",
262
264
  border: "row-frame",
263
- small: ""
265
+ "min-table-width": 600
264
266
  }, {
265
- td_number: withCtx(({ rowIndex }) => [
266
- createElementVNode("span", null, toDisplayString(rowIndex + 1), 1)
267
+ td_idx: withCtx(({ index }) => [
268
+ createElementVNode("span", null, toDisplayString(index + 1), 1)
267
269
  ]),
268
270
  td_user_login: withCtx(({ row }) => [
269
271
  createVNode(unref(OLink), {
@@ -271,7 +273,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
271
273
  color: "primary",
272
274
  target: "_blank",
273
275
  rel: "noopener noreferrer",
274
- href: row.userLink
276
+ href: unref(getGitUrl)(row)
275
277
  }, {
276
278
  icon: withCtx(() => [
277
279
  createElementVNode("div", {
@@ -282,7 +284,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
282
284
  default: withCtx(() => [
283
285
  createVNode(_sfc_main$1, null, {
284
286
  default: withCtx(() => [
285
- createTextVNode(toDisplayString(row.user_login), 1)
287
+ createTextVNode(toDisplayString(unref(getGitId)(row)), 1)
286
288
  ]),
287
289
  _: 2
288
290
  }, 1024)
@@ -306,7 +308,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
306
308
  ]),
307
309
  _: 1
308
310
  }),
309
- filterData.value.length ? (openBlock(), createBlock(unref(OPagination), {
311
+ pageSize.value < filterData.value.length ? (openBlock(), createBlock(unref(OPagination), {
310
312
  key: 0,
311
313
  total: filterData.value.length,
312
314
  "page-sizes": pageSizes,