@blueking/bk-user-selector 0.1.0 → 0.1.1-beta.2

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.
package/vue2/vue2.css CHANGED
@@ -810,71 +810,71 @@ optgroup {
810
810
  color: #c4c6cc;
811
811
  cursor: not-allowed;
812
812
  background-color: #f0f1f5;
813
- }.dropdown-content[data-v-024fc663] {
813
+ }.dropdown-content[data-v-d5a338f0] {
814
814
  min-height: 40px;
815
815
  max-height: 300px;
816
816
  padding: 5px 0;
817
817
  overflow-y: auto;
818
818
  }
819
- .dropdown-content .no-data[data-v-024fc663] {
819
+ .dropdown-content .no-data[data-v-d5a338f0] {
820
820
  padding: 10px;
821
821
  color: #979ba5;
822
822
  text-align: center;
823
823
  }
824
- .dropdown-content .user-group .group-header[data-v-024fc663] {
824
+ .dropdown-content .user-group .group-header[data-v-d5a338f0] {
825
825
  display: flex;
826
826
  align-items: center;
827
827
  padding: 8px 12px;
828
828
  color: #979ba5;
829
829
  }
830
- .dropdown-content .user-group .group-header .group-count[data-v-024fc663] {
830
+ .dropdown-content .user-group .group-header .group-count[data-v-d5a338f0] {
831
831
  margin-left: 4px;
832
832
  }
833
- .dropdown-content .user-option[data-v-024fc663] {
833
+ .dropdown-content .user-option[data-v-d5a338f0] {
834
834
  display: flex;
835
835
  align-items: center;
836
836
  height: 32px;
837
837
  padding: 8px 12px;
838
838
  cursor: pointer;
839
839
  }
840
- .dropdown-content .user-option[data-v-024fc663]:hover {
840
+ .dropdown-content .user-option[data-v-d5a338f0]:hover {
841
841
  background-color: #f5f7fa;
842
- }.user-tag[data-v-48ac8fc1] {
842
+ }.user-tag[data-v-1f2e0737] {
843
843
  margin-right: 4px;
844
844
  margin-left: 0;
845
845
  }
846
- .user-tag.draggable[data-v-48ac8fc1] {
846
+ .user-tag.draggable[data-v-1f2e0737] {
847
847
  cursor: move;
848
848
  }
849
- .user-tag.active[data-v-48ac8fc1] {
849
+ .user-tag.active[data-v-1f2e0737] {
850
850
  background-color: #e1ecff;
851
851
  border-color: #3a84ff;
852
852
  }
853
- .user-tag.is-custom[data-v-48ac8fc1] {
853
+ .user-tag.is-custom[data-v-1f2e0737] {
854
854
  color: #ea3636;
855
855
  background-color: #feebea;
856
856
  border-color: rgba(234, 53, 54, 0.3019607843);
857
857
  }
858
- .user-tag.is-custom[data-v-48ac8fc1]:hover {
858
+ .user-tag.is-custom[data-v-1f2e0737]:hover {
859
859
  background-color: #fedddc;
860
860
  }
861
- .user-tag .tag-content .user-name[data-v-48ac8fc1] {
861
+ .user-tag .tag-content .user-name[data-v-1f2e0737] {
862
862
  overflow: hidden;
863
863
  text-overflow: ellipsis;
864
864
  font-size: 12px;
865
865
  white-space: nowrap;
866
- }.bk-user-selector[data-v-65e61c1c] {
866
+ }.bk-user-selector[data-v-9975c7e1] {
867
867
  position: relative;
868
868
  width: 100%;
869
869
  height: 32px;
870
870
  font-size: 12px;
871
871
  }
872
- .bk-user-selector.is-disabled[data-v-65e61c1c] {
872
+ .bk-user-selector.is-disabled[data-v-9975c7e1] {
873
873
  pointer-events: none;
874
874
  cursor: not-allowed;
875
875
  background-color: #dcdee5;
876
876
  }
877
- .bk-user-selector .tags-container[data-v-65e61c1c] {
877
+ .bk-user-selector .tags-container[data-v-9975c7e1] {
878
878
  position: relative;
879
879
  min-height: 32px;
880
880
  padding: 1px 10px 1px 8px;
@@ -883,42 +883,42 @@ optgroup {
883
883
  border-radius: 2px;
884
884
  transition: all 0.2s ease;
885
885
  }
886
- .bk-user-selector .tags-container.focused[data-v-65e61c1c] {
886
+ .bk-user-selector .tags-container.focused[data-v-9975c7e1] {
887
887
  border-color: #3a84ff;
888
888
  box-shadow: 0 0 0 2px rgba(58, 132, 255, 0.1);
889
889
  }
890
- .bk-user-selector .tags-container.tags-container-collapsed[data-v-65e61c1c] {
890
+ .bk-user-selector .tags-container.tags-container-collapsed[data-v-9975c7e1] {
891
891
  display: flex;
892
892
  flex-wrap: wrap;
893
893
  align-items: center;
894
894
  }
895
- .bk-user-selector .tag-list[data-v-65e61c1c] {
895
+ .bk-user-selector .tag-list[data-v-9975c7e1] {
896
896
  display: flex;
897
897
  flex-wrap: wrap;
898
898
  align-items: center;
899
899
  }
900
- .bk-user-selector .tag-wrapper[data-v-65e61c1c] {
900
+ .bk-user-selector .tag-wrapper[data-v-9975c7e1] {
901
901
  display: inline-flex;
902
902
  align-items: center;
903
903
  max-width: 100%;
904
904
  }
905
- .bk-user-selector .search-input[data-v-65e61c1c] {
905
+ .bk-user-selector .search-input[data-v-9975c7e1] {
906
906
  min-width: 20px;
907
907
  height: 28px;
908
908
  outline: none;
909
909
  background: transparent;
910
910
  border: none;
911
911
  }
912
- .bk-user-selector .search-input[data-v-65e61c1c]::placeholder {
912
+ .bk-user-selector .search-input[data-v-9975c7e1]::placeholder {
913
913
  color: #c4c6cc;
914
914
  }
915
- .bk-user-selector .search-input.input-inline[data-v-65e61c1c] {
915
+ .bk-user-selector .search-input.input-inline[data-v-9975c7e1] {
916
916
  min-width: 20px;
917
917
  }
918
- .bk-user-selector .search-input.input-last[data-v-65e61c1c], .bk-user-selector .search-input.search-input-collapsed[data-v-65e61c1c] {
918
+ .bk-user-selector .search-input.input-last[data-v-9975c7e1], .bk-user-selector .search-input.search-input-collapsed[data-v-9975c7e1] {
919
919
  flex: 1;
920
920
  }
921
- .hidden-users[data-v-65e61c1c] {
921
+ .hidden-users[data-v-9975c7e1] {
922
922
  padding: 6px 10px;
923
923
  }.bk-user-selector-popover {
924
924
  padding: 0 !important;
@@ -2908,7 +2908,7 @@ const searchUsers = async (params) => {
2908
2908
  };
2909
2909
  const lookupUsers = async (params) => {
2910
2910
  const { apiBaseUrl, tenantId, exactSearchKey = "bk_username", usersList = [], enableMultiTenantMode = true } = params;
2911
- const users = usersList.filter(Boolean).map((user) => user.trim());
2911
+ const users = usersList.filter(Boolean).map((user) => typeof user === "string" ? user.trim() : String(user).trim());
2912
2912
  if (!enableMultiTenantMode) {
2913
2913
  try {
2914
2914
  const userList = await getUserList(apiBaseUrl, { userIds: users });
@@ -2946,12 +2946,14 @@ const formatUsers = (users, enableMultiTenantMode = true) => {
2946
2946
  ...user,
2947
2947
  id: user.username,
2948
2948
  name: `${user.display_name}(${user.username})`,
2949
+ type: user.data_source_type,
2949
2950
  tenantId: user.owner_tenant_id
2950
2951
  }));
2951
2952
  }
2952
2953
  return users.map((user) => ({
2953
2954
  id: user.bk_username,
2954
2955
  name: user.display_name,
2956
+ type: user.data_source_type,
2955
2957
  tenantId: user.owner_tenant_id,
2956
2958
  ...user
2957
2959
  }));
@@ -3134,9 +3136,11 @@ const getPath = (obj, path, variables) => {
3134
3136
  }
3135
3137
  if (variables) {
3136
3138
  target = target[pathStack[i]];
3137
- Object.keys(variables).forEach((key) => {
3138
- target = target.replace(`{${key}}`, variables[key]);
3139
- });
3139
+ if (typeof target === "string") {
3140
+ Object.keys(variables).forEach((key) => {
3141
+ target = target.replace(`{${key}}`, variables[key]);
3142
+ });
3143
+ }
3140
3144
  } else {
3141
3145
  target = target[pathStack[i]];
3142
3146
  }
@@ -3368,10 +3372,12 @@ const useUserSearch = (apiBaseUrl, tenantId, enableMultiTenantMode = true) => {
3368
3372
  const performSearch = async (keyword) => {
3369
3373
  if (!(keyword == null ? void 0 : keyword.length)) {
3370
3374
  searchResults.value = [];
3375
+ loading.value = false;
3371
3376
  return;
3372
3377
  }
3373
3378
  if (enableMultiTenantMode && (!apiBaseUrl || !tenantId)) {
3374
3379
  console.warn("执行用户搜索需要提供有效的API基础URL和租户ID");
3380
+ loading.value = false;
3375
3381
  return;
3376
3382
  }
3377
3383
  loading.value = true;
@@ -3494,6 +3500,9 @@ const _export_sfc = (sfc, props) => {
3494
3500
  return target;
3495
3501
  };
3496
3502
  const MeTag = /* @__PURE__ */ _export_sfc(_sfc_main$3, [["__scopeId", "data-v-4f251ce1"]]);
3503
+ const UserGroupAvatar = "data:image/svg+xml,%3csvg%20viewBox='0%200%201024%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20style='fill:%20%23A3C5FD;'%3e%3cpath%20fill-rule='evenodd'%20d='M405.7858816%20162.66256256C416.4461344%20160.6535248%20439.8986944%20159.44810208%20457.3815104%20160.25171712%20484.2453504%20161.05533248%20494.052784%20163.4661776%20516.226112%20174.7167888%20567.8217376%20200.43247136%20597.670448%20242.22045568%20606.6250624%20301.28616416%20617.711728%20374.415136%20593.4063488%20443.5260352%20535.8409792%20500.180896%20509.8299584%20525.8965792%20505.565856%20537.5489984%20514.0940608%20557.237568%20521.3430336%20572.9080608%20546.0748224%20586.5695168%20629.2248%20620.3213504%20691.054272%20645.2334208%20760.985536%20687.4232096%20767.8080992%20703.8973216%20774.6306624%20720.3714304%20784.8645056%20752.114224%20791.6870688%20777.4280992%20799.7888608%20807.1618592%20793.3927072%20818.8142784%20761.8383584%20832.4757344%20720.4765728%20850.155264%20669.3073536%20857.3878016%20546.9276416%20862.2094912%20392.9935776%20868.2366048%20227.12002944%20858.5932224%20162.30568672%20840.1100768%20134.5890272%20832.4757344%20108.15159776%20815.1980096%20100.47621504%20799.5275136%2093.6536528%20786.2678656%2094.08006304%20784.2588288%20105.59313696%20746.4889184%20116.67980096%20709.924432%20119.23826176%20705.5045504%20141.41158944%20685.4141728%20143.84821888%20683.2001312%20146.05397248%20681.2036448%20148.2232096%20679.3252416L152.13038144%20676.0501632C159.5946992%20670.0236288%20167.98497088%20664.6722176%20184.94031712%20656.0863296L191.29263904%20652.915344C215.97973152%20640.7492736%20256.51622304%20622.3959904%20329.458464%20589.3821696%20359.7335872%20575.3189056%20371.2466592%20563.6664896%20375.084352%20542.772496%20377.2164032%20530.316464%20374.6579424%20526.7001952%20345.2356416%20496.9664352%20295.34565344%20446.338688%20274.02514592%20396.9163584%20273.59873568%20331.0199232%20273.59873568%20291.24097568%20282.12693888%20265.52529312%20307.71154784%20228.15719168%20332.8697472%20191.19089792%20365.703328%20169.49329056%20405.7858816%20162.66256256ZM668.7713728%20226.60405184C756.683056%20211.50282816%20820.4190272%20263.09867616%20827.0124032%20354.9644544%20831.8475456%20416.6277856%20815.1443264%20461.931456%20770.3093664%20510.1714752%20752.287472%20529.4674848%20747.891888%20536.5986176%20748.3314464%20548.344016%20748.7710048%20555.8946272%20751.4083552%20565.123152%20754.485264%20568.8984576%20757.5621728%20572.2542848%20788.331264%20588.1944672%20823.0563776%20604.1346464%20944.3745024%20659.92528%20966.791984%20682.996592%20958.4403712%20744.6599232%20954.923904%20771.9260224%20956.6821376%20771.0870656%20890.308816%20787.0272448%20867.4517792%20792.8999456%20845.0343008%20798.3531648%20841.0782752%20799.6116%20835.3640128%20801.2895136%20833.1662208%20797.9336864%20830.5288704%20781.5740256%20824.3750528%20739.6261824%20812.0674176%20710.6821696%20790.0894976%20687.6108576%20752.287472%20647.3409248%20703.9360448%20619.6553504%20624.3759712%20593.6476864%20597.5629088%20584.4191616%20560.64%20550.8608864%20560.64%20534.920704%20560.64%20527.7895712%20569.8707264%20514.7857408%20589.6508544%20494.6507744%20620.859504%20461.931456%20639.7605152%20429.631616%20648.5516832%20394.8149056%20655.5846208%20366.7098496%20652.0681504%20283.23364096%20642.837424%20254.7091072%20635.3649312%20231.63779328%20634.4858144%20232.47675008%20668.7713728%20226.60405184Z'%3e%3c/path%3e%3c/svg%3e";
3504
+ const UserAvatar = "data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'?%3e%3csvg%20width='32px'%20height='32px'%20viewBox='0%200%2032%2032'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3e%3ctitle%3eIcon/用户%3c/title%3e%3cg%20id='Icon/用户'%20stroke='none'%20stroke-width='1'%20fill='none'%20fill-rule='evenodd'%3e%3cg%20id='user-(1)'%20transform='translate(3,%202)'%20fill='%23A3C5FD'%20fill-rule='nonzero'%3e%3cpath%20d='M13.0077612,27.9989067%20C10.3002732,27.9989067%207.59285518,28.0018792%204.88515705,27.997455%20C3.95018807,27.9959342%203.05044678,27.8282323%202.22816433,27.3628696%20C0.998627601,26.6672451%200.29953695,25.6114692%200.0864200465,24.2387462%20C-0.0656962495,23.259079%200.0147040645,22.4675755%200.0874005263,21.4879775%20C0.187970957,20.13461%200.423078914,19.3321844%200.863249688,18.0430358%20C1.22365046,16.9873982%201.73014453,16.0067633%202.49702917,15.175719%20C3.42254341,14.1726178%204.6014447,13.7297906%205.9255989,13.6440041%20C6.33292322,13.6073668%206.66741099,13.712025%206.9979768,13.9263185%20C7.58886318,14.3094892%208.17393665,14.7060014%208.79220674,15.0421658%20C10.1097776,15.758321%2011.5447274,16.1099698%2013.0616182,16.0930337%20C14.6806203,16.0750607%2016.2142496,15.63963%2017.592821,14.8169502%20C18.0555431,14.5407189%2018.5150436,14.256538%2018.9569652,13.9491996%20C19.3610679,13.6681294%2019.7808585,13.5749462%2020.274326,13.6337733%20C21.462472,13.7340074%2022.3872158,14.1103345%2023.2340106,14.8851094%20C23.902636,15.496952%2024.3685096,16.2520257%2024.7518119,17.0611566%20C25.272453,18.1598604%2025.5462904,18.7976948%2025.7441396,19.9861253%20C25.9499728,21.2233595%2026.0256808,22.2792045%2025.9924842,23.5308171%20C25.9627193,24.6543374%2025.6405577,25.6840525%2024.8535729,26.5307194%20C24.1686994,27.2671979%2023.3129402,27.7090574%2022.3211027,27.8808379%20C21.9232331,27.9495501%2021.5154185,27.9922014%2021.1120162,27.9935148%20C18.4104811,28.0036073%2015.7090862,27.9989067%2013.0077612,27.9989067%20L13.0077612,27.9989067%20Z%20M5.91775495,6.98479749%20C5.84814002,3.25685016%209.08684454,-0.00255470186%2013.0162355,1.5025268e-06%20C16.9117994,0.00256071584%2020.1304739,3.23452217%2020.1095656,7.04113598%20C20.0884528,10.8082092%2016.8998935,14.015354%2013.0058002,14.0149393%20C9.10134181,14.0145245%205.83322254,10.7695672%205.91775495,6.98479749%20Z'%20id='形状'%3e%3c/path%3e%3c/g%3e%3c/g%3e%3c/svg%3e";
3505
+ const VirtualAvatar = "data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'?%3e%3csvg%20width='32px'%20height='32px'%20viewBox='0%200%2032%2032'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3e%3ctitle%3eIcon/虚拟icon%3c/title%3e%3cg%20id='Icon/虚拟icon'%20stroke='none'%20stroke-width='1'%20fill='none'%20fill-rule='evenodd'%3e%3cpath%20d='M27.4705882,3%20C28.315259,3%2029,3.68474098%2029,4.52941178%20L29,22.4623054%20C29,23.3069762%2028.315259,23.9917172%2027.4705882,23.9917172%20L20.5882353,23.9917172%20L20.5882353,27.0244081%20L24.0294118,27.0244081%20C24.2405794,27.0244081%2024.4117647,27.1955933%2024.4117647,27.406761%20L24.4117647,28.617647%20C24.4117647,28.8288148%2024.2405795,29%2024.0294118,29%20L7.97058824,29%20C7.75942054,29%207.58823529,28.8288148%207.58823529,28.617647%20L7.58823529,27.406761%20C7.58823531,27.1955933%207.75942055,27.0244081%207.97058824,27.0244081%20L11.4117647,27.0244081%20L11.4117647,23.9917172%20L4.52941178,23.9917172%20C3.68474098,23.9917172%203,23.3069762%203,22.4623054%20L3,4.52941178%20C3,3.68474098%203.68474098,3%204.52941178,3%20L27.4705882,3%20Z%20M19,24%20L13,24%20L13,27%20L19,27%20L19,24%20Z%20M23.4117647,7%20L8.58823529,7%20C8.03595054,7%207.58823529,7.44771525%207.58823529,8%20L7.58823529,19%20C7.58823529,19.5522847%208.03595054,20%208.58823529,20%20L23.4117647,20%20C23.9640495,20%2024.4117647,19.5522847%2024.4117647,19%20L24.4117647,8%20C24.4117647,7.44771525%2023.9640495,7%2023.4117647,7%20Z%20M12,10%20C12.5522847,10%2013,10.4477153%2013,11%20L13,13%20C13,13.5522847%2012.5522847,14%2012,14%20C11.4477153,14%2011,13.5522847%2011,13%20L11,11%20C11,10.4477153%2011.4477153,10%2012,10%20Z%20M20,10%20C20.5522847,10%2021,10.4477153%2021,11%20L21,13%20C21,13.5522847%2020.5522847,14%2020,14%20C19.4477153,14%2019,13.5522847%2019,13%20L19,11%20C19,10.4477153%2019.4477153,10%2020,10%20Z%20M26,5%20C25.4477153,5%2025,5.44771525%2025,6%20C25,6.55228475%2025.4477153,7%2026,7%20C26.5522847,7%2027,6.55228475%2027,6%20C27,5.44771525%2026.5522847,5%2026,5%20Z'%20id='蒙版'%20fill='%23A3C5FD'%20fill-rule='nonzero'%3e%3c/path%3e%3c/g%3e%3c/svg%3e";
3497
3506
  const UserRender = defineComponent({
3498
3507
  name: "UserRender",
3499
3508
  props: {
@@ -3512,23 +3521,63 @@ const UserRender = defineComponent({
3512
3521
  render: {
3513
3522
  type: Function,
3514
3523
  required: false
3524
+ },
3525
+ hasAvatar: {
3526
+ type: Boolean,
3527
+ default: false
3528
+ },
3529
+ avatarBaseUrl: {
3530
+ type: String,
3531
+ default: ""
3515
3532
  }
3516
3533
  },
3517
3534
  setup(props) {
3535
+ const getAvatarUrl = (user) => {
3536
+ if (user.type === "virtual") {
3537
+ return VirtualAvatar;
3538
+ }
3539
+ if (user.type === "userGroup") {
3540
+ return UserGroupAvatar;
3541
+ }
3542
+ if (!props.avatarBaseUrl) {
3543
+ return UserAvatar;
3544
+ }
3545
+ const loginName = user.login_name || user.bk_username || user.id;
3546
+ return `${props.avatarBaseUrl}${loginName}.png?default_when_absent=true`;
3547
+ };
3518
3548
  const defaultRender = (h2, props2) => {
3519
- return h2("div", [
3520
- h2("span", props2.user.name),
3521
- props2.user.tenantId !== props2.tenantId && props2.user.tenantId ? h2(
3522
- "span",
3523
- {
3549
+ return h2(
3550
+ "div",
3551
+ {
3552
+ style: {
3553
+ display: "flex",
3554
+ alignItems: "center"
3555
+ }
3556
+ },
3557
+ [
3558
+ props2.hasAvatar ? h2("img", {
3559
+ src: getAvatarUrl(props2.user),
3524
3560
  style: {
3525
- color: "#f59500",
3526
- marginLeft: "4px"
3561
+ width: "20px",
3562
+ height: "20px",
3563
+ borderRadius: "50%",
3564
+ marginRight: "6px",
3565
+ flexShrink: 0
3527
3566
  }
3528
- },
3529
- `@${props2.tenants[props2.user.tenantId] || props2.user.tenantId}`
3530
- ) : null
3531
- ]);
3567
+ }) : null,
3568
+ h2("span", props2.user.name),
3569
+ props2.user.tenantId !== props2.tenantId && props2.user.tenantId ? h2(
3570
+ "span",
3571
+ {
3572
+ style: {
3573
+ color: "#f59500",
3574
+ marginLeft: "4px"
3575
+ }
3576
+ },
3577
+ `@${props2.tenants[props2.user.tenantId] || props2.user.tenantId}`
3578
+ ) : null
3579
+ ]
3580
+ );
3532
3581
  };
3533
3582
  return () => {
3534
3583
  try {
@@ -3553,8 +3602,10 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
3553
3602
  },
3554
3603
  __name: "selection-popover",
3555
3604
  props: {
3605
+ avatarBaseUrl: { default: "" },
3556
3606
  containerWidth: { default: "auto" },
3557
3607
  emptyText: { default: "" },
3608
+ hasAvatar: { type: Boolean, default: false },
3558
3609
  isShow: { type: Boolean, default: false },
3559
3610
  loading: { type: Boolean, default: false },
3560
3611
  options: { default: () => [] },
@@ -3680,11 +3731,13 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
3680
3731
  }, ["prevent"]))
3681
3732
  }, [
3682
3733
  createVNode(unref(UserRender), {
3734
+ "avatar-base-url": _ctx.avatarBaseUrl,
3735
+ "has-avatar": _ctx.hasAvatar,
3683
3736
  render: _ctx.renderListItem,
3684
3737
  "tenant-id": _ctx.tenantId,
3685
3738
  tenants: _ctx.tenants,
3686
3739
  user
3687
- }, null, 8, ["render", "tenant-id", "tenants", "user"])
3740
+ }, null, 8, ["avatar-base-url", "has-avatar", "render", "tenant-id", "tenants", "user"])
3688
3741
  ], 40, _hoisted_4);
3689
3742
  }),
3690
3743
  128
@@ -3724,7 +3777,7 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
3724
3777
  };
3725
3778
  }
3726
3779
  });
3727
- const SelectionPopover = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["__scopeId", "data-v-024fc663"]]);
3780
+ const SelectionPopover = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["__scopeId", "data-v-d5a338f0"]]);
3728
3781
  const _sfc_main$1 = /* @__PURE__ */ defineComponent({
3729
3782
  ...{
3730
3783
  name: "UserTag"
@@ -3732,8 +3785,10 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
3732
3785
  __name: "user-tag",
3733
3786
  props: {
3734
3787
  active: { type: Boolean },
3788
+ avatarBaseUrl: {},
3735
3789
  currentTenantId: {},
3736
3790
  draggable: { type: Boolean },
3791
+ hasAvatar: { type: Boolean },
3737
3792
  renderTag: { type: Function },
3738
3793
  showTenant: { type: Boolean },
3739
3794
  tenants: {},
@@ -3758,11 +3813,13 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
3758
3813
  }, {
3759
3814
  default: withCtx(() => [
3760
3815
  createVNode(unref(UserRender), {
3816
+ "avatar-base-url": _ctx.avatarBaseUrl,
3817
+ "has-avatar": _ctx.hasAvatar,
3761
3818
  render: _ctx.renderTag,
3762
3819
  "tenant-id": _ctx.currentTenantId,
3763
3820
  tenants: _ctx.tenants,
3764
3821
  user: _ctx.user
3765
- }, null, 8, ["render", "tenant-id", "tenants", "user"])
3822
+ }, null, 8, ["avatar-base-url", "has-avatar", "render", "tenant-id", "tenants", "user"])
3766
3823
  ]),
3767
3824
  _: 1
3768
3825
  /* STABLE */
@@ -3770,7 +3827,7 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
3770
3827
  };
3771
3828
  }
3772
3829
  });
3773
- const UserTag = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["__scopeId", "data-v-48ac8fc1"]]);
3830
+ const UserTag = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["__scopeId", "data-v-1f2e0737"]]);
3774
3831
  const _hoisted_1 = ["placeholder"];
3775
3832
  const _hoisted_2 = { class: "hidden-users" };
3776
3833
  const _hoisted_3 = ["placeholder"];
@@ -3786,6 +3843,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
3786
3843
  multiple: { type: Boolean, default: false },
3787
3844
  allowCreate: { type: Boolean, default: false },
3788
3845
  apiBaseUrl: { default: "" },
3846
+ avatarBaseUrl: { default: "" },
3789
3847
  currentUserId: { default: "" },
3790
3848
  disabled: { type: Boolean, default: false },
3791
3849
  emptyText: { default: "" },
@@ -3793,6 +3851,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
3793
3851
  exactSearchKey: { default: DEFAULT_EXACT_SEARCH_KEY },
3794
3852
  excludeUserIds: { default: () => [] },
3795
3853
  freePaste: { type: Boolean, default: false },
3854
+ hasAvatar: { type: Boolean, default: false },
3796
3855
  placeholder: { default: "" },
3797
3856
  renderListItem: {},
3798
3857
  renderTag: {},
@@ -3855,7 +3914,9 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
3855
3914
  () => isMaxCountReached.value || !!props.currentUserId && selectedUsers.value.some((user) => user[props.exactSearchKey] === props.currentUserId)
3856
3915
  );
3857
3916
  const userTagCommonProps = computed(() => ({
3917
+ avatarBaseUrl: props.avatarBaseUrl,
3858
3918
  currentTenantId: props.tenantId,
3919
+ hasAvatar: props.hasAvatar,
3859
3920
  renderTag: props.renderTag,
3860
3921
  tenants
3861
3922
  }));
@@ -4160,8 +4221,10 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
4160
4221
  [
4161
4222
  createCommentVNode(" 下拉选项列表 "),
4162
4223
  createVNode(SelectionPopover, {
4224
+ "avatar-base-url": _ctx.avatarBaseUrl,
4163
4225
  "container-width": containerRef.value ? containerRef.value.offsetWidth : "auto",
4164
4226
  "empty-text": computedEmptyText.value,
4227
+ "has-avatar": _ctx.hasAvatar,
4165
4228
  "is-show": showDropdown.value,
4166
4229
  loading: unref(searchLoading),
4167
4230
  options: displayOptions.value,
@@ -4307,10 +4370,12 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
4307
4370
  renderList(selectedUsers.value.slice(visibleUsers.value.length), (user) => {
4308
4371
  return openBlock(), createBlock(unref(UserRender), {
4309
4372
  key: user.id,
4373
+ "avatar-base-url": _ctx.avatarBaseUrl,
4374
+ "has-avatar": _ctx.hasAvatar,
4310
4375
  "tenant-id": _ctx.tenantId,
4311
4376
  tenants: unref(tenants),
4312
4377
  user
4313
- }, null, 8, ["tenant-id", "tenants", "user"]);
4378
+ }, null, 8, ["avatar-base-url", "has-avatar", "tenant-id", "tenants", "user"]);
4314
4379
  }),
4315
4380
  128
4316
4381
  /* KEYED_FRAGMENT */
@@ -4357,7 +4422,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
4357
4422
  ]),
4358
4423
  _: 1
4359
4424
  /* STABLE */
4360
- }, 8, ["container-width", "empty-text", "is-show", "loading", "options", "render-list-item", "search-query", "tenant-id", "tenants", "user-group", "user-group-name"])
4425
+ }, 8, ["avatar-base-url", "container-width", "empty-text", "has-avatar", "is-show", "loading", "options", "render-list-item", "search-query", "tenant-id", "tenants", "user-group", "user-group-name"])
4361
4426
  ],
4362
4427
  2
4363
4428
  /* CLASS */
@@ -4365,7 +4430,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
4365
4430
  };
4366
4431
  }
4367
4432
  });
4368
- const BkUserSelector = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-65e61c1c"]]);
4433
+ const BkUserSelector = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-9975c7e1"]]);
4369
4434
  export {
4370
4435
  BkUserSelector,
4371
4436
  BkUserSelector as default