{"version":3,"file":"props.mjs","sources":["../../../../../../packages/components/affix/src/props.ts"],"sourcesContent":["import type { ComponentPublicInstance, ExtractPropTypes, PropType } from 'vue';\nimport type { AffixEmits, AffixExpose } from './interface';\n\nfunction getDefaultTarget() {\n  return typeof window !== 'undefined' ? window : null;\n}\n// Affix\nexport function affixProps() {\n  return {\n  /**\n   * 距离窗口顶部达到指定偏移量后触发\n   */\n    offsetTop: Number,\n    /** 距离窗口底部达到指定偏移量后触发 */\n    offsetBottom: Number,\n    /** 设置 Affix 需要监听其滚动事件的元素，值为一个返回对应 DOM 元素的函数 */\n    target: {\n      type: Function as PropType<() => Window | HTMLElement | null>,\n      default: getDefaultTarget,\n    },\n    prefixCls: String,\n    /** 固定状态改变时触发的回调函数 */\n    onChange: Function as PropType<AffixEmits['change']>,\n    onTestUpdatePosition: Function as PropType<AffixEmits['testUpdatePosition']>,\n  };\n}\n\nexport type AffixProps = Partial<ExtractPropTypes<ReturnType<typeof affixProps>>>;\n\nexport type AffixInstance = ComponentPublicInstance<AffixProps, AffixExpose>;\n"],"names":[],"mappings":"AAGA,SAAS,gBAAmB,GAAA;AAC1B,EAAO,OAAA,OAAO,MAAW,KAAA,WAAA,GAAc,MAAS,GAAA,IAAA,CAAA;AAClD,CAAA;AAEO,SAAS,UAAa,GAAA;AAC3B,EAAO,OAAA;AAAA;AAAA;AAAA;AAAA,IAIL,SAAW,EAAA,MAAA;AAAA;AAAA,IAEX,YAAc,EAAA,MAAA;AAAA;AAAA,IAEd,MAAQ,EAAA;AAAA,MACN,IAAM,EAAA,QAAA;AAAA,MACN,OAAS,EAAA,gBAAA;AAAA,KACX;AAAA,IACA,SAAW,EAAA,MAAA;AAAA;AAAA,IAEX,QAAU,EAAA,QAAA;AAAA,IACV,oBAAsB,EAAA,QAAA;AAAA,GACxB,CAAA;AACF;;;;"}