@blueking/bk-user-selector 0.0.38-beta.1 → 0.0.38

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.
@@ -3,7 +3,7 @@
3
3
  })(this, function(exports2, vue, bkuiVue) {
4
4
  "use strict";
5
5
  var __vite_style__ = document.createElement("style");
6
- __vite_style__.textContent = ".me-tag[data-v-ef4a05c4] {\n position: absolute;\n top: 50%;\n right: 8px;\n z-index: 1;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 24px;\n height: 24px;\n padding: 0 8px;\n font-size: 12px;\n color: #4d4f56;\n white-space: nowrap;\n cursor: pointer;\n background-color: #e1ecff;\n border-radius: 50%;\n transform: translateY(-50%);\n}\n.me-tag[data-v-ef4a05c4]:hover {\n color: #3a84ff;\n background-color: #cddffe;\n}\n.me-tag.disabled[data-v-ef4a05c4] {\n color: #c4c6cc;\n cursor: not-allowed;\n background-color: #f0f1f5;\n}.dropdown-content[data-v-ee78cf72] {\n min-height: 40px;\n max-height: 300px;\n padding: 5px 0;\n overflow-y: auto;\n}\n.dropdown-content .no-data[data-v-ee78cf72] {\n padding: 10px;\n color: #979ba5;\n text-align: center;\n}\n.dropdown-content .user-group .group-header[data-v-ee78cf72] {\n display: flex;\n align-items: center;\n padding: 8px 12px;\n color: #979ba5;\n}\n.dropdown-content .user-group .group-header .group-count[data-v-ee78cf72] {\n margin-left: 4px;\n}\n.dropdown-content .user-option[data-v-ee78cf72] {\n display: flex;\n align-items: center;\n height: 32px;\n padding: 8px 12px;\n cursor: pointer;\n}\n.dropdown-content .user-option[data-v-ee78cf72]:hover {\n background-color: #f5f7fa;\n}.bk-user-selector-popover.bk-user-selector-pop2-content {\n padding: 0;\n}.user-tag[data-v-48ac8fc1] {\n margin-right: 4px;\n margin-left: 0;\n}\n.user-tag.draggable[data-v-48ac8fc1] {\n cursor: move;\n}\n.user-tag.active[data-v-48ac8fc1] {\n background-color: #e1ecff;\n border-color: #3a84ff;\n}\n.user-tag.is-custom[data-v-48ac8fc1] {\n color: #ea3636;\n background-color: #feebea;\n border-color: rgba(234, 53, 54, 0.3019607843);\n}\n.user-tag.is-custom[data-v-48ac8fc1]:hover {\n background-color: #fedddc;\n}\n.user-tag .tag-content .user-name[data-v-48ac8fc1] {\n overflow: hidden;\n text-overflow: ellipsis;\n font-size: 12px;\n white-space: nowrap;\n}.multiple-selector[data-v-6c9ac297] {\n position: relative;\n width: 100%;\n}\n.multiple-selector.is-disabled[data-v-6c9ac297] {\n pointer-events: none;\n}\n.multiple-selector .tags-container[data-v-6c9ac297] {\n min-height: 32px;\n padding: 1px 10px 1px 8px;\n background-color: #fff;\n border: 1px solid #c4c6cc;\n border-radius: 2px;\n transition: all 0.2s ease;\n}\n.multiple-selector .tags-container.focused[data-v-6c9ac297] {\n border-color: #3a84ff;\n box-shadow: 0 0 0 2px rgba(58, 132, 255, 0.1);\n}\n.multiple-selector .tags-container.collapsed[data-v-6c9ac297] {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n}\n.multiple-selector .tag-list[data-v-6c9ac297] {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n}\n.multiple-selector .tag-wrapper[data-v-6c9ac297] {\n display: inline-flex;\n align-items: center;\n max-width: 100%;\n}\n.multiple-selector .search-input[data-v-6c9ac297] {\n min-width: 10px;\n height: 28px;\n outline: none;\n background: transparent;\n border: none;\n}\n.multiple-selector .search-input[data-v-6c9ac297]::placeholder {\n color: #c4c6cc;\n}\n.multiple-selector .search-input.inline[data-v-6c9ac297] {\n min-width: 10px;\n}\n.multiple-selector .search-input.last[data-v-6c9ac297], .multiple-selector .search-input.collapsed[data-v-6c9ac297] {\n flex: 1;\n}\n.hidden-users[data-v-6c9ac297] {\n padding: 6px 10px;\n}.single-selector[data-v-2a791ec6] {\n position: relative;\n width: 100%;\n}\n.single-selector.is-disabled[data-v-2a791ec6] {\n pointer-events: none;\n}\n.input-container[data-v-2a791ec6] {\n position: relative;\n display: flex;\n align-items: center;\n min-height: 32px;\n padding: 0 8px;\n background-color: #fff;\n border: 1px solid #c4c6cc;\n border-radius: 2px;\n}\n.input-container[data-v-2a791ec6]:focus-within {\n border-color: #3a84ff;\n box-shadow: 0 0 0 2px rgba(58, 132, 255, 0.1);\n}\n.search-input[data-v-2a791ec6] {\n flex: 1;\n height: 30px;\n outline: none;\n background: transparent;\n border: none;\n}\n.search-input[data-v-2a791ec6]::placeholder {\n color: #c4c6cc;\n}.bk-user-selector[data-v-f4c00173] {\n position: relative;\n width: 100%;\n font-size: 12px;\n}\n.bk-user-selector.is-disabled[data-v-f4c00173] {\n cursor: not-allowed;\n background-color: #dcdee5;\n}";
6
+ __vite_style__.textContent = ".me-tag[data-v-44fec2ba] {\n position: absolute;\n top: 50%;\n right: 8px;\n z-index: 1;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 24px;\n height: 24px;\n padding: 0 8px;\n font-size: 12px;\n color: #4d4f56;\n cursor: pointer;\n background-color: #e1ecff;\n border-radius: 50%;\n transform: translateY(-50%);\n white-space: nowrap;\n}\n.me-tag[data-v-44fec2ba]:hover {\n color: #3a84ff;\n background-color: #cddffe;\n}\n.me-tag.disabled[data-v-44fec2ba] {\n color: #c4c6cc;\n cursor: not-allowed;\n background-color: #f0f1f5;\n}.dropdown-content[data-v-e11d7af7] {\n min-height: 40px;\n max-height: 300px;\n padding: 5px 0;\n overflow-y: auto;\n}\n.dropdown-content .no-data[data-v-e11d7af7] {\n padding: 10px;\n color: #979ba5;\n text-align: center;\n}\n.dropdown-content .user-group .group-header[data-v-e11d7af7] {\n display: flex;\n align-items: center;\n padding: 8px 12px;\n color: #979ba5;\n}\n.dropdown-content .user-group .group-header .group-count[data-v-e11d7af7] {\n margin-left: 4px;\n}\n.dropdown-content .user-option[data-v-e11d7af7] {\n display: flex;\n align-items: center;\n height: 32px;\n padding: 8px 12px;\n cursor: pointer;\n}\n.dropdown-content .user-option[data-v-e11d7af7]:hover {\n background-color: #f5f7fa;\n}.bk-user-selector-popover.bk-user-selector-pop2-content {\n padding: 0;\n}.user-tag[data-v-3ff46050] {\n margin-right: 4px;\n margin-left: 0;\n}\n.user-tag.draggable[data-v-3ff46050] {\n cursor: move;\n}\n.user-tag.active[data-v-3ff46050] {\n background-color: #e1ecff;\n border-color: #3a84ff;\n}\n.user-tag.is-custom[data-v-3ff46050] {\n color: #ea3636;\n background-color: #feebea;\n border-color: rgba(234, 53, 54, 0.3019607843);\n}\n.user-tag.is-custom[data-v-3ff46050]:hover {\n background-color: #fedddc;\n}\n.user-tag .tag-content .user-name[data-v-3ff46050] {\n overflow: hidden;\n font-size: 12px;\n text-overflow: ellipsis;\n white-space: nowrap;\n}.multiple-selector[data-v-49f3716b] {\n position: relative;\n width: 100%;\n}\n.multiple-selector.is-disabled[data-v-49f3716b] {\n pointer-events: none;\n}\n.multiple-selector .tags-container[data-v-49f3716b] {\n min-height: 32px;\n padding: 1px 10px 1px 8px;\n background-color: #fff;\n border: 1px solid #c4c6cc;\n border-radius: 2px;\n transition: all 0.2s ease;\n}\n.multiple-selector .tags-container.focused[data-v-49f3716b] {\n border-color: #3a84ff;\n box-shadow: 0 0 0 2px rgba(58, 132, 255, 0.1);\n}\n.multiple-selector .tags-container.collapsed[data-v-49f3716b] {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n}\n.multiple-selector .tag-list[data-v-49f3716b] {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n}\n.multiple-selector .tag-wrapper[data-v-49f3716b] {\n display: inline-flex;\n align-items: center;\n max-width: 100%;\n}\n.multiple-selector .search-input[data-v-49f3716b] {\n min-width: 10px;\n height: 28px;\n background: transparent;\n border: none;\n outline: none;\n}\n.multiple-selector .search-input[data-v-49f3716b]::placeholder {\n color: #c4c6cc;\n}\n.multiple-selector .search-input.inline[data-v-49f3716b] {\n min-width: 10px;\n}\n.multiple-selector .search-input.last[data-v-49f3716b], .multiple-selector .search-input.collapsed[data-v-49f3716b] {\n flex: 1;\n}\n.hidden-users[data-v-49f3716b] {\n padding: 6px 10px;\n}.single-selector[data-v-726a967e] {\n position: relative;\n width: 100%;\n}\n.single-selector.is-disabled[data-v-726a967e] {\n pointer-events: none;\n}\n.input-container[data-v-726a967e] {\n position: relative;\n display: flex;\n align-items: center;\n min-height: 32px;\n padding: 0 8px;\n background-color: #fff;\n border: 1px solid #c4c6cc;\n border-radius: 2px;\n}\n.input-container[data-v-726a967e]:focus-within {\n border-color: #3a84ff;\n box-shadow: 0 0 0 2px rgba(58, 132, 255, 0.1);\n}\n.search-input[data-v-726a967e] {\n flex: 1;\n height: 30px;\n background: transparent;\n border: none;\n outline: none;\n}\n.search-input[data-v-726a967e]::placeholder {\n color: #c4c6cc;\n}.bk-user-selector[data-v-879a2fa1] {\n position: relative;\n width: 100%;\n font-size: 12px;\n}\n.bk-user-selector.is-disabled[data-v-879a2fa1] {\n cursor: not-allowed;\n background-color: #dcdee5;\n}";
7
7
  document.head.appendChild(__vite_style__);
8
8
  const generateCallbackName = () => {
9
9
  const timestamp = Date.now();
@@ -3267,7 +3267,7 @@
3267
3267
  }
3268
3268
  return target;
3269
3269
  };
3270
- const MeTag = /* @__PURE__ */ _export_sfc(_sfc_main$5, [["__scopeId", "data-v-ef4a05c4"]]);
3270
+ const MeTag = /* @__PURE__ */ _export_sfc(_sfc_main$5, [["__scopeId", "data-v-44fec2ba"]]);
3271
3271
  const UserRender = vue.defineComponent({
3272
3272
  name: "UserRender",
3273
3273
  props: {
@@ -3442,22 +3442,22 @@
3442
3442
  };
3443
3443
  return (_ctx, _cache) => {
3444
3444
  return vue.openBlock(), vue.createBlock(vue.unref(bkuiVue.Popover), {
3445
- arrow: false,
3446
3445
  "ext-cls": "bk-user-selector-popover",
3446
+ arrow: false,
3447
3447
  "is-show": __props.isShow,
3448
3448
  offset: { mainAxis: 4, crossAxis: __props.crossAxisOffset },
3449
+ width: __props.containerWidth,
3449
3450
  placement: "bottom-start",
3450
3451
  theme: "light",
3451
3452
  trigger: "manual",
3452
- width: __props.containerWidth,
3453
3453
  onClickoutside: handleClickOutside
3454
3454
  }, {
3455
3455
  content: vue.withCtx(() => [
3456
3456
  vue.createVNode(vue.unref(bkuiVue.Loading), {
3457
3457
  class: "dropdown-content",
3458
3458
  loading: __props.loading,
3459
- mode: "spin",
3460
- size: "mini"
3459
+ size: "mini",
3460
+ mode: "spin"
3461
3461
  }, {
3462
3462
  default: vue.withCtx(() => [
3463
3463
  __props.options.length === 0 && __props.userGroup.length === 0 ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$2, [
@@ -3473,8 +3473,8 @@
3473
3473
  { key: 1 },
3474
3474
  vue.renderList(groupedUsers.value, (group, groupName) => {
3475
3475
  return vue.openBlock(), vue.createElementBlock("div", {
3476
- key: groupName,
3477
- class: "user-group"
3476
+ class: "user-group",
3477
+ key: groupName
3478
3478
  }, [
3479
3479
  Object.keys(groupedUsers.value).length > 1 || group.some((user) => user.type === "userGroup") ? (vue.openBlock(), vue.createElementBlock("div", {
3480
3480
  key: 0,
@@ -3502,8 +3502,8 @@
3502
3502
  null,
3503
3503
  vue.renderList(group, (user) => {
3504
3504
  return vue.openBlock(), vue.createElementBlock("div", {
3505
- key: user.id,
3506
3505
  class: "user-option",
3506
+ key: user.id,
3507
3507
  onClick: vue.withModifiers(($event) => selectUser(user), ["prevent"])
3508
3508
  }, [
3509
3509
  vue.createVNode(vue.unref(UserRender), {
@@ -3536,20 +3536,20 @@
3536
3536
  };
3537
3537
  }
3538
3538
  });
3539
- const SelectionPopover = /* @__PURE__ */ _export_sfc(_sfc_main$4, [["__scopeId", "data-v-ee78cf72"]]);
3539
+ const SelectionPopover = /* @__PURE__ */ _export_sfc(_sfc_main$4, [["__scopeId", "data-v-e11d7af7"]]);
3540
3540
  const _sfc_main$3 = /* @__PURE__ */ vue.defineComponent({
3541
3541
  ...{
3542
3542
  name: "UserTag"
3543
3543
  },
3544
3544
  __name: "user-tag",
3545
3545
  props: {
3546
- active: { type: Boolean },
3546
+ user: {},
3547
+ tenants: {},
3547
3548
  currentTenantId: {},
3548
3549
  draggable: { type: Boolean },
3549
- renderTag: { type: Function },
3550
+ active: { type: Boolean },
3550
3551
  showTenant: { type: Boolean },
3551
- tenants: {},
3552
- user: {}
3552
+ renderTag: { type: Function }
3553
3553
  },
3554
3554
  emits: ["click", "close"],
3555
3555
  setup(__props, { emit: __emit }) {
@@ -3582,7 +3582,7 @@
3582
3582
  };
3583
3583
  }
3584
3584
  });
3585
- const UserTag = /* @__PURE__ */ _export_sfc(_sfc_main$3, [["__scopeId", "data-v-48ac8fc1"]]);
3585
+ const UserTag = /* @__PURE__ */ _export_sfc(_sfc_main$3, [["__scopeId", "data-v-3ff46050"]]);
3586
3586
  const _hoisted_1$1 = ["onClick"];
3587
3587
  const _hoisted_2$1 = ["placeholder"];
3588
3588
  const _hoisted_3 = { class: "hidden-users" };
@@ -3593,24 +3593,24 @@
3593
3593
  },
3594
3594
  __name: "multiple-selector",
3595
3595
  props: {
3596
- draggable: { type: Boolean, default: false },
3597
3596
  modelValue: { default: () => [] },
3597
+ draggable: { type: Boolean, default: false },
3598
3598
  selectedUsers: { default: () => [] },
3599
3599
  tenants: { default: () => ({}) },
3600
- allowCreate: { type: Boolean, default: false },
3601
3600
  apiBaseUrl: { default: "" },
3601
+ tenantId: { default: "" },
3602
+ placeholder: { default: "" },
3602
3603
  currentUserId: { default: "" },
3603
- disabled: { type: Boolean },
3604
- emptyText: { default: "" },
3605
- enableMultiTenantMode: { type: Boolean },
3606
3604
  exactSearchKey: { default: "bk_username" },
3607
- excludeUserIds: { default: () => [] },
3608
- placeholder: { default: "" },
3609
- tenantId: { default: "" },
3605
+ userGroup: { default: () => [] },
3610
3606
  userGroupName: { default: "" },
3607
+ emptyText: { default: "" },
3608
+ disabled: { type: Boolean },
3611
3609
  renderListItem: {},
3612
3610
  renderTag: {},
3613
- userGroup: { default: () => [] }
3611
+ excludeUserIds: { default: () => [] },
3612
+ enableMultiTenantMode: { type: Boolean },
3613
+ allowCreate: { type: Boolean, default: false }
3614
3614
  },
3615
3615
  emits: [
3616
3616
  "update:selectedUsers",
@@ -3711,6 +3711,7 @@
3711
3711
  });
3712
3712
  };
3713
3713
  const handleClickOutside = (event) => {
3714
+ event.stopPropagation();
3714
3715
  const target = event.target;
3715
3716
  const container = containerRef.value;
3716
3717
  if ((container == null ? void 0 : container.contains(target)) || container === target) {
@@ -3958,8 +3959,8 @@
3958
3959
  null,
3959
3960
  vue.renderList(_ctx.selectedUsers, (user, index) => {
3960
3961
  return vue.openBlock(), vue.createElementBlock("div", {
3961
- key: user.id,
3962
3962
  class: "tag-wrapper",
3963
+ key: user.id,
3963
3964
  onClick: vue.withModifiers(($event) => handleTagClick(index), ["stop"])
3964
3965
  }, [
3965
3966
  vue.createVNode(UserTag, {
@@ -3980,8 +3981,8 @@
3980
3981
  ref_for: true,
3981
3982
  ref_key: "inlineInputRef",
3982
3983
  ref: inlineInputRef,
3983
- "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => vue.isRef(searchQuery) ? searchQuery.value = $event : null),
3984
3984
  class: "search-input inline",
3985
+ "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => vue.isRef(searchQuery) ? searchQuery.value = $event : null),
3985
3986
  onFocus: handleInputFocus,
3986
3987
  onInput: handleInput,
3987
3988
  onKeydown: handleKeyDown,
@@ -4003,8 +4004,8 @@
4003
4004
  key: 0,
4004
4005
  ref_key: "lastInputRef",
4005
4006
  ref: lastInputRef,
4006
- "onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => vue.isRef(searchQuery) ? searchQuery.value = $event : null),
4007
4007
  class: "search-input last",
4008
+ "onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => vue.isRef(searchQuery) ? searchQuery.value = $event : null),
4008
4009
  placeholder: !_ctx.selectedUsers.length ? _ctx.placeholder : "",
4009
4010
  onFocus: handleInputFocus,
4010
4011
  onInput: handleInput,
@@ -4045,8 +4046,8 @@
4045
4046
  null,
4046
4047
  vue.renderList(visibleUsers.value, (user) => {
4047
4048
  return vue.openBlock(), vue.createBlock(UserTag, {
4048
- key: user.id,
4049
4049
  "current-tenant-id": _ctx.tenantId,
4050
+ key: user.id,
4050
4051
  "render-tag": _ctx.renderTag,
4051
4052
  "show-tenant": true,
4052
4053
  tenants: _ctx.tenants,
@@ -4101,8 +4102,8 @@
4101
4102
  vue.withDirectives(vue.createElementVNode("input", {
4102
4103
  ref_key: "collapsedInputRef",
4103
4104
  ref: collapsedInputRef,
4104
- "onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => vue.isRef(searchQuery) ? searchQuery.value = $event : null),
4105
4105
  class: "search-input collapsed",
4106
+ "onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => vue.isRef(searchQuery) ? searchQuery.value = $event : null),
4106
4107
  placeholder: !_ctx.selectedUsers.length ? _ctx.placeholder : "",
4107
4108
  onFocus: handleFocus
4108
4109
  }, null, 40, _hoisted_4), [
@@ -4133,7 +4134,7 @@
4133
4134
  };
4134
4135
  }
4135
4136
  });
4136
- const MultipleSelector = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["__scopeId", "data-v-6c9ac297"]]);
4137
+ const MultipleSelector = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["__scopeId", "data-v-49f3716b"]]);
4137
4138
  const _hoisted_1 = { class: "input-container" };
4138
4139
  const _hoisted_2 = ["placeholder"];
4139
4140
  const _sfc_main$1 = /* @__PURE__ */ vue.defineComponent({
@@ -4144,20 +4145,20 @@
4144
4145
  props: {
4145
4146
  modelValue: { default: "" },
4146
4147
  tenants: {},
4147
- allowCreate: { type: Boolean },
4148
4148
  apiBaseUrl: { default: "" },
4149
+ tenantId: { default: "" },
4150
+ placeholder: { default: "" },
4149
4151
  currentUserId: { default: "" },
4150
- disabled: { type: Boolean },
4151
- emptyText: { default: "" },
4152
- enableMultiTenantMode: { type: Boolean },
4153
4152
  exactSearchKey: { default: "bk_username" },
4154
- excludeUserIds: { default: () => [] },
4155
- placeholder: { default: "" },
4156
- tenantId: { default: "" },
4153
+ userGroup: { default: () => [] },
4157
4154
  userGroupName: { default: "" },
4155
+ emptyText: { default: "" },
4156
+ disabled: { type: Boolean },
4158
4157
  renderListItem: {},
4159
4158
  renderTag: {},
4160
- userGroup: { default: () => [] }
4159
+ excludeUserIds: { default: () => [] },
4160
+ enableMultiTenantMode: { type: Boolean },
4161
+ allowCreate: { type: Boolean }
4161
4162
  },
4162
4163
  emits: ["update:modelValue", "change", "focus", "blur"],
4163
4164
  setup(__props, { emit: __emit }) {
@@ -4363,8 +4364,8 @@
4363
4364
  vue.withDirectives(vue.createElementVNode("input", {
4364
4365
  ref_key: "inputRef",
4365
4366
  ref: inputRef,
4366
- "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => searchQuery.value = $event),
4367
4367
  class: "search-input",
4368
+ "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => searchQuery.value = $event),
4368
4369
  placeholder: selectedUserInfo.value ? "" : _ctx.placeholder,
4369
4370
  onBlur: _cache[1] || (_cache[1] = ($event) => emit("blur")),
4370
4371
  onFocus: handleInputFocus,
@@ -4393,30 +4394,30 @@
4393
4394
  };
4394
4395
  }
4395
4396
  });
4396
- const SingleSelector = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["__scopeId", "data-v-2a791ec6"]]);
4397
+ const SingleSelector = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["__scopeId", "data-v-726a967e"]]);
4397
4398
  const _sfc_main = /* @__PURE__ */ vue.defineComponent({
4398
4399
  ...{
4399
4400
  name: "BkUserSelector"
4400
4401
  },
4401
4402
  __name: "user-selector",
4402
4403
  props: {
4403
- draggable: { type: Boolean, default: false },
4404
4404
  modelValue: { default: "" },
4405
+ draggable: { type: Boolean, default: false },
4405
4406
  multiple: { type: Boolean, default: false },
4406
- allowCreate: { type: Boolean, default: false },
4407
4407
  apiBaseUrl: { default: "" },
4408
+ tenantId: { default: "" },
4409
+ placeholder: { default: "" },
4408
4410
  currentUserId: { default: "" },
4409
- disabled: { type: Boolean, default: false },
4410
- emptyText: { default: "" },
4411
- enableMultiTenantMode: { type: Boolean, default: true },
4412
4411
  exactSearchKey: { default: "bk_username" },
4413
- excludeUserIds: { default: () => [] },
4414
- placeholder: { default: "" },
4415
- tenantId: { default: "" },
4412
+ userGroup: { default: () => [] },
4416
4413
  userGroupName: { default: "" },
4414
+ emptyText: { default: "" },
4415
+ disabled: { type: Boolean, default: false },
4417
4416
  renderListItem: {},
4418
4417
  renderTag: {},
4419
- userGroup: { default: () => [] }
4418
+ excludeUserIds: { default: () => [] },
4419
+ enableMultiTenantMode: { type: Boolean, default: true },
4420
+ allowCreate: { type: Boolean, default: false }
4420
4421
  },
4421
4422
  emits: ["update:modelValue", "change", "dragStart", "dragEnd", "focus", "blur"],
4422
4423
  setup(__props, { emit: __emit }) {
@@ -4584,7 +4585,7 @@
4584
4585
  };
4585
4586
  }
4586
4587
  });
4587
- const BkUserSelector = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-f4c00173"]]);
4588
+ const BkUserSelector = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-879a2fa1"]]);
4588
4589
  exports2.BkUserSelector = BkUserSelector;
4589
4590
  exports2.default = BkUserSelector;
4590
4591
  Object.defineProperties(exports2, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
package/vue3/vue3.css CHANGED
@@ -1,4 +1,4 @@
1
- .me-tag[data-v-ef4a05c4] {
1
+ .me-tag[data-v-44fec2ba] {
2
2
  position: absolute;
3
3
  top: 50%;
4
4
  right: 8px;
@@ -11,83 +11,83 @@
11
11
  padding: 0 8px;
12
12
  font-size: 12px;
13
13
  color: #4d4f56;
14
- white-space: nowrap;
15
14
  cursor: pointer;
16
15
  background-color: #e1ecff;
17
16
  border-radius: 50%;
18
17
  transform: translateY(-50%);
18
+ white-space: nowrap;
19
19
  }
20
- .me-tag[data-v-ef4a05c4]:hover {
20
+ .me-tag[data-v-44fec2ba]:hover {
21
21
  color: #3a84ff;
22
22
  background-color: #cddffe;
23
23
  }
24
- .me-tag.disabled[data-v-ef4a05c4] {
24
+ .me-tag.disabled[data-v-44fec2ba] {
25
25
  color: #c4c6cc;
26
26
  cursor: not-allowed;
27
27
  background-color: #f0f1f5;
28
- }.dropdown-content[data-v-ee78cf72] {
28
+ }.dropdown-content[data-v-e11d7af7] {
29
29
  min-height: 40px;
30
30
  max-height: 300px;
31
31
  padding: 5px 0;
32
32
  overflow-y: auto;
33
33
  }
34
- .dropdown-content .no-data[data-v-ee78cf72] {
34
+ .dropdown-content .no-data[data-v-e11d7af7] {
35
35
  padding: 10px;
36
36
  color: #979ba5;
37
37
  text-align: center;
38
38
  }
39
- .dropdown-content .user-group .group-header[data-v-ee78cf72] {
39
+ .dropdown-content .user-group .group-header[data-v-e11d7af7] {
40
40
  display: flex;
41
41
  align-items: center;
42
42
  padding: 8px 12px;
43
43
  color: #979ba5;
44
44
  }
45
- .dropdown-content .user-group .group-header .group-count[data-v-ee78cf72] {
45
+ .dropdown-content .user-group .group-header .group-count[data-v-e11d7af7] {
46
46
  margin-left: 4px;
47
47
  }
48
- .dropdown-content .user-option[data-v-ee78cf72] {
48
+ .dropdown-content .user-option[data-v-e11d7af7] {
49
49
  display: flex;
50
50
  align-items: center;
51
51
  height: 32px;
52
52
  padding: 8px 12px;
53
53
  cursor: pointer;
54
54
  }
55
- .dropdown-content .user-option[data-v-ee78cf72]:hover {
55
+ .dropdown-content .user-option[data-v-e11d7af7]:hover {
56
56
  background-color: #f5f7fa;
57
57
  }.bk-user-selector-popover.bk-user-selector-pop2-content {
58
58
  padding: 0;
59
- }.user-tag[data-v-48ac8fc1] {
59
+ }.user-tag[data-v-3ff46050] {
60
60
  margin-right: 4px;
61
61
  margin-left: 0;
62
62
  }
63
- .user-tag.draggable[data-v-48ac8fc1] {
63
+ .user-tag.draggable[data-v-3ff46050] {
64
64
  cursor: move;
65
65
  }
66
- .user-tag.active[data-v-48ac8fc1] {
66
+ .user-tag.active[data-v-3ff46050] {
67
67
  background-color: #e1ecff;
68
68
  border-color: #3a84ff;
69
69
  }
70
- .user-tag.is-custom[data-v-48ac8fc1] {
70
+ .user-tag.is-custom[data-v-3ff46050] {
71
71
  color: #ea3636;
72
72
  background-color: #feebea;
73
73
  border-color: rgba(234, 53, 54, 0.3019607843);
74
74
  }
75
- .user-tag.is-custom[data-v-48ac8fc1]:hover {
75
+ .user-tag.is-custom[data-v-3ff46050]:hover {
76
76
  background-color: #fedddc;
77
77
  }
78
- .user-tag .tag-content .user-name[data-v-48ac8fc1] {
78
+ .user-tag .tag-content .user-name[data-v-3ff46050] {
79
79
  overflow: hidden;
80
- text-overflow: ellipsis;
81
80
  font-size: 12px;
81
+ text-overflow: ellipsis;
82
82
  white-space: nowrap;
83
- }.multiple-selector[data-v-6c9ac297] {
83
+ }.multiple-selector[data-v-49f3716b] {
84
84
  position: relative;
85
85
  width: 100%;
86
86
  }
87
- .multiple-selector.is-disabled[data-v-6c9ac297] {
87
+ .multiple-selector.is-disabled[data-v-49f3716b] {
88
88
  pointer-events: none;
89
89
  }
90
- .multiple-selector .tags-container[data-v-6c9ac297] {
90
+ .multiple-selector .tags-container[data-v-49f3716b] {
91
91
  min-height: 32px;
92
92
  padding: 1px 10px 1px 8px;
93
93
  background-color: #fff;
@@ -95,51 +95,51 @@
95
95
  border-radius: 2px;
96
96
  transition: all 0.2s ease;
97
97
  }
98
- .multiple-selector .tags-container.focused[data-v-6c9ac297] {
98
+ .multiple-selector .tags-container.focused[data-v-49f3716b] {
99
99
  border-color: #3a84ff;
100
100
  box-shadow: 0 0 0 2px rgba(58, 132, 255, 0.1);
101
101
  }
102
- .multiple-selector .tags-container.collapsed[data-v-6c9ac297] {
102
+ .multiple-selector .tags-container.collapsed[data-v-49f3716b] {
103
103
  display: flex;
104
104
  flex-wrap: wrap;
105
105
  align-items: center;
106
106
  }
107
- .multiple-selector .tag-list[data-v-6c9ac297] {
107
+ .multiple-selector .tag-list[data-v-49f3716b] {
108
108
  display: flex;
109
109
  flex-wrap: wrap;
110
110
  align-items: center;
111
111
  }
112
- .multiple-selector .tag-wrapper[data-v-6c9ac297] {
112
+ .multiple-selector .tag-wrapper[data-v-49f3716b] {
113
113
  display: inline-flex;
114
114
  align-items: center;
115
115
  max-width: 100%;
116
116
  }
117
- .multiple-selector .search-input[data-v-6c9ac297] {
117
+ .multiple-selector .search-input[data-v-49f3716b] {
118
118
  min-width: 10px;
119
119
  height: 28px;
120
- outline: none;
121
120
  background: transparent;
122
121
  border: none;
122
+ outline: none;
123
123
  }
124
- .multiple-selector .search-input[data-v-6c9ac297]::placeholder {
124
+ .multiple-selector .search-input[data-v-49f3716b]::placeholder {
125
125
  color: #c4c6cc;
126
126
  }
127
- .multiple-selector .search-input.inline[data-v-6c9ac297] {
127
+ .multiple-selector .search-input.inline[data-v-49f3716b] {
128
128
  min-width: 10px;
129
129
  }
130
- .multiple-selector .search-input.last[data-v-6c9ac297], .multiple-selector .search-input.collapsed[data-v-6c9ac297] {
130
+ .multiple-selector .search-input.last[data-v-49f3716b], .multiple-selector .search-input.collapsed[data-v-49f3716b] {
131
131
  flex: 1;
132
132
  }
133
- .hidden-users[data-v-6c9ac297] {
133
+ .hidden-users[data-v-49f3716b] {
134
134
  padding: 6px 10px;
135
- }.single-selector[data-v-2a791ec6] {
135
+ }.single-selector[data-v-726a967e] {
136
136
  position: relative;
137
137
  width: 100%;
138
138
  }
139
- .single-selector.is-disabled[data-v-2a791ec6] {
139
+ .single-selector.is-disabled[data-v-726a967e] {
140
140
  pointer-events: none;
141
141
  }
142
- .input-container[data-v-2a791ec6] {
142
+ .input-container[data-v-726a967e] {
143
143
  position: relative;
144
144
  display: flex;
145
145
  align-items: center;
@@ -149,25 +149,25 @@
149
149
  border: 1px solid #c4c6cc;
150
150
  border-radius: 2px;
151
151
  }
152
- .input-container[data-v-2a791ec6]:focus-within {
152
+ .input-container[data-v-726a967e]:focus-within {
153
153
  border-color: #3a84ff;
154
154
  box-shadow: 0 0 0 2px rgba(58, 132, 255, 0.1);
155
155
  }
156
- .search-input[data-v-2a791ec6] {
156
+ .search-input[data-v-726a967e] {
157
157
  flex: 1;
158
158
  height: 30px;
159
- outline: none;
160
159
  background: transparent;
161
160
  border: none;
161
+ outline: none;
162
162
  }
163
- .search-input[data-v-2a791ec6]::placeholder {
163
+ .search-input[data-v-726a967e]::placeholder {
164
164
  color: #c4c6cc;
165
- }.bk-user-selector[data-v-f4c00173] {
165
+ }.bk-user-selector[data-v-879a2fa1] {
166
166
  position: relative;
167
167
  width: 100%;
168
168
  font-size: 12px;
169
169
  }
170
- .bk-user-selector.is-disabled[data-v-f4c00173] {
170
+ .bk-user-selector.is-disabled[data-v-879a2fa1] {
171
171
  cursor: not-allowed;
172
172
  background-color: #dcdee5;
173
173
  }