@sdata/web-vue 3.23.0 → 3.24.1

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 (130) hide show
  1. package/dist/sd.css +135 -3
  2. package/dist/sd.min.css +2 -2
  3. package/es/components.d.ts +14 -0
  4. package/es/index.css +135 -3
  5. package/es/index.d.ts +2 -0
  6. package/es/index.js +16 -1
  7. package/es/index.scss +1 -0
  8. package/es/model-selector/assets/logos/aihubmix.js +4 -0
  9. package/es/model-selector/assets/logos/alibaba-cn.js +4 -0
  10. package/es/model-selector/assets/logos/alibaba.js +4 -0
  11. package/es/model-selector/assets/logos/amazon-bedrock.js +4 -0
  12. package/es/model-selector/assets/logos/anthropic.js +4 -0
  13. package/es/model-selector/assets/logos/azure.js +4 -0
  14. package/es/model-selector/assets/logos/baseten.js +4 -0
  15. package/es/model-selector/assets/logos/cerebras.js +4 -0
  16. package/es/model-selector/assets/logos/chutes.js +4 -0
  17. package/es/model-selector/assets/logos/cloudflare-workers-ai.js +4 -0
  18. package/es/model-selector/assets/logos/cortecs.js +4 -0
  19. package/es/model-selector/assets/logos/deepinfra.js +4 -0
  20. package/es/model-selector/assets/logos/deepseek.js +4 -0
  21. package/es/model-selector/assets/logos/default.js +4 -0
  22. package/es/model-selector/assets/logos/fastrouter.js +4 -0
  23. package/es/model-selector/assets/logos/fireworks-ai.js +4 -0
  24. package/es/model-selector/assets/logos/github-copilot.js +4 -0
  25. package/es/model-selector/assets/logos/github-models.js +4 -0
  26. package/es/model-selector/assets/logos/google-vertex-anthropic.js +4 -0
  27. package/es/model-selector/assets/logos/google-vertex.js +4 -0
  28. package/es/model-selector/assets/logos/google.js +4 -0
  29. package/es/model-selector/assets/logos/groq.js +4 -0
  30. package/es/model-selector/assets/logos/huggingface.js +4 -0
  31. package/es/model-selector/assets/logos/iflowcn.js +4 -0
  32. package/es/model-selector/assets/logos/inception.js +4 -0
  33. package/es/model-selector/assets/logos/inference.js +4 -0
  34. package/es/model-selector/assets/logos/llama.js +4 -0
  35. package/es/model-selector/assets/logos/lucidquery.js +4 -0
  36. package/es/model-selector/assets/logos/mistral.js +4 -0
  37. package/es/model-selector/assets/logos/modelscope.js +4 -0
  38. package/es/model-selector/assets/logos/moonshotai-cn.js +4 -0
  39. package/es/model-selector/assets/logos/moonshotai.js +4 -0
  40. package/es/model-selector/assets/logos/nebius.js +4 -0
  41. package/es/model-selector/assets/logos/nvidia.js +4 -0
  42. package/es/model-selector/assets/logos/openai.js +4 -0
  43. package/es/model-selector/assets/logos/opencode.js +4 -0
  44. package/es/model-selector/assets/logos/openrouter.js +4 -0
  45. package/es/model-selector/assets/logos/perplexity.js +4 -0
  46. package/es/model-selector/assets/logos/scaleway.js +4 -0
  47. package/es/model-selector/assets/logos/submodel.js +4 -0
  48. package/es/model-selector/assets/logos/togetherai.js +4 -0
  49. package/es/model-selector/assets/logos/upstage.js +4 -0
  50. package/es/model-selector/assets/logos/v0.js +4 -0
  51. package/es/model-selector/assets/logos/venice.js +4 -0
  52. package/es/model-selector/assets/logos/vercel.js +4 -0
  53. package/es/model-selector/assets/logos/vultr.js +4 -0
  54. package/es/model-selector/assets/logos/xai.js +4 -0
  55. package/es/model-selector/assets/logos/zai-coding-plan.js +4 -0
  56. package/es/model-selector/assets/logos/zai.js +4 -0
  57. package/es/model-selector/assets/logos/zenmux.js +4 -0
  58. package/es/model-selector/assets/logos/zhipuai-coding-plan.js +4 -0
  59. package/es/model-selector/assets/logos/zhipuai.js +4 -0
  60. package/es/model-selector/context.d.ts +25 -0
  61. package/es/model-selector/context.js +5 -0
  62. package/es/model-selector/index.d.ts +436 -0
  63. package/es/model-selector/index.js +57 -0
  64. package/es/model-selector/model-selector-content.js +5 -0
  65. package/es/model-selector/model-selector-content.vue.d.ts +21 -0
  66. package/es/model-selector/model-selector-content.vue_vue_type_script_setup_true_lang.js +65 -0
  67. package/es/model-selector/model-selector-dialog.js +5 -0
  68. package/es/model-selector/model-selector-dialog.vue.d.ts +36 -0
  69. package/es/model-selector/model-selector-dialog.vue_vue_type_script_setup_true_lang.js +98 -0
  70. package/es/model-selector/model-selector-empty.js +5 -0
  71. package/es/model-selector/model-selector-empty.vue.d.ts +13 -0
  72. package/es/model-selector/model-selector-empty.vue_vue_type_script_setup_true_lang.js +25 -0
  73. package/es/model-selector/model-selector-group.js +5 -0
  74. package/es/model-selector/model-selector-group.vue.d.ts +18 -0
  75. package/es/model-selector/model-selector-group.vue_vue_type_script_setup_true_lang.js +32 -0
  76. package/es/model-selector/model-selector-input.js +5 -0
  77. package/es/model-selector/model-selector-input.vue.d.ts +11 -0
  78. package/es/model-selector/model-selector-input.vue_vue_type_script_setup_true_lang.js +80 -0
  79. package/es/model-selector/model-selector-item.js +5 -0
  80. package/es/model-selector/model-selector-item.vue.d.ts +35 -0
  81. package/es/model-selector/model-selector-item.vue_vue_type_script_setup_true_lang.js +101 -0
  82. package/es/model-selector/model-selector-list.js +5 -0
  83. package/es/model-selector/model-selector-list.vue.d.ts +13 -0
  84. package/es/model-selector/model-selector-list.vue_vue_type_script_setup_true_lang.js +36 -0
  85. package/es/model-selector/model-selector-logo-group.js +5 -0
  86. package/es/model-selector/model-selector-logo-group.vue.d.ts +13 -0
  87. package/es/model-selector/model-selector-logo-group.vue_vue_type_script_setup_true_lang.js +15 -0
  88. package/es/model-selector/model-selector-logo.js +5 -0
  89. package/es/model-selector/model-selector-logo.vue.d.ts +10 -0
  90. package/es/model-selector/model-selector-logo.vue_vue_type_script_setup_true_lang.js +146 -0
  91. package/es/model-selector/model-selector-name.js +5 -0
  92. package/es/model-selector/model-selector-name.vue.d.ts +13 -0
  93. package/es/model-selector/model-selector-name.vue_vue_type_script_setup_true_lang.js +15 -0
  94. package/es/model-selector/model-selector-separator.js +5 -0
  95. package/es/model-selector/model-selector-separator.vue.d.ts +3 -0
  96. package/es/model-selector/model-selector-separator.vue_vue_type_script_setup_true_lang.js +16 -0
  97. package/es/model-selector/model-selector-shortcut.js +5 -0
  98. package/es/model-selector/model-selector-shortcut.vue.d.ts +13 -0
  99. package/es/model-selector/model-selector-shortcut.vue_vue_type_script_setup_true_lang.js +15 -0
  100. package/es/model-selector/model-selector-trigger.js +5 -0
  101. package/es/model-selector/model-selector-trigger.vue.d.ts +20 -0
  102. package/es/model-selector/model-selector-trigger.vue_vue_type_script_setup_true_lang.js +39 -0
  103. package/es/model-selector/model-selector.js +5 -0
  104. package/es/model-selector/model-selector.vue.d.ts +34 -0
  105. package/es/model-selector/model-selector.vue_vue_type_script_setup_true_lang.js +179 -0
  106. package/es/model-selector/style/css.js +2 -0
  107. package/es/model-selector/style/index.css +148 -0
  108. package/es/model-selector/style/index.d.ts +2 -0
  109. package/es/model-selector/style/index.js +2 -0
  110. package/es/model-selector/style/index.scss +163 -0
  111. package/es/model-selector/style/token.scss +24 -0
  112. package/es/model-selector/types.d.ts +16 -0
  113. package/es/model-selector/types.js +61 -0
  114. package/es/model-selector/use-model-selector-context.d.ts +1 -0
  115. package/es/model-selector/use-model-selector-context.js +10 -0
  116. package/es/qr-code/qr-code.vue_vue_type_script_setup_true_lang.js +17 -6
  117. package/es/qr-code/style/index.css +1 -1
  118. package/es/qr-code/style/token.scss +1 -1
  119. package/es/rich-text-editor/rich-text-editor.vue_vue_type_script_setup_true_lang.js +16 -18
  120. package/es/rich-text-editor/style/index.css +1 -1
  121. package/es/rich-text-editor/style/token.scss +2 -1
  122. package/es/sd-vue.js +2 -0
  123. package/es/sender/sender.vue_vue_type_script_setup_true_lang.js +1 -1
  124. package/es/sender/style/index.css +1 -1
  125. package/es/sender/style/token.scss +2 -1
  126. package/es/sender/types.d.ts +2 -1
  127. package/json/vetur-attributes.json +95 -0
  128. package/json/vetur-tags.json +75 -0
  129. package/json/web-types.json +290 -1
  130. package/package.json +1 -1
