@sdata/web-vue 3.23.0 → 3.24.0
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/dist/sd.css +128 -0
- package/dist/sd.min.css +1 -1
- package/es/components.d.ts +14 -0
- package/es/index.css +128 -0
- package/es/index.d.ts +2 -0
- package/es/index.js +16 -1
- package/es/index.scss +1 -0
- package/es/model-selector/assets/logos/aihubmix.js +4 -0
- package/es/model-selector/assets/logos/alibaba-cn.js +4 -0
- package/es/model-selector/assets/logos/alibaba.js +4 -0
- package/es/model-selector/assets/logos/amazon-bedrock.js +4 -0
- package/es/model-selector/assets/logos/anthropic.js +4 -0
- package/es/model-selector/assets/logos/azure.js +4 -0
- package/es/model-selector/assets/logos/baseten.js +4 -0
- package/es/model-selector/assets/logos/cerebras.js +4 -0
- package/es/model-selector/assets/logos/chutes.js +4 -0
- package/es/model-selector/assets/logos/cloudflare-workers-ai.js +4 -0
- package/es/model-selector/assets/logos/cortecs.js +4 -0
- package/es/model-selector/assets/logos/deepinfra.js +4 -0
- package/es/model-selector/assets/logos/deepseek.js +4 -0
- package/es/model-selector/assets/logos/default.js +4 -0
- package/es/model-selector/assets/logos/fastrouter.js +4 -0
- package/es/model-selector/assets/logos/fireworks-ai.js +4 -0
- package/es/model-selector/assets/logos/github-copilot.js +4 -0
- package/es/model-selector/assets/logos/github-models.js +4 -0
- package/es/model-selector/assets/logos/google-vertex-anthropic.js +4 -0
- package/es/model-selector/assets/logos/google-vertex.js +4 -0
- package/es/model-selector/assets/logos/google.js +4 -0
- package/es/model-selector/assets/logos/groq.js +4 -0
- package/es/model-selector/assets/logos/huggingface.js +4 -0
- package/es/model-selector/assets/logos/iflowcn.js +4 -0
- package/es/model-selector/assets/logos/inception.js +4 -0
- package/es/model-selector/assets/logos/inference.js +4 -0
- package/es/model-selector/assets/logos/llama.js +4 -0
- package/es/model-selector/assets/logos/lucidquery.js +4 -0
- package/es/model-selector/assets/logos/mistral.js +4 -0
- package/es/model-selector/assets/logos/modelscope.js +4 -0
- package/es/model-selector/assets/logos/moonshotai-cn.js +4 -0
- package/es/model-selector/assets/logos/moonshotai.js +4 -0
- package/es/model-selector/assets/logos/nebius.js +4 -0
- package/es/model-selector/assets/logos/nvidia.js +4 -0
- package/es/model-selector/assets/logos/openai.js +4 -0
- package/es/model-selector/assets/logos/opencode.js +4 -0
- package/es/model-selector/assets/logos/openrouter.js +4 -0
- package/es/model-selector/assets/logos/perplexity.js +4 -0
- package/es/model-selector/assets/logos/scaleway.js +4 -0
- package/es/model-selector/assets/logos/submodel.js +4 -0
- package/es/model-selector/assets/logos/togetherai.js +4 -0
- package/es/model-selector/assets/logos/upstage.js +4 -0
- package/es/model-selector/assets/logos/v0.js +4 -0
- package/es/model-selector/assets/logos/venice.js +4 -0
- package/es/model-selector/assets/logos/vercel.js +4 -0
- package/es/model-selector/assets/logos/vultr.js +4 -0
- package/es/model-selector/assets/logos/xai.js +4 -0
- package/es/model-selector/assets/logos/zai-coding-plan.js +4 -0
- package/es/model-selector/assets/logos/zai.js +4 -0
- package/es/model-selector/assets/logos/zenmux.js +4 -0
- package/es/model-selector/assets/logos/zhipuai-coding-plan.js +4 -0
- package/es/model-selector/assets/logos/zhipuai.js +4 -0
- package/es/model-selector/context.d.ts +25 -0
- package/es/model-selector/context.js +5 -0
- package/es/model-selector/index.d.ts +436 -0
- package/es/model-selector/index.js +57 -0
- package/es/model-selector/model-selector-content.js +5 -0
- package/es/model-selector/model-selector-content.vue.d.ts +21 -0
- package/es/model-selector/model-selector-content.vue_vue_type_script_setup_true_lang.js +65 -0
- package/es/model-selector/model-selector-dialog.js +5 -0
- package/es/model-selector/model-selector-dialog.vue.d.ts +36 -0
- package/es/model-selector/model-selector-dialog.vue_vue_type_script_setup_true_lang.js +98 -0
- package/es/model-selector/model-selector-empty.js +5 -0
- package/es/model-selector/model-selector-empty.vue.d.ts +13 -0
- package/es/model-selector/model-selector-empty.vue_vue_type_script_setup_true_lang.js +25 -0
- package/es/model-selector/model-selector-group.js +5 -0
- package/es/model-selector/model-selector-group.vue.d.ts +18 -0
- package/es/model-selector/model-selector-group.vue_vue_type_script_setup_true_lang.js +32 -0
- package/es/model-selector/model-selector-input.js +5 -0
- package/es/model-selector/model-selector-input.vue.d.ts +11 -0
- package/es/model-selector/model-selector-input.vue_vue_type_script_setup_true_lang.js +80 -0
- package/es/model-selector/model-selector-item.js +5 -0
- package/es/model-selector/model-selector-item.vue.d.ts +35 -0
- package/es/model-selector/model-selector-item.vue_vue_type_script_setup_true_lang.js +101 -0
- package/es/model-selector/model-selector-list.js +5 -0
- package/es/model-selector/model-selector-list.vue.d.ts +13 -0
- package/es/model-selector/model-selector-list.vue_vue_type_script_setup_true_lang.js +36 -0
- package/es/model-selector/model-selector-logo-group.js +5 -0
- package/es/model-selector/model-selector-logo-group.vue.d.ts +13 -0
- package/es/model-selector/model-selector-logo-group.vue_vue_type_script_setup_true_lang.js +15 -0
- package/es/model-selector/model-selector-logo.js +5 -0
- package/es/model-selector/model-selector-logo.vue.d.ts +10 -0
- package/es/model-selector/model-selector-logo.vue_vue_type_script_setup_true_lang.js +146 -0
- package/es/model-selector/model-selector-name.js +5 -0
- package/es/model-selector/model-selector-name.vue.d.ts +13 -0
- package/es/model-selector/model-selector-name.vue_vue_type_script_setup_true_lang.js +15 -0
- package/es/model-selector/model-selector-separator.js +5 -0
- package/es/model-selector/model-selector-separator.vue.d.ts +3 -0
- package/es/model-selector/model-selector-separator.vue_vue_type_script_setup_true_lang.js +16 -0
- package/es/model-selector/model-selector-shortcut.js +5 -0
- package/es/model-selector/model-selector-shortcut.vue.d.ts +13 -0
- package/es/model-selector/model-selector-shortcut.vue_vue_type_script_setup_true_lang.js +15 -0
- package/es/model-selector/model-selector-trigger.js +5 -0
- package/es/model-selector/model-selector-trigger.vue.d.ts +20 -0
- package/es/model-selector/model-selector-trigger.vue_vue_type_script_setup_true_lang.js +39 -0
- package/es/model-selector/model-selector.js +5 -0
- package/es/model-selector/model-selector.vue.d.ts +34 -0
- package/es/model-selector/model-selector.vue_vue_type_script_setup_true_lang.js +179 -0
- package/es/model-selector/style/css.js +2 -0
- package/es/model-selector/style/index.css +144 -0
- package/es/model-selector/style/index.d.ts +2 -0
- package/es/model-selector/style/index.js +2 -0
- package/es/model-selector/style/index.scss +157 -0
- package/es/model-selector/style/token.scss +24 -0
- package/es/model-selector/types.d.ts +16 -0
- package/es/model-selector/types.js +61 -0
- package/es/model-selector/use-model-selector-context.d.ts +1 -0
- package/es/model-selector/use-model-selector-context.js +10 -0
- package/es/rich-text-editor/rich-text-editor.vue_vue_type_script_setup_true_lang.js +16 -18
- package/es/sd-vue.js +2 -0
- package/es/sender/sender.vue_vue_type_script_setup_true_lang.js +1 -1
- package/es/sender/types.d.ts +2 -1
- package/json/vetur-attributes.json +95 -0
- package/json/vetur-tags.json +75 -0
- package/json/web-types.json +290 -1
- package/package.json +1 -1
|
@@ -0,0 +1,146 @@
|
|
|
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 aihubmix_default from "./assets/logos/aihubmix.js";
|
|
4
|
+
import alibaba_cn_default from "./assets/logos/alibaba-cn.js";
|
|
5
|
+
import alibaba_default from "./assets/logos/alibaba.js";
|
|
6
|
+
import amazon_bedrock_default from "./assets/logos/amazon-bedrock.js";
|
|
7
|
+
import anthropic_default from "./assets/logos/anthropic.js";
|
|
8
|
+
import azure_default from "./assets/logos/azure.js";
|
|
9
|
+
import baseten_default from "./assets/logos/baseten.js";
|
|
10
|
+
import cerebras_default from "./assets/logos/cerebras.js";
|
|
11
|
+
import chutes_default from "./assets/logos/chutes.js";
|
|
12
|
+
import cloudflare_workers_ai_default from "./assets/logos/cloudflare-workers-ai.js";
|
|
13
|
+
import cortecs_default from "./assets/logos/cortecs.js";
|
|
14
|
+
import deepinfra_default from "./assets/logos/deepinfra.js";
|
|
15
|
+
import deepseek_default from "./assets/logos/deepseek.js";
|
|
16
|
+
import default_default from "./assets/logos/default.js";
|
|
17
|
+
import fastrouter_default from "./assets/logos/fastrouter.js";
|
|
18
|
+
import fireworks_ai_default from "./assets/logos/fireworks-ai.js";
|
|
19
|
+
import github_copilot_default from "./assets/logos/github-copilot.js";
|
|
20
|
+
import github_models_default from "./assets/logos/github-models.js";
|
|
21
|
+
import google_vertex_anthropic_default from "./assets/logos/google-vertex-anthropic.js";
|
|
22
|
+
import google_vertex_default from "./assets/logos/google-vertex.js";
|
|
23
|
+
import google_default from "./assets/logos/google.js";
|
|
24
|
+
import groq_default from "./assets/logos/groq.js";
|
|
25
|
+
import huggingface_default from "./assets/logos/huggingface.js";
|
|
26
|
+
import iflowcn_default from "./assets/logos/iflowcn.js";
|
|
27
|
+
import inception_default from "./assets/logos/inception.js";
|
|
28
|
+
import inference_default from "./assets/logos/inference.js";
|
|
29
|
+
import llama_default from "./assets/logos/llama.js";
|
|
30
|
+
import lucidquery_default from "./assets/logos/lucidquery.js";
|
|
31
|
+
import mistral_default from "./assets/logos/mistral.js";
|
|
32
|
+
import modelscope_default from "./assets/logos/modelscope.js";
|
|
33
|
+
import moonshotai_cn_default from "./assets/logos/moonshotai-cn.js";
|
|
34
|
+
import moonshotai_default from "./assets/logos/moonshotai.js";
|
|
35
|
+
import nebius_default from "./assets/logos/nebius.js";
|
|
36
|
+
import nvidia_default from "./assets/logos/nvidia.js";
|
|
37
|
+
import openai_default from "./assets/logos/openai.js";
|
|
38
|
+
import opencode_default from "./assets/logos/opencode.js";
|
|
39
|
+
import openrouter_default from "./assets/logos/openrouter.js";
|
|
40
|
+
import perplexity_default from "./assets/logos/perplexity.js";
|
|
41
|
+
import scaleway_default from "./assets/logos/scaleway.js";
|
|
42
|
+
import submodel_default from "./assets/logos/submodel.js";
|
|
43
|
+
import togetherai_default from "./assets/logos/togetherai.js";
|
|
44
|
+
import upstage_default from "./assets/logos/upstage.js";
|
|
45
|
+
import v0_default from "./assets/logos/v0.js";
|
|
46
|
+
import venice_default from "./assets/logos/venice.js";
|
|
47
|
+
import vercel_default from "./assets/logos/vercel.js";
|
|
48
|
+
import vultr_default from "./assets/logos/vultr.js";
|
|
49
|
+
import xai_default from "./assets/logos/xai.js";
|
|
50
|
+
import zai_coding_plan_default from "./assets/logos/zai-coding-plan.js";
|
|
51
|
+
import zai_default from "./assets/logos/zai.js";
|
|
52
|
+
import zenmux_default from "./assets/logos/zenmux.js";
|
|
53
|
+
import zhipuai_coding_plan_default from "./assets/logos/zhipuai-coding-plan.js";
|
|
54
|
+
import zhipuai_default from "./assets/logos/zhipuai.js";
|
|
55
|
+
import { computed, createElementBlock, defineComponent, mergeProps, openBlock, unref } from "vue";
|
|
56
|
+
//#region components/model-selector/model-selector-logo.vue?vue&type=script&setup=true&lang.ts
|
|
57
|
+
var _hoisted_1 = [
|
|
58
|
+
"src",
|
|
59
|
+
"alt",
|
|
60
|
+
"width",
|
|
61
|
+
"height"
|
|
62
|
+
];
|
|
63
|
+
var model_selector_logo_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent(_objectSpread2(_objectSpread2({}, {
|
|
64
|
+
name: "ModelSelectorLogo",
|
|
65
|
+
inheritAttrs: false
|
|
66
|
+
}), {}, {
|
|
67
|
+
__name: "model-selector-logo",
|
|
68
|
+
props: {
|
|
69
|
+
provider: {},
|
|
70
|
+
alt: {},
|
|
71
|
+
width: { default: 16 },
|
|
72
|
+
height: { default: 16 }
|
|
73
|
+
},
|
|
74
|
+
setup(__props) {
|
|
75
|
+
const logoModules = /* #__PURE__ */ Object.assign({
|
|
76
|
+
"./assets/logos/aihubmix.svg": aihubmix_default,
|
|
77
|
+
"./assets/logos/alibaba-cn.svg": alibaba_cn_default,
|
|
78
|
+
"./assets/logos/alibaba.svg": alibaba_default,
|
|
79
|
+
"./assets/logos/amazon-bedrock.svg": amazon_bedrock_default,
|
|
80
|
+
"./assets/logos/anthropic.svg": anthropic_default,
|
|
81
|
+
"./assets/logos/azure.svg": azure_default,
|
|
82
|
+
"./assets/logos/baseten.svg": baseten_default,
|
|
83
|
+
"./assets/logos/cerebras.svg": cerebras_default,
|
|
84
|
+
"./assets/logos/chutes.svg": chutes_default,
|
|
85
|
+
"./assets/logos/cloudflare-workers-ai.svg": cloudflare_workers_ai_default,
|
|
86
|
+
"./assets/logos/cortecs.svg": cortecs_default,
|
|
87
|
+
"./assets/logos/deepinfra.svg": deepinfra_default,
|
|
88
|
+
"./assets/logos/deepseek.svg": deepseek_default,
|
|
89
|
+
"./assets/logos/default.svg": default_default,
|
|
90
|
+
"./assets/logos/fastrouter.svg": fastrouter_default,
|
|
91
|
+
"./assets/logos/fireworks-ai.svg": fireworks_ai_default,
|
|
92
|
+
"./assets/logos/github-copilot.svg": github_copilot_default,
|
|
93
|
+
"./assets/logos/github-models.svg": github_models_default,
|
|
94
|
+
"./assets/logos/google-vertex-anthropic.svg": google_vertex_anthropic_default,
|
|
95
|
+
"./assets/logos/google-vertex.svg": google_vertex_default,
|
|
96
|
+
"./assets/logos/google.svg": google_default,
|
|
97
|
+
"./assets/logos/groq.svg": groq_default,
|
|
98
|
+
"./assets/logos/huggingface.svg": huggingface_default,
|
|
99
|
+
"./assets/logos/iflowcn.svg": iflowcn_default,
|
|
100
|
+
"./assets/logos/inception.svg": inception_default,
|
|
101
|
+
"./assets/logos/inference.svg": inference_default,
|
|
102
|
+
"./assets/logos/llama.svg": llama_default,
|
|
103
|
+
"./assets/logos/lucidquery.svg": lucidquery_default,
|
|
104
|
+
"./assets/logos/mistral.svg": mistral_default,
|
|
105
|
+
"./assets/logos/modelscope.svg": modelscope_default,
|
|
106
|
+
"./assets/logos/moonshotai-cn.svg": moonshotai_cn_default,
|
|
107
|
+
"./assets/logos/moonshotai.svg": moonshotai_default,
|
|
108
|
+
"./assets/logos/nebius.svg": nebius_default,
|
|
109
|
+
"./assets/logos/nvidia.svg": nvidia_default,
|
|
110
|
+
"./assets/logos/openai.svg": openai_default,
|
|
111
|
+
"./assets/logos/opencode.svg": opencode_default,
|
|
112
|
+
"./assets/logos/openrouter.svg": openrouter_default,
|
|
113
|
+
"./assets/logos/perplexity.svg": perplexity_default,
|
|
114
|
+
"./assets/logos/scaleway.svg": scaleway_default,
|
|
115
|
+
"./assets/logos/submodel.svg": submodel_default,
|
|
116
|
+
"./assets/logos/togetherai.svg": togetherai_default,
|
|
117
|
+
"./assets/logos/upstage.svg": upstage_default,
|
|
118
|
+
"./assets/logos/v0.svg": v0_default,
|
|
119
|
+
"./assets/logos/venice.svg": venice_default,
|
|
120
|
+
"./assets/logos/vercel.svg": vercel_default,
|
|
121
|
+
"./assets/logos/vultr.svg": vultr_default,
|
|
122
|
+
"./assets/logos/xai.svg": xai_default,
|
|
123
|
+
"./assets/logos/zai-coding-plan.svg": zai_coding_plan_default,
|
|
124
|
+
"./assets/logos/zai.svg": zai_default,
|
|
125
|
+
"./assets/logos/zenmux.svg": zenmux_default,
|
|
126
|
+
"./assets/logos/zhipuai-coding-plan.svg": zhipuai_coding_plan_default,
|
|
127
|
+
"./assets/logos/zhipuai.svg": zhipuai_default
|
|
128
|
+
});
|
|
129
|
+
const prefixCls = getPrefixCls("model-selector-logo");
|
|
130
|
+
const source = computed(() => {
|
|
131
|
+
var _logoModules;
|
|
132
|
+
return (_logoModules = logoModules[`./assets/logos/${__props.provider}.svg`]) !== null && _logoModules !== void 0 ? _logoModules : logoModules["./assets/logos/default.svg"];
|
|
133
|
+
});
|
|
134
|
+
return (_ctx, _cache) => {
|
|
135
|
+
return openBlock(), createElementBlock("img", mergeProps(_ctx.$attrs, {
|
|
136
|
+
class: unref(prefixCls),
|
|
137
|
+
src: source.value,
|
|
138
|
+
alt: __props.alt || `${__props.provider} logo`,
|
|
139
|
+
width: __props.width,
|
|
140
|
+
height: __props.height
|
|
141
|
+
}), null, 16, _hoisted_1);
|
|
142
|
+
};
|
|
143
|
+
}
|
|
144
|
+
}));
|
|
145
|
+
//#endregion
|
|
146
|
+
export { model_selector_logo_vue_vue_type_script_setup_true_lang_default as default };
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import model_selector_name_vue_vue_type_script_setup_true_lang_default from "./model-selector-name.vue_vue_type_script_setup_true_lang.js";
|
|
2
|
+
//#region components/model-selector/model-selector-name.vue
|
|
3
|
+
var model_selector_name_default = model_selector_name_vue_vue_type_script_setup_true_lang_default;
|
|
4
|
+
//#endregion
|
|
5
|
+
export { model_selector_name_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-name.vue?vue&type=script&setup=true&lang.ts
|
|
5
|
+
var model_selector_name_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent(_objectSpread2(_objectSpread2({}, { name: "ModelSelectorName" }), {}, {
|
|
6
|
+
__name: "model-selector-name",
|
|
7
|
+
setup(__props) {
|
|
8
|
+
const prefixCls = getPrefixCls("model-selector-name");
|
|
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_name_vue_vue_type_script_setup_true_lang_default as default };
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import model_selector_separator_vue_vue_type_script_setup_true_lang_default from "./model-selector-separator.vue_vue_type_script_setup_true_lang.js";
|
|
2
|
+
//#region components/model-selector/model-selector-separator.vue
|
|
3
|
+
var model_selector_separator_default = model_selector_separator_vue_vue_type_script_setup_true_lang_default;
|
|
4
|
+
//#endregion
|
|
5
|
+
export { model_selector_separator_default as default };
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
declare const __VLS_export: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
2
|
+
declare const _default: typeof __VLS_export;
|
|
3
|
+
export default _default;
|
|
@@ -0,0 +1,16 @@
|
|
|
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 Divider from "../divider/index.js";
|
|
4
|
+
import { createBlock, defineComponent, normalizeClass, openBlock, unref } from "vue";
|
|
5
|
+
//#region components/model-selector/model-selector-separator.vue?vue&type=script&setup=true&lang.ts
|
|
6
|
+
var model_selector_separator_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent(_objectSpread2(_objectSpread2({}, { name: "ModelSelectorSeparator" }), {}, {
|
|
7
|
+
__name: "model-selector-separator",
|
|
8
|
+
setup(__props) {
|
|
9
|
+
const prefixCls = getPrefixCls("model-selector-separator");
|
|
10
|
+
return (_ctx, _cache) => {
|
|
11
|
+
return openBlock(), createBlock(unref(Divider), { class: normalizeClass(unref(prefixCls)) }, null, 8, ["class"]);
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
}));
|
|
15
|
+
//#endregion
|
|
16
|
+
export { model_selector_separator_vue_vue_type_script_setup_true_lang_default as default };
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import model_selector_shortcut_vue_vue_type_script_setup_true_lang_default from "./model-selector-shortcut.vue_vue_type_script_setup_true_lang.js";
|
|
2
|
+
//#region components/model-selector/model-selector-shortcut.vue
|
|
3
|
+
var model_selector_shortcut_default = model_selector_shortcut_vue_vue_type_script_setup_true_lang_default;
|
|
4
|
+
//#endregion
|
|
5
|
+
export { model_selector_shortcut_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-shortcut.vue?vue&type=script&setup=true&lang.ts
|
|
5
|
+
var model_selector_shortcut_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent(_objectSpread2(_objectSpread2({}, { name: "ModelSelectorShortcut" }), {}, {
|
|
6
|
+
__name: "model-selector-shortcut",
|
|
7
|
+
setup(__props) {
|
|
8
|
+
const prefixCls = getPrefixCls("model-selector-shortcut");
|
|
9
|
+
return (_ctx, _cache) => {
|
|
10
|
+
return openBlock(), createElementBlock("kbd", { class: normalizeClass(unref(prefixCls)) }, [renderSlot(_ctx.$slots, "default")], 2);
|
|
11
|
+
};
|
|
12
|
+
}
|
|
13
|
+
}));
|
|
14
|
+
//#endregion
|
|
15
|
+
export { model_selector_shortcut_vue_vue_type_script_setup_true_lang_default as default };
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import model_selector_trigger_vue_vue_type_script_setup_true_lang_default from "./model-selector-trigger.vue_vue_type_script_setup_true_lang.js";
|
|
2
|
+
//#region components/model-selector/model-selector-trigger.vue
|
|
3
|
+
var model_selector_trigger_default = model_selector_trigger_vue_vue_type_script_setup_true_lang_default;
|
|
4
|
+
//#endregion
|
|
5
|
+
export { model_selector_trigger_default as default };
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
type __VLS_Props = {
|
|
2
|
+
disabled?: boolean;
|
|
3
|
+
};
|
|
4
|
+
declare var __VLS_10: {
|
|
5
|
+
close: () => void;
|
|
6
|
+
open: () => void;
|
|
7
|
+
visible: boolean;
|
|
8
|
+
};
|
|
9
|
+
type __VLS_Slots = {} & {
|
|
10
|
+
default?: (props: typeof __VLS_10) => any;
|
|
11
|
+
};
|
|
12
|
+
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>;
|
|
13
|
+
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
14
|
+
declare const _default: typeof __VLS_export;
|
|
15
|
+
export default _default;
|
|
16
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
17
|
+
new (): {
|
|
18
|
+
$slots: S;
|
|
19
|
+
};
|
|
20
|
+
};
|
|
@@ -0,0 +1,39 @@
|
|
|
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 Button from "../button/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-trigger.vue?vue&type=script&setup=true&lang.ts
|
|
7
|
+
var model_selector_trigger_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent(_objectSpread2(_objectSpread2({}, { name: "ModelSelectorTrigger" }), {}, {
|
|
8
|
+
__name: "model-selector-trigger",
|
|
9
|
+
props: { disabled: {
|
|
10
|
+
type: Boolean,
|
|
11
|
+
default: false
|
|
12
|
+
} },
|
|
13
|
+
setup(__props) {
|
|
14
|
+
const prefixCls = getPrefixCls("model-selector-trigger");
|
|
15
|
+
const context = useModelSelectorContext("ModelSelectorTrigger");
|
|
16
|
+
return (_ctx, _cache) => {
|
|
17
|
+
return openBlock(), createBlock(unref(Button), {
|
|
18
|
+
class: normalizeClass(unref(prefixCls)),
|
|
19
|
+
"aria-expanded": unref(context).visible.value,
|
|
20
|
+
"aria-haspopup": "dialog",
|
|
21
|
+
disabled: __props.disabled,
|
|
22
|
+
onClick: _cache[0] || (_cache[0] = ($event) => unref(context).setVisible(!unref(context).visible.value))
|
|
23
|
+
}, {
|
|
24
|
+
default: withCtx(() => [renderSlot(_ctx.$slots, "default", {
|
|
25
|
+
close: () => unref(context).setVisible(false),
|
|
26
|
+
open: () => unref(context).setVisible(true),
|
|
27
|
+
visible: unref(context).visible.value
|
|
28
|
+
})]),
|
|
29
|
+
_: 3
|
|
30
|
+
}, 8, [
|
|
31
|
+
"class",
|
|
32
|
+
"aria-expanded",
|
|
33
|
+
"disabled"
|
|
34
|
+
]);
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
}));
|
|
38
|
+
//#endregion
|
|
39
|
+
export { model_selector_trigger_vue_vue_type_script_setup_true_lang_default as default };
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import model_selector_vue_vue_type_script_setup_true_lang_default from "./model-selector.vue_vue_type_script_setup_true_lang.js";
|
|
2
|
+
//#region components/model-selector/model-selector.vue
|
|
3
|
+
var model_selector_default = model_selector_vue_vue_type_script_setup_true_lang_default;
|
|
4
|
+
//#endregion
|
|
5
|
+
export { model_selector_default as default };
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
type __VLS_Props = {
|
|
2
|
+
defaultVisible?: boolean;
|
|
3
|
+
closeOnSelect?: boolean;
|
|
4
|
+
resetQueryOnClose?: boolean;
|
|
5
|
+
};
|
|
6
|
+
type __VLS_ModelProps = {
|
|
7
|
+
'visible'?: boolean;
|
|
8
|
+
};
|
|
9
|
+
type __VLS_PublicProps = __VLS_Props & __VLS_ModelProps;
|
|
10
|
+
declare var __VLS_1: {
|
|
11
|
+
close: () => void;
|
|
12
|
+
open: () => void;
|
|
13
|
+
visible: boolean;
|
|
14
|
+
};
|
|
15
|
+
type __VLS_Slots = {} & {
|
|
16
|
+
default?: (props: typeof __VLS_1) => any;
|
|
17
|
+
};
|
|
18
|
+
declare const __VLS_base: import("vue").DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
19
|
+
select: (_value: string, _event: Event) => any;
|
|
20
|
+
"update:visible": (value: boolean | undefined) => any;
|
|
21
|
+
visibleChange: (_visible: boolean) => any;
|
|
22
|
+
}, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
|
|
23
|
+
onSelect?: ((_value: string, _event: Event) => any) | undefined;
|
|
24
|
+
"onUpdate:visible"?: ((value: boolean | undefined) => any) | undefined;
|
|
25
|
+
onVisibleChange?: ((_visible: boolean) => any) | undefined;
|
|
26
|
+
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
27
|
+
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
28
|
+
declare const _default: typeof __VLS_export;
|
|
29
|
+
export default _default;
|
|
30
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
31
|
+
new (): {
|
|
32
|
+
$slots: S;
|
|
33
|
+
};
|
|
34
|
+
};
|
|
@@ -0,0 +1,179 @@
|
|
|
1
|
+
import _objectSpread2 from "../_virtual/_@oxc-project_runtime@0.139.0/helpers/esm/objectSpread2.js";
|
|
2
|
+
import { modelSelectorInjectionKey } from "./context.js";
|
|
3
|
+
import { computed, defineComponent, getCurrentInstance, mergeModels, provide, renderSlot, shallowRef, useModel, watch } from "vue";
|
|
4
|
+
import { DefaultMagicKeysAliasMap, useMagicKeys } from "@vueuse/core";
|
|
5
|
+
//#region components/model-selector/model-selector.vue?vue&type=script&setup=true&lang.ts
|
|
6
|
+
var model_selector_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent(_objectSpread2(_objectSpread2({}, { name: "ModelSelector" }), {}, {
|
|
7
|
+
__name: "model-selector",
|
|
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
|
+
}, {
|
|
22
|
+
"visible": { type: Boolean },
|
|
23
|
+
"visibleModifiers": {}
|
|
24
|
+
}),
|
|
25
|
+
emits: /*@__PURE__*/ mergeModels(["visibleChange", "select"], ["update:visible"]),
|
|
26
|
+
setup(__props, { emit: __emit }) {
|
|
27
|
+
const SHORTCUT_MODIFIER_KEYS = /* @__PURE__ */ new Set([
|
|
28
|
+
"alt",
|
|
29
|
+
"control",
|
|
30
|
+
"meta",
|
|
31
|
+
"shift"
|
|
32
|
+
]);
|
|
33
|
+
function getShortcutKeys(shortcut) {
|
|
34
|
+
return shortcut.toLocaleLowerCase().split(/[+_-]/g).filter(Boolean).map((key) => {
|
|
35
|
+
var _DefaultMagicKeysAlia;
|
|
36
|
+
const normalizedKey = /^\d$/.test(key) ? `digit${key}` : key;
|
|
37
|
+
return (_DefaultMagicKeysAlia = DefaultMagicKeysAliasMap[normalizedKey]) !== null && _DefaultMagicKeysAlia !== void 0 ? _DefaultMagicKeysAlia : normalizedKey;
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
function isShortcutPressed(shortcut, event, currentKeys) {
|
|
41
|
+
const eventCode = event.code.toLocaleLowerCase();
|
|
42
|
+
const eventKey = event.key.toLocaleLowerCase();
|
|
43
|
+
const shortcutKeys = getShortcutKeys(shortcut);
|
|
44
|
+
return shortcutKeys.some((key) => !SHORTCUT_MODIFIER_KEYS.has(key) && (key === eventCode || key === eventKey)) && shortcutKeys.every((key) => {
|
|
45
|
+
if (key === "alt") return event.altKey;
|
|
46
|
+
if (key === "control") return event.ctrlKey;
|
|
47
|
+
if (key === "meta") return event.metaKey;
|
|
48
|
+
if (key === "shift") return event.shiftKey;
|
|
49
|
+
return key === eventCode || key === eventKey || currentKeys.has(key);
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
const emit = __emit;
|
|
53
|
+
const instance = getCurrentInstance();
|
|
54
|
+
const visibleModel = useModel(__props, "visible");
|
|
55
|
+
const innerVisible = shallowRef(__props.defaultVisible);
|
|
56
|
+
const hasVisibleProp = computed(() => {
|
|
57
|
+
var _instance$vnode$props;
|
|
58
|
+
return Object.hasOwn((_instance$vnode$props = instance.vnode.props) !== null && _instance$vnode$props !== void 0 ? _instance$vnode$props : {}, "visible");
|
|
59
|
+
});
|
|
60
|
+
const mergedVisible = computed(() => hasVisibleProp.value ? Boolean(visibleModel.value) : innerVisible.value);
|
|
61
|
+
const query = shallowRef("");
|
|
62
|
+
const activeId = shallowRef();
|
|
63
|
+
const itemsVersion = shallowRef(0);
|
|
64
|
+
const items = /* @__PURE__ */ new Map();
|
|
65
|
+
const listId = `sd-model-selector-list-${instance.uid}`;
|
|
66
|
+
const normalizedQuery = computed(() => query.value.trim().toLocaleLowerCase());
|
|
67
|
+
function isItemVisible(item) {
|
|
68
|
+
const search = normalizedQuery.value;
|
|
69
|
+
if (!search) return true;
|
|
70
|
+
return [
|
|
71
|
+
item.value,
|
|
72
|
+
item.label,
|
|
73
|
+
...item.keywords
|
|
74
|
+
].some((text) => text.toLocaleLowerCase().includes(search));
|
|
75
|
+
}
|
|
76
|
+
function getVisibleItems(groupId) {
|
|
77
|
+
itemsVersion.value;
|
|
78
|
+
return [...items.values()].filter((item) => (groupId === void 0 || item.groupId === groupId) && isItemVisible(item));
|
|
79
|
+
}
|
|
80
|
+
const visibleItems = computed(() => getVisibleItems());
|
|
81
|
+
const visibleItemCount = computed(() => visibleItems.value.length);
|
|
82
|
+
const activeDescendant = computed(() => {
|
|
83
|
+
var _items$get;
|
|
84
|
+
return activeId.value ? (_items$get = items.get(activeId.value)) === null || _items$get === void 0 ? void 0 : _items$get.domId : void 0;
|
|
85
|
+
});
|
|
86
|
+
const magicKeys = useMagicKeys({
|
|
87
|
+
passive: false,
|
|
88
|
+
onEventFired(event) {
|
|
89
|
+
if (event.type !== "keydown" || event.repeat || !mergedVisible.value) return;
|
|
90
|
+
const item = visibleItems.value.find(({ disabled, shortcut }) => !disabled && shortcut && isShortcutPressed(shortcut, event, magicKeys.current));
|
|
91
|
+
if (!item) return;
|
|
92
|
+
event.preventDefault();
|
|
93
|
+
event.stopPropagation();
|
|
94
|
+
item.select(event);
|
|
95
|
+
}
|
|
96
|
+
});
|
|
97
|
+
function setVisible(value) {
|
|
98
|
+
if (mergedVisible.value === value) return;
|
|
99
|
+
innerVisible.value = value;
|
|
100
|
+
visibleModel.value = value;
|
|
101
|
+
emit("visibleChange", value);
|
|
102
|
+
}
|
|
103
|
+
function registerItem(item) {
|
|
104
|
+
items.set(item.id, item);
|
|
105
|
+
itemsVersion.value += 1;
|
|
106
|
+
}
|
|
107
|
+
function updateItem(item) {
|
|
108
|
+
items.set(item.id, item);
|
|
109
|
+
itemsVersion.value += 1;
|
|
110
|
+
}
|
|
111
|
+
function unregisterItem(id) {
|
|
112
|
+
items.delete(id);
|
|
113
|
+
if (activeId.value === id) activeId.value = void 0;
|
|
114
|
+
itemsVersion.value += 1;
|
|
115
|
+
}
|
|
116
|
+
function setActive(id) {
|
|
117
|
+
activeId.value = id;
|
|
118
|
+
}
|
|
119
|
+
function moveActive(offset) {
|
|
120
|
+
var _nextItem$element;
|
|
121
|
+
const enabledItems = visibleItems.value.filter((item) => !item.disabled);
|
|
122
|
+
if (!enabledItems.length) {
|
|
123
|
+
activeId.value = void 0;
|
|
124
|
+
return;
|
|
125
|
+
}
|
|
126
|
+
const currentIndex = enabledItems.findIndex((item) => item.id === activeId.value);
|
|
127
|
+
const nextItem = enabledItems[currentIndex === -1 ? offset > 0 ? 0 : enabledItems.length - 1 : (currentIndex + offset + enabledItems.length) % enabledItems.length];
|
|
128
|
+
activeId.value = nextItem.id;
|
|
129
|
+
(_nextItem$element = nextItem.element) === null || _nextItem$element === void 0 || _nextItem$element.scrollIntoView({ block: "nearest" });
|
|
130
|
+
}
|
|
131
|
+
function selectItem(item, event) {
|
|
132
|
+
if (item.disabled) return;
|
|
133
|
+
emit("select", item.value, event);
|
|
134
|
+
if (__props.closeOnSelect) setVisible(false);
|
|
135
|
+
}
|
|
136
|
+
function selectActive(event) {
|
|
137
|
+
if (!activeId.value) return;
|
|
138
|
+
const item = items.get(activeId.value);
|
|
139
|
+
if (item) selectItem(item, event);
|
|
140
|
+
}
|
|
141
|
+
watch(query, () => {
|
|
142
|
+
var _visibleItems$value$f;
|
|
143
|
+
activeId.value = (_visibleItems$value$f = visibleItems.value.find((item) => !item.disabled)) === null || _visibleItems$value$f === void 0 ? void 0 : _visibleItems$value$f.id;
|
|
144
|
+
});
|
|
145
|
+
watch(mergedVisible, (visible) => {
|
|
146
|
+
if (!visible && __props.resetQueryOnClose) {
|
|
147
|
+
query.value = "";
|
|
148
|
+
activeId.value = void 0;
|
|
149
|
+
}
|
|
150
|
+
});
|
|
151
|
+
provide(modelSelectorInjectionKey, {
|
|
152
|
+
activeDescendant,
|
|
153
|
+
activeId,
|
|
154
|
+
getVisibleItems,
|
|
155
|
+
itemsVersion,
|
|
156
|
+
listId,
|
|
157
|
+
moveActive,
|
|
158
|
+
query,
|
|
159
|
+
registerItem,
|
|
160
|
+
selectActive,
|
|
161
|
+
selectItem,
|
|
162
|
+
setActive,
|
|
163
|
+
setVisible,
|
|
164
|
+
unregisterItem,
|
|
165
|
+
updateItem,
|
|
166
|
+
visible: mergedVisible,
|
|
167
|
+
visibleItemCount
|
|
168
|
+
});
|
|
169
|
+
return (_ctx, _cache) => {
|
|
170
|
+
return renderSlot(_ctx.$slots, "default", {
|
|
171
|
+
close: () => setVisible(false),
|
|
172
|
+
open: () => setVisible(true),
|
|
173
|
+
visible: mergedVisible.value
|
|
174
|
+
});
|
|
175
|
+
};
|
|
176
|
+
}
|
|
177
|
+
}));
|
|
178
|
+
//#endregion
|
|
179
|
+
export { model_selector_vue_vue_type_script_setup_true_lang_default as default };
|