diff --git a/.github/workflows/release-continuous.yml b/.github/workflows/release-continuous.yml index 29223099..507c1312 100644 --- a/.github/workflows/release-continuous.yml +++ b/.github/workflows/release-continuous.yml @@ -9,10 +9,13 @@ jobs: - name: Checkout code uses: actions/checkout@v4 - - run: corepack enable - - uses: actions/setup-node@v4 + - name: Install pnpm + uses: pnpm/action-setup@v4 + + - name: Install Node.js + uses: actions/setup-node@v4 with: - node-version: lts/* + node-version-file: '.node-version' cache: 'pnpm' - name: Install dependencies diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 8046c289..206d42b2 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -17,12 +17,13 @@ jobs: with: fetch-depth: 0 - - run: corepack enable + - name: Install pnpm + uses: pnpm/action-setup@v4 - - name: Set node + - name: Install Node.js uses: actions/setup-node@v4 with: - node-version: lts/* + node-version-file: '.node-version' cache: pnpm registry-url: 'https://registry.npmjs.org' diff --git a/.node-version b/.node-version new file mode 100644 index 00000000..b009dfb9 --- /dev/null +++ b/.node-version @@ -0,0 +1 @@ +lts/* diff --git a/CHANGELOG.md b/CHANGELOG.md index 66780818..dc50d380 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,12 @@ +# [4.5.0](https://github.com/vuejs/repl/compare/v4.4.3...v4.5.0) (2025-02-03) + + +### Features + +* pass on descriptor vapor flag when compiling template ([adaaceb](https://github.com/vuejs/repl/commit/adaaceb24984435ae02ab3eda071f10dba9e0362)) + + + ## [4.4.3](https://github.com/vuejs/repl/compare/v4.4.2...v4.4.3) (2025-01-02) diff --git a/package.json b/package.json index f69ea89d..d4cf5096 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@vue/repl", - "version": "4.4.3", + "version": "4.5.0", "description": "Vue component for editing Vue components", "packageManager": "pnpm@9.15.2", "type": "module", diff --git a/src/SplitPane.vue b/src/SplitPane.vue index 8b49a09a..89856312 100644 --- a/src/SplitPane.vue +++ b/src/SplitPane.vue @@ -9,7 +9,7 @@ const containerRef = useTemplateRef('container') const previewRef = inject(injectKeyPreviewRef)! // mobile only -const { store, splitPaneOptions } = inject(injectKeyProps)! +const { store, layoutReverse, splitPaneOptions } = inject(injectKeyProps)! const state = reactive({ dragging: false, @@ -66,6 +66,7 @@ function changeViewSize() { :class="{ dragging: state.dragging, 'show-output': store.showOutput, + reverse: layoutReverse, vertical: isVertical, }" @mousemove="dragMove" @@ -201,21 +202,19 @@ function changeViewSize() { .split-pane .toggler { display: block; } - .split-pane .right { + .split-pane .right, + .split-pane.show-output.reverse .right, + .split-pane.show-output .left, + .split-pane.reverse .left { z-index: -1; pointer-events: none; } - .split-pane .left { + .split-pane .left, + .split-pane.show-output.reverse .left, + .split-pane.show-output .right, + .split-pane.reverse .right { z-index: 0; pointer-events: all; } - .split-pane.show-output .right { - z-index: 0; - pointer-events: all; - } - .split-pane.show-output .left { - z-index: -1; - pointer-events: none; - } } diff --git a/src/store.ts b/src/store.ts index 5ccf761c..d249aff0 100644 --- a/src/store.ts +++ b/src/store.ts @@ -142,7 +142,11 @@ export function useStore( } } - function setImportMap(map: ImportMap) { + function setImportMap(map: ImportMap, merge = false) { + if (merge) { + map = mergeImportMap(getImportMap(), map) + } + if (map.imports) for (const [key, value] of Object.entries(map.imports)) { if (value) { @@ -368,6 +372,7 @@ export function useStore( deleteFile, renameFile, getImportMap, + setImportMap, getTsConfig, serialize, deserialize, @@ -436,6 +441,7 @@ export interface ReplStore extends UnwrapRef { deleteFile(filename: string): void renameFile(oldFilename: string, newFilename: string): void getImportMap(): ImportMap + setImportMap(map: ImportMap, merge?: boolean): void getTsConfig(): Record serialize(): string deserialize(serializedState: string): void diff --git a/src/transform.ts b/src/transform.ts index c95d2b74..bd65953f 100644 --- a/src/transform.ts +++ b/src/transform.ts @@ -340,6 +340,8 @@ async function doCompileTemplate( let { code, errors } = store.compiler.compileTemplate({ isProd: false, ...store.sfcOptions?.template, + // @ts-expect-error TODO remove expect-error after 3.6 + vapor: descriptor.vapor, ast: descriptor.template!.ast, source: descriptor.template!.content, filename: descriptor.filename,