Skip to content

Commit cda74be

Browse files
committed
chore: Merge branch 'main' into minor
2 parents 4c88ff7 + 0695c69 commit cda74be

File tree

5 files changed

+16
-14
lines changed

5 files changed

+16
-14
lines changed

.github/workflows/autofix.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -30,4 +30,4 @@ jobs:
3030
- name: Run prettier
3131
run: pnpm run format
3232

33-
- uses: autofix-ci/action@bee19d72e71787c12ca0f29de72f2833e437e4c9
33+
- uses: autofix-ci/action@ea32e3a12414e6d3183163c3424a7d7a8631ad84

packages/dts-test/ref.test-d.ts

+7-1
Original file line numberDiff line numberDiff line change
@@ -244,13 +244,19 @@ expectType<typeof r1>(p1)
244244
// proxyRefs: `ShallowUnwrapRef`
245245
const r2 = {
246246
a: ref(1),
247+
c: computed(() => 1),
248+
u: undefined,
247249
obj: {
248250
k: ref('foo')
249-
}
251+
},
252+
union: Math.random() > 0 - 5 ? ref({ name: 'yo' }) : null
250253
}
251254
const p2 = proxyRefs(r2)
252255
expectType<number>(p2.a)
256+
expectType<number>(p2.c)
257+
expectType<undefined>(p2.u)
253258
expectType<Ref<string>>(p2.obj.k)
259+
expectType<{ name: string } | null>(p2.union)
254260

255261
// toRef and toRefs
256262
{

packages/reactivity/src/ref.ts

+3-7
Original file line numberDiff line numberDiff line change
@@ -490,15 +490,11 @@ type BaseTypes = string | number | boolean
490490
export interface RefUnwrapBailTypes {}
491491

492492
export type ShallowUnwrapRef<T> = {
493-
[K in keyof T]: T[K] extends Ref<infer V>
494-
? V // if `V` is `unknown` that means it does not extend `Ref` and is undefined
495-
: T[K] extends Ref<infer V> | undefined
496-
? unknown extends V
497-
? undefined
498-
: V | undefined
499-
: T[K]
493+
[K in keyof T]: DistrubuteRef<T[K]>
500494
}
501495

496+
type DistrubuteRef<T> = T extends Ref<infer V> ? V : T
497+
502498
export type UnwrapRef<T> = T extends ShallowRef<infer V>
503499
? V
504500
: T extends Ref<infer V>

packages/sfc-playground/package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
"vite": "^5.0.5"
1414
},
1515
"dependencies": {
16-
"@vue/repl": "^3.0.0",
16+
"@vue/repl": "^3.1.0",
1717
"file-saver": "^2.0.5",
1818
"jszip": "^3.10.1",
1919
"vue": "workspace:*"

pnpm-lock.yaml

+4-4
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)