{"version":3,"file":"useBreakpoint.mjs","sources":["../../../../src/composables/useBreakpoint.ts"],"sourcesContent":["import { inject, computed, ComputedRef } from 'vue'\n\nimport { warn } from '../utils/console'\nimport { vaBreakpointSymbol } from '../services/breakpoint'\nimport { useReactiveComputed } from './useReactiveComputed'\nimport { useGlobalConfig } from './useGlobalConfig'\nimport { useIsMounted } from './useIsMounted'\n\nimport type {\n  BreakpointServiceObject,\n  BreakpointHelpersKeys,\n  BreakpointHelpers,\n  BreakpointConfig,\n} from '../services/breakpoint'\n\nconst helpersKeys: BreakpointHelpersKeys[] = ['xs', 'sm', 'md', 'lg', 'xl', 'smUp', 'mdUp', 'lgUp', 'smDown', 'mdDown', 'lgDown']\nconst defaultHelpers = helpersKeys.reduce((acc, key) => {\n  acc[key] = false\n  return acc\n}, {} as BreakpointHelpers)\n\nexport const useBreakpoint = (): BreakpointServiceObject => {\n  const injected = inject(vaBreakpointSymbol, {}) as BreakpointServiceObject\n\n  const isMounted = useIsMounted()\n\n  const { globalConfig } = useGlobalConfig()\n\n  const breakpointConfig: ComputedRef<BreakpointConfig> = computed(() => {\n    const breakpoint = globalConfig.value.breakpoint\n    if (!breakpoint) { warn('useBreakpoint: breakpointConfig is not defined!') }\n    return breakpoint ?? {} as BreakpointConfig\n  })\n\n  const defaultBreakpoint = computed(() => breakpointConfig.value.enabled\n    ? {\n      width: undefined,\n      height: undefined,\n      current: undefined,\n      thresholds: breakpointConfig.value.thresholds,\n      ...defaultHelpers,\n    }\n    : {} as BreakpointServiceObject)\n\n  return useReactiveComputed(() => isMounted.value ? injected : defaultBreakpoint.value)\n}\n"],"names":[],"mappings":";;;;;;AAeA,MAAM,cAAuC,CAAC,MAAM,MAAM,MAAM,MAAM,MAAM,QAAQ,QAAQ,QAAQ,UAAU,UAAU,QAAQ;AAChI,MAAM,iBAAiB,YAAY,OAAO,CAAC,KAAK,QAAQ;AACtD,MAAI,GAAG,IAAI;AACJ,SAAA;AACT,GAAG,CAAuB,CAAA;AAEnB,MAAM,gBAAgB,MAA+B;AAC1D,QAAM,WAAW,OAAO,oBAAoB,CAAE,CAAA;AAE9C,QAAM,YAAY;AAEZ,QAAA,EAAE,iBAAiB;AAEnB,QAAA,mBAAkD,SAAS,MAAM;AAC/D,UAAA,aAAa,aAAa,MAAM;AACtC,QAAI,CAAC,YAAY;AAAE,WAAK,iDAAiD;AAAA,IAAE;AAC3E,WAAO,cAAc,CAAA;AAAA,EAAC,CACvB;AAED,QAAM,oBAAoB,SAAS,MAAM,iBAAiB,MAAM,UAC5D;AAAA,IACA,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,SAAS;AAAA,IACT,YAAY,iBAAiB,MAAM;AAAA,IACnC,GAAG;AAAA,EACL,IACE,CAA6B,CAAA;AAEjC,SAAO,oBAAoB,MAAM,UAAU,QAAQ,WAAW,kBAAkB,KAAK;AACvF;"}