import { defineStore } from "pinia"
import { reactive } from 'vue'

export const useHandlerStore = defineStore(
  "handler",
  () => {
    const handler = reactive({
      data: null,
      type: '',
      sign: '',
    });

    // 保存事件信息
    /**
     * @param {Object} data 数据
     * @param {Object} type 路由
     * @param {Object} sign 标识
     */
    function setHandlerData(data, type, sign) {
      handler.data = data;
      handler.type = type;
      handler.sign = sign;
    }
    
    // 清空事件信息
    function clearHandlerData() {
      console.log(handler.data)
      handler.data = null;
      handler.type = '';
      handler.sign = '';
    }

    return {
      handler,
      setHandlerData,
      clearHandlerData,
    };
  },
  {
    unistorage: true, // 开启后对 state 的数据读写都将持久化
  },
);