1window.addEventListener('alpine:init', () => { 2 Alpine.store('screen', { 3 isSmall: window.matchMedia('(max-width: 639px)').matches, 4 isMobile: window.matchMedia('(max-width: 767px)').matches, 5 isTablet: window.matchMedia('(max-width: 1023px)').matches, 6 init() { 7 const smallMedia = window.matchMedia('(max-width: 639px)'); 8 const mobileMedia = window.matchMedia('(max-width: 767px)'); 9 const tabletMedia = window.matchMedia('(max-width: 1023px)'); 10 this.isSmall = smallMedia.matches; 11 this.isMobile = mobileMedia.matches; 12 this.isTablet = tabletMedia.matches; 13 const updateScreen = (event, type) => { 14 if (type === 'small') this.isSmall = event.matches; 15 if (type === 'mobile') this.isMobile = event.matches; 16 if (type === 'tablet') this.isTablet = event.matches; 17 }; 18 [ 19 {media: smallMedia, type: 'small'}, 20 {media: mobileMedia, type: 'mobile'}, 21 {media: tabletMedia, type: 'tablet'} 22 ].forEach(({media, type}) => { 23 if (typeof media.onchange !== 'object') { 24 media.addListener((e) => updateScreen(e, type)); 25 } else { 26 media.addEventListener('change', (e) => updateScreen(e, type)); 27 } 28 }); 29 }}); 30});
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.