@@ -0,0 +1,98 @@
1
+ import _objectSpread2 from "../_virtual/_@oxc-project_runtime@0.139.0/helpers/esm/objectSpread2.js";
2
+ import model_selector_content_default from "./model-selector-content.js";
3
+ import model_selector_default from "./model-selector.js";
4
+ import { computed, createBlock, createVNode, defineComponent, getCurrentInstance, mergeModels, openBlock, renderSlot, shallowRef, useModel, withCtx } from "vue";
5
+ //#region components/model-selector/model-selector-dialog.vue?vue&type=script&setup=true&lang.ts
6
+ var model_selector_dialog_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent(_objectSpread2(_objectSpread2({}, { name: "ModelSelectorDialog" }), {}, {
7
+ __name: "model-selector-dialog",
8
+ props: /*@__PURE__*/ mergeModels({
9
+ defaultVisible: {
10
+ type: Boolean,
11
+ default: false
12
+ },
13
+ closeOnSelect: {
14
+ type: Boolean,
15
+ default: true
16
+ },
17
+ resetQueryOnClose: {
18
+ type: Boolean,
19
+ default: true
20
+ },
21
+ title: { default: "模型选择" },
22
+ width: { default: 640 },
23
+ renderToBody: {
24
+ type: Boolean,
25
+ default: true
26
+ },
27
+ unmountOnClose: {
28
+ type: Boolean,
29
+ default: true
30
+ },
31
+ maskClosable: {
32
+ type: Boolean,
33
+ default: true
34
+ },
35
+ escToClose: {
36
+ type: Boolean,
37
+ default: true
38
+ }
39
+ }, {
40
+ "visible": { type: Boolean },
41
+ "visibleModifiers": {}
42
+ }),
43
+ emits: /*@__PURE__*/ mergeModels(["visibleChange", "select"], ["update:visible"]),
44
+ setup(__props, { emit: __emit }) {
45
+ const emit = __emit;
46
+ const instance = getCurrentInstance();
47
+ const visibleModel = useModel(__props, "visible");
48
+ const innerVisible = shallowRef(__props.defaultVisible);
49
+ const hasVisibleProp = computed(() => {
50
+ var _instance$vnode$props;
51
+ return Object.hasOwn((_instance$vnode$props = instance.vnode.props) !== null && _instance$vnode$props !== void 0 ? _instance$vnode$props : {}, "visible");
52
+ });
53
+ const mergedVisible = computed(() => hasVisibleProp.value ? Boolean(visibleModel.value) : innerVisible.value);
54
+ function handleVisibleUpdate(value) {
55
+ const nextVisible = Boolean(value);
56
+ innerVisible.value = nextVisible;
57
+ visibleModel.value = nextVisible;
58
+ }
59
+ return (_ctx, _cache) => {
60
+ return openBlock(), createBlock(model_selector_default, {
61
+ visible: mergedVisible.value,
62
+ "default-visible": __props.defaultVisible,
63
+ "close-on-select": __props.closeOnSelect,
64
+ "reset-query-on-close": __props.resetQueryOnClose,
65
+ "onUpdate:visible": handleVisibleUpdate,
66
+ onVisibleChange: _cache[0] || (_cache[0] = ($event) => emit("visibleChange", $event)),
67
+ onSelect: _cache[1] || (_cache[1] = (value, event) => emit("select", value, event))
68
+ }, {
69
+ default: withCtx(() => [createVNode(model_selector_content_default, {
70
+ title: __props.title,
71
+ width: __props.width,
72
+ "render-to-body": __props.renderToBody,
73
+ "unmount-on-close": __props.unmountOnClose,
74
+ "mask-closable": __props.maskClosable,
75
+ "esc-to-close": __props.escToClose
76
+ }, {
77
+ default: withCtx(() => [renderSlot(_ctx.$slots, "default")]),
78
+ _: 3
79
+ }, 8, [
80
+ "title",
81
+ "width",
82
+ "render-to-body",
83
+ "unmount-on-close",
84
+ "mask-closable",
85
+ "esc-to-close"
86
+ ])]),
87
+ _: 3
88
+ }, 8, [
89
+ "visible",
90
+ "default-visible",
91
+ "close-on-select",
92
+ "reset-query-on-close"
93
+ ]);
94
+ };
95
+ }
96
+ }));
97
+ //#endregion
98
+ export { model_selector_dialog_vue_vue_type_script_setup_true_lang_default as default };
@@ -0,0 +1,5 @@
1
+ import model_selector_empty_vue_vue_type_script_setup_true_lang_default from "./model-selector-empty.vue_vue_type_script_setup_true_lang.js";
2
+ //#region components/model-selector/model-selector-empty.vue
3
+ var model_selector_empty_default = model_selector_empty_vue_vue_type_script_setup_true_lang_default;
4
+ //#endregion
5
+ export { model_selector_empty_default as default };
@@ -0,0 +1,13 @@
1
+ declare var __VLS_8: {};
2
+ type __VLS_Slots = {} & {
3
+ default?: (props: typeof __VLS_8) => any;
4
+ };
5
+ declare const __VLS_base: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
6
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
7
+ declare const _default: typeof __VLS_export;
8
+ export default _default;
9
+ type __VLS_WithSlots<T, S> = T & {
10
+ new (): {
11
+ $slots: S;
12
+ };
13
+ };
@@ -0,0 +1,25 @@
1
+ import _objectSpread2 from "../_virtual/_@oxc-project_runtime@0.139.0/helpers/esm/objectSpread2.js";
2
+ import { getPrefixCls } from "../_utils/global-config.js";
3
+ import Empty from "../empty/index.js";
4
+ import { useModelSelectorContext } from "./use-model-selector-context.js";
5
+ import { createBlock, createCommentVNode, createTextVNode, defineComponent, normalizeClass, openBlock, renderSlot, unref, withCtx } from "vue";
6
+ //#region components/model-selector/model-selector-empty.vue?vue&type=script&setup=true&lang.ts
7
+ var model_selector_empty_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent(_objectSpread2(_objectSpread2({}, { name: "ModelSelectorEmpty" }), {}, {
8
+ __name: "model-selector-empty",
9
+ setup(__props) {
10
+ const prefixCls = getPrefixCls("model-selector-empty");
11
+ const context = useModelSelectorContext("ModelSelectorEmpty");
12
+ return (_ctx, _cache) => {
13
+ return unref(context).visibleItemCount.value === 0 ? (openBlock(), createBlock(unref(Empty), {
14
+ key: 0,
15
+ class: normalizeClass(unref(prefixCls)),
16
+ role: "status"
17
+ }, {
18
+ default: withCtx(() => [renderSlot(_ctx.$slots, "default", {}, () => [_cache[0] || (_cache[0] = createTextVNode("未找到匹配的模型", -1))])]),
19
+ _: 3
20
+ }, 8, ["class"])) : createCommentVNode("", true);
21
+ };
22
+ }
23
+ }));
24
+ //#endregion
25
+ export { model_selector_empty_vue_vue_type_script_setup_true_lang_default as default };
@@ -0,0 +1,5 @@
1
+ import model_selector_group_vue_vue_type_script_setup_true_lang_default from "./model-selector-group.vue_vue_type_script_setup_true_lang.js";
2
+ //#region components/model-selector/model-selector-group.vue
3
+ var model_selector_group_default = model_selector_group_vue_vue_type_script_setup_true_lang_default;
4
+ //#endregion
5
+ export { model_selector_group_default as default };
@@ -0,0 +1,18 @@
1
+ type __VLS_Props = {
2
+ heading?: string;
3
+ };
4
+ declare var __VLS_1: {}, __VLS_3: {};
5
+ type __VLS_Slots = {} & {
6
+ heading?: (props: typeof __VLS_1) => any;
7
+ } & {
8
+ default?: (props: typeof __VLS_3) => any;
9
+ };
10
+ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
11
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
12
+ declare const _default: typeof __VLS_export;
13
+ export default _default;
14
+ type __VLS_WithSlots<T, S> = T & {
15
+ new (): {
16
+ $slots: S;
17
+ };
18
+ };
@@ -0,0 +1,32 @@
1
+ import _objectSpread2 from "../_virtual/_@oxc-project_runtime@0.139.0/helpers/esm/objectSpread2.js";
2
+ import { getPrefixCls } from "../_utils/global-config.js";
3
+ import { modelSelectorGroupInjectionKey } from "./context.js";
4
+ import { useModelSelectorContext } from "./use-model-selector-context.js";
5
+ import { computed, createCommentVNode, createElementBlock, createElementVNode, createTextVNode, defineComponent, getCurrentInstance, normalizeClass, openBlock, provide, renderSlot, toDisplayString, unref, vShow, withDirectives } from "vue";
6
+ //#region components/model-selector/model-selector-group.vue?vue&type=script&setup=true&lang.ts
7
+ var model_selector_group_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent(_objectSpread2(_objectSpread2({}, { name: "ModelSelectorGroup" }), {}, {
8
+ __name: "model-selector-group",
9
+ props: { heading: {} },
10
+ setup(__props) {
11
+ const context = useModelSelectorContext("ModelSelectorGroup");
12
+ const prefixCls = getPrefixCls("model-selector-group");
13
+ const uid = getCurrentInstance().uid;
14
+ const id = Symbol(`model-selector-group-${uid}`);
15
+ const headingId = `${context.listId}-group-${uid}`;
16
+ const hasVisibleItems = computed(() => context.getVisibleItems(id).length > 0);
17
+ provide(modelSelectorGroupInjectionKey, { id });
18
+ return (_ctx, _cache) => {
19
+ return withDirectives((openBlock(), createElementBlock("section", {
20
+ class: normalizeClass(unref(prefixCls)),
21
+ role: "group",
22
+ "aria-labelledby": headingId
23
+ }, [__props.heading || _ctx.$slots.heading ? (openBlock(), createElementBlock("div", {
24
+ key: 0,
25
+ id: headingId,
26
+ class: normalizeClass(`${unref(prefixCls)}-heading`)
27
+ }, [renderSlot(_ctx.$slots, "heading", {}, () => [createTextVNode(toDisplayString(__props.heading), 1)])], 2)) : createCommentVNode("", true), createElementVNode("div", { class: normalizeClass(`${unref(prefixCls)}-content`) }, [renderSlot(_ctx.$slots, "default")], 2)], 2)), [[vShow, hasVisibleItems.value]]);
28
+ };
29
+ }
30
+ }));
31
+ //#endregion
32
+ export { model_selector_group_vue_vue_type_script_setup_true_lang_default as default };
@@ -0,0 +1,5 @@
1
+ import model_selector_input_vue_vue_type_script_setup_true_lang_default from "./model-selector-input.vue_vue_type_script_setup_true_lang.js";
2
+ //#region components/model-selector/model-selector-input.vue
3
+ var model_selector_input_default = model_selector_input_vue_vue_type_script_setup_true_lang_default;
4
+ //#endregion
5
+ export { model_selector_input_default as default };
@@ -0,0 +1,11 @@
1
+ type __VLS_Props = {
2
+ modelValue?: string;
3
+ inputAttrs?: Record<string, unknown>;
4
+ };
5
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
6
+ "update:modelValue": (_value: string) => any;
7
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
8
+ "onUpdate:modelValue"?: ((_value: string) => any) | undefined;
9
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
10
+ declare const _default: typeof __VLS_export;
11
+ export default _default;
@@ -0,0 +1,80 @@
1
+ import _objectSpread2 from "../_virtual/_@oxc-project_runtime@0.139.0/helpers/esm/objectSpread2.js";
2
+ import { getPrefixCls } from "../_utils/global-config.js";
3
+ import IconSearch from "../icon/icon-search/index.js";
4
+ import Input from "../input/index.js";
5
+ import { useModelSelectorContext } from "./use-model-selector-context.js";
6
+ import { computed, createElementBlock, createVNode, defineComponent, mergeProps, normalizeClass, openBlock, unref, withCtx } from "vue";
7
+ //#region components/model-selector/model-selector-input.vue?vue&type=script&setup=true&lang.ts
8
+ var model_selector_input_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent(_objectSpread2(_objectSpread2({}, {
9
+ name: "ModelSelectorInput",
10
+ inheritAttrs: false
11
+ }), {}, {
12
+ __name: "model-selector-input",
13
+ props: {
14
+ modelValue: {},
15
+ inputAttrs: {}
16
+ },
17
+ emits: ["update:modelValue"],
18
+ setup(__props, { emit: __emit }) {
19
+ const props = __props;
20
+ const emit = __emit;
21
+ const context = useModelSelectorContext("ModelSelectorInput");
22
+ const prefixCls = getPrefixCls("model-selector-input");
23
+ const mergedValue = computed(() => {
24
+ var _props$modelValue;
25
+ return (_props$modelValue = props.modelValue) !== null && _props$modelValue !== void 0 ? _props$modelValue : context.query.value;
26
+ });
27
+ const mergedInputAttrs = computed(() => _objectSpread2(_objectSpread2({}, props.inputAttrs), {}, {
28
+ "type": "search",
29
+ "role": "combobox",
30
+ "autocomplete": "off",
31
+ "aria-controls": context.listId,
32
+ "aria-expanded": context.visible.value,
33
+ "aria-activedescendant": context.activeDescendant.value
34
+ }));
35
+ function handleInput(value) {
36
+ context.query.value = value;
37
+ emit("update:modelValue", value);
38
+ }
39
+ function handleKeydown(event) {
40
+ if (event.key === "ArrowDown") {
41
+ event.preventDefault();
42
+ context.moveActive(1);
43
+ return;
44
+ }
45
+ if (event.key === "ArrowUp") {
46
+ event.preventDefault();
47
+ context.moveActive(-1);
48
+ return;
49
+ }
50
+ if (event.key === "Enter") {
51
+ event.preventDefault();
52
+ context.selectActive(event);
53
+ return;
54
+ }
55
+ if (event.key === "Escape") {
56
+ event.preventDefault();
57
+ event.stopPropagation();
58
+ context.setVisible(false);
59
+ }
60
+ }
61
+ return (_ctx, _cache) => {
62
+ return openBlock(), createElementBlock("div", { class: normalizeClass(`${unref(prefixCls)}-container`) }, [createVNode(unref(Input), mergeProps(_ctx.$attrs, {
63
+ "model-value": mergedValue.value,
64
+ class: unref(prefixCls),
65
+ "input-attrs": mergedInputAttrs.value,
66
+ onInput: handleInput,
67
+ onKeydown: handleKeydown
68
+ }), {
69
+ prefix: withCtx(() => [createVNode(unref(IconSearch))]),
70
+ _: 1
71
+ }, 16, [
72
+ "model-value",
73
+ "class",
74
+ "input-attrs"
75
+ ])], 2);
76
+ };
77
+ }
78
+ }));
79
+ //#endregion
80
+ export { model_selector_input_vue_vue_type_script_setup_true_lang_default as default };
@@ -0,0 +1,5 @@
1
+ import model_selector_item_vue_vue_type_script_setup_true_lang_default from "./model-selector-item.vue_vue_type_script_setup_true_lang.js";
2
+ //#region components/model-selector/model-selector-item.vue
3
+ var model_selector_item_default = model_selector_item_vue_vue_type_script_setup_true_lang_default;
4
+ //#endregion
5
+ export { model_selector_item_default as default };
@@ -0,0 +1,35 @@
1
+ type __VLS_Props = {
2
+ value: string;
3
+ label?: string;
4
+ keywords?: string[];
5
+ disabled?: boolean;
6
+ selected?: boolean;
7
+ shortcut?: string;
8
+ };
9
+ declare var __VLS_1: {
10
+ active: boolean;
11
+ disabled: boolean;
12
+ selected: boolean;
13
+ };
14
+ type __VLS_Slots = {} & {
15
+ default?: (props: typeof __VLS_1) => any;
16
+ };
17
+ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
18
+ select: (_value: string, _event: Event) => any;
19
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
20
+ onSelect?: ((_value: string, _event: Event) => any) | undefined;
21
+ }>, {
22
+ disabled: boolean;
23
+ label: string;
24
+ selected: boolean;
25
+ keywords: string[];
26
+ shortcut: string;
27
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
28
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
29
+ declare const _default: typeof __VLS_export;
30
+ export default _default;
31
+ type __VLS_WithSlots<T, S> = T & {
32
+ new (): {
33
+ $slots: S;
34
+ };
35
+ };
@@ -0,0 +1,101 @@
1
+ import _objectSpread2 from "../_virtual/_@oxc-project_runtime@0.139.0/helpers/esm/objectSpread2.js";
2
+ import { getPrefixCls } from "../_utils/global-config.js";
3
+ import { modelSelectorGroupInjectionKey } from "./context.js";
4
+ import { useModelSelectorContext } from "./use-model-selector-context.js";
5
+ import { computed, createElementBlock, defineComponent, getCurrentInstance, inject, normalizeClass, onBeforeUnmount, onMounted, openBlock, renderSlot, unref, useTemplateRef, vShow, watch, withDirectives } from "vue";
6
+ //#region components/model-selector/model-selector-item.vue?vue&type=script&setup=true&lang.ts
7
+ var _hoisted_1 = [
8
+ "aria-disabled",
9
+ "aria-keyshortcuts",
10
+ "aria-selected"
11
+ ];
12
+ var model_selector_item_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent(_objectSpread2(_objectSpread2({}, { name: "ModelSelectorItem" }), {}, {
13
+ __name: "model-selector-item",
14
+ props: {
15
+ value: {},
16
+ label: { default: "" },
17
+ keywords: { default: () => [] },
18
+ disabled: {
19
+ type: Boolean,
20
+ default: false
21
+ },
22
+ selected: {
23
+ type: Boolean,
24
+ default: false
25
+ },
26
+ shortcut: { default: "" }
27
+ },
28
+ emits: ["select"],
29
+ setup(__props, { emit: __emit }) {
30
+ const props = __props;
31
+ const emit = __emit;
32
+ const context = useModelSelectorContext("ModelSelectorItem");
33
+ const groupContext = inject(modelSelectorGroupInjectionKey, void 0);
34
+ const prefixCls = getPrefixCls("model-selector-item");
35
+ const uid = getCurrentInstance().uid;
36
+ const id = Symbol(`model-selector-item-${uid}`);
37
+ const domId = `${context.listId}-item-${uid}`;
38
+ const itemRef = useTemplateRef("item");
39
+ const renderedLabel = computed(() => {
40
+ var _itemRef$value;
41
+ return props.label || ((_itemRef$value = itemRef.value) === null || _itemRef$value === void 0 || (_itemRef$value = _itemRef$value.textContent) === null || _itemRef$value === void 0 ? void 0 : _itemRef$value.trim()) || props.value;
42
+ });
43
+ const isActive = computed(() => context.activeId.value === id);
44
+ const isVisible = computed(() => {
45
+ context.itemsVersion.value;
46
+ return context.getVisibleItems(groupContext === null || groupContext === void 0 ? void 0 : groupContext.id).some((item) => item.id === id);
47
+ });
48
+ function getItemData() {
49
+ var _itemRef$value2;
50
+ return {
51
+ disabled: props.disabled,
52
+ domId,
53
+ element: (_itemRef$value2 = itemRef.value) !== null && _itemRef$value2 !== void 0 ? _itemRef$value2 : void 0,
54
+ groupId: groupContext === null || groupContext === void 0 ? void 0 : groupContext.id,
55
+ id,
56
+ keywords: props.keywords,
57
+ label: renderedLabel.value,
58
+ select: handleSelect,
59
+ shortcut: props.shortcut.trim() || void 0,
60
+ value: props.value
61
+ };
62
+ }
63
+ function handleSelect(event) {
64
+ if (props.disabled) return;
65
+ emit("select", props.value, event);
66
+ context.selectItem(getItemData(), event);
67
+ }
68
+ onMounted(() => context.registerItem(getItemData()));
69
+ onBeforeUnmount(() => context.unregisterItem(id));
70
+ watch(() => [
71
+ props.value,
72
+ props.label,
73
+ props.keywords,
74
+ props.disabled,
75
+ props.shortcut
76
+ ], () => context.updateItem(getItemData()), { deep: true });
77
+ return (_ctx, _cache) => {
78
+ return withDirectives((openBlock(), createElementBlock("div", {
79
+ id: domId,
80
+ ref: "item",
81
+ class: normalizeClass([unref(prefixCls), {
82
+ [`${unref(prefixCls)}--active`]: isActive.value,
83
+ [`${unref(prefixCls)}--disabled`]: __props.disabled,
84
+ [`${unref(prefixCls)}--selected`]: __props.selected
85
+ }]),
86
+ role: "option",
87
+ "aria-disabled": __props.disabled,
88
+ "aria-keyshortcuts": __props.shortcut || void 0,
89
+ "aria-selected": __props.selected,
90
+ onClick: handleSelect,
91
+ onMouseenter: _cache[0] || (_cache[0] = ($event) => unref(context).setActive(unref(id)))
92
+ }, [renderSlot(_ctx.$slots, "default", {
93
+ active: isActive.value,
94
+ disabled: __props.disabled,
95
+ selected: __props.selected
96
+ })], 42, _hoisted_1)), [[vShow, isVisible.value]]);
97
+ };
98
+ }
99
+ }));
100
+ //#endregion
101
+ export { model_selector_item_vue_vue_type_script_setup_true_lang_default as default };
@@ -0,0 +1,5 @@
1
+ import model_selector_list_vue_vue_type_script_setup_true_lang_default from "./model-selector-list.vue_vue_type_script_setup_true_lang.js";
2
+ //#region components/model-selector/model-selector-list.vue
3
+ var model_selector_list_default = model_selector_list_vue_vue_type_script_setup_true_lang_default;
4
+ //#endregion
5
+ export { model_selector_list_default as default };
@@ -0,0 +1,13 @@
1
+ declare var __VLS_8: {};
2
+ type __VLS_Slots = {} & {
3
+ default?: (props: typeof __VLS_8) => any;
4
+ };
5
+ declare const __VLS_base: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
6
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
7
+ declare const _default: typeof __VLS_export;
8
+ export default _default;
9
+ type __VLS_WithSlots<T, S> = T & {
10
+ new (): {
11
+ $slots: S;
12
+ };
13
+ };
@@ -0,0 +1,36 @@
1
+ import _objectSpread2 from "../_virtual/_@oxc-project_runtime@0.139.0/helpers/esm/objectSpread2.js";
2
+ import { getPrefixCls } from "../_utils/global-config.js";
3
+ import Scrollbar from "../scrollbar/index.js";
4
+ import { useModelSelectorContext } from "./use-model-selector-context.js";
5
+ import { createBlock, defineComponent, normalizeClass, openBlock, renderSlot, unref, withCtx } from "vue";
6
+ //#region components/model-selector/model-selector-list.vue?vue&type=script&setup=true&lang.ts
7
+ var model_selector_list_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent(_objectSpread2(_objectSpread2({}, { name: "ModelSelectorList" }), {}, {
8
+ __name: "model-selector-list",
9
+ setup(__props) {
10
+ const prefixCls = getPrefixCls("model-selector-list");
11
+ const context = useModelSelectorContext("ModelSelectorList");
12
+ const outerStyle = {
13
+ height: `calc(100dvh - var(--${prefixCls}-viewport-offset))`,
14
+ maxHeight: `var(--${prefixCls}-max-height)`
15
+ };
16
+ return (_ctx, _cache) => {
17
+ return openBlock(), createBlock(unref(Scrollbar), {
18
+ id: unref(context).listId,
19
+ class: normalizeClass(`${unref(prefixCls)}-content`),
20
+ "outer-class": unref(prefixCls),
21
+ "outer-style": outerStyle,
22
+ role: "listbox",
23
+ "disable-horizontal": ""
24
+ }, {
25
+ default: withCtx(() => [renderSlot(_ctx.$slots, "default")]),
26
+ _: 3
27
+ }, 8, [
28
+ "id",
29
+ "class",
30
+ "outer-class"
31
+ ]);
32
+ };
33
+ }
34
+ }));
35
+ //#endregion
36
+ export { model_selector_list_vue_vue_type_script_setup_true_lang_default as default };
@@ -0,0 +1,5 @@
1
+ import model_selector_logo_group_vue_vue_type_script_setup_true_lang_default from "./model-selector-logo-group.vue_vue_type_script_setup_true_lang.js";
2
+ //#region components/model-selector/model-selector-logo-group.vue
3
+ var model_selector_logo_group_default = model_selector_logo_group_vue_vue_type_script_setup_true_lang_default;
4
+ //#endregion
5
+ export { model_selector_logo_group_default as default };
@@ -0,0 +1,13 @@
1
+ declare var __VLS_1: {};
2
+ type __VLS_Slots = {} & {
3
+ default?: (props: typeof __VLS_1) => any;
4
+ };
5
+ declare const __VLS_base: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
6
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
7
+ declare const _default: typeof __VLS_export;
8
+ export default _default;
9
+ type __VLS_WithSlots<T, S> = T & {
10
+ new (): {
11
+ $slots: S;
12
+ };
13
+ };
@@ -0,0 +1,15 @@
1
+ import _objectSpread2 from "../_virtual/_@oxc-project_runtime@0.139.0/helpers/esm/objectSpread2.js";
2
+ import { getPrefixCls } from "../_utils/global-config.js";
3
+ import { createElementBlock, defineComponent, normalizeClass, openBlock, renderSlot, unref } from "vue";
4
+ //#region components/model-selector/model-selector-logo-group.vue?vue&type=script&setup=true&lang.ts
5
+ var model_selector_logo_group_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent(_objectSpread2(_objectSpread2({}, { name: "ModelSelectorLogoGroup" }), {}, {
6
+ __name: "model-selector-logo-group",
7
+ setup(__props) {
8
+ const prefixCls = getPrefixCls("model-selector-logo-group");
9
+ return (_ctx, _cache) => {
10
+ return openBlock(), createElementBlock("span", { class: normalizeClass(unref(prefixCls)) }, [renderSlot(_ctx.$slots, "default")], 2);
11
+ };
12
+ }
13
+ }));
14
+ //#endregion
15
+ export { model_selector_logo_group_vue_vue_type_script_setup_true_lang_default as default };
@@ -0,0 +1,5 @@
1
+ import model_selector_logo_vue_vue_type_script_setup_true_lang_default from "./model-selector-logo.vue_vue_type_script_setup_true_lang.js";
2
+ //#region components/model-selector/model-selector-logo.vue
3
+ var model_selector_logo_default = model_selector_logo_vue_vue_type_script_setup_true_lang_default;
4
+ //#endregion
5
+ export { model_selector_logo_default as default };
@@ -0,0 +1,10 @@
1
+ import type { ModelSelectorProvider } from './types';
2
+ type __VLS_Props = {
3
+ provider: ModelSelectorProvider;
4
+ alt?: string;
5
+ width?: number | string;
6
+ height?: number | string;
7
+ };
8
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
9
+ declare const _default: typeof __VLS_export;
10
+ export default _default;