{"version":3,"file":"breakpoint-CFbrjRsj.js","sources":["../../../app/javascript/entrypoints/shared/breakpoint.ts"],"sourcesContent":["import { ref } from \"vue\";\n\ninterface Breakpoint {\n length: number\n name: string\n}\n\ntype CalculateBreakpoint = (width: number) => void\n\nconst BREAKPOINTS: Breakpoint[] = [\n {\n length: 0,\n name: 'xs'\n },\n {\n length: 576,\n name: 'sm'\n },\n {\n length: 768,\n name: 'md'\n },\n {\n length: 992,\n name: 'lg'\n },\n {\n length: 1200,\n name: 'xl'\n },\n {\n length: 1600,\n name: 'xxl'\n },\n {\n length: 2559,\n name: 'qhd' // 2K resolution\n },\n {\n length: 3839,\n name: 'uhd' // 4K resolution\n },\n].sort((a, b) => b.length - a.length )\n\nconst calculateBreakpoint: CalculateBreakpoint = (width) => {\n breakpoint.current.value = breakpoint.breakpoints.find(breakpoint => breakpoint.length < width).name;\n}\n\nconst breakpoint = {\n current: ref(null),\n breakpoints: BREAKPOINTS,\n less(breakpoint: string) {\n return this.breakpoints.findIndex((bp: Breakpoint) => bp.name === this.current.value) > this.breakpoints.findIndex((bp: Breakpoint) => bp.name === breakpoint)\n },\n lessEquals(breakpoint: string) {\n return this.breakpoints.findIndex((bp: Breakpoint) => bp.name === this.current.value) >= this.breakpoints.findIndex((bp: Breakpoint) => bp.name === breakpoint)\n },\n equals(breakpoint: string) {\n return this.breakpoints.findIndex((bp: Breakpoint) => bp.name === this.current.value) === this.breakpoints.findIndex((bp: Breakpoint) => bp.name === breakpoint)\n },\n greaterEquals(breakpoint: string) {\n return this.breakpoints.findIndex((bp: Breakpoint) => bp.name === this.current.value) <= this.breakpoints.findIndex((bp: Breakpoint) => bp.name === breakpoint)\n },\n greater(breakpoint: string) {\n return this.breakpoints.findIndex((bp: Breakpoint) => bp.name === this.current.value) < this.breakpoints.findIndex((bp: Breakpoint) => bp.name === breakpoint)\n }\n};\n\ncalculateBreakpoint(window.innerWidth);\n\nwindow.addEventListener('resize', (event)=> calculateBreakpoint((event.currentTarget as Window).innerWidth))\n\nexport default breakpoint;"],"names":["BREAKPOINTS","a","b","calculateBreakpoint","width","breakpoint","ref","bp","event"],"mappings":"yDASA,MAAMA,EAA4B,CAChC,CACE,OAAQ,EACR,KAAM,IACR,EACA,CACE,OAAQ,IACR,KAAM,IACR,EACA,CACE,OAAQ,IACR,KAAM,IACR,EACA,CACE,OAAQ,IACR,KAAM,IACR,EACA,CACE,OAAQ,KACR,KAAM,IACR,EACA,CACE,OAAQ,KACR,KAAM,KACR,EACA,CACE,OAAQ,KACR,KAAM,KACR,EACA,CACE,OAAQ,KACR,KAAM,KAAA,CAEV,EAAE,KAAK,CAACC,EAAGC,IAAMA,EAAE,OAASD,EAAE,MAAO,EAE/BE,EAA4CC,GAAU,CAC/CC,EAAA,QAAQ,MAAQA,EAAW,YAAY,KAAKA,GAAcA,EAAW,OAASD,CAAK,EAAE,IAClG,EAEMC,EAAa,CACjB,QAASC,EAAI,IAAI,EACjB,YAAaN,EACb,KAAKK,EAAoB,CACvB,OAAO,KAAK,YAAY,UAAWE,GAAmBA,EAAG,OAAS,KAAK,QAAQ,KAAK,EAAI,KAAK,YAAY,UAAWA,GAAmBA,EAAG,OAASF,CAAU,CAC/J,EACA,WAAWA,EAAoB,CAC7B,OAAO,KAAK,YAAY,UAAWE,GAAmBA,EAAG,OAAS,KAAK,QAAQ,KAAK,GAAK,KAAK,YAAY,UAAWA,GAAmBA,EAAG,OAASF,CAAU,CAChK,EACA,OAAOA,EAAoB,CACzB,OAAO,KAAK,YAAY,UAAWE,GAAmBA,EAAG,OAAS,KAAK,QAAQ,KAAK,IAAM,KAAK,YAAY,UAAWA,GAAmBA,EAAG,OAASF,CAAU,CACjK,EACA,cAAcA,EAAoB,CAChC,OAAO,KAAK,YAAY,UAAWE,GAAmBA,EAAG,OAAS,KAAK,QAAQ,KAAK,GAAK,KAAK,YAAY,UAAWA,GAAmBA,EAAG,OAASF,CAAU,CAChK,EACA,QAAQA,EAAoB,CAC1B,OAAO,KAAK,YAAY,UAAWE,GAAmBA,EAAG,OAAS,KAAK,QAAQ,KAAK,EAAI,KAAK,YAAY,UAAWA,GAAmBA,EAAG,OAASF,CAAU,CAAA,CAEjK,EAEAF,EAAoB,OAAO,UAAU,EAErC,OAAO,iBAAiB,SAAWK,GAASL,EAAqBK,EAAM,cAAyB,UAAU,CAAC"}