|
| 1 | +=== tests/cases/compiler/identicalTypesNoDifferByCheckOrder.ts === |
| 2 | +interface SomeProps { |
| 3 | +>SomeProps : Symbol(SomeProps, Decl(identicalTypesNoDifferByCheckOrder.ts, 0, 0)) |
| 4 | + |
| 5 | + x?: string; |
| 6 | +>x : Symbol(SomeProps.x, Decl(identicalTypesNoDifferByCheckOrder.ts, 0, 21)) |
| 7 | + |
| 8 | + y?: number; |
| 9 | +>y : Symbol(SomeProps.y, Decl(identicalTypesNoDifferByCheckOrder.ts, 1, 15)) |
| 10 | + |
| 11 | + renderAs?: FunctionComponent1<SomeProps> |
| 12 | +>renderAs : Symbol(SomeProps.renderAs, Decl(identicalTypesNoDifferByCheckOrder.ts, 2, 15)) |
| 13 | +>FunctionComponent1 : Symbol(FunctionComponent1, Decl(identicalTypesNoDifferByCheckOrder.ts, 17, 120)) |
| 14 | +>SomeProps : Symbol(SomeProps, Decl(identicalTypesNoDifferByCheckOrder.ts, 0, 0)) |
| 15 | +} |
| 16 | + |
| 17 | +type SomePropsX = Required<Pick<SomeProps, "x">> & Omit<SomeProps, "x">; |
| 18 | +>SomePropsX : Symbol(SomePropsX, Decl(identicalTypesNoDifferByCheckOrder.ts, 4, 1)) |
| 19 | +>Required : Symbol(Required, Decl(lib.es5.d.ts, --, --)) |
| 20 | +>Pick : Symbol(Pick, Decl(lib.es5.d.ts, --, --)) |
| 21 | +>SomeProps : Symbol(SomeProps, Decl(identicalTypesNoDifferByCheckOrder.ts, 0, 0)) |
| 22 | +>Omit : Symbol(Omit, Decl(lib.es5.d.ts, --, --)) |
| 23 | +>SomeProps : Symbol(SomeProps, Decl(identicalTypesNoDifferByCheckOrder.ts, 0, 0)) |
| 24 | + |
| 25 | +interface SomePropsClone { |
| 26 | +>SomePropsClone : Symbol(SomePropsClone, Decl(identicalTypesNoDifferByCheckOrder.ts, 6, 72)) |
| 27 | + |
| 28 | + x?: string; |
| 29 | +>x : Symbol(SomePropsClone.x, Decl(identicalTypesNoDifferByCheckOrder.ts, 8, 26)) |
| 30 | + |
| 31 | + y?: number; |
| 32 | +>y : Symbol(SomePropsClone.y, Decl(identicalTypesNoDifferByCheckOrder.ts, 9, 15)) |
| 33 | + |
| 34 | + renderAs?: FunctionComponent2<SomeProps> |
| 35 | +>renderAs : Symbol(SomePropsClone.renderAs, Decl(identicalTypesNoDifferByCheckOrder.ts, 10, 15)) |
| 36 | +>FunctionComponent2 : Symbol(FunctionComponent2, Decl(identicalTypesNoDifferByCheckOrder.ts, 22, 1)) |
| 37 | +>SomeProps : Symbol(SomeProps, Decl(identicalTypesNoDifferByCheckOrder.ts, 0, 0)) |
| 38 | +} |
| 39 | + |
| 40 | +type SomePropsCloneX = Required<Pick<SomePropsClone, "x">> & Omit<SomePropsClone, "x">; |
| 41 | +>SomePropsCloneX : Symbol(SomePropsCloneX, Decl(identicalTypesNoDifferByCheckOrder.ts, 12, 1)) |
| 42 | +>Required : Symbol(Required, Decl(lib.es5.d.ts, --, --)) |
| 43 | +>Pick : Symbol(Pick, Decl(lib.es5.d.ts, --, --)) |
| 44 | +>SomePropsClone : Symbol(SomePropsClone, Decl(identicalTypesNoDifferByCheckOrder.ts, 6, 72)) |
| 45 | +>Omit : Symbol(Omit, Decl(lib.es5.d.ts, --, --)) |
| 46 | +>SomePropsClone : Symbol(SomePropsClone, Decl(identicalTypesNoDifferByCheckOrder.ts, 6, 72)) |
| 47 | + |
| 48 | +type Validator<T> = {(): boolean, opt?: T}; |
| 49 | +>Validator : Symbol(Validator, Decl(identicalTypesNoDifferByCheckOrder.ts, 14, 87)) |
| 50 | +>T : Symbol(T, Decl(identicalTypesNoDifferByCheckOrder.ts, 16, 15)) |
| 51 | +>opt : Symbol(opt, Decl(identicalTypesNoDifferByCheckOrder.ts, 16, 33)) |
| 52 | +>T : Symbol(T, Decl(identicalTypesNoDifferByCheckOrder.ts, 16, 15)) |
| 53 | + |
| 54 | +type WeakValidationMap<T> = {[K in keyof T]?: null extends T[K] ? Validator<T[K] | null | undefined> : Validator<T[K]>}; |
| 55 | +>WeakValidationMap : Symbol(WeakValidationMap, Decl(identicalTypesNoDifferByCheckOrder.ts, 16, 43)) |
| 56 | +>T : Symbol(T, Decl(identicalTypesNoDifferByCheckOrder.ts, 17, 23)) |
| 57 | +>K : Symbol(K, Decl(identicalTypesNoDifferByCheckOrder.ts, 17, 30)) |
| 58 | +>T : Symbol(T, Decl(identicalTypesNoDifferByCheckOrder.ts, 17, 23)) |
| 59 | +>T : Symbol(T, Decl(identicalTypesNoDifferByCheckOrder.ts, 17, 23)) |
| 60 | +>K : Symbol(K, Decl(identicalTypesNoDifferByCheckOrder.ts, 17, 30)) |
| 61 | +>Validator : Symbol(Validator, Decl(identicalTypesNoDifferByCheckOrder.ts, 14, 87)) |
| 62 | +>T : Symbol(T, Decl(identicalTypesNoDifferByCheckOrder.ts, 17, 23)) |
| 63 | +>K : Symbol(K, Decl(identicalTypesNoDifferByCheckOrder.ts, 17, 30)) |
| 64 | +>Validator : Symbol(Validator, Decl(identicalTypesNoDifferByCheckOrder.ts, 14, 87)) |
| 65 | +>T : Symbol(T, Decl(identicalTypesNoDifferByCheckOrder.ts, 17, 23)) |
| 66 | +>K : Symbol(K, Decl(identicalTypesNoDifferByCheckOrder.ts, 17, 30)) |
| 67 | + |
| 68 | +interface FunctionComponent1<P> { |
| 69 | +>FunctionComponent1 : Symbol(FunctionComponent1, Decl(identicalTypesNoDifferByCheckOrder.ts, 17, 120)) |
| 70 | +>P : Symbol(P, Decl(identicalTypesNoDifferByCheckOrder.ts, 19, 29)) |
| 71 | + |
| 72 | + (props: P & { children?: unknown }): void; |
| 73 | +>props : Symbol(props, Decl(identicalTypesNoDifferByCheckOrder.ts, 20, 5)) |
| 74 | +>P : Symbol(P, Decl(identicalTypesNoDifferByCheckOrder.ts, 19, 29)) |
| 75 | +>children : Symbol(children, Decl(identicalTypesNoDifferByCheckOrder.ts, 20, 17)) |
| 76 | + |
| 77 | + propTypes?: WeakValidationMap<P>; |
| 78 | +>propTypes : Symbol(FunctionComponent1.propTypes, Decl(identicalTypesNoDifferByCheckOrder.ts, 20, 46)) |
| 79 | +>WeakValidationMap : Symbol(WeakValidationMap, Decl(identicalTypesNoDifferByCheckOrder.ts, 16, 43)) |
| 80 | +>P : Symbol(P, Decl(identicalTypesNoDifferByCheckOrder.ts, 19, 29)) |
| 81 | +} |
| 82 | + |
| 83 | +interface FunctionComponent2<P> { |
| 84 | +>FunctionComponent2 : Symbol(FunctionComponent2, Decl(identicalTypesNoDifferByCheckOrder.ts, 22, 1)) |
| 85 | +>P : Symbol(P, Decl(identicalTypesNoDifferByCheckOrder.ts, 24, 29)) |
| 86 | + |
| 87 | + (props: P & { children?: unknown }): void; |
| 88 | +>props : Symbol(props, Decl(identicalTypesNoDifferByCheckOrder.ts, 25, 5)) |
| 89 | +>P : Symbol(P, Decl(identicalTypesNoDifferByCheckOrder.ts, 24, 29)) |
| 90 | +>children : Symbol(children, Decl(identicalTypesNoDifferByCheckOrder.ts, 25, 17)) |
| 91 | + |
| 92 | + propTypes?: WeakValidationMap<P>; |
| 93 | +>propTypes : Symbol(FunctionComponent2.propTypes, Decl(identicalTypesNoDifferByCheckOrder.ts, 25, 46)) |
| 94 | +>WeakValidationMap : Symbol(WeakValidationMap, Decl(identicalTypesNoDifferByCheckOrder.ts, 16, 43)) |
| 95 | +>P : Symbol(P, Decl(identicalTypesNoDifferByCheckOrder.ts, 24, 29)) |
| 96 | +} |
| 97 | + |
| 98 | +function needsComponentOfSomeProps3(...x: SomePropsClone[]): void {} |
| 99 | +>needsComponentOfSomeProps3 : Symbol(needsComponentOfSomeProps3, Decl(identicalTypesNoDifferByCheckOrder.ts, 27, 1)) |
| 100 | +>x : Symbol(x, Decl(identicalTypesNoDifferByCheckOrder.ts, 29, 36)) |
| 101 | +>SomePropsClone : Symbol(SomePropsClone, Decl(identicalTypesNoDifferByCheckOrder.ts, 6, 72)) |
| 102 | + |
| 103 | +const comp3: FunctionComponent2<SomePropsCloneX> = null as any; |
| 104 | +>comp3 : Symbol(comp3, Decl(identicalTypesNoDifferByCheckOrder.ts, 30, 5)) |
| 105 | +>FunctionComponent2 : Symbol(FunctionComponent2, Decl(identicalTypesNoDifferByCheckOrder.ts, 22, 1)) |
| 106 | +>SomePropsCloneX : Symbol(SomePropsCloneX, Decl(identicalTypesNoDifferByCheckOrder.ts, 12, 1)) |
| 107 | + |
| 108 | +needsComponentOfSomeProps3({ renderAs: comp3 }); |
| 109 | +>needsComponentOfSomeProps3 : Symbol(needsComponentOfSomeProps3, Decl(identicalTypesNoDifferByCheckOrder.ts, 27, 1)) |
| 110 | +>renderAs : Symbol(renderAs, Decl(identicalTypesNoDifferByCheckOrder.ts, 31, 28)) |
| 111 | +>comp3 : Symbol(comp3, Decl(identicalTypesNoDifferByCheckOrder.ts, 30, 5)) |
| 112 | + |
| 113 | +function needsComponentOfSomeProps2(...x: SomeProps[]): void {} |
| 114 | +>needsComponentOfSomeProps2 : Symbol(needsComponentOfSomeProps2, Decl(identicalTypesNoDifferByCheckOrder.ts, 31, 48)) |
| 115 | +>x : Symbol(x, Decl(identicalTypesNoDifferByCheckOrder.ts, 33, 36)) |
| 116 | +>SomeProps : Symbol(SomeProps, Decl(identicalTypesNoDifferByCheckOrder.ts, 0, 0)) |
| 117 | + |
| 118 | +const comp2: FunctionComponent1<SomePropsX> = null as any; |
| 119 | +>comp2 : Symbol(comp2, Decl(identicalTypesNoDifferByCheckOrder.ts, 34, 5)) |
| 120 | +>FunctionComponent1 : Symbol(FunctionComponent1, Decl(identicalTypesNoDifferByCheckOrder.ts, 17, 120)) |
| 121 | +>SomePropsX : Symbol(SomePropsX, Decl(identicalTypesNoDifferByCheckOrder.ts, 4, 1)) |
| 122 | + |
| 123 | +needsComponentOfSomeProps2({ renderAs: comp2 }); |
| 124 | +>needsComponentOfSomeProps2 : Symbol(needsComponentOfSomeProps2, Decl(identicalTypesNoDifferByCheckOrder.ts, 31, 48)) |
| 125 | +>renderAs : Symbol(renderAs, Decl(identicalTypesNoDifferByCheckOrder.ts, 35, 28)) |
| 126 | +>comp2 : Symbol(comp2, Decl(identicalTypesNoDifferByCheckOrder.ts, 34, 5)) |
| 127 | + |
0 commit comments