@ditari/bsui 1.1.12 → 1.1.13

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/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # @ditari/bsui
2
2
 
3
+ ## 1.1.13
4
+
5
+ ### Patch Changes
6
+
7
+ - 下拉选择添加过滤
8
+
3
9
  ## 1.1.12
4
10
 
5
11
  ### Patch Changes
@@ -30,7 +30,6 @@ declare const _default: import("vue").DefineComponent<{
30
30
  getDicByKey: (key: string) => any;
31
31
  modelValue: any;
32
32
  data: any;
33
- onSearch: (keywords: string) => void;
34
33
  onSelect: (value: any) => void;
35
34
  onChange: () => void;
36
35
  useSelect: () => {
@@ -18,7 +18,7 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
18
18
  setup(__props, { emit: emits }) {
19
19
  const props = __props;
20
20
  const { getDicByKey } = store.useDataDicStore();
21
- const { modelValue, data, onSearch, onSelect, onChange } = useSelect();
21
+ const { modelValue, data, onSelect, onChange } = useSelect();
22
22
  function useSelect() {
23
23
  const dicData = [...getDicByKey(props.name)];
24
24
  const data2 = vue.ref(dicData);
@@ -30,7 +30,7 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
30
30
  initSearch(val);
31
31
  }
32
32
  );
33
- const onSearch2 = (keywords) => {
33
+ const onSearch = (keywords) => {
34
34
  sendWorkerSearch(keywords);
35
35
  };
36
36
  function sendWorkerSearch(keywords) {
@@ -71,10 +71,23 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
71
71
  const rs = dicList.find((obj) => obj.value === modelValue2.value);
72
72
  emits("select", rs);
73
73
  }
74
+ vue.watch(
75
+ () => props.include,
76
+ (val) => {
77
+ if (val.length > 0) {
78
+ data2.value = dicData.filter((item) => {
79
+ return val.some((i) => i === item.value);
80
+ });
81
+ }
82
+ },
83
+ {
84
+ immediate: true
85
+ }
86
+ );
74
87
  return {
75
88
  data: data2,
76
89
  modelValue: modelValue2,
77
- onSearch: onSearch2,
90
+ onSearch,
78
91
  onSelect: onSelect2,
79
92
  onChange: onChange2
80
93
  };
@@ -1 +1 @@
1
- {"version":3,"file":"Select.vue2.cjs","sources":["../../../src/select/Select.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ref, watch } from \"vue\";\nimport { useDataDicStore } from \"@ditari/store\";\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-ignore\n// import DicWorker from \"./dic.worker?worker&inline\";\n\nconst props = defineProps({\n \"value\": { type: null, required: true, default: null },\n \"name\": { type: String, required: true, default: \"\" },\n \"disabled\": { type: Boolean, required: false, default: false },\n \"placeholder\": { type: String, required: false, default: \"请填写默认占位符啊!老铁\" },\n \"include\": { type: Array, required: false, default: [] as any }\n});\n\ninterface Emits {\n (e: \"update:value\", value: any): void;\n (e: \"change\", value: any): void;\n (e: \"select\", value: any): void;\n}\nconst emits = defineEmits([\"update:value\", \"change\", \"select\"]);\n\nconst { getDicByKey } = useDataDicStore();\n\n// const workerPool: any = inject(\"dicWorkerPool\");\n// // 获取worker\n// const workerInstance: any = workerPool.getWorker();\n\nconst { modelValue, data, onSearch, onSelect, onChange } = useSelect();\n\nfunction useSelect() {\n // 字典数据\n const dicData: any[] = [...getDicByKey(props.name)];\n const data = ref<any>(dicData);\n // 取值\n const modelValue = ref(props.value);\n\n // 监听value值的变化\n watch(\n () => props.value,\n (val) => {\n modelValue.value = val;\n initSearch(val);\n }\n );\n\n //initSearch(modelValue.value);\n\n //监听用户搜索事件\n const onSearch = (keywords: string) => {\n sendWorkerSearch(keywords);\n };\n\n // 发送搜索到webworker\n function sendWorkerSearch(keywords: string) {\n keywords = keywords ?? \"\";\n data.value = dicData\n .filter((item: any) => {\n return (\n item.value.toLowerCase().indexOf(keywords.toLowerCase()) !== -1 ||\n item.label.toLowerCase().includes(keywords.toLowerCase())\n );\n })\n .splice(0, 10);\n if (data.value.length === 0) {\n data.value = [...dicData].splice(0, 10);\n }\n }\n\n /**\n * 初始化value的时候进行搜索\n * @param val\n */\n function initSearch(val: any) {\n val = val || \"\";\n const index = dicData.findIndex((item: any) => {\n return (\n item.value.toLowerCase().indexOf(val.toLowerCase()) !== -1 ||\n item.label.toLowerCase().includes(val)\n );\n });\n if (index === -1) {\n data.value = [...dicData].splice(0, 10);\n } else {\n data.value = sliceArrayByIndex(dicData, index);\n }\n }\n\n function sliceArrayByIndex(arr: any, currentIndex: any) {\n const start = Math.max(0, currentIndex - 5);\n const end = Math.min(arr.length, currentIndex + 6);\n\n return arr.slice(start, end);\n }\n\n //监听下拉选择事件\n const onSelect = (value: any) => {\n // 发射选择的数据\n emits(\"update:value\", value);\n // 处理下拉后返回数据的\n onSelectHandler();\n };\n\n // 监听数据改变\n const onChange = () => {\n //TODO 变化的时候 需要发送字典的所有数据\n emits(\"update:value\", modelValue.value);\n emits(\"change\", modelValue.value);\n };\n\n /**\n * 根据当前选中的value匹配对应的整条数据\n * 然后返回给父组件\n */\n function onSelectHandler() {\n const dicList = getDicByKey(props.name);\n const rs = dicList.find((obj: any) => obj.value === modelValue.value);\n emits(\"select\", rs);\n }\n return {\n data,\n modelValue,\n onSearch,\n onSelect,\n onChange\n };\n}\n\n/**\n * 过滤筛选\n * @param inputValue\n * @param options\n */\nconst onFilterOption = (inputValue: any, options: any) => {\n return options.label.includes(inputValue);\n};\n</script>\n<template>\n <a-select\n v-model:value=\"modelValue\"\n allow-clear\n show-search\n :options=\"data\"\n :placeholder=\"placeholder\"\n :disabled=\"disabled\"\n :filter-option=\"onFilterOption\"\n @select=\"onSelect\"\n @change=\"onChange\"\n >\n </a-select>\n</template>\n<style scoped></style>\n"],"names":["useDataDicStore","data","ref","modelValue","watch","onSearch","onSelect","onChange"],"mappings":";;;;;;;;;;;;;;;;;;;AAsBA,IAAM,MAAA,EAAE,WAAY,EAAA,GAAIA,qBAAgB,EAAA,CAAA;AAMxC,IAAA,MAAM,EAAE,UAAY,EAAA,IAAA,EAAM,UAAU,QAAU,EAAA,QAAA,KAAa,SAAU,EAAA,CAAA;AAErE,IAAA,SAAS,SAAY,GAAA;AAEnB,MAAA,MAAM,UAAiB,CAAC,GAAG,WAAY,CAAA,KAAA,CAAM,IAAI,CAAC,CAAA,CAAA;AAClD,MAAMC,MAAAA,KAAAA,GAAOC,QAAS,OAAO,CAAA,CAAA;AAE7B,MAAMC,MAAAA,WAAAA,GAAaD,OAAI,CAAA,KAAA,CAAM,KAAK,CAAA,CAAA;AAGlC,MAAAE,SAAA;AAAA,QACE,MAAM,KAAM,CAAA,KAAA;AAAA,QACZ,CAAC,GAAQ,KAAA;AACP,UAAAD,YAAW,KAAQ,GAAA,GAAA,CAAA;AACnB,UAAA,UAAA,CAAW,GAAG,CAAA,CAAA;AAAA,SAChB;AAAA,OACF,CAAA;AAKA,MAAME,MAAAA,SAAAA,GAAW,CAAC,QAAqB,KAAA;AACrC,QAAA,gBAAA,CAAiB,QAAQ,CAAA,CAAA;AAAA,OAC3B,CAAA;AAGA,MAAA,SAAS,iBAAiB,QAAkB,EAAA;AAC1C,QAAA,QAAA,GAAW,QAAY,IAAA,IAAA,GAAA,QAAA,GAAA,EAAA,CAAA;AACvB,QAAAJ,KAAK,CAAA,KAAA,GAAQ,OACV,CAAA,MAAA,CAAO,CAAC,IAAc,KAAA;AACrB,UAAA,OACE,KAAK,KAAM,CAAA,WAAA,EAAc,CAAA,OAAA,CAAQ,SAAS,WAAY,EAAC,CAAM,KAAA,CAAA,CAAA,IAC7D,KAAK,KAAM,CAAA,WAAA,GAAc,QAAS,CAAA,QAAA,CAAS,aAAa,CAAA,CAAA;AAAA,SAE3D,CAAA,CACA,MAAO,CAAA,CAAA,EAAG,EAAE,CAAA,CAAA;AACf,QAAIA,IAAAA,KAAAA,CAAK,KAAM,CAAA,MAAA,KAAW,CAAG,EAAA;AAC3B,UAAAA,KAAAA,CAAK,QAAQ,CAAC,GAAG,OAAO,CAAE,CAAA,MAAA,CAAO,GAAG,EAAE,CAAA,CAAA;AAAA,SACxC;AAAA,OACF;AAMA,MAAA,SAAS,WAAW,GAAU,EAAA;AAC5B,QAAA,GAAA,GAAM,GAAO,IAAA,EAAA,CAAA;AACb,QAAA,MAAM,KAAQ,GAAA,OAAA,CAAQ,SAAU,CAAA,CAAC,IAAc,KAAA;AAC7C,UAAA,OACE,IAAK,CAAA,KAAA,CAAM,WAAY,EAAA,CAAE,QAAQ,GAAI,CAAA,WAAA,EAAa,CAAA,KAAM,MACxD,IAAK,CAAA,KAAA,CAAM,WAAY,EAAA,CAAE,SAAS,GAAG,CAAA,CAAA;AAAA,SAExC,CAAA,CAAA;AACD,QAAA,IAAI,UAAU,CAAI,CAAA,EAAA;AAChB,UAAAA,KAAAA,CAAK,QAAQ,CAAC,GAAG,OAAO,CAAE,CAAA,MAAA,CAAO,GAAG,EAAE,CAAA,CAAA;AAAA,SACjC,MAAA;AACL,UAAAA,KAAK,CAAA,KAAA,GAAQ,iBAAkB,CAAA,OAAA,EAAS,KAAK,CAAA,CAAA;AAAA,SAC/C;AAAA,OACF;AAEA,MAAS,SAAA,iBAAA,CAAkB,KAAU,YAAmB,EAAA;AACtD,QAAA,MAAM,KAAQ,GAAA,IAAA,CAAK,GAAI,CAAA,CAAA,EAAG,eAAe,CAAC,CAAA,CAAA;AAC1C,QAAA,MAAM,MAAM,IAAK,CAAA,GAAA,CAAI,GAAI,CAAA,MAAA,EAAQ,eAAe,CAAC,CAAA,CAAA;AAEjD,QAAO,OAAA,GAAA,CAAI,KAAM,CAAA,KAAA,EAAO,GAAG,CAAA,CAAA;AAAA,OAC7B;AAGA,MAAMK,MAAAA,SAAAA,GAAW,CAAC,KAAe,KAAA;AAE/B,QAAA,KAAA,CAAM,gBAAgB,KAAK,CAAA,CAAA;AAE3B,QAAgB,eAAA,EAAA,CAAA;AAAA,OAClB,CAAA;AAGA,MAAA,MAAMC,YAAW,MAAM;AAErB,QAAM,KAAA,CAAA,cAAA,EAAgBJ,YAAW,KAAK,CAAA,CAAA;AACtC,QAAM,KAAA,CAAA,QAAA,EAAUA,YAAW,KAAK,CAAA,CAAA;AAAA,OAClC,CAAA;AAMA,MAAA,SAAS,eAAkB,GAAA;AACzB,QAAM,MAAA,OAAA,GAAU,WAAY,CAAA,KAAA,CAAM,IAAI,CAAA,CAAA;AACtC,QAAM,MAAA,EAAA,GAAK,QAAQ,IAAK,CAAA,CAAC,QAAa,GAAI,CAAA,KAAA,KAAUA,YAAW,KAAK,CAAA,CAAA;AACpE,QAAA,KAAA,CAAM,UAAU,EAAE,CAAA,CAAA;AAAA,OACpB;AACA,MAAO,OAAA;AAAA,QACL,IAAAF,EAAAA,KAAAA;AAAA,QACA,UAAAE,EAAAA,WAAAA;AAAA,QACA,QAAAE,EAAAA,SAAAA;AAAA,QACA,QAAAC,EAAAA,SAAAA;AAAA,QACA,QAAAC,EAAAA,SAAAA;AAAA,OACF,CAAA;AAAA,KACF;AAOA,IAAM,MAAA,cAAA,GAAiB,CAAC,UAAA,EAAiB,OAAiB,KAAA;AACxD,MAAO,OAAA,OAAA,CAAQ,KAAM,CAAA,QAAA,CAAS,UAAU,CAAA,CAAA;AAAA,KAC1C,CAAA;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"Select.vue2.cjs","sources":["../../../src/select/Select.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ref, watch } from \"vue\";\nimport { useDataDicStore } from \"@ditari/store\";\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-ignore\n// import DicWorker from \"./dic.worker?worker&inline\";\n\nconst props = defineProps({\n \"value\": { type: null, required: true, default: null },\n \"name\": { type: String, required: true, default: \"\" },\n \"disabled\": { type: Boolean, required: false, default: false },\n \"placeholder\": { type: String, required: false, default: \"请填写默认占位符啊!老铁\" },\n \"include\": { type: Array, required: false, default: [] as any }\n});\n\ninterface Emits {\n (e: \"update:value\", value: any): void;\n (e: \"change\", value: any): void;\n (e: \"select\", value: any): void;\n}\nconst emits = defineEmits([\"update:value\", \"change\", \"select\"]);\n\nconst { getDicByKey } = useDataDicStore();\n\nconst { modelValue, data, onSelect, onChange } = useSelect();\n\nfunction useSelect() {\n // 字典数据\n const dicData: any[] = [...getDicByKey(props.name)];\n const data = ref<any>(dicData);\n // 取值\n const modelValue = ref(props.value);\n\n // 监听value值的变化\n watch(\n () => props.value,\n (val) => {\n modelValue.value = val;\n initSearch(val);\n }\n );\n\n //监听用户搜索事件\n const onSearch = (keywords: string) => {\n sendWorkerSearch(keywords);\n };\n\n // 发送搜索到webworker\n function sendWorkerSearch(keywords: string) {\n keywords = keywords ?? \"\";\n data.value = dicData\n .filter((item: any) => {\n return (\n item.value.toLowerCase().indexOf(keywords.toLowerCase()) !== -1 ||\n item.label.toLowerCase().includes(keywords.toLowerCase())\n );\n })\n .splice(0, 10);\n if (data.value.length === 0) {\n data.value = [...dicData].splice(0, 10);\n }\n }\n\n /**\n * 初始化value的时候进行搜索\n * @param val\n */\n function initSearch(val: any) {\n val = val || \"\";\n const index = dicData.findIndex((item: any) => {\n return (\n item.value.toLowerCase().indexOf(val.toLowerCase()) !== -1 ||\n item.label.toLowerCase().includes(val)\n );\n });\n if (index === -1) {\n data.value = [...dicData].splice(0, 10);\n } else {\n data.value = sliceArrayByIndex(dicData, index);\n }\n }\n\n function sliceArrayByIndex(arr: any, currentIndex: any) {\n const start = Math.max(0, currentIndex - 5);\n const end = Math.min(arr.length, currentIndex + 6);\n\n return arr.slice(start, end);\n }\n\n //监听下拉选择事件\n const onSelect = (value: any) => {\n // 发射选择的数据\n emits(\"update:value\", value);\n // 处理下拉后返回数据的\n onSelectHandler();\n };\n\n // 监听数据改变\n const onChange = () => {\n //TODO 变化的时候 需要发送字典的所有数据\n emits(\"update:value\", modelValue.value);\n emits(\"change\", modelValue.value);\n };\n\n /**\n * 根据当前选中的value匹配对应的整条数据\n * 然后返回给父组件\n */\n function onSelectHandler() {\n const dicList = getDicByKey(props.name);\n const rs = dicList.find((obj: any) => obj.value === modelValue.value);\n emits(\"select\", rs);\n }\n\n watch(\n () => props.include,\n (val: any) => {\n if (val.length > 0) {\n // 只过滤出来include包含的数据\n data.value = dicData.filter((item: any) => {\n return val.some((i: any) => i === item.value);\n });\n }\n },\n {\n immediate: true\n }\n );\n\n return {\n data,\n modelValue,\n onSearch,\n onSelect,\n onChange\n };\n}\n\n/**\n * 过滤筛选\n * @param inputValue\n * @param options\n */\nconst onFilterOption = (inputValue: any, options: any) => {\n return options.label.includes(inputValue);\n};\n</script>\n<template>\n <a-select\n v-model:value=\"modelValue\"\n allow-clear\n show-search\n :options=\"data\"\n :placeholder=\"placeholder\"\n :disabled=\"disabled\"\n :filter-option=\"onFilterOption\"\n @select=\"onSelect\"\n @change=\"onChange\"\n >\n </a-select>\n</template>\n<style scoped></style>\n"],"names":["useDataDicStore","data","ref","modelValue","watch","onSelect","onChange"],"mappings":"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"}
@@ -30,7 +30,6 @@ declare const _default: import("vue").DefineComponent<{
30
30
  getDicByKey: (key: string) => any;
31
31
  modelValue: any;
32
32
  data: any;
33
- onSearch: (keywords: string) => void;
34
33
  onSelect: (value: any) => void;
35
34
  onChange: () => void;
36
35
  useSelect: () => {
@@ -14,7 +14,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
14
14
  setup(__props, { emit: emits }) {
15
15
  const props = __props;
16
16
  const { getDicByKey } = useDataDicStore();
17
- const { modelValue, data, onSearch, onSelect, onChange } = useSelect();
17
+ const { modelValue, data, onSelect, onChange } = useSelect();
18
18
  function useSelect() {
19
19
  const dicData = [...getDicByKey(props.name)];
20
20
  const data2 = ref(dicData);
@@ -26,7 +26,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
26
26
  initSearch(val);
27
27
  }
28
28
  );
29
- const onSearch2 = (keywords) => {
29
+ const onSearch = (keywords) => {
30
30
  sendWorkerSearch(keywords);
31
31
  };
32
32
  function sendWorkerSearch(keywords) {
@@ -67,10 +67,23 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
67
67
  const rs = dicList.find((obj) => obj.value === modelValue2.value);
68
68
  emits("select", rs);
69
69
  }
70
+ watch(
71
+ () => props.include,
72
+ (val) => {
73
+ if (val.length > 0) {
74
+ data2.value = dicData.filter((item) => {
75
+ return val.some((i) => i === item.value);
76
+ });
77
+ }
78
+ },
79
+ {
80
+ immediate: true
81
+ }
82
+ );
70
83
  return {
71
84
  data: data2,
72
85
  modelValue: modelValue2,
73
- onSearch: onSearch2,
86
+ onSearch,
74
87
  onSelect: onSelect2,
75
88
  onChange: onChange2
76
89
  };
@@ -1 +1 @@
1
- {"version":3,"file":"Select.vue2.mjs","sources":["../../../src/select/Select.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ref, watch } from \"vue\";\nimport { useDataDicStore } from \"@ditari/store\";\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-ignore\n// import DicWorker from \"./dic.worker?worker&inline\";\n\nconst props = defineProps({\n \"value\": { type: null, required: true, default: null },\n \"name\": { type: String, required: true, default: \"\" },\n \"disabled\": { type: Boolean, required: false, default: false },\n \"placeholder\": { type: String, required: false, default: \"请填写默认占位符啊!老铁\" },\n \"include\": { type: Array, required: false, default: [] as any }\n});\n\ninterface Emits {\n (e: \"update:value\", value: any): void;\n (e: \"change\", value: any): void;\n (e: \"select\", value: any): void;\n}\nconst emits = defineEmits([\"update:value\", \"change\", \"select\"]);\n\nconst { getDicByKey } = useDataDicStore();\n\n// const workerPool: any = inject(\"dicWorkerPool\");\n// // 获取worker\n// const workerInstance: any = workerPool.getWorker();\n\nconst { modelValue, data, onSearch, onSelect, onChange } = useSelect();\n\nfunction useSelect() {\n // 字典数据\n const dicData: any[] = [...getDicByKey(props.name)];\n const data = ref<any>(dicData);\n // 取值\n const modelValue = ref(props.value);\n\n // 监听value值的变化\n watch(\n () => props.value,\n (val) => {\n modelValue.value = val;\n initSearch(val);\n }\n );\n\n //initSearch(modelValue.value);\n\n //监听用户搜索事件\n const onSearch = (keywords: string) => {\n sendWorkerSearch(keywords);\n };\n\n // 发送搜索到webworker\n function sendWorkerSearch(keywords: string) {\n keywords = keywords ?? \"\";\n data.value = dicData\n .filter((item: any) => {\n return (\n item.value.toLowerCase().indexOf(keywords.toLowerCase()) !== -1 ||\n item.label.toLowerCase().includes(keywords.toLowerCase())\n );\n })\n .splice(0, 10);\n if (data.value.length === 0) {\n data.value = [...dicData].splice(0, 10);\n }\n }\n\n /**\n * 初始化value的时候进行搜索\n * @param val\n */\n function initSearch(val: any) {\n val = val || \"\";\n const index = dicData.findIndex((item: any) => {\n return (\n item.value.toLowerCase().indexOf(val.toLowerCase()) !== -1 ||\n item.label.toLowerCase().includes(val)\n );\n });\n if (index === -1) {\n data.value = [...dicData].splice(0, 10);\n } else {\n data.value = sliceArrayByIndex(dicData, index);\n }\n }\n\n function sliceArrayByIndex(arr: any, currentIndex: any) {\n const start = Math.max(0, currentIndex - 5);\n const end = Math.min(arr.length, currentIndex + 6);\n\n return arr.slice(start, end);\n }\n\n //监听下拉选择事件\n const onSelect = (value: any) => {\n // 发射选择的数据\n emits(\"update:value\", value);\n // 处理下拉后返回数据的\n onSelectHandler();\n };\n\n // 监听数据改变\n const onChange = () => {\n //TODO 变化的时候 需要发送字典的所有数据\n emits(\"update:value\", modelValue.value);\n emits(\"change\", modelValue.value);\n };\n\n /**\n * 根据当前选中的value匹配对应的整条数据\n * 然后返回给父组件\n */\n function onSelectHandler() {\n const dicList = getDicByKey(props.name);\n const rs = dicList.find((obj: any) => obj.value === modelValue.value);\n emits(\"select\", rs);\n }\n return {\n data,\n modelValue,\n onSearch,\n onSelect,\n onChange\n };\n}\n\n/**\n * 过滤筛选\n * @param inputValue\n * @param options\n */\nconst onFilterOption = (inputValue: any, options: any) => {\n return options.label.includes(inputValue);\n};\n</script>\n<template>\n <a-select\n v-model:value=\"modelValue\"\n allow-clear\n show-search\n :options=\"data\"\n :placeholder=\"placeholder\"\n :disabled=\"disabled\"\n :filter-option=\"onFilterOption\"\n @select=\"onSelect\"\n @change=\"onChange\"\n >\n </a-select>\n</template>\n<style scoped></style>\n"],"names":["data","modelValue","onSearch","onSelect","onChange"],"mappings":"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"}
1
+ {"version":3,"file":"Select.vue2.mjs","sources":["../../../src/select/Select.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ref, watch } from \"vue\";\nimport { useDataDicStore } from \"@ditari/store\";\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-ignore\n// import DicWorker from \"./dic.worker?worker&inline\";\n\nconst props = defineProps({\n \"value\": { type: null, required: true, default: null },\n \"name\": { type: String, required: true, default: \"\" },\n \"disabled\": { type: Boolean, required: false, default: false },\n \"placeholder\": { type: String, required: false, default: \"请填写默认占位符啊!老铁\" },\n \"include\": { type: Array, required: false, default: [] as any }\n});\n\ninterface Emits {\n (e: \"update:value\", value: any): void;\n (e: \"change\", value: any): void;\n (e: \"select\", value: any): void;\n}\nconst emits = defineEmits([\"update:value\", \"change\", \"select\"]);\n\nconst { getDicByKey } = useDataDicStore();\n\nconst { modelValue, data, onSelect, onChange } = useSelect();\n\nfunction useSelect() {\n // 字典数据\n const dicData: any[] = [...getDicByKey(props.name)];\n const data = ref<any>(dicData);\n // 取值\n const modelValue = ref(props.value);\n\n // 监听value值的变化\n watch(\n () => props.value,\n (val) => {\n modelValue.value = val;\n initSearch(val);\n }\n );\n\n //监听用户搜索事件\n const onSearch = (keywords: string) => {\n sendWorkerSearch(keywords);\n };\n\n // 发送搜索到webworker\n function sendWorkerSearch(keywords: string) {\n keywords = keywords ?? \"\";\n data.value = dicData\n .filter((item: any) => {\n return (\n item.value.toLowerCase().indexOf(keywords.toLowerCase()) !== -1 ||\n item.label.toLowerCase().includes(keywords.toLowerCase())\n );\n })\n .splice(0, 10);\n if (data.value.length === 0) {\n data.value = [...dicData].splice(0, 10);\n }\n }\n\n /**\n * 初始化value的时候进行搜索\n * @param val\n */\n function initSearch(val: any) {\n val = val || \"\";\n const index = dicData.findIndex((item: any) => {\n return (\n item.value.toLowerCase().indexOf(val.toLowerCase()) !== -1 ||\n item.label.toLowerCase().includes(val)\n );\n });\n if (index === -1) {\n data.value = [...dicData].splice(0, 10);\n } else {\n data.value = sliceArrayByIndex(dicData, index);\n }\n }\n\n function sliceArrayByIndex(arr: any, currentIndex: any) {\n const start = Math.max(0, currentIndex - 5);\n const end = Math.min(arr.length, currentIndex + 6);\n\n return arr.slice(start, end);\n }\n\n //监听下拉选择事件\n const onSelect = (value: any) => {\n // 发射选择的数据\n emits(\"update:value\", value);\n // 处理下拉后返回数据的\n onSelectHandler();\n };\n\n // 监听数据改变\n const onChange = () => {\n //TODO 变化的时候 需要发送字典的所有数据\n emits(\"update:value\", modelValue.value);\n emits(\"change\", modelValue.value);\n };\n\n /**\n * 根据当前选中的value匹配对应的整条数据\n * 然后返回给父组件\n */\n function onSelectHandler() {\n const dicList = getDicByKey(props.name);\n const rs = dicList.find((obj: any) => obj.value === modelValue.value);\n emits(\"select\", rs);\n }\n\n watch(\n () => props.include,\n (val: any) => {\n if (val.length > 0) {\n // 只过滤出来include包含的数据\n data.value = dicData.filter((item: any) => {\n return val.some((i: any) => i === item.value);\n });\n }\n },\n {\n immediate: true\n }\n );\n\n return {\n data,\n modelValue,\n onSearch,\n onSelect,\n onChange\n };\n}\n\n/**\n * 过滤筛选\n * @param inputValue\n * @param options\n */\nconst onFilterOption = (inputValue: any, options: any) => {\n return options.label.includes(inputValue);\n};\n</script>\n<template>\n <a-select\n v-model:value=\"modelValue\"\n allow-clear\n show-search\n :options=\"data\"\n :placeholder=\"placeholder\"\n :disabled=\"disabled\"\n :filter-option=\"onFilterOption\"\n @select=\"onSelect\"\n @change=\"onChange\"\n >\n </a-select>\n</template>\n<style scoped></style>\n"],"names":["data","modelValue","onSelect","onChange"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ditari/bsui",
3
- "version": "1.1.12",
3
+ "version": "1.1.13",
4
4
  "description": "",
5
5
  "keywords": [],
6
6
  "author": "",
@@ -31,11 +31,7 @@ const emits = defineEmits<Emits>();
31
31
 
32
32
  const { getDicByKey } = useDataDicStore();
33
33
 
34
- // const workerPool: any = inject("dicWorkerPool");
35
- // // 获取worker
36
- // const workerInstance: any = workerPool.getWorker();
37
-
38
- const { modelValue, data, onSearch, onSelect, onChange } = useSelect();
34
+ const { modelValue, data, onSelect, onChange } = useSelect();
39
35
 
40
36
  function useSelect() {
41
37
  // 字典数据
@@ -53,8 +49,6 @@ function useSelect() {
53
49
  }
54
50
  );
55
51
 
56
- //initSearch(modelValue.value);
57
-
58
52
  //监听用户搜索事件
59
53
  const onSearch = (keywords: string) => {
60
54
  sendWorkerSearch(keywords);
@@ -126,6 +120,22 @@ function useSelect() {
126
120
  const rs = dicList.find((obj: any) => obj.value === modelValue.value);
127
121
  emits("select", rs);
128
122
  }
123
+
124
+ watch(
125
+ () => props.include,
126
+ (val: any) => {
127
+ if (val.length > 0) {
128
+ // 只过滤出来include包含的数据
129
+ data.value = dicData.filter((item: any) => {
130
+ return val.some((i: any) => i === item.value);
131
+ });
132
+ }
133
+ },
134
+ {
135
+ immediate: true
136
+ }
137
+ );
138
+
129
139
  return {
130
140
  data,
131
141
  modelValue,