myprint-design
Version:
操作简单,组件丰富的一站式打印解决方案打印设计器
1 lines • 3.86 kB
Source Map (JSON)
{"version":3,"file":"style-icon.vue2.mjs","sources":["../../../../../../src/components/my/icon/style-icon.vue"],"sourcesContent":["<template>\n <tip-icon\n :modelValue=\"value\"\n @update:model-value=\"change\"\n :disabled=\"disabled\">\n <slot />\n </tip-icon>\n</template>\n\n<script setup lang=\"ts\">\nimport { computed } from 'vue-demi';\nimport { useAppStoreHook } from '@myprint/design/stores/app';\nimport TipIcon from '@myprint/design/components/my/icon/tip-icon.vue';\nimport { hasStyle } from '@myprint/design/constants/common';\nimport { ActionEnum, Snapshot } from '@myprint/design/utils/historyUtil';\nimport { multipleElementGetValue, multipleElementSetValue } from '@myprint/design/utils/elementUtil';\nimport { mitt } from '@myprint/design/utils/utils';\n\nconst appStore = useAppStoreHook();\nconst emit = defineEmits(['update:modelValue']);\n\nconst props = withDefaults(defineProps<{\n props?: string,\n propsValue?: string,\n enableProps?: string,\n disabled?: boolean | undefined,\n marginTop?: string,\n }>(),\n {\n props: '',\n propsValue: undefined,\n enableProps: '',\n disabled: undefined,\n marginTop: ''\n });\n// console.log(props.tips)\n\nconst value = computed(() => {\n \n if (!props.props) {\n return false;\n }\n \n const result = multipleElementGetValue(props.props);\n \n if (props.propsValue == undefined) {\n return result;\n } else {\n return result === props.propsValue;\n }\n});\n\nconst disabled = computed(() => {\n if (props.disabled !== undefined) {\n return props.disabled;\n }\n if (appStore.currentElement.length == 0) {\n return true;\n }\n for (let currentElementElement of appStore.currentElement) {\n if (!hasStyle(currentElementElement.type, props.enableProps as any)) {\n // console.log(props.enableProps, 'false')\n return true;\n }\n }\n // console.log(props.enableProps, 'true')\n return false;\n});\n\nfunction change(val: boolean) {\n let tmpVal: any = val;\n if (props.propsValue != undefined) {\n if (val) {\n tmpVal = props.propsValue;\n }\n }\n \n // console.log(val)\n // console.log(appStore.currentElement)\n multipleElementSetValue(props.props, tmpVal);\n \n mitt.emit('panelSnapshot', { action: ActionEnum.UPDATE_STYLE, elementList: appStore.currentElement } as Snapshot);\n \n}\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAkBA,IAAA,MAAM,WAAW,eAAgB,EAAA,CAAA;AACjC,IAAA,MAAM,IAAO,GAAA,MAAA,CAAA;AAEb,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AAgBd,IAAM,MAAA,KAAA,GAAQ,SAAS,MAAM;AAEzB,MAAI,IAAA,CAAC,MAAM,KAAO,EAAA;AACd,QAAO,OAAA,KAAA,CAAA;AAAA,OACX;AAEA,MAAM,MAAA,MAAA,GAAS,uBAAwB,CAAA,KAAA,CAAM,KAAK,CAAA,CAAA;AAElD,MAAI,IAAA,KAAA,CAAM,cAAc,KAAW,CAAA,EAAA;AAC/B,QAAO,OAAA,MAAA,CAAA;AAAA,OACJ,MAAA;AACH,QAAA,OAAO,WAAW,KAAM,CAAA,UAAA,CAAA;AAAA,OAC5B;AAAA,KACH,CAAA,CAAA;AAED,IAAM,MAAA,QAAA,GAAW,SAAS,MAAM;AAC5B,MAAI,IAAA,KAAA,CAAM,aAAa,KAAW,CAAA,EAAA;AAC9B,QAAA,OAAO,KAAM,CAAA,QAAA,CAAA;AAAA,OACjB;AACA,MAAI,IAAA,QAAA,CAAS,cAAe,CAAA,MAAA,IAAU,CAAG,EAAA;AACrC,QAAO,OAAA,IAAA,CAAA;AAAA,OACX;AACA,MAAS,KAAA,IAAA,qBAAA,IAAyB,SAAS,cAAgB,EAAA;AACvD,QAAA,IAAI,CAAC,QAAS,CAAA,qBAAA,CAAsB,IAAM,EAAA,KAAA,CAAM,WAAkB,CAAG,EAAA;AAEjE,UAAO,OAAA,IAAA,CAAA;AAAA,SACX;AAAA,OACJ;AAEA,MAAO,OAAA,KAAA,CAAA;AAAA,KACV,CAAA,CAAA;AAED,IAAA,SAAS,OAAO,GAAc,EAAA;AAC1B,MAAA,IAAI,MAAc,GAAA,GAAA,CAAA;AAClB,MAAI,IAAA,KAAA,CAAM,cAAc,KAAW,CAAA,EAAA;AAC/B,QAAA,IAAI,GAAK,EAAA;AACL,UAAA,MAAA,GAAS,KAAM,CAAA,UAAA,CAAA;AAAA,SACnB;AAAA,OACJ;AAIA,MAAwB,uBAAA,CAAA,KAAA,CAAM,OAAO,MAAM,CAAA,CAAA;AAE3C,MAAK,IAAA,CAAA,IAAA,CAAK,iBAAiB,EAAE,MAAA,EAAQ,WAAW,YAAc,EAAA,WAAA,EAAa,QAAS,CAAA,cAAA,EAA4B,CAAA,CAAA;AAAA,KAEpH;;;;;;;;;;;;;;;;;;"}