Ben Lin
2024-08-01 efcc2e97beb8c3b05f422fe7efafa059447473de
src/layouts/default/setting/components/ThemeColorPicker.vue
@@ -16,42 +16,35 @@
    </template>
  </div>
</template>
<script lang="ts">
  import { defineComponent, PropType } from 'vue';
<script lang="ts" setup>
  import type { PropType } from 'vue';
  import { CheckOutlined } from '@ant-design/icons-vue';
  import { useDesign } from '/@/hooks/web/useDesign';
  import { useDesign } from '@/hooks/web/useDesign';
  import { baseHandler } from '../handler';
  import { HandlerEnum } from '../enum';
  export default defineComponent({
    name: 'ThemeColorPicker',
    components: { CheckOutlined },
    props: {
      colorList: {
        type: Array as PropType<string[]>,
        default: () => [],
      },
      event: {
        type: Number as PropType<HandlerEnum>,
      },
      def: {
        type: String,
      },
    },
    setup(props) {
      const { prefixCls } = useDesign('setting-theme-picker');
  defineOptions({ name: 'ThemeColorPicker' });
      function handleClick(color: string) {
        props.event && baseHandler(props.event, color);
      }
      return {
        prefixCls,
        handleClick,
      };
  const props = defineProps({
    colorList: {
      type: Array as PropType<string[]>,
      default: () => [],
    },
    event: {
      type: Number as PropType<HandlerEnum>,
    },
    def: {
      type: String,
    },
  });
  const { prefixCls } = useDesign('setting-theme-picker');
  function handleClick(color: string) {
    props.event && baseHandler(props.event, color);
  }
</script>
<style lang="less">
  @prefix-cls: ~'@{namespace}-setting-theme-picker';