• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1/*
2 * Copyright (c) 2022-2025 Huawei Device Co., Ltd.
3 * Licensed under the Apache License, Version 2.0 (the "License");
4 * you may not use this file except in compliance with the License.
5 * You may obtain a copy of the License at
6 *
7 * http://www.apache.org/licenses/LICENSE-2.0
8 *
9 * Unless required by applicable law or agreed to in writing, software
10 * distributed under the License is distributed on an "AS IS" BASIS,
11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 * See the License for the specific language governing permissions and
13 * limitations under the License.
14 */
15
16import { FaultID } from './Problems';
17import { ProblemSeverity } from './ProblemSeverity';
18
19export class FaultAttributes {
20  constructor(
21    public cookBookRef: number,
22    public severity: ProblemSeverity = ProblemSeverity.ERROR
23  ) {}
24}
25
26export const faultsAttrs: FaultAttributes[] = [];
27
28faultsAttrs[FaultID.LiteralAsPropertyName] = new FaultAttributes(1);
29faultsAttrs[FaultID.ComputedPropertyName] = new FaultAttributes(1);
30faultsAttrs[FaultID.SymbolType] = new FaultAttributes(2);
31faultsAttrs[FaultID.PrivateIdentifier] = new FaultAttributes(3);
32faultsAttrs[FaultID.DeclWithDuplicateName] = new FaultAttributes(4);
33faultsAttrs[FaultID.VarDeclaration] = new FaultAttributes(5);
34faultsAttrs[FaultID.AnyType] = new FaultAttributes(8);
35faultsAttrs[FaultID.UnknownType] = new FaultAttributes(8);
36faultsAttrs[FaultID.CallSignature] = new FaultAttributes(14);
37faultsAttrs[FaultID.ConstructorType] = new FaultAttributes(15);
38faultsAttrs[FaultID.MultipleStaticBlocks] = new FaultAttributes(16);
39faultsAttrs[FaultID.IndexMember] = new FaultAttributes(17);
40faultsAttrs[FaultID.IntersectionType] = new FaultAttributes(19);
41faultsAttrs[FaultID.ThisType] = new FaultAttributes(21);
42faultsAttrs[FaultID.ConditionalType] = new FaultAttributes(22);
43faultsAttrs[FaultID.ParameterProperties] = new FaultAttributes(25);
44faultsAttrs[FaultID.ConstructorIface] = new FaultAttributes(27);
45faultsAttrs[FaultID.IndexedAccessType] = new FaultAttributes(28);
46faultsAttrs[FaultID.PropertyAccessByIndex] = new FaultAttributes(29);
47faultsAttrs[FaultID.StructuralIdentity] = new FaultAttributes(30);
48faultsAttrs[FaultID.GenericCallNoTypeArgs] = new FaultAttributes(34);
49faultsAttrs[FaultID.RegularExpressionLiteral] = new FaultAttributes(37);
50faultsAttrs[FaultID.ObjectLiteralNoContextType] = new FaultAttributes(38);
51faultsAttrs[FaultID.ObjectTypeLiteral] = new FaultAttributes(40);
52faultsAttrs[FaultID.ArrayLiteralNoContextType] = new FaultAttributes(43);
53faultsAttrs[FaultID.FunctionExpression] = new FaultAttributes(46);
54faultsAttrs[FaultID.ClassExpression] = new FaultAttributes(50);
55faultsAttrs[FaultID.ImplementsClass] = new FaultAttributes(51);
56faultsAttrs[FaultID.MethodReassignment] = new FaultAttributes(52);
57faultsAttrs[FaultID.TypeAssertion] = new FaultAttributes(53);
58faultsAttrs[FaultID.JsxElement] = new FaultAttributes(54);
59faultsAttrs[FaultID.UnaryArithmNotNumber] = new FaultAttributes(55);
60faultsAttrs[FaultID.DeleteOperator] = new FaultAttributes(59);
61faultsAttrs[FaultID.TypeQuery] = new FaultAttributes(60);
62faultsAttrs[FaultID.InstanceofUnsupported] = new FaultAttributes(65);
63faultsAttrs[FaultID.InOperator] = new FaultAttributes(66);
64faultsAttrs[FaultID.DestructuringAssignment] = new FaultAttributes(69);
65faultsAttrs[FaultID.CommaOperator] = new FaultAttributes(71);
66faultsAttrs[FaultID.DestructuringDeclaration] = new FaultAttributes(74);
67faultsAttrs[FaultID.CatchWithUnsupportedType] = new FaultAttributes(79);
68faultsAttrs[FaultID.ForInStatement] = new FaultAttributes(80);
69faultsAttrs[FaultID.MappedType] = new FaultAttributes(83);
70faultsAttrs[FaultID.WithStatement] = new FaultAttributes(84);
71faultsAttrs[FaultID.ThrowStatement] = new FaultAttributes(87);
72faultsAttrs[FaultID.LimitedReturnTypeInference] = new FaultAttributes(90);
73faultsAttrs[FaultID.DestructuringParameter] = new FaultAttributes(91);
74faultsAttrs[FaultID.LocalFunction] = new FaultAttributes(92);
75faultsAttrs[FaultID.FunctionContainsThis] = new FaultAttributes(93);
76faultsAttrs[FaultID.GeneratorFunction] = new FaultAttributes(94);
77faultsAttrs[FaultID.YieldExpression] = new FaultAttributes(94);
78faultsAttrs[FaultID.IsOperator] = new FaultAttributes(96);
79faultsAttrs[FaultID.SpreadOperator] = new FaultAttributes(99);
80faultsAttrs[FaultID.IntefaceExtendDifProps] = new FaultAttributes(102);
81faultsAttrs[FaultID.InterfaceMerging] = new FaultAttributes(103);
82faultsAttrs[FaultID.InterfaceExtendsClass] = new FaultAttributes(104);
83faultsAttrs[FaultID.ConstructorFuncs] = new FaultAttributes(106);
84faultsAttrs[FaultID.EnumMemberNonConstInit] = new FaultAttributes(111);
85faultsAttrs[FaultID.EnumMerging] = new FaultAttributes(113);
86faultsAttrs[FaultID.NamespaceAsObject] = new FaultAttributes(114);
87faultsAttrs[FaultID.NonDeclarationInNamespace] = new FaultAttributes(116);
88faultsAttrs[FaultID.ImportAssignment] = new FaultAttributes(121);
89faultsAttrs[FaultID.ExportAssignment] = new FaultAttributes(126);
90faultsAttrs[FaultID.ShorthandAmbientModuleDecl] = new FaultAttributes(128);
91faultsAttrs[FaultID.WildcardsInModuleName] = new FaultAttributes(129);
92faultsAttrs[FaultID.UMDModuleDefinition] = new FaultAttributes(130);
93faultsAttrs[FaultID.NewTarget] = new FaultAttributes(132);
94faultsAttrs[FaultID.DefiniteAssignment] = new FaultAttributes(134, ProblemSeverity.WARNING);
95faultsAttrs[FaultID.DefiniteAssignmentError] = new FaultAttributes(134);
96faultsAttrs[FaultID.Prototype] = new FaultAttributes(136);
97faultsAttrs[FaultID.GlobalThis] = new FaultAttributes(137, ProblemSeverity.WARNING);
98faultsAttrs[FaultID.GlobalThisError] = new FaultAttributes(137);
99faultsAttrs[FaultID.UtilityType] = new FaultAttributes(138);
100faultsAttrs[FaultID.PropertyDeclOnFunction] = new FaultAttributes(139);
101faultsAttrs[FaultID.FunctionBind] = new FaultAttributes(140, ProblemSeverity.WARNING);
102faultsAttrs[FaultID.FunctionBindError] = new FaultAttributes(140);
103faultsAttrs[FaultID.ConstAssertion] = new FaultAttributes(142);
104faultsAttrs[FaultID.ImportAssertion] = new FaultAttributes(143);
105faultsAttrs[FaultID.LimitedStdLibApi] = new FaultAttributes(144);
106faultsAttrs[FaultID.StrictDiagnostic] = new FaultAttributes(145);
107faultsAttrs[FaultID.ErrorSuppression] = new FaultAttributes(146);
108faultsAttrs[FaultID.ClassAsObject] = new FaultAttributes(149, ProblemSeverity.WARNING);
109faultsAttrs[FaultID.ClassAsObjectError] = new FaultAttributes(149);
110faultsAttrs[FaultID.ImportAfterStatement] = new FaultAttributes(150);
111faultsAttrs[FaultID.EsValueType] = new FaultAttributes(151, ProblemSeverity.WARNING);
112faultsAttrs[FaultID.EsValueTypeError] = new FaultAttributes(151);
113faultsAttrs[FaultID.FunctionApplyCall] = new FaultAttributes(152);
114faultsAttrs[FaultID.SendableClassInheritance] = new FaultAttributes(153);
115faultsAttrs[FaultID.SendablePropType] = new FaultAttributes(154);
116faultsAttrs[FaultID.SendableDefiniteAssignment] = new FaultAttributes(155);
117faultsAttrs[FaultID.SendableGenericTypes] = new FaultAttributes(156);
118faultsAttrs[FaultID.SendableCapturedVars] = new FaultAttributes(157);
119faultsAttrs[FaultID.SendableClassDecorator] = new FaultAttributes(158);
120faultsAttrs[FaultID.SendableObjectInitialization] = new FaultAttributes(159);
121faultsAttrs[FaultID.SendableComputedPropName] = new FaultAttributes(160);
122faultsAttrs[FaultID.SendableAsExpr] = new FaultAttributes(161);
123faultsAttrs[FaultID.SharedNoSideEffectImport] = new FaultAttributes(162);
124faultsAttrs[FaultID.SharedModuleExports] = new FaultAttributes(163);
125faultsAttrs[FaultID.SharedModuleNoWildcardExport] = new FaultAttributes(164);
126faultsAttrs[FaultID.NoTsImportEts] = new FaultAttributes(165);
127faultsAttrs[FaultID.SendableTypeInheritance] = new FaultAttributes(166);
128faultsAttrs[FaultID.SendableTypeExported] = new FaultAttributes(167);
129faultsAttrs[FaultID.NoTsReExportEts] = new FaultAttributes(168);
130faultsAttrs[FaultID.NoNameSpaceImportEtsToTs] = new FaultAttributes(169);
131faultsAttrs[FaultID.NoSideEffectImportEtsToTs] = new FaultAttributes(170);
132faultsAttrs[FaultID.SendableExplicitFieldType] = new FaultAttributes(171);
133faultsAttrs[FaultID.SendableFunctionImportedVariables] = new FaultAttributes(172);
134faultsAttrs[FaultID.SendableFunctionDecorator] = new FaultAttributes(173);
135faultsAttrs[FaultID.SendableTypeAliasDecorator] = new FaultAttributes(174);
136faultsAttrs[FaultID.SendableTypeAliasDeclaration] = new FaultAttributes(175);
137faultsAttrs[FaultID.SendableFunctionAssignment] = new FaultAttributes(176);
138faultsAttrs[FaultID.SendableFunctionOverloadDecorator] = new FaultAttributes(177);
139faultsAttrs[FaultID.SendableFunctionProperty] = new FaultAttributes(178);
140faultsAttrs[FaultID.SendableFunctionAsExpr] = new FaultAttributes(179);
141faultsAttrs[FaultID.SendableDecoratorLimited] = new FaultAttributes(180);
142faultsAttrs[FaultID.SharedModuleExportsWarning] = new FaultAttributes(163, ProblemSeverity.WARNING);
143faultsAttrs[FaultID.SendableBetaCompatible] = new FaultAttributes(182);
144faultsAttrs[FaultID.ObjectLiteralProperty] = new FaultAttributes(183);
145faultsAttrs[FaultID.OptionalMethod] = new FaultAttributes(184);
146faultsAttrs[FaultID.ImportType] = new FaultAttributes(185);
147faultsAttrs[FaultID.DynamicCtorCall] = new FaultAttributes(186);
148faultsAttrs[FaultID.MathPow] = new FaultAttributes(187);
149faultsAttrs[FaultID.NumericSemantics] = new FaultAttributes(189);
150faultsAttrs[FaultID.IncompationbleFunctionType] = new FaultAttributes(190);
151faultsAttrs[FaultID.LimitedStdLibNoASON] = new FaultAttributes(191);
152faultsAttrs[FaultID.LimitedVoidType] = new FaultAttributes(192);
153faultsAttrs[FaultID.VoidOperator] = new FaultAttributes(193);
154faultsAttrs[FaultID.TsOverload] = new FaultAttributes(198);
155faultsAttrs[FaultID.NoNeedStdLibSendableContainer] = new FaultAttributes(199);
156faultsAttrs[FaultID.LimitedLiteralType] = new FaultAttributes(202);
157faultsAttrs[FaultID.ExponentOp] = new FaultAttributes(203);
158faultsAttrs[FaultID.DebuggerStatement] = new FaultAttributes(206);
159faultsAttrs[FaultID.ArgumentsObject] = new FaultAttributes(207);
160faultsAttrs[FaultID.TaggedTemplates] = new FaultAttributes(208);
161faultsAttrs[FaultID.ArrayIndexExprType] = new FaultAttributes(209);
162faultsAttrs[FaultID.SwitchExpression] = new FaultAttributes(210);
163faultsAttrs[FaultID.CaseExpression] = new FaultAttributes(211);
164faultsAttrs[FaultID.IndexNegative] = new FaultAttributes(212);
165faultsAttrs[FaultID.NoStaticOnClass] = new FaultAttributes(213);
166faultsAttrs[FaultID.NoConstructorOnClass] = new FaultAttributes(214);
167faultsAttrs[FaultID.RuntimeArrayCheck] = new FaultAttributes(215);
168faultsAttrs[FaultID.NoSideEffectImport] = new FaultAttributes(222);
169faultsAttrs[FaultID.ImportLazyIdentifier] = new FaultAttributes(232);
170faultsAttrs[FaultID.DynamicImport] = new FaultAttributes(233);
171faultsAttrs[FaultID.DecoratorsNotSupported] = new FaultAttributes(234);
172faultsAttrs[FaultID.AvoidUnionTypes] = new FaultAttributes(235);
173faultsAttrs[FaultID.MethodOverridingField] = new FaultAttributes(236);
174faultsAttrs[FaultID.NoTuplesArrays] = new FaultAttributes(237);
175faultsAttrs[FaultID.ClassstaticInitialization] = new FaultAttributes(238);
176faultsAttrs[FaultID.InvalidIdentifier] = new FaultAttributes(239);
177faultsAttrs[FaultID.DoubleExclaBindingNotSupported] = new FaultAttributes(251);
178faultsAttrs[FaultID.DoubleDollarBindingNotSupported] = new FaultAttributes(252);
179faultsAttrs[FaultID.DollarBindingNotSupported] = new FaultAttributes(253);
180faultsAttrs[FaultID.ExtendDecoratorNotSupported] = new FaultAttributes(254);
181faultsAttrs[FaultID.ExtendsExpression] = new FaultAttributes(255);
182faultsAttrs[FaultID.StylesDecoratorNotSupported] = new FaultAttributes(256);
183faultsAttrs[FaultID.AnimatableExtendDecoratorTransform] = new FaultAttributes(257);
184faultsAttrs[FaultID.DataObservation] = new FaultAttributes(258);
185faultsAttrs[FaultID.UIInterfaceImport] = new FaultAttributes(259);
186faultsAttrs[FaultID.EntryAnnotation] = new FaultAttributes(260);
187faultsAttrs[FaultID.MakeObservedIsNotSupported] = new FaultAttributes(262);
188faultsAttrs[FaultID.ProvideAnnotation] = new FaultAttributes(263);
189faultsAttrs[FaultID.InteropJsObjectInheritance] = new FaultAttributes(265);
190faultsAttrs[FaultID.InteropJsObjectTraverseJsInstance] = new FaultAttributes(266);
191faultsAttrs[FaultID.InteropJsObjectCallStaticFunc] = new FaultAttributes(267, ProblemSeverity.WARNING);
192faultsAttrs[FaultID.InteropJsObjectConditionJudgment] = new FaultAttributes(268);
193faultsAttrs[FaultID.InteropJsObjectExpandStaticInstance] = new FaultAttributes(269);
194faultsAttrs[FaultID.InteropJSFunctionInvoke] = new FaultAttributes(270);
195faultsAttrs[FaultID.MissingSuperCall] = new FaultAttributes(274);
196faultsAttrs[FaultID.CustomLayoutNeedAddDecorator] = new FaultAttributes(275);
197faultsAttrs[FaultID.PropDecoratorNotSupported] = new FaultAttributes(281);
198faultsAttrs[FaultID.StoragePropDecoratorNotSupported] = new FaultAttributes(282);
199faultsAttrs[FaultID.LocalStoragePropDecoratorNotSupported] = new FaultAttributes(283);
200faultsAttrs[FaultID.PropFunctionNotSupported] = new FaultAttributes(284);
201faultsAttrs[FaultID.SetAndPropFunctionNotSupported] = new FaultAttributes(285);
202faultsAttrs[FaultID.PropNeedCallMethodForDeepCopy] = new FaultAttributes(286);
203faultsAttrs[FaultID.ExplicitFunctionType] = new FaultAttributes(300);
204faultsAttrs[FaultID.OhmUrlFullPath] = new FaultAttributes(301);
205faultsAttrs[FaultID.InteropCallObjectParam] = new FaultAttributes(302);
206faultsAttrs[FaultID.InteropCallReflect] = new FaultAttributes(303);
207faultsAttrs[FaultID.NoDuplicateFunctionName] = new FaultAttributes(304);
208faultsAttrs[FaultID.InteropDirectAccessToTSTypes] = new FaultAttributes(306);
209faultsAttrs[FaultID.InteropTSFunctionInvoke] = new FaultAttributes(307);
210faultsAttrs[FaultID.LimitedVoidTypeFromSdk] = new FaultAttributes(308);
211faultsAttrs[FaultID.OptionalMethodFromSdk] = new FaultAttributes(309);
212faultsAttrs[FaultID.SendablePropTypeFromSdk] = new FaultAttributes(310);
213faultsAttrs[FaultID.ConstructorIfaceFromSdk] = new FaultAttributes(311);
214faultsAttrs[FaultID.PropertyAccessByIndexFromSdk] = new FaultAttributes(312);
215faultsAttrs[FaultID.ConstructorTypesDeprecated] = new FaultAttributes(313);
216faultsAttrs[FaultID.QuotedHyphenPropsDeprecated] = new FaultAttributes(314);
217faultsAttrs[FaultID.DuplicateDeclNameFromSdk] = new FaultAttributes(315);
218faultsAttrs[FaultID.SdkTypeQuery] = new FaultAttributes(316);
219faultsAttrs[FaultID.UseSharedDeprecated] = new FaultAttributes(317);
220faultsAttrs[FaultID.UseConcurrentDeprecated] = new FaultAttributes(318);
221faultsAttrs[FaultID.MethodInheritRule] = new FaultAttributes(319);
222faultsAttrs[FaultID.LimitedStdLibNoImportConcurrency] = new FaultAttributes(321);
223faultsAttrs[FaultID.IsConcurrentDeprecated] = new FaultAttributes(322);
224faultsAttrs[FaultID.InteropJsObjectExport] = new FaultAttributes(323);
225faultsAttrs[FaultID.DefaultArgsBehindRequiredArgs] = new FaultAttributes(325);
226faultsAttrs[FaultID.InteropStaticObjectLiterals] = new FaultAttributes(326);
227faultsAttrs[FaultID.InteropObjectLiteralAmbiguity] = new FaultAttributes(327);
228faultsAttrs[FaultID.InteropObjectLiteralClass] = new FaultAttributes(328);
229faultsAttrs[FaultID.UnsupportPropNameFromValue] = new FaultAttributes(329);
230faultsAttrs[FaultID.InterOpImportJs] = new FaultAttributes(330);
231faultsAttrs[FaultID.CallJSFunction] = new FaultAttributes(331);
232faultsAttrs[FaultID.InteropObjectProperty] = new FaultAttributes(332);
233faultsAttrs[FaultID.InterOpConvertImport] = new FaultAttributes(333);
234faultsAttrs[FaultID.InterOpImportJsForTypeOf] = new FaultAttributes(334);
235faultsAttrs[FaultID.InteropNoHaveNum] = new FaultAttributes(335);
236faultsAttrs[FaultID.BinaryOperations] = new FaultAttributes(336);
237faultsAttrs[FaultID.InterOpImportJsDataCompare] = new FaultAttributes(337);
238faultsAttrs[FaultID.InteropEqualityJudgment] = new FaultAttributes(338);
239faultsAttrs[FaultID.InterOpImportJsIndex] = new FaultAttributes(339);
240faultsAttrs[FaultID.NoAwaitJsPromise] = new FaultAttributes(340);
241faultsAttrs[FaultID.InstantiatedJsOjbect] = new FaultAttributes(341);
242faultsAttrs[FaultID.InteropCallObjectMethods] = new FaultAttributes(342);
243faultsAttrs[FaultID.InteropJsInstanceof] = new FaultAttributes(343);
244faultsAttrs[FaultID.InteropIncrementDecrement] = new FaultAttributes(344);
245faultsAttrs[FaultID.BuiltinThisArgs] = new FaultAttributes(345);
246faultsAttrs[FaultID.BuiltinSymbolIterator] = new FaultAttributes(346);
247faultsAttrs[FaultID.NoPropertyDescriptor] = new FaultAttributes(347);
248faultsAttrs[FaultID.BuiltinNoCtorFunc] = new FaultAttributes(348);
249faultsAttrs[FaultID.SharedArrayBufferDeprecated] = new FaultAttributes(349);
250faultsAttrs[FaultID.SetCloneListDeprecated] = new FaultAttributes(350);
251faultsAttrs[FaultID.SetTransferListDeprecated] = new FaultAttributes(351);
252faultsAttrs[FaultID.SdkAbilityAsynchronousLifecycle] = new FaultAttributes(352);
253faultsAttrs[FaultID.LimitedStdLibNoSendableDecorator] = new FaultAttributes(355);
254faultsAttrs[FaultID.LimitedStdLibNoDoncurrentDecorator] = new FaultAttributes(356);
255faultsAttrs[FaultID.NoNeedStdlibWorker] = new FaultAttributes(357);
256faultsAttrs[FaultID.BuiltinGetOwnPropertyNames] = new FaultAttributes(358);
257faultsAttrs[FaultID.LocalBuilderDecoratorNotSupported] = new FaultAttributes(359);
258faultsAttrs[FaultID.NosparseArray] = new FaultAttributes(370);
259faultsAttrs[FaultID.NoEnumPropAsType] = new FaultAttributes(371);
260faultsAttrs[FaultID.NoTsLikeSmartType] = new FaultAttributes(372);
261faultsAttrs[FaultID.ArrayTypeImmutable] = new FaultAttributes(373);
262faultsAttrs[FaultID.CreatingPrimitiveTypes] = new FaultAttributes(374);
263faultsAttrs[FaultID.TsLikeCatchType] = new FaultAttributes(375);
264faultsAttrs[FaultID.NumericBigintCompare] = new FaultAttributes(376);
265faultsAttrs[FaultID.NondecimalBigint] = new FaultAttributes(377);
266faultsAttrs[FaultID.UnsupportOperator] = new FaultAttributes(378);
267faultsAttrs[FaultID.StateStylesBlockNeedArrowFunc] = new FaultAttributes(381);
268faultsAttrs[FaultID.PromiseVoidNeedResolveArg] = new FaultAttributes(382);