{"version":3,"file":"color-picker.vue2.mjs","sources":["../../../../../../packages/components/color-picker/src/color-picker.vue"],"sourcesContent":["<template>\r\n  <a-input-group compact :class=\"[bem.b('container')]\">\r\n    <ll-input\r\n      v-if=\"!pickerMode\"\r\n      v-model:value=\"customInput\"\r\n      :size=\"size\"\r\n      :disabled=\"colorDisabled\"\r\n      :readonly=\"readonly\"\r\n      :allow-clear=\"allowClear\"\r\n      :placeholder=\"placeholder\"\r\n      @clear=\"clear\"\r\n      @change=\"handleChange\"\r\n    />\r\n    <a-popover :open=\"showPicker\" trigger=\"click\" v-bind=\"$attrs\">\r\n      <template #content>\r\n        <div :class=\"bem.m('dropdown-main-wrapper')\">\r\n          <sv-panel ref=\"svPanel\" :color=\"color\" />\r\n          <hue-slider\r\n            ref=\"hueSlider\"\r\n            class=\"hue-slider\"\r\n            :color=\"color\"\r\n            vertical\r\n          />\r\n        </div>\r\n        <alpha-slider v-if=\"showAlpha\" ref=\"alpha\" :color=\"color\" />\r\n        <pre-define\r\n          v-if=\"predefine.length\"\r\n          ref=\"predefine\"\r\n          :color=\"color\"\r\n          :colors=\"predefine\"\r\n        />\r\n        <div :class=\"bem.m('dropdown-button')\">\r\n          <span :class=\"bem.m('dropdown-value')\">\r\n            <ll-button\r\n              v-if=\"props.usePipette\"\r\n              size=\"small\"\r\n              @click=\"handleColorPicking\"\r\n            >\r\n              <ll-icon icon-name=\"icon-straw\" />\r\n            </ll-button>\r\n            <ll-input\r\n              v-model:value=\"customInput\"\r\n              size=\"small\"\r\n              @press-enter=\"handleConfirm\"\r\n              @blur=\"handleConfirm\"\r\n            />\r\n          </span>\r\n          <div :class=\"bem.m('button')\">\r\n            <ll-button\r\n              type=\"link\"\r\n              size=\"small\"\r\n              :class=\"bem.m('cancel-button')\"\r\n              @click=\"clear\"\r\n            >\r\n              清空\r\n            </ll-button>\r\n            <ll-button size=\"small\" @click=\"confirmValue\"> 确定 </ll-button>\r\n          </div>\r\n        </div>\r\n      </template>\r\n      <ll-button\r\n        :class=\"bem.b()\"\r\n        :disabled=\"colorDisabled\"\r\n        :size=\"size\"\r\n        @click=\"handleTrigger\"\r\n      >\r\n        <template #icon>\r\n          <div\r\n            :class=\"[\r\n              bem.m('color'),\r\n              showAlpha ? bem.is('alpha') : '',\r\n              !pickerMode ? bem.is('show-input') : '',\r\n            ]\"\r\n          >\r\n            <div\r\n              :class=\"[bem.m('color-inner')]\"\r\n              :style=\"{ backgroundColor: displayedColor }\"\r\n            >\r\n              <ll-icon\r\n                :icon-name=\"\r\n                  showPicker\r\n                    ? 'icon-line-arrow-folding'\r\n                    : 'icon-line-arrow-down'\r\n                \"\r\n                color=\"var(--default-icon)\"\r\n                :size=\"size === 'small' ? 12 : undefined\"\r\n              />\r\n            </div>\r\n          </div>\r\n        </template>\r\n      </ll-button>\r\n    </a-popover>\r\n  </a-input-group>\r\n</template>\r\n<script lang=\"ts\" setup>\r\n// Utils\r\nimport { createNamespace } from '@ll-plus/utils'\r\nimport { useDebounceFn } from '@vueuse/core'\r\nimport { Form } from 'ant-design-vue'\r\nimport {\r\n  computed,\r\n  nextTick,\r\n  onMounted,\r\n  provide,\r\n  reactive,\r\n  ref,\r\n  watch,\r\n} from 'vue'\r\nimport {\r\n  OPTIONS_KEY,\r\n  colorPickerEmits,\r\n  colorPickerProps,\r\n  displayedRgb,\r\n  type IUseOptions,\r\n} from './config'\r\nimport Color from './config/color'\r\nimport ColorPipette from './config/color-pipette'\r\n\r\n// Components\r\nimport AlphaSlider from './components/alpha-slider.vue'\r\nimport HueSlider from './components/hue-slider.vue'\r\nimport PreDefine from './components/pre-define.vue'\r\nimport SvPanel from './components/sv-panel.vue'\r\n\r\nimport type { IProps } from './config/color-pipette/types'\r\n\r\n// Options/Props/Emits\r\ndefineOptions({ name: 'LlColorPicker' })\r\nconst props = defineProps(colorPickerProps)\r\nconst emits = defineEmits(colorPickerEmits)\r\nconst bem = createNamespace('color-picker')\r\n\r\n//Data\r\nconst hasClickBtn = ref<boolean>(false)\r\nconst hueSlider = ref<InstanceType<typeof HueSlider>>()\r\nconst svPanel = ref<InstanceType<typeof SvPanel>>()\r\nconst alpha = ref<InstanceType<typeof AlphaSlider>>()\r\nconst color = reactive<Color>(\r\n  new Color({\r\n    enableAlpha: props.showAlpha,\r\n    format: props.colorFormat,\r\n  }),\r\n) as Color\r\nconst pipette = reactive<ColorPipette>(\r\n  new ColorPipette({\r\n    container: props.pipetteContainer,\r\n    colorFormat: props.colorFormat,\r\n    listener: {\r\n      onOk: async (e) => {\r\n        console.log({\r\n          color: e.color,\r\n          colors: e.colors,\r\n          container: props.pipetteContainer,\r\n        })\r\n        color.fromString(e.color)\r\n        customInput.value = e.color\r\n        // await confirmValue()\r\n      },\r\n    },\r\n  } as IProps),\r\n) as ColorPipette\r\nconst showPicker = ref<boolean>(false)\r\nconst showPanelColor = ref(false)\r\nconst customInput = ref('')\r\nconst formItemContext = Form.useInjectFormItemContext()\r\n// computed\r\nconst displayedColor = computed(() => {\r\n  if (!props.value && !showPanelColor.value) {\r\n    return 'transparent'\r\n  }\r\n  return displayedRgb(color, props.showAlpha)\r\n})\r\n\r\nconst colorDisabled = computed(() => {\r\n  return props.disabled\r\n})\r\nconst currentColor = computed(() => {\r\n  return !props.value && !showPanelColor.value ? '' : color.value\r\n})\r\n\r\nprovide<IUseOptions>(OPTIONS_KEY, {\r\n  currentColor,\r\n})\r\n\r\n// Methods\r\n\r\nconst setShowPicker = (value: boolean) => {\r\n  showPicker.value = value\r\n}\r\n\r\nconst debounceSetShowPicker = useDebounceFn(setShowPicker, 50)\r\n// 关闭颜色选择弹窗\r\nconst hide = () => {\r\n  debounceSetShowPicker(false)\r\n  resetColor()\r\n}\r\nconst resetColor = () => {\r\n  nextTick(() => {\r\n    if (props.value) {\r\n      color.fromString(props.value)\r\n    } else {\r\n      showPanelColor.value = false\r\n    }\r\n  })\r\n}\r\nconst handleTrigger = () => {\r\n  if (colorDisabled.value) return\r\n  debounceSetShowPicker(!showPicker.value)\r\n}\r\nconst handleConfirm = () => {\r\n  // hasClickBtn.value = true\r\n  color.fromString(customInput.value)\r\n}\r\nconst confirmValue = () => {\r\n  hasClickBtn.value = true\r\n  const value = color.value\r\n  emits('update:value', value)\r\n  emits('change', value)\r\n  formItemContext.onFieldChange()\r\n  debounceSetShowPicker(false)\r\n  nextTick(() => {\r\n    const newColor = new Color({\r\n      enableAlpha: props.showAlpha,\r\n      format: props.colorFormat,\r\n    })\r\n    newColor.fromString(props.value)\r\n    if (!color.compare(newColor)) {\r\n      resetColor()\r\n    }\r\n  })\r\n  showPicker.value = false\r\n}\r\nconst clear = () => {\r\n  hasClickBtn.value = true\r\n  debounceSetShowPicker(false)\r\n  emits('update:value', null)\r\n  emits('change', null)\r\n  formItemContext.onFieldChange()\r\n  resetColor()\r\n  showPicker.value = false\r\n}\r\n\r\nconst handleChange = (e: any) => {\r\n  hasClickBtn.value = true\r\n  emits('update:value', e.target.value)\r\n  emits('change', e.target.value)\r\n  formItemContext.onFieldChange()\r\n  nextTick(() => {\r\n    const newColor = new Color({\r\n      enableAlpha: props.showAlpha,\r\n      format: props.colorFormat,\r\n    })\r\n    newColor.fromString(props.value)\r\n    if (!color.compare(newColor)) {\r\n      resetColor()\r\n    }\r\n  })\r\n  showPicker.value = false\r\n}\r\n\r\nconst getPopupContainer = (triggerNode: HTMLElement) => {\r\n  return triggerNode.parentElement\r\n}\r\n\r\nconst handleColorPicking = async () => {\r\n  // if (window.EyeDropper) {\r\n  //   // 如果支持原生API，使用原生API\r\n  //   try {\r\n  //     const eyeDropper = new window.EyeDropper()\r\n  //     const result = await eyeDropper.open()\r\n  //     color.fromString(result.sRGBHex)\r\n  //     customInput.value = result.sRGBHex\r\n  //     return\r\n  //   } catch (e) {\r\n  //     console.log('用户取消了取色')\r\n  //     return\r\n  //   }\r\n  // }\r\n  pipette.start()\r\n}\r\n\r\nwatch(\r\n  () => props.value,\r\n  (newVal) => {\r\n    if (!newVal) {\r\n      showPanelColor.value = false\r\n    } else if (newVal && newVal !== color.value) {\r\n      color.fromString(newVal)\r\n    }\r\n  },\r\n)\r\nwatch(\r\n  () => currentColor.value,\r\n  (val) => {\r\n    customInput.value = val ? val : ''\r\n    emits('active-change', val)\r\n  },\r\n)\r\nwatch(\r\n  () => color.value,\r\n  () => {\r\n    if (!props.value && !showPanelColor.value) {\r\n      showPanelColor.value = true\r\n    }\r\n  },\r\n)\r\nwatch(\r\n  () => showPicker.value,\r\n  (newVal) => {\r\n    if (newVal) {\r\n      hasClickBtn.value = false\r\n    } else {\r\n      if (!hasClickBtn.value) {\r\n        hide()\r\n      }\r\n    }\r\n    nextTick(() => {\r\n      hueSlider.value?.update()\r\n      setTimeout(() => {\r\n        svPanel.value?.update()\r\n        alpha.value?.update()\r\n      }, 20)\r\n    })\r\n  },\r\n)\r\n\r\nwatch([() => props.colorFormat, () => props.showAlpha], ([val, alpha]) => {\r\n  const newColor = new Color({\r\n    enableAlpha: alpha,\r\n    format: val,\r\n  })\r\n  for (const i in newColor) {\r\n    if (\r\n      Object.prototype.hasOwnProperty.call(color, i) &&\r\n      Object.prototype.hasOwnProperty.call(newColor, i)\r\n    ) {\r\n      color[i] = newColor[i]\r\n    }\r\n  }\r\n  pipette.setColorFormat(val)\r\n  confirmValue()\r\n})\r\n\r\nonMounted(() => {\r\n  if (props.value) {\r\n    color.fromString(props.value)\r\n    customInput.value = currentColor.value\r\n  }\r\n})\r\n\r\ndefineExpose({\r\n  getPopupContainer,\r\n  setShowPicker,\r\n  debounceSetShowPicker,\r\n})\r\n</script>\r\n"],"names":["alpha","_createBlock","_normalizeClass","_unref","pickerMode","size","readonly","allowClear","placeholder","_createVNode","_mergeProps","$attrs","_createElementVNode","SvPanel","HueSlider","showAlpha","AlphaSlider","predefine","PreDefine"],"mappings":"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"}