giime 0.3.13 → 0.3.15
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/index.css +25 -25
- package/es/api/gatewayApi/cross/getListCustom.mjs +1 -1
- package/es/api/gatewayApi/cross/getListCustom.mjs.map +1 -1
- package/es/components/src/base/select/Select.vue.d.ts +1 -0
- package/es/components/src/base/select/Select.vue2.mjs +8 -1
- package/es/components/src/base/select/Select.vue2.mjs.map +1 -1
- package/es/components/src/base/select/index.d.ts +1 -0
- package/es/components/src/composite/memoryForm/MemoryForm.vue.mjs +1 -1
- package/es/components/src/composite/memoryForm/MemoryForm.vue2.mjs +4 -1
- package/es/components/src/composite/memoryForm/MemoryForm.vue2.mjs.map +1 -1
- package/es/components/src/composite/operateButton/operateButtonForm/OperateButtonForm.vue2.mjs +4 -1
- package/es/components/src/composite/operateButton/operateButtonForm/OperateButtonForm.vue2.mjs.map +1 -1
- package/es/components/src/composite/selectOptions/SelectOptions.vue.d.ts +15 -2
- package/es/components/src/composite/selectOptions/SelectOptions.vue2.mjs +58 -7
- package/es/components/src/composite/selectOptions/SelectOptions.vue2.mjs.map +1 -1
- package/es/components/src/composite/selectOptions/index.d.ts +415 -105
- package/es/components/src/composite/tablePro/tableHeaderForm/TableHeaderForm.vue2.mjs +4 -1
- package/es/components/src/composite/tablePro/tableHeaderForm/TableHeaderForm.vue2.mjs.map +1 -1
- package/es/giime/version.d.ts +1 -1
- package/es/giime/version.mjs +1 -1
- package/es/giime/version.mjs.map +1 -1
- package/es/hooks/store/useCustomSettings/index.mjs +3 -0
- package/es/hooks/store/useCustomSettings/index.mjs.map +1 -1
- package/es/index.css +25 -25
- package/es/utils/src/http/axios.d.mjs +2 -0
- package/es/utils/src/http/axios.d.mjs.map +1 -0
- package/es/utils/src/http/errorMessage.mjs +3 -0
- package/es/utils/src/http/errorMessage.mjs.map +1 -1
- package/lib/api/gatewayApi/cross/getListCustom.js +1 -1
- package/lib/api/gatewayApi/cross/getListCustom.js.map +1 -1
- package/lib/components/src/base/select/Select.vue.d.ts +1 -0
- package/lib/components/src/base/select/Select.vue2.js +7 -0
- package/lib/components/src/base/select/Select.vue2.js.map +1 -1
- package/lib/components/src/base/select/index.d.ts +1 -0
- package/lib/components/src/composite/memoryForm/MemoryForm.vue.js +1 -1
- package/lib/components/src/composite/memoryForm/MemoryForm.vue2.js +4 -1
- package/lib/components/src/composite/memoryForm/MemoryForm.vue2.js.map +1 -1
- package/lib/components/src/composite/operateButton/operateButtonForm/OperateButtonForm.vue2.js +4 -1
- package/lib/components/src/composite/operateButton/operateButtonForm/OperateButtonForm.vue2.js.map +1 -1
- package/lib/components/src/composite/selectOptions/SelectOptions.vue.d.ts +15 -2
- package/lib/components/src/composite/selectOptions/SelectOptions.vue2.js +57 -6
- package/lib/components/src/composite/selectOptions/SelectOptions.vue2.js.map +1 -1
- package/lib/components/src/composite/selectOptions/index.d.ts +415 -105
- package/lib/components/src/composite/tablePro/tableHeaderForm/TableHeaderForm.vue2.js +4 -1
- package/lib/components/src/composite/tablePro/tableHeaderForm/TableHeaderForm.vue2.js.map +1 -1
- package/lib/giime/version.d.ts +1 -1
- package/lib/giime/version.js +1 -1
- package/lib/giime/version.js.map +1 -1
- package/lib/hooks/store/useCustomSettings/index.js +3 -0
- package/lib/hooks/store/useCustomSettings/index.js.map +1 -1
- package/lib/index.css +25 -25
- package/lib/utils/src/http/axios.d.js +5 -0
- package/lib/utils/src/http/axios.d.js.map +1 -0
- package/lib/utils/src/http/errorMessage.js +3 -0
- package/lib/utils/src/http/errorMessage.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TableHeaderForm.vue2.mjs","sources":["../../../../../../../../packages/components/src/composite/tablePro/tableHeaderForm/TableHeaderForm.vue"],"sourcesContent":["<template>\r\n <gm-drawer v-model=\"isShowDrawer\" title=\"自定义表头\" direction=\"rtl\" size=\"600px\" append-to-body destroy-on-close>\r\n <section\r\n class=\"drawer-alert gm-mb-4 gm-flex gm-items-center gm-justify-between gm-rounded gm-border gm-border-cyan-300 gm-bg-cyan-50 gm-px-4 gm-text-sm gm-text-[#777]\"\r\n >\r\n <div class=\"gm-flex gm-items-center gm-py-3\">\r\n <gm-icon><InfoFilled /></gm-icon>\r\n <p class=\"gm-ml-2\">\r\n 已选中 <span class=\"gm-text-cyan-500\">{{ checkedNumber }}</span> 项\r\n </p>\r\n </div>\r\n </section>\r\n <gm-table :data=\"clonedColPropsList\" :header-cell-style=\"{ background: '#F5F7FA', color: '#333' }\" style=\"width: 100%\">\r\n <gm-table-column align=\"left\" width=\"80\">\r\n <template #header>\r\n <gm-checkbox :model-value=\"checkedAll\" :indeterminate=\"isIndeterminate\" @change=\"handleCheckAllChange\" />\r\n </template>\r\n <template #default=\"{ row }: { row: TableColumnProProps }\">\r\n <gm-checkbox v-model=\"row.isShow\" :disabled=\"row.type === 'edit'\" />\r\n </template>\r\n </gm-table-column>\r\n <gm-table-column label=\"列名\" prop=\"label\">\r\n <template #default=\"{ row }: { row: TableColumnProProps }\">\r\n {{ row.type === 'edit' ? '操作' : row.label }}\r\n </template>\r\n </gm-table-column>\r\n <gm-table-column label=\"列宽\">\r\n <template #default=\"{ row }: { row: TableColumnProProps; $index: number }\">\r\n <gm-input v-model=\"row.width\" class=\"gm-w-[120px]\" placeholder=\"设置宽度\" clearable />\r\n </template>\r\n </gm-table-column>\r\n <gm-table-column label=\"固定\">\r\n <template #default=\"{ row }: { row: TableColumnProProps; $index: number }\">\r\n <div v-if=\"row.type !== 'edit'\">\r\n <gm-tooltip effect=\"dark\" content=\"固定在左侧\" placement=\"top\">\r\n <gm-icon\r\n class=\"gm-mr-2 gm-cursor-pointer\"\r\n :class=\"row.fixed === '' || row.fixed === true || row.fixed === 'left' ? 'gm-text-blue-500' : ''\"\r\n size=\"20\"\r\n @click=\"toggleFixedLeft(row)\"\r\n >\r\n <IceCreamRound />\r\n </gm-icon>\r\n </gm-tooltip>\r\n <gm-tooltip effect=\"dark\" content=\"固定在右侧\" placement=\"top\">\r\n <gm-icon\r\n class=\"-gm-scale-x-100 gm-cursor-pointer\"\r\n :class=\"row.fixed === 'right' ? 'gm-text-blue-500' : ''\"\r\n size=\"20\"\r\n @click=\"toggleFixedRight(row)\"\r\n >\r\n <IceCreamRound />\r\n </gm-icon>\r\n </gm-tooltip>\r\n </div>\r\n </template>\r\n </gm-table-column>\r\n </gm-table>\r\n <template #footer>\r\n <div class=\"gm-flex gm-justify-between\">\r\n <div>\r\n <gm-button :loading=\"submitLoading\" type=\"primary\" size=\"default\" @click=\"onReset\">重置</gm-button>\r\n <gm-button :loading=\"submitLoading\" type=\"success\" size=\"default\" @click=\"onSyncRemote\">同步</gm-button>\r\n </div>\r\n <div>\r\n <gm-button :loading=\"submitLoading\" size=\"default\" @click=\"isShowDrawer = false\">取消</gm-button>\r\n <gm-button :loading=\"submitLoading\" type=\"primary\" size=\"default\" @click=\"submitSettings()\">保存</gm-button>\r\n </div>\r\n </div>\r\n </template>\r\n </gm-drawer>\r\n</template>\r\n\r\n<script setup lang=\"ts\">\r\nimport { computed, onMounted, ref, watch } from 'vue';\r\nimport { useCloned } from '@vueuse/core';\r\nimport { useCustomSettingsStore } from '@giime/hooks';\r\nimport { GmMessage } from '@giime/components/src/plugins/message';\r\nimport { cloneDeep } from 'lodash-es';\r\nimport { isNil } from '@giime/utils/src/is';\r\nimport { IceCreamRound, InfoFilled } from '@element-plus/icons-vue';\r\nimport { tableHeaderFormProps } from './tableHeaderForm';\r\nimport type { CheckboxValueType } from 'element-plus';\r\nimport type { TableColumnProProps } from '../tableColumnPro/tableColumnPro';\r\n\r\ndefineOptions({\r\n name: 'GmTableHeaderForm',\r\n});\r\n\r\nconst props = defineProps(tableHeaderFormProps);\r\nconst emit = defineEmits([\"updateColumns\"]);\r\n/**抽屉显示 */\r\nconst isShowDrawer = defineModel<boolean>('isShowDrawer', {\r\n required: true,\r\n});\r\n\r\n/**自定义按钮 props列表 */\r\nconst colPropsList = defineModel<TableColumnProProps[]>('colPropsList', {\r\n required: true,\r\n});\r\nconst customSettingsStore = useCustomSettingsStore();\r\n\r\n/**\r\n * 数据是否初始化完成\r\n */\r\nconst isInited = ref(false);\r\n/**内部克隆一份,当点击保存时 应用修改的内容 */\r\nconst { cloned: clonedColPropsList, sync: syncPropsList } = useCloned(colPropsList);\r\nconst defaultPropsList = computed(() => cloneDeep(props.colDefaultPropsList));\r\n// 重新打开弹窗时, 克隆一份新数据\r\nwatch(isShowDrawer, newValue => {\r\n if (newValue) {\r\n clonedColPropsList.value = cloneDeep(colPropsList.value);\r\n }\r\n});\r\nconst customSettingsValue = computed<TableColumnProProps[]>(() => customSettingsStore.customSettings[props.keyWord]?.[props.type] || []);\r\nconst { cloned: clonedStore } = useCloned(customSettingsValue);\r\n\r\n// 更新选中数据\r\nconst updateColumns = () => {\r\n colPropsList.value = clonedColPropsList.value;\r\n};\r\n// 初始化数据\r\nconst initColumns = async () => {\r\n await customSettingsStore.getCustomSettings({ key_word: props.keyWord, type: props.type }, { defaultValue: [] });\r\n clonedColPropsList.value = defaultPropsList.value.map(it => {\r\n const findItem = clonedStore.value.find(v => v.prop === it.prop);\r\n if (findItem) {\r\n it.isShow = findItem.isShow;\r\n it.width = findItem.width;\r\n if (!isNil(findItem.fixed)) {\r\n it.fixed = findItem.fixed;\r\n }\r\n // it.type = findItem.type;\r\n }\r\n return it;\r\n });\r\n\r\n updateColumns();\r\n isInited.value = true;\r\n};\r\n\r\n// 已选中条数\r\nconst checkedNumber = computed(() => {\r\n return clonedColPropsList.value.filter(v => v.isShow).length;\r\n});\r\n// 全选\r\nconst checkedAll = computed(() => clonedColPropsList.value.filter(it => it.type !== 'edit').every(v => v.isShow));\r\n// 半选\r\nconst isIndeterminate = computed(() => !checkedAll.value && clonedColPropsList.value.filter(it => it.type !== 'edit').some(v => v.isShow));\r\n// 切换全选\r\nconst handleCheckAllChange = (val: CheckboxValueType) => {\r\n clonedColPropsList.value.forEach(v => {\r\n if (v.type !== 'edit') {\r\n v.isShow = Boolean(val);\r\n }\r\n });\r\n};\r\nconst submitLoading = ref(false);\r\n// 保存\r\nconst submitSettings = async (options?: { hiddenMessage?: boolean }) => {\r\n try {\r\n submitLoading.value = true;\r\n const { data } = await customSettingsStore.addCustomSettings({\r\n key_word: props.keyWord,\r\n value: JSON.stringify(clonedColPropsList.value),\r\n type: props.type,\r\n });\r\n submitLoading.value = false;\r\n if (data.code !== 0) {\r\n return;\r\n }\r\n // isShowDrawer.value = false;\r\n updateColumns();\r\n if (!options?.hiddenMessage) {\r\n GmMessage.success('保存成功');\r\n }\r\n emit('updateColumns');\r\n } catch (e) {\r\n console.error(e);\r\n submitLoading.value = false;\r\n }\r\n};\r\n/**同步远程设置 */\r\nconst onSyncRemote = async () => {\r\n try {\r\n submitLoading.value = true;\r\n await customSettingsStore.syncRemoteSetting({\r\n key_word: props.keyWord,\r\n type: props.type,\r\n });\r\n submitLoading.value = false;\r\n GmMessage.success('同步成功');\r\n } catch (e) {\r\n console.error(e);\r\n submitLoading.value = false;\r\n }\r\n};\r\n// 重置\r\nconst onReset = () => {\r\n clonedColPropsList.value = cloneDeep(props.colDefaultPropsList);\r\n};\r\n// 点击固定到左侧\r\nconst toggleFixedLeft = (row: TableColumnProProps) => {\r\n if (row.fixed === 'left' || row.fixed === true || row.fixed === '') {\r\n row.fixed = false;\r\n } else {\r\n row.fixed = 'left';\r\n }\r\n};\r\n// 点击固定到右侧\r\nconst toggleFixedRight = (row: TableColumnProProps) => {\r\n if (row.fixed === 'right') {\r\n row.fixed = false;\r\n } else {\r\n row.fixed = 'right';\r\n }\r\n};\r\nonMounted(() => {\r\n initColumns();\r\n});\r\ndefineExpose({\r\n isInited,\r\n submitSettings,\r\n syncPropsList,\r\n});\r\n</script>\r\n"],"names":["_useModel"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"TableHeaderForm.vue2.mjs","sources":["../../../../../../../../packages/components/src/composite/tablePro/tableHeaderForm/TableHeaderForm.vue"],"sourcesContent":["<template>\r\n <gm-drawer v-model=\"isShowDrawer\" title=\"自定义表头\" direction=\"rtl\" size=\"600px\" append-to-body destroy-on-close>\r\n <section\r\n class=\"drawer-alert gm-mb-4 gm-flex gm-items-center gm-justify-between gm-rounded gm-border gm-border-cyan-300 gm-bg-cyan-50 gm-px-4 gm-text-sm gm-text-[#777]\"\r\n >\r\n <div class=\"gm-flex gm-items-center gm-py-3\">\r\n <gm-icon><InfoFilled /></gm-icon>\r\n <p class=\"gm-ml-2\">\r\n 已选中 <span class=\"gm-text-cyan-500\">{{ checkedNumber }}</span> 项\r\n </p>\r\n </div>\r\n </section>\r\n <gm-table :data=\"clonedColPropsList\" :header-cell-style=\"{ background: '#F5F7FA', color: '#333' }\" style=\"width: 100%\">\r\n <gm-table-column align=\"left\" width=\"80\">\r\n <template #header>\r\n <gm-checkbox :model-value=\"checkedAll\" :indeterminate=\"isIndeterminate\" @change=\"handleCheckAllChange\" />\r\n </template>\r\n <template #default=\"{ row }: { row: TableColumnProProps }\">\r\n <gm-checkbox v-model=\"row.isShow\" :disabled=\"row.type === 'edit'\" />\r\n </template>\r\n </gm-table-column>\r\n <gm-table-column label=\"列名\" prop=\"label\">\r\n <template #default=\"{ row }: { row: TableColumnProProps }\">\r\n {{ row.type === 'edit' ? '操作' : row.label }}\r\n </template>\r\n </gm-table-column>\r\n <gm-table-column label=\"列宽\">\r\n <template #default=\"{ row }: { row: TableColumnProProps; $index: number }\">\r\n <gm-input v-model=\"row.width\" class=\"gm-w-[120px]\" placeholder=\"设置宽度\" clearable />\r\n </template>\r\n </gm-table-column>\r\n <gm-table-column label=\"固定\">\r\n <template #default=\"{ row }: { row: TableColumnProProps; $index: number }\">\r\n <div v-if=\"row.type !== 'edit'\">\r\n <gm-tooltip effect=\"dark\" content=\"固定在左侧\" placement=\"top\">\r\n <gm-icon\r\n class=\"gm-mr-2 gm-cursor-pointer\"\r\n :class=\"row.fixed === '' || row.fixed === true || row.fixed === 'left' ? 'gm-text-blue-500' : ''\"\r\n size=\"20\"\r\n @click=\"toggleFixedLeft(row)\"\r\n >\r\n <IceCreamRound />\r\n </gm-icon>\r\n </gm-tooltip>\r\n <gm-tooltip effect=\"dark\" content=\"固定在右侧\" placement=\"top\">\r\n <gm-icon\r\n class=\"-gm-scale-x-100 gm-cursor-pointer\"\r\n :class=\"row.fixed === 'right' ? 'gm-text-blue-500' : ''\"\r\n size=\"20\"\r\n @click=\"toggleFixedRight(row)\"\r\n >\r\n <IceCreamRound />\r\n </gm-icon>\r\n </gm-tooltip>\r\n </div>\r\n </template>\r\n </gm-table-column>\r\n </gm-table>\r\n <template #footer>\r\n <div class=\"gm-flex gm-justify-between\">\r\n <div>\r\n <gm-button :loading=\"submitLoading\" type=\"primary\" size=\"default\" @click=\"onReset\">重置</gm-button>\r\n <gm-button :loading=\"submitLoading\" type=\"success\" size=\"default\" @click=\"onSyncRemote\">同步</gm-button>\r\n </div>\r\n <div>\r\n <gm-button :loading=\"submitLoading\" size=\"default\" @click=\"isShowDrawer = false\">取消</gm-button>\r\n <gm-button :loading=\"submitLoading\" type=\"primary\" size=\"default\" @click=\"submitSettings()\">保存</gm-button>\r\n </div>\r\n </div>\r\n </template>\r\n </gm-drawer>\r\n</template>\r\n\r\n<script setup lang=\"ts\">\r\nimport { computed, onMounted, ref, watch } from 'vue';\r\nimport { useCloned } from '@vueuse/core';\r\nimport { useCustomSettingsStore } from '@giime/hooks';\r\nimport { GmMessage } from '@giime/components/src/plugins/message';\r\nimport { cloneDeep } from 'lodash-es';\r\nimport { isNil } from '@giime/utils/src/is';\r\nimport { IceCreamRound, InfoFilled } from '@element-plus/icons-vue';\r\nimport { tableHeaderFormProps } from './tableHeaderForm';\r\nimport type { CheckboxValueType } from 'element-plus';\r\nimport type { TableColumnProProps } from '../tableColumnPro/tableColumnPro';\r\n\r\ndefineOptions({\r\n name: 'GmTableHeaderForm',\r\n});\r\n\r\nconst props = defineProps(tableHeaderFormProps);\r\nconst emit = defineEmits([\"updateColumns\"]);\r\n/**抽屉显示 */\r\nconst isShowDrawer = defineModel<boolean>('isShowDrawer', {\r\n required: true,\r\n});\r\n\r\n/**自定义按钮 props列表 */\r\nconst colPropsList = defineModel<TableColumnProProps[]>('colPropsList', {\r\n required: true,\r\n});\r\nconst customSettingsStore = useCustomSettingsStore();\r\n\r\n/**\r\n * 数据是否初始化完成\r\n */\r\nconst isInited = ref(false);\r\n/**内部克隆一份,当点击保存时 应用修改的内容 */\r\nconst { cloned: clonedColPropsList, sync: syncPropsList } = useCloned(colPropsList);\r\nconst defaultPropsList = computed(() => cloneDeep(props.colDefaultPropsList));\r\n// 重新打开弹窗时, 克隆一份新数据\r\nwatch(isShowDrawer, newValue => {\r\n if (newValue) {\r\n clonedColPropsList.value = cloneDeep(colPropsList.value);\r\n }\r\n});\r\nconst customSettingsValue = computed<TableColumnProProps[]>(() => customSettingsStore.customSettings[props.keyWord]?.[props.type] || []);\r\nconst { cloned: clonedStore } = useCloned(customSettingsValue);\r\n\r\n// 更新选中数据\r\nconst updateColumns = () => {\r\n colPropsList.value = clonedColPropsList.value;\r\n};\r\n// 初始化数据\r\nconst initColumns = async () => {\r\n try {\r\n await customSettingsStore.getCustomSettings({ key_word: props.keyWord, type: props.type }, { defaultValue: [] });\r\n } catch {}\r\n clonedColPropsList.value = defaultPropsList.value.map(it => {\r\n const findItem = clonedStore.value.find(v => v.prop === it.prop);\r\n if (findItem) {\r\n it.isShow = findItem.isShow;\r\n it.width = findItem.width;\r\n if (!isNil(findItem.fixed)) {\r\n it.fixed = findItem.fixed;\r\n }\r\n // it.type = findItem.type;\r\n }\r\n return it;\r\n });\r\n\r\n updateColumns();\r\n isInited.value = true;\r\n};\r\n\r\n// 已选中条数\r\nconst checkedNumber = computed(() => {\r\n return clonedColPropsList.value.filter(v => v.isShow).length;\r\n});\r\n// 全选\r\nconst checkedAll = computed(() => clonedColPropsList.value.filter(it => it.type !== 'edit').every(v => v.isShow));\r\n// 半选\r\nconst isIndeterminate = computed(() => !checkedAll.value && clonedColPropsList.value.filter(it => it.type !== 'edit').some(v => v.isShow));\r\n// 切换全选\r\nconst handleCheckAllChange = (val: CheckboxValueType) => {\r\n clonedColPropsList.value.forEach(v => {\r\n if (v.type !== 'edit') {\r\n v.isShow = Boolean(val);\r\n }\r\n });\r\n};\r\nconst submitLoading = ref(false);\r\n// 保存\r\nconst submitSettings = async (options?: { hiddenMessage?: boolean }) => {\r\n try {\r\n submitLoading.value = true;\r\n const { data } = await customSettingsStore.addCustomSettings({\r\n key_word: props.keyWord,\r\n value: JSON.stringify(clonedColPropsList.value),\r\n type: props.type,\r\n });\r\n submitLoading.value = false;\r\n if (data.code !== 0) {\r\n return;\r\n }\r\n // isShowDrawer.value = false;\r\n updateColumns();\r\n if (!options?.hiddenMessage) {\r\n GmMessage.success('保存成功');\r\n }\r\n emit('updateColumns');\r\n } catch (e) {\r\n console.error(e);\r\n submitLoading.value = false;\r\n }\r\n};\r\n/**同步远程设置 */\r\nconst onSyncRemote = async () => {\r\n try {\r\n submitLoading.value = true;\r\n await customSettingsStore.syncRemoteSetting({\r\n key_word: props.keyWord,\r\n type: props.type,\r\n });\r\n submitLoading.value = false;\r\n GmMessage.success('同步成功');\r\n } catch (e) {\r\n console.error(e);\r\n submitLoading.value = false;\r\n }\r\n};\r\n// 重置\r\nconst onReset = () => {\r\n clonedColPropsList.value = cloneDeep(props.colDefaultPropsList);\r\n};\r\n// 点击固定到左侧\r\nconst toggleFixedLeft = (row: TableColumnProProps) => {\r\n if (row.fixed === 'left' || row.fixed === true || row.fixed === '') {\r\n row.fixed = false;\r\n } else {\r\n row.fixed = 'left';\r\n }\r\n};\r\n// 点击固定到右侧\r\nconst toggleFixedRight = (row: TableColumnProProps) => {\r\n if (row.fixed === 'right') {\r\n row.fixed = false;\r\n } else {\r\n row.fixed = 'right';\r\n }\r\n};\r\nonMounted(() => {\r\n initColumns();\r\n});\r\ndefineExpose({\r\n isInited,\r\n submitSettings,\r\n syncPropsList,\r\n});\r\n</script>\r\n"],"names":["_useModel"],"mappings":"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"}
|
package/es/giime/version.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const version = "0.3.
|
|
1
|
+
export declare const version = "0.3.15";
|
package/es/giime/version.mjs
CHANGED
package/es/giime/version.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"version.mjs","sources":["../../../../packages/giime/version.ts"],"sourcesContent":["export const version = '0.3.
|
|
1
|
+
{"version":3,"file":"version.mjs","sources":["../../../../packages/giime/version.ts"],"sourcesContent":["export const version = '0.3.15';\n"],"names":[],"mappings":"AAAO,MAAM,OAAU,GAAA;;;;"}
|
|
@@ -76,6 +76,9 @@ const useCustomSettingsStore = defineStore("gmCustomSettings", () => {
|
|
|
76
76
|
});
|
|
77
77
|
const getCustomSettings = async (params, options) => {
|
|
78
78
|
await getCustomList(params);
|
|
79
|
+
if (!customSettings.value[params.key_word]) {
|
|
80
|
+
return;
|
|
81
|
+
}
|
|
79
82
|
if (!hasOwn(customSettings.value[params.key_word], params.type)) {
|
|
80
83
|
customSettings.value[params.key_word][params.type] = options.defaultValue;
|
|
81
84
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../../../../../packages/hooks/store/useCustomSettings/index.ts"],"sourcesContent":["import { ref } from 'vue';\r\nimport { defineStore } from 'pinia';\r\nimport { type AddListCustomParams, addListCustom, getListCustom } from '@giime/api';\r\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\r\nimport { type EventHookOn, type EventHookTrigger, createEventHook } from '@vueuse/core';\r\nimport { useIDBKeyval } from '@giime/hooks/base/useIDBKeyval';\r\nimport { hasOwn } from '@giime/utils/src/objects';\r\n\r\ninterface CustomSettings {\r\n [key_word: string]: {\r\n [type: string]: any;\r\n };\r\n}\r\n\r\nexport interface GetCustomSettingsParams {\r\n key_word: string;\r\n type: string;\r\n}\r\n\r\nexport const useCustomSettingsStore = defineStore('gmCustomSettings', () => {\r\n // const customSettings = ref<CustomSettings>({});\r\n const { data: customSettings, initIndexedDBComplete } = useIDBKeyval<CustomSettings>('gmCustomSettingsStore', {}, { deep: true });\r\n const customResult = createEventHook<GetCustomSettingsParams>();\r\n /**\r\n * 正在loading的key_word\r\n */\r\n const isLoadingKeyWords = ref(new Set<string>());\r\n\r\n // 添加自定义设置\r\n const addCustomSettings = async (params: AddListCustomParams) => {\r\n const res = await addListCustom(params);\r\n if (res.data.code === 0) {\r\n if (!customSettings.value[params.key_word]) {\r\n customSettings.value[params.key_word] = {};\r\n }\r\n let value = params.value;\r\n try {\r\n value = JSON.parse(params.value);\r\n } catch {}\r\n customSettings.value[params.key_word][params.type] = value;\r\n }\r\n return res;\r\n };\r\n /**\r\n * 同步远程数据到本地\r\n */\r\n const syncRemoteSetting = async (params: GetCustomSettingsParams) => {\r\n const { key_word, type } = params;\r\n isLoadingKeyWords.value.add(key_word);\r\n try {\r\n const { data } = await getListCustom({ key_word });\r\n if (data.code !== 0) {\r\n isLoadingKeyWords.value.delete(key_word);\r\n customResult.trigger({ key_word, type });\r\n return;\r\n }\r\n // 将json字符串转成对象\r\n for (const key in data.data) {\r\n if (hasOwn(data.data, key)) {\r\n const value = data.data[key];\r\n try {\r\n data.data[key] = JSON.parse(value);\r\n } catch {\r\n data.data[key] = value;\r\n }\r\n }\r\n }\r\n customSettings.value[key_word] = Array.isArray(data.data) ? {} : data.data;\r\n isLoadingKeyWords.value.delete(key_word);\r\n customResult.trigger({ key_word, type });\r\n } catch {\r\n isLoadingKeyWords.value.delete(key_word);\r\n customResult.trigger({ key_word, type });\r\n }\r\n };\r\n // 获取自定义设置\r\n const getCustomList = async (params: GetCustomSettingsParams) => {\r\n const { key_word, type } = params;\r\n // 等待indexedDB 初始化完成\r\n await initIndexedDBComplete();\r\n // 如果已存在\r\n if (customSettings.value[key_word] && hasOwn(customSettings.value[key_word], type)) {\r\n customResult.trigger({ key_word, type });\r\n return;\r\n }\r\n // 如果正在loading,则 等待之前请求的结果\r\n if (isLoadingKeyWords.value.has(key_word)) {\r\n await onCustomResultPromise({ key_word, type });\r\n return;\r\n }\r\n await syncRemoteSetting(params);\r\n };\r\n /**监听 已请求列表 promise版 */\r\n const onCustomResultPromise = (params: GetCustomSettingsParams) =>\r\n new Promise<GetCustomSettingsParams>(resolve => {\r\n customResult.on(value => {\r\n if (params.key_word === value.key_word) {\r\n resolve(value);\r\n }\r\n });\r\n });\r\n const getCustomSettings = async (params: GetCustomSettingsParams, options: { defaultValue: any }) => {\r\n await getCustomList(params);\r\n if (!hasOwn(customSettings.value[params.key_word], params.type)) {\r\n customSettings.value[params.key_word][params.type] = options.defaultValue;\r\n }\r\n return customSettings.value[params.key_word][params.type];\r\n };\r\n\r\n return {\r\n addCustomSettings,\r\n getCustomSettings,\r\n syncRemoteSetting,\r\n customSettings,\r\n };\r\n});\r\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../../../../../packages/hooks/store/useCustomSettings/index.ts"],"sourcesContent":["import { ref } from 'vue';\r\nimport { defineStore } from 'pinia';\r\nimport { type AddListCustomParams, addListCustom, getListCustom } from '@giime/api';\r\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\r\nimport { type EventHookOn, type EventHookTrigger, createEventHook } from '@vueuse/core';\r\nimport { useIDBKeyval } from '@giime/hooks/base/useIDBKeyval';\r\nimport { hasOwn } from '@giime/utils/src/objects';\r\n\r\ninterface CustomSettings {\r\n [key_word: string]: {\r\n [type: string]: any;\r\n };\r\n}\r\n\r\nexport interface GetCustomSettingsParams {\r\n key_word: string;\r\n type: string;\r\n}\r\n\r\nexport const useCustomSettingsStore = defineStore('gmCustomSettings', () => {\r\n // const customSettings = ref<CustomSettings>({});\r\n const { data: customSettings, initIndexedDBComplete } = useIDBKeyval<CustomSettings>('gmCustomSettingsStore', {}, { deep: true });\r\n const customResult = createEventHook<GetCustomSettingsParams>();\r\n /**\r\n * 正在loading的key_word\r\n */\r\n const isLoadingKeyWords = ref(new Set<string>());\r\n\r\n // 添加自定义设置\r\n const addCustomSettings = async (params: AddListCustomParams) => {\r\n const res = await addListCustom(params);\r\n if (res.data.code === 0) {\r\n if (!customSettings.value[params.key_word]) {\r\n customSettings.value[params.key_word] = {};\r\n }\r\n let value = params.value;\r\n try {\r\n value = JSON.parse(params.value);\r\n } catch {}\r\n customSettings.value[params.key_word][params.type] = value;\r\n }\r\n return res;\r\n };\r\n /**\r\n * 同步远程数据到本地\r\n */\r\n const syncRemoteSetting = async (params: GetCustomSettingsParams) => {\r\n const { key_word, type } = params;\r\n isLoadingKeyWords.value.add(key_word);\r\n try {\r\n const { data } = await getListCustom({ key_word });\r\n if (data.code !== 0) {\r\n isLoadingKeyWords.value.delete(key_word);\r\n customResult.trigger({ key_word, type });\r\n return;\r\n }\r\n // 将json字符串转成对象\r\n for (const key in data.data) {\r\n if (hasOwn(data.data, key)) {\r\n const value = data.data[key];\r\n try {\r\n data.data[key] = JSON.parse(value);\r\n } catch {\r\n data.data[key] = value;\r\n }\r\n }\r\n }\r\n customSettings.value[key_word] = Array.isArray(data.data) ? {} : data.data;\r\n isLoadingKeyWords.value.delete(key_word);\r\n customResult.trigger({ key_word, type });\r\n } catch {\r\n isLoadingKeyWords.value.delete(key_word);\r\n customResult.trigger({ key_word, type });\r\n }\r\n };\r\n // 获取自定义设置\r\n const getCustomList = async (params: GetCustomSettingsParams) => {\r\n const { key_word, type } = params;\r\n // 等待indexedDB 初始化完成\r\n await initIndexedDBComplete();\r\n // 如果已存在\r\n if (customSettings.value[key_word] && hasOwn(customSettings.value[key_word], type)) {\r\n customResult.trigger({ key_word, type });\r\n return;\r\n }\r\n // 如果正在loading,则 等待之前请求的结果\r\n if (isLoadingKeyWords.value.has(key_word)) {\r\n await onCustomResultPromise({ key_word, type });\r\n return;\r\n }\r\n await syncRemoteSetting(params);\r\n };\r\n /**监听 已请求列表 promise版 */\r\n const onCustomResultPromise = (params: GetCustomSettingsParams) =>\r\n new Promise<GetCustomSettingsParams>(resolve => {\r\n customResult.on(value => {\r\n if (params.key_word === value.key_word) {\r\n resolve(value);\r\n }\r\n });\r\n });\r\n const getCustomSettings = async (params: GetCustomSettingsParams, options: { defaultValue: any }) => {\r\n await getCustomList(params);\r\n if (!customSettings.value[params.key_word]) {\r\n return;\r\n }\r\n if (!hasOwn(customSettings.value[params.key_word], params.type)) {\r\n customSettings.value[params.key_word][params.type] = options.defaultValue;\r\n }\r\n return customSettings.value[params.key_word][params.type];\r\n };\r\n\r\n return {\r\n addCustomSettings,\r\n getCustomSettings,\r\n syncRemoteSetting,\r\n customSettings,\r\n };\r\n});\r\n"],"names":[],"mappings":"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"}
|
package/es/index.css
CHANGED
|
@@ -755,6 +755,31 @@ video {
|
|
|
755
755
|
margin: 0;
|
|
756
756
|
}
|
|
757
757
|
|
|
758
|
+
.gm-number-interval-single[data-v-47a13fd0] {
|
|
759
|
+
border-radius: var(--el-input-border-radius, var(--el-border-radius-base));
|
|
760
|
+
box-shadow: 0 0 0 1px var(--el-input-border-color, var(--el-border-color)) inset;
|
|
761
|
+
background-color: var(--el-input-bg-color, var(--el-fill-color-blank));
|
|
762
|
+
}
|
|
763
|
+
.gm-number-interval-single[data-v-47a13fd0] [data-v-47a13fd0] .el-input__wrapper {
|
|
764
|
+
box-shadow: none;
|
|
765
|
+
background: none;
|
|
766
|
+
}
|
|
767
|
+
|
|
768
|
+
.gm-number-interval-close[data-v-47a13fd0] {
|
|
769
|
+
display: none;
|
|
770
|
+
color: var(--el-input-icon-color, var(--el-text-color-placeholder));
|
|
771
|
+
}
|
|
772
|
+
|
|
773
|
+
.gm-number-interval-single[data-v-47a13fd0]:hover .gm-number-interval-close[data-v-47a13fd0] {
|
|
774
|
+
display: flex;
|
|
775
|
+
}
|
|
776
|
+
.gm-flex-center[data-v-2a79bac9] {
|
|
777
|
+
align-items: center;
|
|
778
|
+
}
|
|
779
|
+
|
|
780
|
+
.gm-flex-justify-between[data-v-2a79bac9] {
|
|
781
|
+
justify-content: space-between;
|
|
782
|
+
}
|
|
758
783
|
[data-v-ec3af0bb] .gmSearchForm .el-form-item {
|
|
759
784
|
margin-right: 0;
|
|
760
785
|
margin-bottom: 4px;
|
|
@@ -782,31 +807,6 @@ video {
|
|
|
782
807
|
[data-v-72a53f6c] .gmTableNoBorder .el-table__border-left-patch {
|
|
783
808
|
height: 0;
|
|
784
809
|
}
|
|
785
|
-
.gm-number-interval-single[data-v-47a13fd0] {
|
|
786
|
-
border-radius: var(--el-input-border-radius, var(--el-border-radius-base));
|
|
787
|
-
box-shadow: 0 0 0 1px var(--el-input-border-color, var(--el-border-color)) inset;
|
|
788
|
-
background-color: var(--el-input-bg-color, var(--el-fill-color-blank));
|
|
789
|
-
}
|
|
790
|
-
.gm-number-interval-single[data-v-47a13fd0] [data-v-47a13fd0] .el-input__wrapper {
|
|
791
|
-
box-shadow: none;
|
|
792
|
-
background: none;
|
|
793
|
-
}
|
|
794
|
-
|
|
795
|
-
.gm-number-interval-close[data-v-47a13fd0] {
|
|
796
|
-
display: none;
|
|
797
|
-
color: var(--el-input-icon-color, var(--el-text-color-placeholder));
|
|
798
|
-
}
|
|
799
|
-
|
|
800
|
-
.gm-number-interval-single[data-v-47a13fd0]:hover .gm-number-interval-close[data-v-47a13fd0] {
|
|
801
|
-
display: flex;
|
|
802
|
-
}
|
|
803
|
-
.gm-flex-center[data-v-6829dac1] {
|
|
804
|
-
align-items: center;
|
|
805
|
-
}
|
|
806
|
-
|
|
807
|
-
.gm-flex-justify-between[data-v-6829dac1] {
|
|
808
|
-
justify-content: space-between;
|
|
809
|
-
}
|
|
810
810
|
|
|
811
811
|
.pagination-container[data-v-19230954] {
|
|
812
812
|
background: #fff;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"axios.d.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errorMessage.mjs","sources":["../../../../../../packages/utils/src/http/errorMessage.ts"],"sourcesContent":["import { ElMessage, type MessageOptions } from 'element-plus';\r\nimport type { AxiosError } from 'axios';\r\n\r\n/**\r\n * 统一错误弹窗\r\n */\r\nexport const errorMessage = (options: MessageOptions) => {\r\n return ElMessage({\r\n type: 'error',\r\n duration: 5 * 1000,\r\n showClose: true,\r\n grouping: true,\r\n ...options,\r\n message: options?.message || '未知错误',\r\n });\r\n};\r\n// 抛错时 error\r\nexport const responseErrorMessage = (error: AxiosError<any, any>) => {\r\n if (error.code === 'ERR_CANCELED') {\r\n return Promise.reject(error);\r\n }\r\n const serviceMessage =\r\n (error?.response?.data?.message || error?.response?.data?.comment || error?.response?.data?.msg || error?.response?.data?.errMsg) ?? '';\r\n switch (error.response?.status) {\r\n case 400:\r\n return errorMessage({\r\n message: `400-客户端错误,请求失败。${serviceMessage}`,\r\n });\r\n case 403:\r\n return errorMessage({\r\n message: `403-无权访问。${serviceMessage}`,\r\n });\r\n case 404:\r\n return errorMessage({\r\n message: `404-无效的请求。${serviceMessage}`,\r\n });\r\n case 413:\r\n return errorMessage({\r\n message: `413-请求内容过大。${serviceMessage}`,\r\n });\r\n case 500:\r\n return errorMessage({\r\n message: `500-服务器内部错误o(╥﹏╥)o。${serviceMessage}`,\r\n });\r\n case 502:\r\n return errorMessage({\r\n message: `502-网关错误。${serviceMessage}`,\r\n });\r\n case 504:\r\n return errorMessage({\r\n message: `504-网关超时。${serviceMessage}`,\r\n });\r\n\r\n default:\r\n break;\r\n }\r\n console.error('error', error);\r\n // console.error('error.message', error.message);\r\n // console.error('error.status', error.status);\r\n // console.error('error.response', error.response);\r\n // console.error('error.code', error.code);\r\n // console.error('error.name', error.name);\r\n // 对响应错误做点什么\r\n if (error.message.includes('timeout')) {\r\n errorMessage({\r\n duration: 10 * 1000,\r\n message: `请求超时。${serviceMessage}\r\n 接口地址:${error.config?.url ?? ''}`,\r\n });\r\n } else if (error.message.includes('Network Error')) {\r\n errorMessage({\r\n duration: 10 * 1000,\r\n message: `网络错误。${serviceMessage}\r\n 接口地址:${error.config?.url ?? ''}`,\r\n });\r\n } else {\r\n errorMessage({\r\n message: `${error.message}。${serviceMessage}\r\n 接口地址:${error.config?.url ?? ''}`,\r\n });\r\n }\r\n};\r\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"errorMessage.mjs","sources":["../../../../../../packages/utils/src/http/errorMessage.ts"],"sourcesContent":["import { ElMessage, type MessageOptions } from 'element-plus';\r\nimport type { AxiosError } from 'axios';\r\n\r\n/**\r\n * 统一错误弹窗\r\n */\r\nexport const errorMessage = (options: MessageOptions) => {\r\n return ElMessage({\r\n type: 'error',\r\n duration: 5 * 1000,\r\n showClose: true,\r\n grouping: true,\r\n ...options,\r\n message: options?.message || '未知错误',\r\n });\r\n};\r\n// 抛错时 error\r\nexport const responseErrorMessage = (error: AxiosError<any, any>) => {\r\n if (error.config?.disableMessage) {\r\n return;\r\n }\r\n if (error.code === 'ERR_CANCELED') {\r\n return Promise.reject(error);\r\n }\r\n const serviceMessage =\r\n (error?.response?.data?.message || error?.response?.data?.comment || error?.response?.data?.msg || error?.response?.data?.errMsg) ?? '';\r\n switch (error.response?.status) {\r\n case 400:\r\n return errorMessage({\r\n message: `400-客户端错误,请求失败。${serviceMessage}`,\r\n });\r\n case 403:\r\n return errorMessage({\r\n message: `403-无权访问。${serviceMessage}`,\r\n });\r\n case 404:\r\n return errorMessage({\r\n message: `404-无效的请求。${serviceMessage}`,\r\n });\r\n case 413:\r\n return errorMessage({\r\n message: `413-请求内容过大。${serviceMessage}`,\r\n });\r\n case 500:\r\n return errorMessage({\r\n message: `500-服务器内部错误o(╥﹏╥)o。${serviceMessage}`,\r\n });\r\n case 502:\r\n return errorMessage({\r\n message: `502-网关错误。${serviceMessage}`,\r\n });\r\n case 504:\r\n return errorMessage({\r\n message: `504-网关超时。${serviceMessage}`,\r\n });\r\n\r\n default:\r\n break;\r\n }\r\n console.error('error', error);\r\n // console.error('error.message', error.message);\r\n // console.error('error.status', error.status);\r\n // console.error('error.response', error.response);\r\n // console.error('error.code', error.code);\r\n // console.error('error.name', error.name);\r\n // 对响应错误做点什么\r\n if (error.message.includes('timeout')) {\r\n errorMessage({\r\n duration: 10 * 1000,\r\n message: `请求超时。${serviceMessage}\r\n 接口地址:${error.config?.url ?? ''}`,\r\n });\r\n } else if (error.message.includes('Network Error')) {\r\n errorMessage({\r\n duration: 10 * 1000,\r\n message: `网络错误。${serviceMessage}\r\n 接口地址:${error.config?.url ?? ''}`,\r\n });\r\n } else {\r\n errorMessage({\r\n message: `${error.message}。${serviceMessage}\r\n 接口地址:${error.config?.url ?? ''}`,\r\n });\r\n }\r\n};\r\n"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
var request = require('../request.js');
|
|
4
4
|
|
|
5
|
-
const getListCustom = (params) => request.default.post("/workflow/service?name=cross&action=getListCustom", params);
|
|
5
|
+
const getListCustom = (params) => request.default.post("/workflow/service?name=cross&action=getListCustom", params, { timeout: 5e3, disableMessage: true });
|
|
6
6
|
|
|
7
7
|
exports.getListCustom = getListCustom;
|
|
8
8
|
//# sourceMappingURL=getListCustom.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getListCustom.js","sources":["../../../../../../packages/api/gatewayApi/cross/getListCustom.ts"],"sourcesContent":["import request from '../request';\r\nimport type { AxiosRequestConfig } from 'axios';\r\n\r\nexport interface GetListCustomResult extends AxiosRequestConfig {\r\n code: number;\r\n message: string;\r\n data: GetListCustomResultData;\r\n}\r\n\r\nexport interface GetListCustomResultData {\r\n headerList?: string | null | undefined;\r\n operateList?: string | null | undefined;\r\n [key: string]: string | undefined | null;\r\n}\r\n\r\n/**\r\n * @description 描述\r\n * @param {string} key_word 每个列表的唯一key\r\n * @return {*}\r\n **/\r\n\r\nexport interface GetListCustomParams extends AxiosRequestConfig {\r\n key_word: string;\r\n}\r\n\r\nexport const getListCustom = (params: GetListCustomParams)
|
|
1
|
+
{"version":3,"file":"getListCustom.js","sources":["../../../../../../packages/api/gatewayApi/cross/getListCustom.ts"],"sourcesContent":["import request from '../request';\r\nimport type { AxiosRequestConfig } from 'axios';\r\n\r\nexport interface GetListCustomResult extends AxiosRequestConfig {\r\n code: number;\r\n message: string;\r\n data: GetListCustomResultData;\r\n}\r\n\r\nexport interface GetListCustomResultData {\r\n headerList?: string | null | undefined;\r\n operateList?: string | null | undefined;\r\n [key: string]: string | undefined | null;\r\n}\r\n\r\n/**\r\n * @description 描述\r\n * @param {string} key_word 每个列表的唯一key\r\n * @return {*}\r\n **/\r\n\r\nexport interface GetListCustomParams extends AxiosRequestConfig {\r\n key_word: string;\r\n}\r\n\r\nexport const getListCustom = (params: GetListCustomParams) =>\r\n request.post('/workflow/service?name=cross&action=getListCustom', params, { timeout: 5_000, disableMessage: true });\r\n"],"names":["request"],"mappings":";;;;AAyBO,MAAM,aAAgB,GAAA,CAAC,MAC5B,KAAAA,eAAA,CAAQ,IAAK,CAAA,mDAAA,EAAqD,MAAQ,EAAA,EAAE,OAAS,EAAA,GAAA,EAAO,cAAgB,EAAA,IAAA,EAAM;;;;"}
|
|
@@ -206,6 +206,7 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
|
|
|
206
206
|
empty?(_: {}): any;
|
|
207
207
|
tag?(_: {}): any;
|
|
208
208
|
loading?(_: {}): any;
|
|
209
|
+
label?(_: any): any;
|
|
209
210
|
}>;
|
|
210
211
|
export default _default;
|
|
211
212
|
type __VLS_WithTemplateSlots<T, S> = T & {
|
|
@@ -86,6 +86,13 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
|
86
86
|
vue.renderSlot(_ctx.$slots, "loading")
|
|
87
87
|
]),
|
|
88
88
|
key: "6"
|
|
89
|
+
} : void 0,
|
|
90
|
+
vue.unref(slots).label ? {
|
|
91
|
+
name: "label",
|
|
92
|
+
fn: vue.withCtx((slotValue) => [
|
|
93
|
+
vue.renderSlot(_ctx.$slots, "label", vue.normalizeProps(vue.guardReactiveProps(slotValue)))
|
|
94
|
+
]),
|
|
95
|
+
key: "7"
|
|
89
96
|
} : void 0
|
|
90
97
|
]),
|
|
91
98
|
1040
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Select.vue2.js","sources":["../../../../../../../packages/components/src/base/select/Select.vue"],"sourcesContent":["<template>\r\n <el-select ref=\"elRef\" v-bind=\"props\" v-on=\"elEvents\">\r\n <template v-if=\"slots.default\" #default>\r\n <slot name=\"default\" />\r\n </template>\r\n <template v-if=\"slots.header\" #header>\r\n <slot name=\"header\" />\r\n </template>\r\n <template v-if=\"slots.footer\" #footer>\r\n <slot name=\"footer\" />\r\n </template>\r\n <template v-if=\"slots.prefix\" #prefix>\r\n <slot name=\"prefix\" />\r\n </template>\r\n <template v-if=\"slots.empty\" #empty>\r\n <slot name=\"empty\" />\r\n </template>\r\n <template v-if=\"slots.tag\" #tag>\r\n <slot name=\"tag\" />\r\n </template>\r\n <template v-if=\"slots.loading\" #loading>\r\n <slot name=\"loading\" />\r\n </template>\r\n </el-select>\r\n</template>\r\n<script lang=\"ts\" setup>\r\nimport { ref, useSlots } from 'vue';\r\nimport { getGmEvent, getGmExports } from '@giime/utils';\r\nimport { elSelectEmits, selectEmits, selectProps } from './select';\r\n\r\ndefineOptions({\r\n name: 'GmSelect',\r\n});\r\nconst slots = useSlots();\r\nconst props = defineProps(selectProps);\r\nconst emit = defineEmits(selectEmits);\r\n// 重发el的事件\r\nconst elEvents = getGmEvent(elSelectEmits, emit);\r\n\r\nconst elRef = ref();\r\nconst exposeNames = ['focus', 'blur'] as const;\r\nconst { exposeFns } = getGmExports(elRef, exposeNames);\r\n\r\ndefineExpose({\r\n ...exposeFns,\r\n});\r\n</script>\r\n"],"names":["useSlots","getGmEvent","elSelectEmits","ref","getGmExports"],"mappings":";;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"Select.vue2.js","sources":["../../../../../../../packages/components/src/base/select/Select.vue"],"sourcesContent":["<template>\r\n <el-select ref=\"elRef\" v-bind=\"props\" v-on=\"elEvents\">\r\n <template v-if=\"slots.default\" #default>\r\n <slot name=\"default\" />\r\n </template>\r\n <template v-if=\"slots.header\" #header>\r\n <slot name=\"header\" />\r\n </template>\r\n <template v-if=\"slots.footer\" #footer>\r\n <slot name=\"footer\" />\r\n </template>\r\n <template v-if=\"slots.prefix\" #prefix>\r\n <slot name=\"prefix\" />\r\n </template>\r\n <template v-if=\"slots.empty\" #empty>\r\n <slot name=\"empty\" />\r\n </template>\r\n <template v-if=\"slots.tag\" #tag>\r\n <slot name=\"tag\" />\r\n </template>\r\n <template v-if=\"slots.loading\" #loading>\r\n <slot name=\"loading\" />\r\n </template>\r\n <template v-if=\"slots.label\" #label=\"slotValue\">\r\n <slot name=\"label\" v-bind=\"slotValue\" />\r\n </template>\r\n </el-select>\r\n</template>\r\n<script lang=\"ts\" setup>\r\nimport { ref, useSlots } from 'vue';\r\nimport { getGmEvent, getGmExports } from '@giime/utils';\r\nimport { elSelectEmits, selectEmits, selectProps } from './select';\r\n\r\ndefineOptions({\r\n name: 'GmSelect',\r\n});\r\nconst slots = useSlots();\r\nconst props = defineProps(selectProps);\r\nconst emit = defineEmits(selectEmits);\r\n// 重发el的事件\r\nconst elEvents = getGmEvent(elSelectEmits, emit);\r\n\r\nconst elRef = ref();\r\nconst exposeNames = ['focus', 'blur'] as const;\r\nconst { exposeFns } = getGmExports(elRef, exposeNames);\r\n\r\ndefineExpose({\r\n ...exposeFns,\r\n});\r\n</script>\r\n"],"names":["useSlots","getGmEvent","elSelectEmits","ref","getGmExports"],"mappings":";;;;;;;;;;;;;;;;;;AAoCA,IAAA,MAAM,QAAQA,YAAS,EAAA,CAAA;AACvB,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AACd,IAAA,MAAM,IAAO,GAAA,MAAA,CAAA;AAEb,IAAM,MAAA,QAAA,GAAWC,gBAAW,CAAAC,oBAAA,EAAe,IAAI,CAAA,CAAA;AAE/C,IAAA,MAAM,QAAQC,OAAI,EAAA,CAAA;AAClB,IAAM,MAAA,WAAA,GAAc,CAAC,OAAA,EAAS,MAAM,CAAA,CAAA;AACpC,IAAA,MAAM,EAAE,SAAA,EAAc,GAAAC,sBAAA,CAAa,OAAO,WAAW,CAAA,CAAA;AAErD,IAAa,QAAA,CAAA;AAAA,MACX,GAAG,SAAA;AAAA,KACJ,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -468,6 +468,7 @@ export declare const GmSelect: import("../../../../utils").SFCWithInstall<{
|
|
|
468
468
|
empty?(_: {}): any;
|
|
469
469
|
tag?(_: {}): any;
|
|
470
470
|
loading?(_: {}): any;
|
|
471
|
+
label?(_: any): any;
|
|
471
472
|
};
|
|
472
473
|
})> & Record<string, any>;
|
|
473
474
|
export type SelectInstance = InstanceType<typeof Select>;
|
|
@@ -6,7 +6,7 @@ var MemoryForm_vue_vue_type_script_setup_true_lang = require('./MemoryForm.vue2.
|
|
|
6
6
|
require('./MemoryForm.vue3.js');
|
|
7
7
|
var _pluginVue_exportHelper = require('../../../../_virtual/_plugin-vue_export-helper.js');
|
|
8
8
|
|
|
9
|
-
var MemoryForm = /* @__PURE__ */ _pluginVue_exportHelper.default(MemoryForm_vue_vue_type_script_setup_true_lang.default, [["__scopeId", "data-v-
|
|
9
|
+
var MemoryForm = /* @__PURE__ */ _pluginVue_exportHelper.default(MemoryForm_vue_vue_type_script_setup_true_lang.default, [["__scopeId", "data-v-2a79bac9"], ["__file", "MemoryForm.vue"]]);
|
|
10
10
|
|
|
11
11
|
exports.default = MemoryForm;
|
|
12
12
|
//# sourceMappingURL=MemoryForm.vue.js.map
|
|
@@ -16,7 +16,7 @@ var index = require('../../../../hooks/store/useCustomSettings/index.js');
|
|
|
16
16
|
var index$1 = require('../../plugins/messageBox/index.js');
|
|
17
17
|
var index$2 = require('../../plugins/message/index.js');
|
|
18
18
|
|
|
19
|
-
const _withScopeId = (n) => (vue.pushScopeId("data-v-
|
|
19
|
+
const _withScopeId = (n) => (vue.pushScopeId("data-v-2a79bac9"), n = n(), vue.popScopeId(), n);
|
|
20
20
|
const _hoisted_1 = { class: "gm-flex-center gm-flex-justify-between gm-mr-2 gm-flex gm-flex-1" };
|
|
21
21
|
const _hoisted_2 = { class: "gm-flex gm-gap-2" };
|
|
22
22
|
var _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
@@ -51,6 +51,9 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
|
51
51
|
{ key_word: props.pageName + memoryForm.MemoryHistoryExt, type: memoryForm.MemoryHistoryType },
|
|
52
52
|
{ defaultValue: [] }
|
|
53
53
|
);
|
|
54
|
+
if (!data) {
|
|
55
|
+
return;
|
|
56
|
+
}
|
|
54
57
|
const { cloned: result } = core.useCloned(data || []);
|
|
55
58
|
searchHistoryList.value = result.value;
|
|
56
59
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MemoryForm.vue2.js","sources":["../../../../../../../packages/components/src/composite/memoryForm/MemoryForm.vue"],"sourcesContent":["<template>\r\n <gm-form :id=\"$attrs.id\" ref=\"elRef\" :class=\"$attrs.class\" v-bind=\"props\" v-on=\"elEvents\">\r\n <template #default=\"slotValue\">\r\n <slot v-bind=\"slotValue\" />\r\n <slot name=\"buttons\">\r\n <gm-form-item>\r\n <gm-button type=\"primary\" @click=\"submit\">\r\n {{ props.submitText || '提交' }}\r\n </gm-button>\r\n <gm-button @click=\"reset\">\r\n {{ props.resetText || '重置' }}\r\n </gm-button>\r\n </gm-form-item>\r\n </slot>\r\n <gm-form-item>\r\n <gm-button type=\"primary\" @click=\"saveModel\"> 保存查询条件 </gm-button>\r\n <gm-button v-if=\"searchHistoryList.length\" @click=\"viewModels\"> 我的查询条件 </gm-button>\r\n <gm-tooltip v-else class=\"box-item\" effect=\"dark\" content=\"还没有保存查询条件\" placement=\"bottom\">\r\n <el-button disabled>我的查询条件</el-button>\r\n </gm-tooltip>\r\n </gm-form-item>\r\n </template>\r\n </gm-form>\r\n <gm-dialog v-model=\"showModels\" title=\"我的查询条件\" width=\"30%\">\r\n <gm-collapse accordion>\r\n <gm-collapse-item v-for=\"item in searchHistoryList\" :key=\"item.label\" :title=\"item.label\" :name=\"item.label\">\r\n <template #title>\r\n <div class=\"gm-flex-center gm-flex-justify-between gm-mr-2 gm-flex gm-flex-1\">\r\n <span>{{ item.label }}</span> <gm-button type=\"primary\" size=\"small\" @click=\"useModel(item.value)\"> 使用 </gm-button>\r\n </div>\r\n </template>\r\n <div class=\"gm-flex gm-gap-2\">\r\n <el-tag v-for=\"(value, i) in getValues(item.value)\" :key=\"i\" type=\"info\" effect=\"dark\">\r\n {{ value }}\r\n </el-tag>\r\n </div>\r\n </gm-collapse-item>\r\n </gm-collapse>\r\n </gm-dialog>\r\n</template>\r\n<script lang=\"ts\" setup>\r\nimport { onMounted, ref } from 'vue';\r\nimport { useCloned } from '@vueuse/core';\r\n\r\nimport { getGmEvent, getGmExports } from '@giime/utils';\r\nimport { formEmits as elFormEmits } from '@giime/components/src/base/form';\r\nimport { useCustomSettingsStore } from '@giime/hooks';\r\n\r\nimport { GmMessage, GmMessageBox } from '@giime/components';\r\nimport { MemoryHistoryExt, type MemoryHistoryItemType, MemoryHistoryType, memoryFormEmits, memoryFormProps } from './memoryForm';\r\nimport type { FormInstance } from '@giime/components/src/base/form';\r\n\r\ndefineOptions({\r\n name: 'GmMemoryForm',\r\n});\r\nconst props = defineProps(memoryFormProps);\r\n\r\nconst emit = defineEmits(memoryFormEmits);\r\n// 重发el的事件\r\nconst elEvents = getGmEvent(elFormEmits, emit);\r\n\r\nconst elRef = ref<FormInstance>();\r\nconst exposeNames = ['validate', 'validateField', 'resetFields', 'clearValidate', 'scrollToField'] as const;\r\nconst { exposeFns } = getGmExports(elRef, exposeNames);\r\n\r\n// 提交form表单\r\nconst submit = () => {\r\n elRef.value?.validate(valid => {\r\n if (valid) {\r\n emit('submit', props.model);\r\n }\r\n });\r\n};\r\n// 重置form\r\nconst reset = () => {\r\n elRef.value?.resetFields();\r\n emit('reset', props.model);\r\n};\r\n\r\n// 历史查询条件\r\nconst customSettingsStore = useCustomSettingsStore();\r\n\r\nconst searchHistoryList = ref<MemoryHistoryItemType[]>([]);\r\nconst getSearchHistoryList = async () => {\r\n const data = await customSettingsStore.getCustomSettings(\r\n { key_word: props.pageName + MemoryHistoryExt, type: MemoryHistoryType },\r\n { defaultValue: [] },\r\n );\r\n const { cloned: result } = useCloned(data || []);\r\n searchHistoryList.value = result.value;\r\n};\r\n\r\n// 保存查询条件\r\nconst saveModel = () => {\r\n elRef.value?.validate(valid => {\r\n if (valid) {\r\n // emit('save', props.model);\r\n GmMessageBox.prompt('请输入保存的名称', '保存查询条件', {\r\n confirmButtonText: '确定',\r\n cancelButtonText: '取消',\r\n inputPattern: /^.{1,}$/,\r\n inputErrorMessage: '名称不能为空',\r\n })\r\n .then(async ({ value }) => {\r\n const list = searchHistoryList.value;\r\n const item = {\r\n label: value,\r\n value: JSON.stringify(props.model),\r\n };\r\n list.unshift(item);\r\n searchHistoryList.value = list.slice(0, 10);\r\n customSettingsStore.addCustomSettings({\r\n key_word: props.pageName + MemoryHistoryExt,\r\n value: JSON.stringify(searchHistoryList.value),\r\n type: MemoryHistoryType,\r\n });\r\n GmMessage({\r\n message: '查询条件保存成功',\r\n type: 'success',\r\n });\r\n getSearchHistoryList();\r\n })\r\n .catch(() => {});\r\n }\r\n });\r\n};\r\n\r\n// 使用查询条件\r\nconst showModels = ref(false);\r\nconst viewModels = () => {\r\n showModels.value = true;\r\n};\r\nconst useModel = (value: string) => {\r\n const model = JSON.parse(value);\r\n emit('useHistory', model);\r\n emit('update:model', model);\r\n emit('submit', model);\r\n showModels.value = false;\r\n};\r\n\r\nconst getValues = (value: string) => {\r\n if (!value) return [];\r\n const model = JSON.parse(value);\r\n return Object.values(model).filter(val => !!val || val === 0 || val === false);\r\n};\r\n\r\nonMounted(() => {\r\n getSearchHistoryList();\r\n});\r\n\r\ndefineExpose({\r\n ...exposeFns,\r\n});\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n.gm-flex-center {\r\n align-items: center;\r\n}\r\n.gm-flex-justify-between {\r\n justify-content: space-between;\r\n}\r\n</style>\r\n"],"names":["getGmEvent","elFormEmits","ref","getGmExports","useCustomSettingsStore","MemoryHistoryExt","MemoryHistoryType","useCloned","GmMessageBox","GmMessage","onMounted"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuDA,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AAEd,IAAA,MAAM,IAAO,GAAA,MAAA,CAAA;AAEb,IAAM,MAAA,QAAA,GAAWA,gBAAW,CAAAC,cAAA,EAAa,IAAI,CAAA,CAAA;AAE7C,IAAA,MAAM,QAAQC,OAAkB,EAAA,CAAA;AAChC,IAAA,MAAM,cAAc,CAAC,UAAA,EAAY,eAAiB,EAAA,aAAA,EAAe,iBAAiB,eAAe,CAAA,CAAA;AACjG,IAAA,MAAM,EAAE,SAAA,EAAc,GAAAC,sBAAA,CAAa,OAAO,WAAW,CAAA,CAAA;AAGrD,IAAA,MAAM,SAAS,MAAM;AACnB,MAAM,KAAA,CAAA,KAAA,EAAO,SAAS,CAAS,KAAA,KAAA;AAC7B,QAAA,IAAI,KAAO,EAAA;AACT,UAAK,IAAA,CAAA,QAAA,EAAU,MAAM,KAAK,CAAA,CAAA;AAAA,SAC5B;AAAA,OACD,CAAA,CAAA;AAAA,KACH,CAAA;AAEA,IAAA,MAAM,QAAQ,MAAM;AAClB,MAAA,KAAA,CAAM,OAAO,WAAY,EAAA,CAAA;AACzB,MAAK,IAAA,CAAA,OAAA,EAAS,MAAM,KAAK,CAAA,CAAA;AAAA,KAC3B,CAAA;AAGA,IAAA,MAAM,sBAAsBC,4BAAuB,EAAA,CAAA;AAEnD,IAAM,MAAA,iBAAA,GAAoBF,OAA6B,CAAA,EAAE,CAAA,CAAA;AACzD,IAAA,MAAM,uBAAuB,YAAY;AACvC,MAAM,MAAA,IAAA,GAAO,MAAM,mBAAoB,CAAA,iBAAA;AAAA,QACrC,EAAE,QAAU,EAAA,KAAA,CAAM,QAAW,GAAAG,2BAAA,EAAkB,MAAMC,4BAAkB,EAAA;AAAA,QACvE,EAAE,YAAc,EAAA,EAAG,EAAA;AAAA,OACrB,CAAA;AACA,MAAA,MAAM,EAAE,MAAQ,EAAA,MAAA,KAAWC,cAAU,CAAA,IAAA,IAAQ,EAAE,CAAA,CAAA;AAC/C,MAAA,iBAAA,CAAkB,QAAQ,MAAO,CAAA,KAAA,CAAA;AAAA,KACnC,CAAA;AAGA,IAAA,MAAM,YAAY,MAAM;AACtB,MAAM,KAAA,CAAA,KAAA,EAAO,SAAS,CAAS,KAAA,KAAA;AAC7B,QAAA,IAAI,KAAO,EAAA;AAET,UAAaC,oBAAA,CAAA,MAAA,CAAO,oDAAY,sCAAU,EAAA;AAAA,YACxC,iBAAmB,EAAA,cAAA;AAAA,YACnB,gBAAkB,EAAA,cAAA;AAAA,YAClB,YAAc,EAAA,SAAA;AAAA,YACd,iBAAmB,EAAA,sCAAA;AAAA,WACpB,CACE,CAAA,IAAA,CAAK,OAAO,EAAE,OAAY,KAAA;AACzB,YAAA,MAAM,OAAO,iBAAkB,CAAA,KAAA,CAAA;AAC/B,YAAA,MAAM,IAAO,GAAA;AAAA,cACX,KAAO,EAAA,KAAA;AAAA,cACP,KAAO,EAAA,IAAA,CAAK,SAAU,CAAA,KAAA,CAAM,KAAK,CAAA;AAAA,aACnC,CAAA;AACA,YAAA,IAAA,CAAK,QAAQ,IAAI,CAAA,CAAA;AACjB,YAAA,iBAAA,CAAkB,KAAQ,GAAA,IAAA,CAAK,KAAM,CAAA,CAAA,EAAG,EAAE,CAAA,CAAA;AAC1C,YAAA,mBAAA,CAAoB,iBAAkB,CAAA;AAAA,cACpC,QAAA,EAAU,MAAM,QAAW,GAAAH,2BAAA;AAAA,cAC3B,KAAO,EAAA,IAAA,CAAK,SAAU,CAAA,iBAAA,CAAkB,KAAK,CAAA;AAAA,cAC7C,IAAM,EAAAC,4BAAA;AAAA,aACP,CAAA,CAAA;AACD,YAAUG,iBAAA,CAAA;AAAA,cACR,OAAS,EAAA,kDAAA;AAAA,cACT,IAAM,EAAA,SAAA;AAAA,aACP,CAAA,CAAA;AACD,YAAqB,oBAAA,EAAA,CAAA;AAAA,WACtB,CACA,CAAA,KAAA,CAAM,MAAM;AAAA,WAAE,CAAA,CAAA;AAAA,SACnB;AAAA,OACD,CAAA,CAAA;AAAA,KACH,CAAA;AAGA,IAAM,MAAA,UAAA,GAAaP,QAAI,KAAK,CAAA,CAAA;AAC5B,IAAA,MAAM,aAAa,MAAM;AACvB,MAAA,UAAA,CAAW,KAAQ,GAAA,IAAA,CAAA;AAAA,KACrB,CAAA;AACA,IAAM,MAAA,QAAA,GAAW,CAAC,KAAkB,KAAA;AAClC,MAAM,MAAA,KAAA,GAAQ,IAAK,CAAA,KAAA,CAAM,KAAK,CAAA,CAAA;AAC9B,MAAA,IAAA,CAAK,cAAc,KAAK,CAAA,CAAA;AACxB,MAAA,IAAA,CAAK,gBAAgB,KAAK,CAAA,CAAA;AAC1B,MAAA,IAAA,CAAK,UAAU,KAAK,CAAA,CAAA;AACpB,MAAA,UAAA,CAAW,KAAQ,GAAA,KAAA,CAAA;AAAA,KACrB,CAAA;AAEA,IAAM,MAAA,SAAA,GAAY,CAAC,KAAkB,KAAA;AACnC,MAAA,IAAI,CAAC,KAAA;AAAO,QAAA,OAAO,EAAC,CAAA;AACpB,MAAM,MAAA,KAAA,GAAQ,IAAK,CAAA,KAAA,CAAM,KAAK,CAAA,CAAA;AAC9B,MAAA,OAAO,MAAO,CAAA,MAAA,CAAO,KAAK,CAAA,CAAE,MAAO,CAAA,CAAA,GAAA,KAAO,CAAC,CAAC,GAAO,IAAA,GAAA,KAAQ,CAAK,IAAA,GAAA,KAAQ,KAAK,CAAA,CAAA;AAAA,KAC/E,CAAA;AAEA,IAAAQ,aAAA,CAAU,MAAM;AACd,MAAqB,oBAAA,EAAA,CAAA;AAAA,KACtB,CAAA,CAAA;AAED,IAAa,QAAA,CAAA;AAAA,MACX,GAAG,SAAA;AAAA,KACJ,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
1
|
+
{"version":3,"file":"MemoryForm.vue2.js","sources":["../../../../../../../packages/components/src/composite/memoryForm/MemoryForm.vue"],"sourcesContent":["<template>\r\n <gm-form :id=\"$attrs.id\" ref=\"elRef\" :class=\"$attrs.class\" v-bind=\"props\" v-on=\"elEvents\">\r\n <template #default=\"slotValue\">\r\n <slot v-bind=\"slotValue\" />\r\n <slot name=\"buttons\">\r\n <gm-form-item>\r\n <gm-button type=\"primary\" @click=\"submit\">\r\n {{ props.submitText || '提交' }}\r\n </gm-button>\r\n <gm-button @click=\"reset\">\r\n {{ props.resetText || '重置' }}\r\n </gm-button>\r\n </gm-form-item>\r\n </slot>\r\n <gm-form-item>\r\n <gm-button type=\"primary\" @click=\"saveModel\"> 保存查询条件 </gm-button>\r\n <gm-button v-if=\"searchHistoryList.length\" @click=\"viewModels\"> 我的查询条件 </gm-button>\r\n <gm-tooltip v-else class=\"box-item\" effect=\"dark\" content=\"还没有保存查询条件\" placement=\"bottom\">\r\n <el-button disabled>我的查询条件</el-button>\r\n </gm-tooltip>\r\n </gm-form-item>\r\n </template>\r\n </gm-form>\r\n <gm-dialog v-model=\"showModels\" title=\"我的查询条件\" width=\"30%\">\r\n <gm-collapse accordion>\r\n <gm-collapse-item v-for=\"item in searchHistoryList\" :key=\"item.label\" :title=\"item.label\" :name=\"item.label\">\r\n <template #title>\r\n <div class=\"gm-flex-center gm-flex-justify-between gm-mr-2 gm-flex gm-flex-1\">\r\n <span>{{ item.label }}</span> <gm-button type=\"primary\" size=\"small\" @click=\"useModel(item.value)\"> 使用 </gm-button>\r\n </div>\r\n </template>\r\n <div class=\"gm-flex gm-gap-2\">\r\n <el-tag v-for=\"(value, i) in getValues(item.value)\" :key=\"i\" type=\"info\" effect=\"dark\">\r\n {{ value }}\r\n </el-tag>\r\n </div>\r\n </gm-collapse-item>\r\n </gm-collapse>\r\n </gm-dialog>\r\n</template>\r\n<script lang=\"ts\" setup>\r\nimport { onMounted, ref } from 'vue';\r\nimport { useCloned } from '@vueuse/core';\r\n\r\nimport { getGmEvent, getGmExports } from '@giime/utils';\r\nimport { formEmits as elFormEmits } from '@giime/components/src/base/form';\r\nimport { useCustomSettingsStore } from '@giime/hooks';\r\n\r\nimport { GmMessage, GmMessageBox } from '@giime/components';\r\nimport { MemoryHistoryExt, type MemoryHistoryItemType, MemoryHistoryType, memoryFormEmits, memoryFormProps } from './memoryForm';\r\nimport type { FormInstance } from '@giime/components/src/base/form';\r\n\r\ndefineOptions({\r\n name: 'GmMemoryForm',\r\n});\r\nconst props = defineProps(memoryFormProps);\r\n\r\nconst emit = defineEmits(memoryFormEmits);\r\n// 重发el的事件\r\nconst elEvents = getGmEvent(elFormEmits, emit);\r\n\r\nconst elRef = ref<FormInstance>();\r\nconst exposeNames = ['validate', 'validateField', 'resetFields', 'clearValidate', 'scrollToField'] as const;\r\nconst { exposeFns } = getGmExports(elRef, exposeNames);\r\n\r\n// 提交form表单\r\nconst submit = () => {\r\n elRef.value?.validate(valid => {\r\n if (valid) {\r\n emit('submit', props.model);\r\n }\r\n });\r\n};\r\n// 重置form\r\nconst reset = () => {\r\n elRef.value?.resetFields();\r\n emit('reset', props.model);\r\n};\r\n\r\n// 历史查询条件\r\nconst customSettingsStore = useCustomSettingsStore();\r\n\r\nconst searchHistoryList = ref<MemoryHistoryItemType[]>([]);\r\nconst getSearchHistoryList = async () => {\r\n const data = await customSettingsStore.getCustomSettings(\r\n { key_word: props.pageName + MemoryHistoryExt, type: MemoryHistoryType },\r\n { defaultValue: [] },\r\n );\r\n if (!data) {\r\n return;\r\n }\r\n const { cloned: result } = useCloned(data || []);\r\n searchHistoryList.value = result.value;\r\n};\r\n\r\n// 保存查询条件\r\nconst saveModel = () => {\r\n elRef.value?.validate(valid => {\r\n if (valid) {\r\n // emit('save', props.model);\r\n GmMessageBox.prompt('请输入保存的名称', '保存查询条件', {\r\n confirmButtonText: '确定',\r\n cancelButtonText: '取消',\r\n inputPattern: /^.{1,}$/,\r\n inputErrorMessage: '名称不能为空',\r\n })\r\n .then(async ({ value }) => {\r\n const list = searchHistoryList.value;\r\n const item = {\r\n label: value,\r\n value: JSON.stringify(props.model),\r\n };\r\n list.unshift(item);\r\n searchHistoryList.value = list.slice(0, 10);\r\n customSettingsStore.addCustomSettings({\r\n key_word: props.pageName + MemoryHistoryExt,\r\n value: JSON.stringify(searchHistoryList.value),\r\n type: MemoryHistoryType,\r\n });\r\n GmMessage({\r\n message: '查询条件保存成功',\r\n type: 'success',\r\n });\r\n getSearchHistoryList();\r\n })\r\n .catch(() => {});\r\n }\r\n });\r\n};\r\n\r\n// 使用查询条件\r\nconst showModels = ref(false);\r\nconst viewModels = () => {\r\n showModels.value = true;\r\n};\r\nconst useModel = (value: string) => {\r\n const model = JSON.parse(value);\r\n emit('useHistory', model);\r\n emit('update:model', model);\r\n emit('submit', model);\r\n showModels.value = false;\r\n};\r\n\r\nconst getValues = (value: string) => {\r\n if (!value) return [];\r\n const model = JSON.parse(value);\r\n return Object.values(model).filter(val => !!val || val === 0 || val === false);\r\n};\r\n\r\nonMounted(() => {\r\n getSearchHistoryList();\r\n});\r\n\r\ndefineExpose({\r\n ...exposeFns,\r\n});\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n.gm-flex-center {\r\n align-items: center;\r\n}\r\n.gm-flex-justify-between {\r\n justify-content: space-between;\r\n}\r\n</style>\r\n"],"names":["getGmEvent","elFormEmits","ref","getGmExports","useCustomSettingsStore","MemoryHistoryExt","MemoryHistoryType","useCloned","GmMessageBox","GmMessage","onMounted"],"mappings":"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"}
|
package/lib/components/src/composite/operateButton/operateButtonForm/OperateButtonForm.vue2.js
CHANGED
|
@@ -69,7 +69,10 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
|
69
69
|
customBtnPropsList.value = clonedCustomBtnList.value;
|
|
70
70
|
};
|
|
71
71
|
const initOperate = async () => {
|
|
72
|
-
|
|
72
|
+
try {
|
|
73
|
+
await customSettingsStore.getCustomSettings({ key_word: props.keyWord, type: props.type }, { defaultValue: [] });
|
|
74
|
+
} catch {
|
|
75
|
+
}
|
|
73
76
|
clonedCustomBtnList.value = defaultPropsList.value.map((it) => {
|
|
74
77
|
const findItem = clonedStore.value.find((v) => v.prop === it.prop);
|
|
75
78
|
if (findItem) {
|
package/lib/components/src/composite/operateButton/operateButtonForm/OperateButtonForm.vue2.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OperateButtonForm.vue2.js","sources":["../../../../../../../../packages/components/src/composite/operateButton/operateButtonForm/OperateButtonForm.vue"],"sourcesContent":["<template>\r\n <gm-drawer v-model=\"isShowDrawer\" title=\"自定义按钮\" direction=\"rtl\" size=\"500px\" append-to-body destroy-on-close>\r\n <section\r\n class=\"drawer-alert gm-mb-4 gm-flex gm-items-center gm-justify-between gm-rounded gm-border gm-border-cyan-300 gm-bg-cyan-50 gm-px-4 gm-text-sm gm-leading-[40px] gm-text-[#777]\"\r\n >\r\n <div class=\"gm-flex gm-items-center\">\r\n <gm-icon><InfoFilled /></gm-icon>\r\n <p class=\"gm-ml-2\">\r\n 已选中 <span class=\"gm-text-cyan-500\">{{ checkedNumber }}</span> 项\r\n </p>\r\n <b class=\"gm-ml-3 gm-text-orange-400\">点击按钮可修改当前按钮颜色!</b>\r\n </div>\r\n </section>\r\n <gm-table :data=\"clonedCustomBtnList\" :header-cell-style=\"{ background: '#F5F7FA', color: '#333' }\" style=\"width: 100%\">\r\n <gm-table-column align=\"left\" width=\"80\">\r\n <template #header>\r\n <gm-checkbox :model-value=\"checkedAll\" :indeterminate=\"isIndeterminate\" @change=\"handleCheckAllChange\" />\r\n </template>\r\n <template #default=\"{ row }: { row: OperateButtonProps }\">\r\n <gm-checkbox v-model=\"row.isShow\" />\r\n </template>\r\n </gm-table-column>\r\n <gm-table-column label=\"按钮\">\r\n <template #default=\"{ row, $index }: { row: OperateButtonProps; $index: number }\">\r\n <gm-popover v-model:visible=\"popoverVisibles[$index]\" placement=\"bottom\" :width=\"330\" trigger=\"click\">\r\n <template #reference>\r\n <gm-button :type=\"row.type || 'primary'\" link size=\"small\">\r\n {{ row.label }}\r\n </gm-button>\r\n </template>\r\n <div class=\"p-1\">\r\n <div class=\"text-[14px] gm-mb-2\">点击下列色块可修改按钮颜色</div>\r\n <gm-button type=\"primary\" size=\"small\" @click=\"setBtnType(row, $index, 'primary')\"> 蓝色 </gm-button>\r\n <gm-button type=\"success\" size=\"small\" @click=\"setBtnType(row, $index, 'success')\"> 绿色 </gm-button>\r\n <gm-button type=\"info\" size=\"small\" @click=\"setBtnType(row, $index, 'info')\"> 灰色 </gm-button>\r\n <gm-button type=\"warning\" size=\"small\" @click=\"setBtnType(row, $index, 'warning')\"> 橙色 </gm-button>\r\n <gm-button type=\"danger\" size=\"small\" @click=\"setBtnType(row, $index, 'danger')\"> 红色 </gm-button>\r\n </div>\r\n </gm-popover>\r\n </template>\r\n </gm-table-column>\r\n </gm-table>\r\n <template #footer>\r\n <div class=\"gm-flex gm-justify-between\">\r\n <div>\r\n <gm-button :loading=\"submitLoading\" type=\"primary\" size=\"default\" @click=\"onReset\">重置</gm-button>\r\n <gm-button :loading=\"submitLoading\" type=\"success\" size=\"default\" @click=\"onSyncRemote\">同步</gm-button>\r\n </div>\r\n <div>\r\n <gm-button :loading=\"submitLoading\" size=\"default\" @click=\"isShowDrawer = false\">取消</gm-button>\r\n <gm-button :loading=\"submitLoading\" type=\"primary\" size=\"default\" @click=\"onSubmit\">保存</gm-button>\r\n </div>\r\n </div>\r\n </template>\r\n </gm-drawer>\r\n</template>\r\n\r\n<script setup lang=\"ts\">\r\nimport { computed, onMounted, ref, watch } from 'vue';\r\nimport { useCustomSettingsStore } from '@giime/hooks';\r\nimport { cloneDeep } from 'lodash-es';\r\nimport { useCloned } from '@vueuse/core';\r\nimport { type CheckboxValueType } from 'element-plus';\r\nimport { InfoFilled } from '@element-plus/icons-vue';\r\nimport { operateButtonFormProps } from './operateButtonForm';\r\nimport type { OperateButtonProps } from '../operateButton';\r\n\r\ndefineOptions({\r\n name: 'GmOperateButtonForm',\r\n});\r\n/**\r\n * 抽屉显示\r\n */\r\nconst isShowDrawer = defineModel<boolean>('isShowDrawer', {\r\n required: true,\r\n});\r\n/**\r\n * 自定义按钮 props列表\r\n */\r\nconst customBtnPropsList = defineModel<OperateButtonProps[]>('customBtnPropsList', {\r\n required: true,\r\n});\r\n\r\nconst props = defineProps(operateButtonFormProps);\r\nconst customSettingsStore = useCustomSettingsStore();\r\n\r\n/**\r\n * 数据是否初始化完成\r\n */\r\nconst isInited = ref(false);\r\n/**内部克隆一份,当点击保存时 应用修改的内容 */\r\nconst { cloned: clonedCustomBtnList } = useCloned(customBtnPropsList);\r\n\r\nconst defaultPropsList = computed(() => cloneDeep(props.customDefaultPropsList));\r\n// 按钮弹出框显示隐藏\r\nconst popoverVisibles = ref<boolean[]>(defaultPropsList.value.map(() => false));\r\n// 根据props列表 初始化popo显示隐藏\r\nwatch(defaultPropsList, () => {\r\n popoverVisibles.value = defaultPropsList.value.map(() => false);\r\n});\r\n\r\n// 重新打开弹窗时, 克隆一份新数据\r\nwatch(isShowDrawer, newValue => {\r\n if (newValue) {\r\n clonedCustomBtnList.value = cloneDeep(customBtnPropsList.value);\r\n }\r\n});\r\n\r\nconst customSettingsValue = computed<OperateButtonProps[]>(() => customSettingsStore.customSettings[props.keyWord]?.[props.type] || []);\r\nconst { cloned: clonedStore } = useCloned(customSettingsValue);\r\n\r\nconst updateOperate = () => {\r\n customBtnPropsList.value = clonedCustomBtnList.value;\r\n};\r\n\r\nconst initOperate = async () => {\r\n await customSettingsStore.getCustomSettings({ key_word: props.keyWord, type: props.type }, { defaultValue: [] });\r\n clonedCustomBtnList.value = defaultPropsList.value.map(it => {\r\n const findItem = clonedStore.value.find(v => v.prop === it.prop);\r\n if (findItem) {\r\n it.isShow = findItem.isShow;\r\n it.type = findItem.type;\r\n }\r\n return it;\r\n });\r\n\r\n updateOperate();\r\n isInited.value = true;\r\n};\r\n\r\n// 已选中条数\r\nconst checkedNumber = computed(() => {\r\n return clonedCustomBtnList.value.filter(v => v.isShow).length;\r\n});\r\n// 全选\r\nconst checkedAll = computed(() => clonedCustomBtnList.value.every(v => v.isShow));\r\n// 半选\r\nconst isIndeterminate = computed(() => !checkedAll.value && clonedCustomBtnList.value.some(v => v.isShow));\r\n// 切换全选\r\nconst handleCheckAllChange = (val: CheckboxValueType) => {\r\n clonedCustomBtnList.value.forEach(v => {\r\n v.isShow = Boolean(val);\r\n });\r\n};\r\n\r\n// 设置按钮颜色\r\nconst setBtnType = (item: OperateButtonProps, index: number, type: OperateButtonProps['type']) => {\r\n item.type = type;\r\n popoverVisibles.value[index] = false;\r\n};\r\n\r\nconst submitLoading = ref(false);\r\n// 保存\r\nconst onSubmit = async () => {\r\n try {\r\n submitLoading.value = true;\r\n const { data } = await customSettingsStore.addCustomSettings({\r\n key_word: props.keyWord,\r\n value: JSON.stringify(clonedCustomBtnList.value),\r\n type: props.type,\r\n });\r\n submitLoading.value = false;\r\n if (data.code !== 0) {\r\n return;\r\n }\r\n isShowDrawer.value = false;\r\n updateOperate();\r\n } catch (e) {\r\n console.error(e);\r\n submitLoading.value = false;\r\n }\r\n};\r\n\r\n// 重置\r\nconst onReset = () => {\r\n clonedCustomBtnList.value = cloneDeep(props.customDefaultPropsList);\r\n};\r\n\r\n/**同步远程设置 */\r\nconst onSyncRemote = async () => {\r\n try {\r\n submitLoading.value = true;\r\n await customSettingsStore.syncRemoteSetting({\r\n key_word: props.keyWord,\r\n type: props.type,\r\n });\r\n submitLoading.value = false;\r\n } catch (e) {\r\n console.error(e);\r\n submitLoading.value = false;\r\n }\r\n};\r\n\r\nonMounted(() => {\r\n initOperate();\r\n});\r\ndefineExpose({\r\n isInited,\r\n});\r\n</script>\r\n"],"names":["_useModel","useCustomSettingsStore","ref","useCloned","computed","cloneDeep","watch","onMounted"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"OperateButtonForm.vue2.js","sources":["../../../../../../../../packages/components/src/composite/operateButton/operateButtonForm/OperateButtonForm.vue"],"sourcesContent":["<template>\r\n <gm-drawer v-model=\"isShowDrawer\" title=\"自定义按钮\" direction=\"rtl\" size=\"500px\" append-to-body destroy-on-close>\r\n <section\r\n class=\"drawer-alert gm-mb-4 gm-flex gm-items-center gm-justify-between gm-rounded gm-border gm-border-cyan-300 gm-bg-cyan-50 gm-px-4 gm-text-sm gm-leading-[40px] gm-text-[#777]\"\r\n >\r\n <div class=\"gm-flex gm-items-center\">\r\n <gm-icon><InfoFilled /></gm-icon>\r\n <p class=\"gm-ml-2\">\r\n 已选中 <span class=\"gm-text-cyan-500\">{{ checkedNumber }}</span> 项\r\n </p>\r\n <b class=\"gm-ml-3 gm-text-orange-400\">点击按钮可修改当前按钮颜色!</b>\r\n </div>\r\n </section>\r\n <gm-table :data=\"clonedCustomBtnList\" :header-cell-style=\"{ background: '#F5F7FA', color: '#333' }\" style=\"width: 100%\">\r\n <gm-table-column align=\"left\" width=\"80\">\r\n <template #header>\r\n <gm-checkbox :model-value=\"checkedAll\" :indeterminate=\"isIndeterminate\" @change=\"handleCheckAllChange\" />\r\n </template>\r\n <template #default=\"{ row }: { row: OperateButtonProps }\">\r\n <gm-checkbox v-model=\"row.isShow\" />\r\n </template>\r\n </gm-table-column>\r\n <gm-table-column label=\"按钮\">\r\n <template #default=\"{ row, $index }: { row: OperateButtonProps; $index: number }\">\r\n <gm-popover v-model:visible=\"popoverVisibles[$index]\" placement=\"bottom\" :width=\"330\" trigger=\"click\">\r\n <template #reference>\r\n <gm-button :type=\"row.type || 'primary'\" link size=\"small\">\r\n {{ row.label }}\r\n </gm-button>\r\n </template>\r\n <div class=\"p-1\">\r\n <div class=\"text-[14px] gm-mb-2\">点击下列色块可修改按钮颜色</div>\r\n <gm-button type=\"primary\" size=\"small\" @click=\"setBtnType(row, $index, 'primary')\"> 蓝色 </gm-button>\r\n <gm-button type=\"success\" size=\"small\" @click=\"setBtnType(row, $index, 'success')\"> 绿色 </gm-button>\r\n <gm-button type=\"info\" size=\"small\" @click=\"setBtnType(row, $index, 'info')\"> 灰色 </gm-button>\r\n <gm-button type=\"warning\" size=\"small\" @click=\"setBtnType(row, $index, 'warning')\"> 橙色 </gm-button>\r\n <gm-button type=\"danger\" size=\"small\" @click=\"setBtnType(row, $index, 'danger')\"> 红色 </gm-button>\r\n </div>\r\n </gm-popover>\r\n </template>\r\n </gm-table-column>\r\n </gm-table>\r\n <template #footer>\r\n <div class=\"gm-flex gm-justify-between\">\r\n <div>\r\n <gm-button :loading=\"submitLoading\" type=\"primary\" size=\"default\" @click=\"onReset\">重置</gm-button>\r\n <gm-button :loading=\"submitLoading\" type=\"success\" size=\"default\" @click=\"onSyncRemote\">同步</gm-button>\r\n </div>\r\n <div>\r\n <gm-button :loading=\"submitLoading\" size=\"default\" @click=\"isShowDrawer = false\">取消</gm-button>\r\n <gm-button :loading=\"submitLoading\" type=\"primary\" size=\"default\" @click=\"onSubmit\">保存</gm-button>\r\n </div>\r\n </div>\r\n </template>\r\n </gm-drawer>\r\n</template>\r\n\r\n<script setup lang=\"ts\">\r\nimport { computed, onMounted, ref, watch } from 'vue';\r\nimport { useCustomSettingsStore } from '@giime/hooks';\r\nimport { cloneDeep } from 'lodash-es';\r\nimport { useCloned } from '@vueuse/core';\r\nimport { type CheckboxValueType } from 'element-plus';\r\nimport { InfoFilled } from '@element-plus/icons-vue';\r\nimport { operateButtonFormProps } from './operateButtonForm';\r\nimport type { OperateButtonProps } from '../operateButton';\r\n\r\ndefineOptions({\r\n name: 'GmOperateButtonForm',\r\n});\r\n/**\r\n * 抽屉显示\r\n */\r\nconst isShowDrawer = defineModel<boolean>('isShowDrawer', {\r\n required: true,\r\n});\r\n/**\r\n * 自定义按钮 props列表\r\n */\r\nconst customBtnPropsList = defineModel<OperateButtonProps[]>('customBtnPropsList', {\r\n required: true,\r\n});\r\n\r\nconst props = defineProps(operateButtonFormProps);\r\nconst customSettingsStore = useCustomSettingsStore();\r\n\r\n/**\r\n * 数据是否初始化完成\r\n */\r\nconst isInited = ref(false);\r\n/**内部克隆一份,当点击保存时 应用修改的内容 */\r\nconst { cloned: clonedCustomBtnList } = useCloned(customBtnPropsList);\r\n\r\nconst defaultPropsList = computed(() => cloneDeep(props.customDefaultPropsList));\r\n// 按钮弹出框显示隐藏\r\nconst popoverVisibles = ref<boolean[]>(defaultPropsList.value.map(() => false));\r\n// 根据props列表 初始化popo显示隐藏\r\nwatch(defaultPropsList, () => {\r\n popoverVisibles.value = defaultPropsList.value.map(() => false);\r\n});\r\n\r\n// 重新打开弹窗时, 克隆一份新数据\r\nwatch(isShowDrawer, newValue => {\r\n if (newValue) {\r\n clonedCustomBtnList.value = cloneDeep(customBtnPropsList.value);\r\n }\r\n});\r\n\r\nconst customSettingsValue = computed<OperateButtonProps[]>(() => customSettingsStore.customSettings[props.keyWord]?.[props.type] || []);\r\nconst { cloned: clonedStore } = useCloned(customSettingsValue);\r\n\r\nconst updateOperate = () => {\r\n customBtnPropsList.value = clonedCustomBtnList.value;\r\n};\r\n\r\nconst initOperate = async () => {\r\n try {\r\n await customSettingsStore.getCustomSettings({ key_word: props.keyWord, type: props.type }, { defaultValue: [] });\r\n } catch {}\r\n clonedCustomBtnList.value = defaultPropsList.value.map(it => {\r\n const findItem = clonedStore.value.find(v => v.prop === it.prop);\r\n if (findItem) {\r\n it.isShow = findItem.isShow;\r\n it.type = findItem.type;\r\n }\r\n return it;\r\n });\r\n\r\n updateOperate();\r\n isInited.value = true;\r\n};\r\n\r\n// 已选中条数\r\nconst checkedNumber = computed(() => {\r\n return clonedCustomBtnList.value.filter(v => v.isShow).length;\r\n});\r\n// 全选\r\nconst checkedAll = computed(() => clonedCustomBtnList.value.every(v => v.isShow));\r\n// 半选\r\nconst isIndeterminate = computed(() => !checkedAll.value && clonedCustomBtnList.value.some(v => v.isShow));\r\n// 切换全选\r\nconst handleCheckAllChange = (val: CheckboxValueType) => {\r\n clonedCustomBtnList.value.forEach(v => {\r\n v.isShow = Boolean(val);\r\n });\r\n};\r\n\r\n// 设置按钮颜色\r\nconst setBtnType = (item: OperateButtonProps, index: number, type: OperateButtonProps['type']) => {\r\n item.type = type;\r\n popoverVisibles.value[index] = false;\r\n};\r\n\r\nconst submitLoading = ref(false);\r\n// 保存\r\nconst onSubmit = async () => {\r\n try {\r\n submitLoading.value = true;\r\n const { data } = await customSettingsStore.addCustomSettings({\r\n key_word: props.keyWord,\r\n value: JSON.stringify(clonedCustomBtnList.value),\r\n type: props.type,\r\n });\r\n submitLoading.value = false;\r\n if (data.code !== 0) {\r\n return;\r\n }\r\n isShowDrawer.value = false;\r\n updateOperate();\r\n } catch (e) {\r\n console.error(e);\r\n submitLoading.value = false;\r\n }\r\n};\r\n\r\n// 重置\r\nconst onReset = () => {\r\n clonedCustomBtnList.value = cloneDeep(props.customDefaultPropsList);\r\n};\r\n\r\n/**同步远程设置 */\r\nconst onSyncRemote = async () => {\r\n try {\r\n submitLoading.value = true;\r\n await customSettingsStore.syncRemoteSetting({\r\n key_word: props.keyWord,\r\n type: props.type,\r\n });\r\n submitLoading.value = false;\r\n } catch (e) {\r\n console.error(e);\r\n submitLoading.value = false;\r\n }\r\n};\r\n\r\nonMounted(() => {\r\n initOperate();\r\n});\r\ndefineExpose({\r\n isInited,\r\n});\r\n</script>\r\n"],"names":["_useModel","useCustomSettingsStore","ref","useCloned","computed","cloneDeep","watch","onMounted"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
declare const _default: import("vue").DefineComponent<{
|
|
1
|
+
declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
|
|
2
2
|
clearable: {
|
|
3
3
|
type: BooleanConstructor;
|
|
4
4
|
default: boolean;
|
|
@@ -237,5 +237,18 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
237
237
|
optionLabel: string;
|
|
238
238
|
optionValue: string;
|
|
239
239
|
labelKey: string | boolean;
|
|
240
|
-
}, {}
|
|
240
|
+
}, {}>, {
|
|
241
|
+
header?(_: {}): any;
|
|
242
|
+
footer?(_: {}): any;
|
|
243
|
+
prefix?(_: {}): any;
|
|
244
|
+
empty?(_: {}): any;
|
|
245
|
+
tag?(_: {}): any;
|
|
246
|
+
loading?(_: {}): any;
|
|
247
|
+
label?(_: any): any;
|
|
248
|
+
}>;
|
|
241
249
|
export default _default;
|
|
250
|
+
type __VLS_WithTemplateSlots<T, S> = T & {
|
|
251
|
+
new (): {
|
|
252
|
+
$slots: S;
|
|
253
|
+
};
|
|
254
|
+
};
|
|
@@ -19,6 +19,7 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
|
19
19
|
const props = __props;
|
|
20
20
|
const emit = __emit;
|
|
21
21
|
const events = event.getGmEvent(selectOptions.selectOptionsEmits, emit);
|
|
22
|
+
const slots = vue.useSlots();
|
|
22
23
|
const labelOptions = vue.computed(() => {
|
|
23
24
|
return props.options.map((it, i) => {
|
|
24
25
|
const res = {
|
|
@@ -41,7 +42,7 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
|
41
42
|
return vue.openBlock(), vue.createBlock(
|
|
42
43
|
_component_gm_select,
|
|
43
44
|
vue.mergeProps(props, vue.toHandlers(vue.unref(events))),
|
|
44
|
-
{
|
|
45
|
+
vue.createSlots({
|
|
45
46
|
default: vue.withCtx(() => [
|
|
46
47
|
(vue.openBlock(true), vue.createElementBlock(
|
|
47
48
|
vue.Fragment,
|
|
@@ -57,11 +58,61 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
|
57
58
|
/* KEYED_FRAGMENT */
|
|
58
59
|
))
|
|
59
60
|
]),
|
|
60
|
-
_:
|
|
61
|
-
/*
|
|
62
|
-
},
|
|
63
|
-
|
|
64
|
-
|
|
61
|
+
_: 2
|
|
62
|
+
/* DYNAMIC */
|
|
63
|
+
}, [
|
|
64
|
+
vue.unref(slots).header ? {
|
|
65
|
+
name: "header",
|
|
66
|
+
fn: vue.withCtx(() => [
|
|
67
|
+
vue.renderSlot(_ctx.$slots, "header")
|
|
68
|
+
]),
|
|
69
|
+
key: "0"
|
|
70
|
+
} : void 0,
|
|
71
|
+
vue.unref(slots).footer ? {
|
|
72
|
+
name: "footer",
|
|
73
|
+
fn: vue.withCtx(() => [
|
|
74
|
+
vue.renderSlot(_ctx.$slots, "footer")
|
|
75
|
+
]),
|
|
76
|
+
key: "1"
|
|
77
|
+
} : void 0,
|
|
78
|
+
vue.unref(slots).prefix ? {
|
|
79
|
+
name: "prefix",
|
|
80
|
+
fn: vue.withCtx(() => [
|
|
81
|
+
vue.renderSlot(_ctx.$slots, "prefix")
|
|
82
|
+
]),
|
|
83
|
+
key: "2"
|
|
84
|
+
} : void 0,
|
|
85
|
+
vue.unref(slots).empty ? {
|
|
86
|
+
name: "empty",
|
|
87
|
+
fn: vue.withCtx(() => [
|
|
88
|
+
vue.renderSlot(_ctx.$slots, "empty")
|
|
89
|
+
]),
|
|
90
|
+
key: "3"
|
|
91
|
+
} : void 0,
|
|
92
|
+
vue.unref(slots).tag ? {
|
|
93
|
+
name: "tag",
|
|
94
|
+
fn: vue.withCtx(() => [
|
|
95
|
+
vue.renderSlot(_ctx.$slots, "tag")
|
|
96
|
+
]),
|
|
97
|
+
key: "4"
|
|
98
|
+
} : void 0,
|
|
99
|
+
vue.unref(slots).loading ? {
|
|
100
|
+
name: "loading",
|
|
101
|
+
fn: vue.withCtx(() => [
|
|
102
|
+
vue.renderSlot(_ctx.$slots, "loading")
|
|
103
|
+
]),
|
|
104
|
+
key: "5"
|
|
105
|
+
} : void 0,
|
|
106
|
+
vue.unref(slots).label ? {
|
|
107
|
+
name: "label",
|
|
108
|
+
fn: vue.withCtx((slotValue) => [
|
|
109
|
+
vue.renderSlot(_ctx.$slots, "label", vue.normalizeProps(vue.guardReactiveProps(slotValue)))
|
|
110
|
+
]),
|
|
111
|
+
key: "6"
|
|
112
|
+
} : void 0
|
|
113
|
+
]),
|
|
114
|
+
1040
|
|
115
|
+
/* FULL_PROPS, DYNAMIC_SLOTS */
|
|
65
116
|
);
|
|
66
117
|
};
|
|
67
118
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SelectOptions.vue2.js","sources":["../../../../../../../packages/components/src/composite/selectOptions/SelectOptions.vue"],"sourcesContent":["<template>\r\n <gm-select v-bind=\"props\" v-on=\"events\">\r\n <gm-option v-for=\"(item, index) in labelOptions\" :key=\"index\" :label=\"item.label\" :value=\"item.value\" />\r\n </gm-select>\r\n</template>\r\n<script lang=\"ts\" setup>\r\nimport { computed } from 'vue';\r\nimport { getGmEvent } from '@giime/utils';\r\nimport { isString } from '@giime/utils/src/is';\r\nimport { selectOptionsEmits, selectOptionsProps } from './selectOptions';\r\ndefineOptions({\r\n name: 'GmSelectOptions',\r\n});\r\nconst props = defineProps(selectOptionsProps);\r\nconst emit = defineEmits(selectOptionsEmits);\r\nconst events = getGmEvent(selectOptionsEmits, emit);\r\n\r\nconst labelOptions = computed(() => {\r\n return props.options.map((it, i) => {\r\n const res = {\r\n label: it[props.optionLabel],\r\n value: it[props.optionValue],\r\n };\r\n if (props.labelKey === true) {\r\n res.label = `${it.id}. ${res.label}`;\r\n } else if (props.labelKey === 'index') {\r\n res.label = `${i + 1}. ${res.label}`;\r\n } else if (isString(props.labelKey) && Object.prototype.hasOwnProperty.call(it, props.labelKey)) {\r\n res.label = `${it[props.labelKey]}. ${res.label}`;\r\n }\r\n return res;\r\n });\r\n});\r\n</script>\r\n"],"names":["getGmEvent","selectOptionsEmits","computed","isString"],"mappings":";;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"SelectOptions.vue2.js","sources":["../../../../../../../packages/components/src/composite/selectOptions/SelectOptions.vue"],"sourcesContent":["<template>\r\n <gm-select v-bind=\"props\" v-on=\"events\">\r\n <gm-option v-for=\"(item, index) in labelOptions\" :key=\"index\" :label=\"item.label\" :value=\"item.value\" />\r\n <template v-if=\"slots.header\" #header>\r\n <slot name=\"header\" />\r\n </template>\r\n <template v-if=\"slots.footer\" #footer>\r\n <slot name=\"footer\" />\r\n </template>\r\n <template v-if=\"slots.prefix\" #prefix>\r\n <slot name=\"prefix\" />\r\n </template>\r\n <template v-if=\"slots.empty\" #empty>\r\n <slot name=\"empty\" />\r\n </template>\r\n <template v-if=\"slots.tag\" #tag>\r\n <slot name=\"tag\" />\r\n </template>\r\n <template v-if=\"slots.loading\" #loading>\r\n <slot name=\"loading\" />\r\n </template>\r\n <template v-if=\"slots.label\" #label=\"slotValue\">\r\n <slot name=\"label\" v-bind=\"slotValue\" />\r\n </template>\r\n </gm-select>\r\n</template>\r\n<script lang=\"ts\" setup>\r\nimport { computed, useSlots } from 'vue';\r\nimport { getGmEvent } from '@giime/utils';\r\nimport { isString } from '@giime/utils/src/is';\r\nimport { selectOptionsEmits, selectOptionsProps } from './selectOptions';\r\ndefineOptions({\r\n name: 'GmSelectOptions',\r\n});\r\nconst props = defineProps(selectOptionsProps);\r\nconst emit = defineEmits(selectOptionsEmits);\r\nconst events = getGmEvent(selectOptionsEmits, emit);\r\nconst slots = useSlots();\r\n\r\nconst labelOptions = computed(() => {\r\n return props.options.map((it, i) => {\r\n const res = {\r\n label: it[props.optionLabel],\r\n value: it[props.optionValue],\r\n };\r\n if (props.labelKey === true) {\r\n res.label = `${it.id}. ${res.label}`;\r\n } else if (props.labelKey === 'index') {\r\n res.label = `${i + 1}. ${res.label}`;\r\n } else if (isString(props.labelKey) && Object.prototype.hasOwnProperty.call(it, props.labelKey)) {\r\n res.label = `${it[props.labelKey]}. ${res.label}`;\r\n }\r\n return res;\r\n });\r\n});\r\n</script>\r\n"],"names":["getGmEvent","selectOptionsEmits","useSlots","computed","isString"],"mappings":";;;;;;;;;;;;;;;;;;AAkCA,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AACd,IAAA,MAAM,IAAO,GAAA,MAAA,CAAA;AACb,IAAM,MAAA,MAAA,GAASA,gBAAW,CAAAC,gCAAA,EAAoB,IAAI,CAAA,CAAA;AAClD,IAAA,MAAM,QAAQC,YAAS,EAAA,CAAA;AAEvB,IAAM,MAAA,YAAA,GAAeC,aAAS,MAAM;AAClC,MAAA,OAAO,KAAM,CAAA,OAAA,CAAQ,GAAI,CAAA,CAAC,IAAI,CAAM,KAAA;AAClC,QAAA,MAAM,GAAM,GAAA;AAAA,UACV,KAAA,EAAO,EAAG,CAAA,KAAA,CAAM,WAAW,CAAA;AAAA,UAC3B,KAAA,EAAO,EAAG,CAAA,KAAA,CAAM,WAAW,CAAA;AAAA,SAC7B,CAAA;AACA,QAAI,IAAA,KAAA,CAAM,aAAa,IAAM,EAAA;AAC3B,UAAA,GAAA,CAAI,QAAQ,CAAG,EAAA,EAAA,CAAG,EAAE,CAAA,EAAA,EAAK,IAAI,KAAK,CAAA,CAAA,CAAA;AAAA,SACpC,MAAA,IAAW,KAAM,CAAA,QAAA,KAAa,OAAS,EAAA;AACrC,UAAA,GAAA,CAAI,QAAQ,CAAG,EAAA,CAAA,GAAI,CAAC,CAAA,EAAA,EAAK,IAAI,KAAK,CAAA,CAAA,CAAA;AAAA,SACzB,MAAA,IAAAC,WAAA,CAAS,KAAM,CAAA,QAAQ,CAAK,IAAA,MAAA,CAAO,SAAU,CAAA,cAAA,CAAe,IAAK,CAAA,EAAA,EAAI,KAAM,CAAA,QAAQ,CAAG,EAAA;AAC/F,UAAI,GAAA,CAAA,KAAA,GAAQ,GAAG,EAAG,CAAA,KAAA,CAAM,QAAQ,CAAC,CAAA,EAAA,EAAK,IAAI,KAAK,CAAA,CAAA,CAAA;AAAA,SACjD;AACA,QAAO,OAAA,GAAA,CAAA;AAAA,OACR,CAAA,CAAA;AAAA,KACF,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|