1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65
|
//// [arrayLiteralInference.ts]
// Repro from #31204
export enum AppType {
HeaderDetail = 'HeaderDetail',
HeaderMultiDetail = 'HeaderMultiDetail',
AdvancedList = 'AdvancedList',
Standard = 'Standard',
Relationship = 'Relationship',
Report = 'Report',
Composite = 'Composite',
ListOnly = 'ListOnly',
ModuleSettings = 'ModuleSettings'
}
export enum AppStyle {
Tree,
TreeEntity,
Standard,
MiniApp,
PivotTable
}
const appTypeStylesWithError: Map<AppType, Array<AppStyle>> = new Map([
[AppType.Standard, [AppStyle.Standard, AppStyle.MiniApp]],
[AppType.Relationship, [AppStyle.Standard, AppStyle.Tree, AppStyle.TreeEntity]],
[AppType.AdvancedList, [AppStyle.Standard, AppStyle.MiniApp]]
]);
// Repro from #31204
declare function foo<T>(...args: T[]): T[];
let b1: { x: boolean }[] = foo({ x: true }, { x: false });
let b2: boolean[][] = foo([true], [false]);
//// [arrayLiteralInference.js]
// Repro from #31204
export var AppType;
(function (AppType) {
AppType["HeaderDetail"] = "HeaderDetail";
AppType["HeaderMultiDetail"] = "HeaderMultiDetail";
AppType["AdvancedList"] = "AdvancedList";
AppType["Standard"] = "Standard";
AppType["Relationship"] = "Relationship";
AppType["Report"] = "Report";
AppType["Composite"] = "Composite";
AppType["ListOnly"] = "ListOnly";
AppType["ModuleSettings"] = "ModuleSettings";
})(AppType || (AppType = {}));
export var AppStyle;
(function (AppStyle) {
AppStyle[AppStyle["Tree"] = 0] = "Tree";
AppStyle[AppStyle["TreeEntity"] = 1] = "TreeEntity";
AppStyle[AppStyle["Standard"] = 2] = "Standard";
AppStyle[AppStyle["MiniApp"] = 3] = "MiniApp";
AppStyle[AppStyle["PivotTable"] = 4] = "PivotTable";
})(AppStyle || (AppStyle = {}));
const appTypeStylesWithError = new Map([
[AppType.Standard, [AppStyle.Standard, AppStyle.MiniApp]],
[AppType.Relationship, [AppStyle.Standard, AppStyle.Tree, AppStyle.TreeEntity]],
[AppType.AdvancedList, [AppStyle.Standard, AppStyle.MiniApp]]
]);
let b1 = foo({ x: true }, { x: false });
let b2 = foo([true], [false]);
|