hunk.code_window: const props = defineProps<{
     width: number
   }>()
   const width = computed(() => props.width)
   const height = computed(() => props.width / slideAspect)
   const screenAspect = computed(() => width.value / height.value)
  
hunk.labels: keep keep keep keep keep replace keep keep keep
hunk.after_edit: const height = computed(() => props.width / slideAspect.value)
  
hunk.file_path: packages/client/internals/PrintContainer.vue
hunk.type: replace
file: import type { Plugin } from 'vite'
  import { objectEntries } from '@antfu/utils'
  import type { ResolvedSlidevOptions } from '../options'
  import { getDefine } from './extendConfig'
  
  export function createFixPlugins(
    options: ResolvedSlidevOptions,
  ): Plugin[] {
    const define = objectEntries(getDefine(options))
    return [
      {
        name: 'slidev:flags',
        enforce: 'pre',
        transform(code, id) {
          if (id.match(/\.vue($|\?)/)) {
            const original = code
            define.forEach(([from, to]) => {
              code = code.replace(new RegExp(from, 'g'), to)
            })
            if (original !== code)
              return code
          }
        },
      },
    ]
  }
  