@azure-tools/typespec-azure-core 0.32.0-dev.6 → 0.32.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/src/decorators.d.ts +2 -0
- package/dist/src/decorators.d.ts.map +1 -1
- package/dist/src/decorators.js +27 -3
- package/dist/src/decorators.js.map +1 -1
- package/dist/src/lib.d.ts +119 -2
- package/dist/src/lib.d.ts.map +1 -1
- package/dist/src/lib.js +32 -0
- package/dist/src/lib.js.map +1 -1
- package/dist/src/linter.d.ts.map +1 -1
- package/dist/src/linter.js +10 -4
- package/dist/src/linter.js.map +1 -1
- package/dist/src/rules/auth-required.d.ts +2 -0
- package/dist/src/rules/auth-required.d.ts.map +1 -0
- package/dist/src/rules/auth-required.js +29 -0
- package/dist/src/rules/auth-required.js.map +1 -0
- package/dist/src/rules/no-error-status-codes.d.ts +2 -0
- package/dist/src/rules/no-error-status-codes.d.ts.map +1 -0
- package/dist/src/rules/no-error-status-codes.js +31 -0
- package/dist/src/rules/no-error-status-codes.js.map +1 -0
- package/dist/src/rules/no-response-body.d.ts +2 -0
- package/dist/src/rules/no-response-body.d.ts.map +1 -0
- package/dist/src/rules/no-response-body.js +33 -0
- package/dist/src/rules/no-response-body.js.map +1 -0
- package/dist/src/rules/rpc-operation-request-body.d.ts +2 -0
- package/dist/src/rules/rpc-operation-request-body.d.ts.map +1 -0
- package/dist/src/rules/rpc-operation-request-body.js +37 -0
- package/dist/src/rules/rpc-operation-request-body.js.map +1 -0
- package/dist/src/rules/use-standard-names.d.ts.map +1 -1
- package/dist/src/rules/use-standard-names.js +3 -1
- package/dist/src/rules/use-standard-names.js.map +1 -1
- package/dist/src/rules/utils.d.ts +1 -0
- package/dist/src/rules/utils.d.ts.map +1 -1
- package/dist/src/rules/utils.js +6 -0
- package/dist/src/rules/utils.js.map +1 -1
- package/lib/auth.tsp +46 -0
- package/lib/azure-core.tsp +1 -0
- package/lib/decorators.tsp +12 -1
- package/lib/models.tsp +1 -1
- package/lib/operations.tsp +16 -0
- package/package.json +13 -13
package/dist/src/decorators.d.ts
CHANGED
|
@@ -98,4 +98,6 @@ export declare function $ensureResourceType(context: DecoratorContext, entity: O
|
|
|
98
98
|
export declare function isResourceOperation(program: Program, operation: Operation): boolean;
|
|
99
99
|
export declare function $needsRoute(context: DecoratorContext, entity: Operation): void;
|
|
100
100
|
export declare function checkRpcRoutes(program: Program): void;
|
|
101
|
+
export declare function $ensureVerb(context: DecoratorContext, entity: Operation, templateName: string, verb: string): void;
|
|
102
|
+
export declare function checkEnsureVerb(program: Program): void;
|
|
101
103
|
//# sourceMappingURL=decorators.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"decorators.d.ts","sourceRoot":"","sources":["../../src/decorators.ts"],"names":[],"mappings":"AAEA,OAAO,EAEL,gBAAgB,EAChB,UAAU,EACV,IAAI,EACJ,UAAU,
|
|
1
|
+
{"version":3,"file":"decorators.d.ts","sourceRoot":"","sources":["../../src/decorators.ts"],"names":[],"mappings":"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"}
|
package/dist/src/decorators.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { createDiagnostic, createStateSymbol, reportDiagnostic } from "./lib.js";
|
|
2
|
-
import { createDiagnosticCollector, getKnownValues, getNamespaceFullName, getTypeName, isErrorModel, isKey, isStringType, setTypeSpecNamespace, } from "@typespec/compiler";
|
|
3
|
-
import { getOperationParameters, getResponsesForOperation, getRoutePath } from "@typespec/http";
|
|
2
|
+
import { createDiagnosticCollector, getKnownValues, getNamespaceFullName, getTypeName, isErrorModel, isKey, isStringType, isTemplateDeclarationOrInstance, setTypeSpecNamespace, } from "@typespec/compiler";
|
|
3
|
+
import { getHttpOperation, getOperationParameters, getResponsesForOperation, getRoutePath, } from "@typespec/http";
|
|
4
4
|
import { getResourceTypeKey, getSegment, isAutoRoute } from "@typespec/rest";
|
|
5
5
|
export const namespace = "Azure.Core";
|
|
6
6
|
/*
|
|
@@ -576,6 +576,30 @@ export function checkRpcRoutes(program) {
|
|
|
576
576
|
}
|
|
577
577
|
});
|
|
578
578
|
}
|
|
579
|
+
const ensureVerbKey = createStateSymbol("ensureVerb");
|
|
580
|
+
export function $ensureVerb(context, entity, templateName, verb) {
|
|
581
|
+
context.program.stateMap(ensureVerbKey).set(entity, [templateName, verb]);
|
|
582
|
+
}
|
|
583
|
+
export function checkEnsureVerb(program) {
|
|
584
|
+
const opMap = program.stateMap(ensureVerbKey);
|
|
585
|
+
for (const [operation, [templateName, requiredVerb]] of opMap.entries()) {
|
|
586
|
+
if (isTemplateDeclarationOrInstance(operation))
|
|
587
|
+
continue;
|
|
588
|
+
const verb = getHttpOperation(program, operation)[0].verb.toString().toLowerCase();
|
|
589
|
+
const reqVerb = requiredVerb.toLowerCase();
|
|
590
|
+
if (verb !== reqVerb) {
|
|
591
|
+
reportDiagnostic(program, {
|
|
592
|
+
code: "verb-conflict",
|
|
593
|
+
target: operation,
|
|
594
|
+
format: {
|
|
595
|
+
templateName: templateName,
|
|
596
|
+
verb: verb.toUpperCase(),
|
|
597
|
+
requiredVerb: reqVerb.toUpperCase(),
|
|
598
|
+
},
|
|
599
|
+
});
|
|
600
|
+
}
|
|
601
|
+
}
|
|
602
|
+
}
|
|
579
603
|
setTypeSpecNamespace("Foundations", $omitKeyProperties, $requestParameter, $responseProperty);
|
|
580
|
-
setTypeSpecNamespace("Foundations.Private", $spreadCustomResponseProperties, $spreadCustomParameters, $ensureResourceType, $needsRoute);
|
|
604
|
+
setTypeSpecNamespace("Foundations.Private", $spreadCustomResponseProperties, $spreadCustomParameters, $ensureResourceType, $needsRoute, $ensureVerb);
|
|
581
605
|
//# sourceMappingURL=decorators.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"decorators.js","sourceRoot":"","sources":["../../src/decorators.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAEjF,OAAO,EACL,yBAAyB,EAKzB,cAAc,EACd,oBAAoB,EACpB,WAAW,EACX,YAAY,EACZ,KAAK,EACL,YAAY,EAMZ,oBAAoB,GAErB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,sBAAsB,EAAE,wBAAwB,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAChG,OAAO,EAAE,kBAAkB,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7E,MAAM,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC;AACtC;;GAEG;AAEH,MAAM,CAAC,MAAM,mBAAmB,GAAW,SAAS,CAAC;AACrD,MAAM,CAAC,MAAM,iBAAiB,GAAG,OAAO,CAAC;AAEzC,SAAS;AAET,MAAM,QAAQ,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;AAE5C,MAAM,UAAU,MAAM,CAAC,OAAyB,EAAE,MAAY;IAC5D,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;AACvD,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,OAAgB,EAAE,MAAY;IACpD,OAAO,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,SAAS,CAAC;AAC9D,CAAC;AAED,cAAc;AAEd,MAAM,eAAe,GAAG,iBAAiB,CAAC,aAAa,CAAC,CAAC;AAEzD,MAAM,UAAU,YAAY,CAAC,OAAyB,EAAE,MAAa;IACnE,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;AAC9D,CAAC;AAWD,SAAS,SAAS,CAChB,OAAgB,EAChB,MAAa,EACb,SAAiB,EAAE;IAEnB,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE;QAC7C,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QACzC,IAAI,QAAQ,KAAK,SAAS,EAAE;YAC1B,MAAM,aAAa,GAAG,MAAM,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;YAChF,OAAO,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;SAC9B;aAAM;YACL,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE;gBAC9B,MAAM,aAAa,GAAG,MAAM,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;gBAChF,MAAM,KAAK,GAAG,SAAS,CAAC,OAAO,EAAE,IAAI,CAAC,IAAa,EAAE,aAAa,CAAC,CAAC;gBACpE,IAAI,KAAK,KAAK,SAAS,EAAE;oBACvB,OAAO,KAAK,CAAC;iBACd;aACF;SACF;KACF;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,YAAY,CACnB,OAAgB,EAChB,MAAa,EACb,SAAiB,EAAE;IAEnB,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE;QAC7C,MAAM,WAAW,GAAG,WAAW,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAC/C,IAAI,WAAW,KAAK,SAAS,EAAE;YAC7B,MAAM,aAAa,GAAG,MAAM,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;YAChF,OAAO,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;SAC9B;aAAM;YACL,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE;gBAC9B,MAAM,aAAa,GAAG,MAAM,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;gBAChF,MAAM,KAAK,GAAG,YAAY,CAAC,OAAO,EAAE,IAAI,CAAC,IAAa,EAAE,aAAa,CAAC,CAAC;gBACvE,IAAI,KAAK,KAAK,SAAS,EAAE;oBACvB,OAAO,KAAK,CAAC;iBACd;aACF;SACF;KACF;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;GAIG;AACH,SAAS,oBAAoB,CAAC,QAAuB;;IACnD,IAAI,CAAC,QAAQ,CAAC,cAAc,EAAE;QAC5B,OAAO,SAAS,CAAC;KAClB;IACD,MAAM,GAAG,GAAG,IAAI,GAAG,EAAS,CAAC;IAC7B,KAAK,IAAI,CAAC,GAA8B,QAAQ,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,cAAc,EAAE;QACzE,IAAI,MAAA,CAAC,CAAC,KAAK,0CAAE,IAAI,EAAE;YACjB,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;SAClB;KACF;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,cAAc,CAC5B,OAAgB,EAChB,MAAyB;IAEzB,IAAI,QAAQ,GAAoC,SAAS,CAAC;IAC1D,QAAQ,MAAM,CAAC,IAAI,EAAE;QACnB,KAAK,OAAO;YACV,IAAI,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;gBACjD,QAAQ,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;gBACjC,MAAM,KAAK,GAAG,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;gBACzC,IAAI,KAAK,KAAK,SAAS,EAAE;oBACvB,QAAQ,CAAC,aAAa,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;oBAClC,QAAQ,CAAC,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;iBAC/B;gBACD,MAAM,QAAQ,GAAG,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;gBAC/C,IAAI,QAAQ,KAAK,SAAS,EAAE;oBAC1B,QAAQ,CAAC,gBAAgB,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;oBACxC,QAAQ,CAAC,YAAY,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;iBACrC;gBACD,OAAO,QAAQ,CAAC;aACjB;iBAAM,IAAI,MAAM,CAAC,cAAc,EAAE;gBAChC,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE;oBAC5C,QAAQ,GAAG,cAAc,CAAC,OAAO,EAAE,GAAY,CAAC,CAAC;oBACjD,IAAI,QAAQ,KAAK,SAAS,EAAE;wBAC1B,MAAM;qBACP;iBACF;gBACD,MAAM;aACP;iBAAM,IAAI,MAAM,CAAC,IAAI,KAAK,EAAE,EAAE;gBAC7B,yFAAyF;gBACzF,8DAA8D;gBAC9D,KAAK,MAAM,QAAQ,IAAI,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE;oBACjD,MAAM,OAAO,GAAG,oBAAoB,CAAC,QAAQ,CAAC,CAAC;oBAC/C,IAAI,OAAO,EAAE;wBACX,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;4BAC5B,MAAM,cAAc,GAAG,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;4BACvD,IAAI,cAAc,EAAE;gCAClB,OAAO,cAAc,CAAC;6BACvB;yBACF;qBACF;iBACF;aACF;YACD,IAAI,MAAM,CAAC,SAAS,EAAE;gBACpB,MAAM,cAAc,GAAG,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;gBACjE,IAAI,cAAc,EAAE;oBAClB,cAAc,CAAC,SAAS,GAAG,MAAM,CAAC;oBAClC,OAAO,cAAc,CAAC;iBACvB;aACF;YACD,MAAM;QACR,KAAK,WAAW;YACd,QAAQ,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE;gBAC9B,KAAK,OAAO;oBACV,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE;wBACzD,QAAQ,GAAG,cAAc,CAAC,OAAO,EAAE,OAAO,CAAC,IAAa,CAAC,CAAC;wBAC1D,IAAI,QAAQ,KAAK,SAAS,EAAE;4BAC1B,MAAM;yBACP;qBACF;oBACD,MAAM;gBACR,KAAK,OAAO;oBACV,QAAQ,GAAG,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,UAAmB,CAAC,CAAC;oBAC/D,MAAM;aACT;YACD,IAAI,QAAQ,KAAK,SAAS,EAAE;gBAC1B,MAAM,iBAAiB,GAAG,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;gBACxE,IAAI,iBAAiB,KAAK,SAAS,EAAE;oBACnC,QAAQ,CAAC,iBAAiB,GAAG,iBAAiB,CAAC,eAAe,CAAC;iBAChE;aACF;KACJ;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,MAAM,gBAAgB,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;AAEpD,MAAM,UAAU,MAAM,CAAC,OAAyB,EAAE,MAAqB;IACrE,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;AAC/D,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,QAAQ,CAAC,OAAgB,EAAE,MAAY;IACrD,OAAO,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AACxD,CAAC;AAED,MAAM,mBAAmB,GAAG,iBAAiB,CAAC,UAAU,CAAC,CAAC;AAE1D,MAAM,UAAU,SAAS,CAAC,OAAyB,EAAE,MAAqB;IACxE,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;AAClE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,OAAgB,EAAE,MAAY;IACxD,OAAO,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AAC3D,CAAC;AAoBD,MAAM,YAAY,GAAG,iBAAiB,CAAC,WAAW,CAAC,CAAC;AAEpD,MAAM,UAAU,UAAU,CAAC,OAAyB,EAAE,MAA4B;IAChF,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,GAAG,gBAAgB,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACxE,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;IAC3E,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAC7D,CAAC;AAKD,SAAS,aAAa,CACpB,OAAgB,EAChB,MAAgC,EAChC,IAAY,EACZ,UAAuB;IAEvB,MAAM,cAAc,GAClB;QACE,CAAC,WAAW,EAAE,mBAAmB,EAAE,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;QACxE,CAAC,QAAQ,EAAE,gBAAgB,EAAE,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;QAC/D,CAAC,UAAU,EAAE,kBAAkB,EAAE,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,aAAa,GAAG,IAAI,CAAC,CAAC;KACtE,CAAC;IAEJ,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACzB,KAAK,MAAM,CAAC,UAAU,EAAE,SAAS,EAAE,MAAM,CAAC,IAAI,cAAc,EAAE;QAC5D,IAAI,IAAI,KAAK,UAAU,IAAI,CAAC,UAAU,IAAI,SAAS,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,EAAE;YACzE,MAAM,EAAE,CAAC;YACT,MAAM;SACP;KACF;AACH,CAAC;AAED,MAAM,UAAU,gBAAgB,CAC9B,OAAgB,EAChB,MAAY;IAEZ,MAAM,MAAM,GAA6B,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IACxD,MAAM,WAAW,GAAG,yBAAyB,EAAE,CAAC;IAChD,IAAI,MAAM,CAAC,IAAI,KAAK,eAAe,EAAE;QACnC,qDAAqD;QACrD,OAAO,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;KAC/C;SAAM,IAAI,MAAM,CAAC,IAAI,KAAK,MAAM,EAAE;QACjC,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE;YAC5C,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;SACrD;KACF;SAAM,IAAI,MAAM,CAAC,IAAI,KAAK,OAAO,EAAE;QAClC,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE;YAC9C,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;YAC5B,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE;gBAC5B,WAAW,CAAC,GAAG,CACb,gBAAgB,CAAC;oBACf,IAAI,EAAE,6BAA6B;oBACnC,MAAM,EAAE,MAAM;oBACd,MAAM,EAAE;wBACN,IAAI,EAAE,MAAM,CAAC,IAAI;qBAClB;iBACF,CAAC,CACH,CAAC;gBAEF,OAAO,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;aACpC;YAED,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;SAC9C;KACF;SAAM;QACL,WAAW,CAAC,GAAG,CACb,gBAAgB,CAAC;YACf,IAAI,EAAE,kCAAkC;YACxC,MAAM,EAAE,MAAM;YACd,MAAM,EAAE;gBACN,IAAI,EAAE,MAAM,CAAC,IAAI;aAClB;SACF,CAAC,CACH,CAAC;QAEF,OAAO,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;KACpC;IAED,qDAAqD;IACrD,MAAM,aAAa,GAAa,EAAE,CAAC;IACnC,KAAK,MAAM,QAAQ,IAAI,CAAC,WAAW,EAAE,QAAQ,EAAE,UAAU,CAAC,EAAE;QAC1D,IAAI,CAAC,CAAC,GAAG,QAAQ,CAAC,WAAW,EAAE,OAAO,IAAI,MAAM,CAAC,EAAE;YACjD,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;SAC9B;KACF;IAED,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE;QAC5B,WAAW,CAAC,GAAG,CACb,gBAAgB,CAAC;YACf,IAAI,EAAE,oBAAoB;YAC1B,MAAM,EAAE,MAAM;YACd,MAAM,EAAE;gBACN,MAAM,EAAE,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC;aACjC;SACF,CAAC,CACH,CAAC;QAEF,OAAO,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;KACpC;IAED,OAAO,WAAW,CAAC,IAAI,CAAC,MAA2B,CAAC,CAAC;AACvD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAClC,OAAgB,EAChB,MAA6C;IAE7C,0CAA0C;IAC1C,IAAI,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE;QACjC,6CAA6C;QAC7C,MAAM,WAAW,GAAG,cAAc,CAAC,OAAO,EAAE,MAAgB,CAAC,CAAC;QAC9D,OAAO,WAAW,CAAC,CAAC,CAAC,oBAAoB,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;KAC7E;IAED,uCAAuC;IACvC,OAAO,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AACpD,CAAC;AAED,gBAAgB;AAEhB,MAAM,eAAe,GAAG,iBAAiB,CAAC,cAAc,CAAC,CAAC;AAE1D,MAAM,UAAU,aAAa,CAAC,OAAyB,EAAE,MAAkB;IACzE,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AACxD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,OAAgB,EAAE,MAAkB;IACtE,OAAO,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AACvD,CAAC;AAED,eAAe;AAEf,MAAM,cAAc,GAAG,iBAAiB,CAAC,aAAa,CAAC,CAAC;AAExD,MAAM,UAAU,YAAY,CAAC,OAAyB,EAAE,MAAkB;IACxE,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AACvD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAgB,EAAE,MAAkB;IACrE,OAAO,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AACtD,CAAC;AAED,aAAa;AAEb,MAAM,YAAY,GAAG,iBAAiB,CAAC,WAAW,CAAC,CAAC;AAEpD,MAAM,UAAU,UAAU,CAAC,OAAyB,EAAE,MAAkB;IACtE,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AACrD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAgB,EAAE,MAAkB;IACnE,OAAO,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AACpD,CAAC;AAED,mBAAmB;AAEnB,MAAM,mBAAmB,GAAG,iBAAiB,CAAC,kBAAkB,CAAC,CAAC;AAElE,MAAM,UAAU,gBAAgB,CAAC,OAAyB,EAAE,MAAqB;IAC/E,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AAC5D,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAgB,EAAE,MAAqB;IACvE,OAAO,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AAC3D,CAAC;AAED,iBAAiB;AAEjB,MAAM,iBAAiB,GAAG,iBAAiB,CAAC,gBAAgB,CAAC,CAAC;AAE9D,MAAM,UAAU,cAAc,CAAC,OAAyB,EAAE,MAAqB;IAC7E,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AAC1D,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,eAAe,CAAC,OAAgB,EAAE,MAAqB;IACrE,OAAO,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AACzD,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,OAAyB,EAAE,MAAa;IACzE,2CAA2C;IAC3C,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,UAAU,EAAE;QAC3C,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE;YAChC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;SAC/B;KACF;AACH,CAAC;AAQD,MAAM,gBAAgB,GAAG,iBAAiB,CAAC,eAAe,CAAC,CAAC;AAE5D,MAAM,UAAU,cAAc,CAC5B,OAAyB,EACzB,MAAiB,EACjB,eAA0B,EAC1B,QAAgB,EAChB,UAAkB;;IAElB,MAAM,UAAU,GAAG,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,UAAU,CAAC;IAC1C,IAAI,UAAU,KAAK,SAAS,EAAE;QAC5B,KAAK,MAAM,IAAI,IAAI,UAAU,CAAC,MAAM,EAAE,EAAE;YACtC,MAAM,QAAQ,GAAI,IAAI,CAAC,IAAc,CAAC,IAAI,CAAC;YAC3C,MAAM,SAAS,GAAG,MAAC,IAAI,CAAC,IAAc,CAAC,SAAS,0CAAE,IAAI,CAAC;YACvD,MAAM,KAAK,GACT,SAAS,KAAK,MAAM;gBACpB,CAAC,QAAQ,KAAK,kBAAkB,IAAI,QAAQ,KAAK,kBAAkB,CAAC,CAAC;YACvE,IAAI,CAAC,KAAK,EAAE;gBACV,gBAAgB,CAAC,OAAO,CAAC,OAAO,EAAE;oBAChC,IAAI,EAAE,kCAAkC;oBACxC,MAAM,EAAE,OAAO,CAAC,eAAe;oBAC/B,MAAM,EAAE,EAAE;iBACX,CAAC,CAAC;gBACH,OAAO;aACR;YACD,MAAM,cAAc,GAAI,IAAI,CAAC,IAAc,CAAC,cAAe,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACpE,QAAQ,cAAc,CAAC,IAAI,EAAE;gBAC3B,KAAK,QAAQ;oBACX,MAAM,kBAAkB,GAAG,cAAc,CAAC,KAAK,CAAC;oBAChD,IAAI,QAAQ,KAAK,kBAAkB,EAAE;wBACnC,MAAM,QAAQ,GAAG,sBAAsB,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,IAAK,CAAC,IAAI,CAAC;wBAC/E,QAAQ,QAAQ,CAAC,IAAI,EAAE;4BACrB,KAAK,OAAO;gCACV,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,kBAAkB,CAAC,EAAE;oCAChD,gBAAgB,CAAC,OAAO,CAAC,OAAO,EAAE;wCAChC,IAAI,EAAE,2BAA2B;wCACjC,MAAM,EAAE,OAAO,CAAC,eAAe;wCAC/B,MAAM,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE;qCACrC,CAAC,CAAC;iCACJ;gCACD,MAAM;4BACR;gCACE,gBAAgB,CAAC,OAAO,CAAC,OAAO,EAAE;oCAChC,IAAI,EAAE,2BAA2B;oCACjC,MAAM,EAAE,OAAO,CAAC,eAAe;oCAC/B,MAAM,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE;iCACrC,CAAC,CAAC;gCACH,MAAM;yBACT;qBACF;yBAAM,IAAI,QAAQ,KAAK,kBAAkB,EAAE;wBAC1C,MAAM,SAAS,GAAG,wBAAwB,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;wBACvE,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE;4BAChC,QAAQ,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE;gCAC1B,KAAK,OAAO;oCACV,0CAA0C;oCAC1C,IAAI,YAAY,CAAC,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC,IAAI,CAAC,EAAE;wCAChD,SAAS;qCACV;oCACD,wDAAwD;oCACxD,IAAI,CAAC,CAAA,MAAA,QAAQ,CAAC,IAAI,0CAAE,UAAU,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAA,EAAE;wCACtD,gBAAgB,CAAC,OAAO,CAAC,OAAO,EAAE;4CAChC,IAAI,EAAE,2BAA2B;4CACjC,MAAM,EAAE,OAAO,CAAC,eAAe;4CAC/B,MAAM,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE;yCACrC,CAAC,CAAC;qCACJ;oCACD,MAAM;gCACR;oCACE,gBAAgB,CAAC,OAAO,CAAC,OAAO,EAAE;wCAChC,IAAI,EAAE,2BAA2B;wCACjC,MAAM,EAAE,OAAO,CAAC,eAAe;wCAC/B,MAAM,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE;qCACrC,CAAC,CAAC;oCACH,MAAM;6BACT;yBACF;qBACF;aACJ;SACF;KACF;IAED,2EAA2E;IAC3E,IAAI,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,GAAG,CAAC,MAAM,CAGhE,CAAC;IACF,IAAI,KAAK,KAAK,SAAS,EAAE;QACvB,KAAK,GAAG,IAAI,GAAG,EAAiC,CAAC;KAClD;IACD,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE;QAClB,UAAU,EAAE,UAAU;QACtB,eAAe,EAAE,eAAe;QAChC,QAAQ,EAAE,QAAQ;KACM,CAAC,CAAC;IAC5B,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AAChE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAC9B,OAAgB,EAChB,MAAiB,EACjB,QAAgB;IAEhB,MAAM,KAAK,GAAG,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,GAAG,CAAC,MAAM,CAG1D,CAAC;IACF,IAAI,KAAK,KAAK,SAAS,EAAE;QACvB,OAAO,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;KAC5B;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAC/B,OAAgB,EAChB,MAAiB;IAEjB,OAAO,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,GAAG,CAAC,MAAM,CAAuC,CAAC;AAC9F,CAAC;AAED,MAAM,UAAU,iBAAiB,CAC/B,OAAyB,EACzB,MAAiB,EACjB,eAA0B,EAC1B,UAAkB;IAElB,MAAM,iBAAiB,GACrB,MAAM,CAAC,UAAU,CAAC,IAAI,KAAK,OAAO;QAClC,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,KAAK,OAAO;YACjC,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC;IACpF,IAAI,iBAAiB,EAAE;QACrB,OAAO,CAAC,IAAI,CAAC,cAAc,EAAE,MAAM,EAAE,eAAe,EAAE,mBAAmB,EAAE,UAAU,CAAC,CAAC;KACxF;SAAM;QACL,gBAAgB,CAAC,OAAO,CAAC,OAAO,EAAE;YAChC,IAAI,EAAE,gCAAgC;YACtC,MAAM,EAAE,MAAM;SACf,CAAC,CAAC;KACJ;AACH,CAAC;AAED,MAAM,UAAU,eAAe,CAC7B,OAAyB,EACzB,MAAiB,EACjB,eAA0B,EAC1B,UAAkB;IAElB,OAAO,CAAC,IAAI,CAAC,cAAc,EAAE,MAAM,EAAE,eAAe,EAAE,iBAAiB,EAAE,UAAU,CAAC,CAAC;AACvF,CAAC;AAED,MAAM,UAAU,kBAAkB,CAChC,OAAyB,EACzB,MAAiB,EACjB,eAA0B,EAC1B,UAAkB;IAElB,OAAO,CAAC,IAAI,CAAC,cAAc,EAAE,MAAM,EAAE,eAAe,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;AAChF,CAAC;AAED,MAAM,mBAAmB,GAAG,iBAAiB,CAAC,kBAAkB,CAAC,CAAC;AAElE,MAAM,UAAU,iBAAiB,CAAC,OAAyB,EAAE,MAAa,EAAE,IAAY;IACtF,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;AAClE,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,OAAgB,EAAE,MAAqB;IACzE,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO;QAAE,OAAO,SAAS,CAAC;IACnD,MAAM,aAAa,GAAuB,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACjG,OAAO,aAAa,CAAC;AACvB,CAAC;AAED,MAAM,mBAAmB,GAAG,iBAAiB,CAAC,mBAAmB,CAAC,CAAC;AAEnE,MAAM,UAAU,iBAAiB,CAAC,OAAyB,EAAE,MAAa,EAAE,IAAY;IACtF,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;AAClE,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,OAAgB,EAAE,MAAqB;IACzE,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO;QAAE,OAAO,SAAS,CAAC;IACnD,MAAM,aAAa,GAAuB,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACjG,OAAO,aAAa,CAAC;AACvB,CAAC;AAED,MAAM,UAAU,uBAAuB,CACrC,OAAyB,EACzB,MAAa,EACb,cAAqB;;IAErB,MAAM,gBAAgB,GAAqB,MAAA,cAAc,CAAC,UAAU,CAAC,GAAG,CAAC,YAAY,CAAC,0CAAE,IAAI,CAAC;IAC7F,IAAI,gBAAgB,EAAE;QACpB,IAAI,gBAAgB,CAAC,IAAI,KAAK,OAAO,EAAE;YACrC,kEAAkE;YAClE,OAAO;SACR;QAED,2CAA2C;QAC3C,wEAAwE;QACxE,oCAAoC;QACpC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,gBAAgB,CAAC,UAAU,EAAE;YACtD,MAAM,CAAC,UAAU,CAAC,GAAG,CACnB,GAAG,EACH,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,EAAE;gBACvC,cAAc,EAAE,KAAK;gBACrB,KAAK,EAAE,MAAM;aACd,CAAC,CACH,CAAC;SACH;KACF;AACH,CAAC;AAED,MAAM,UAAU,+BAA+B,CAC7C,OAAyB,EACzB,MAAa,EACb,cAAqB;;IAErB,MAAM,wBAAwB,GAC5B,MAAA,cAAc,CAAC,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,0CAAE,IAAI,CAAC;IAClD,IAAI,wBAAwB,EAAE;QAC5B,IAAI,wBAAwB,CAAC,IAAI,KAAK,OAAO,EAAE;YAC7C,kEAAkE;YAClE,OAAO;SACR;QAED,2CAA2C;QAC3C,wEAAwE;QACxE,oCAAoC;QACpC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,wBAAwB,CAAC,UAAU,EAAE;YAC9D,MAAM,CAAC,UAAU,CAAC,GAAG,CACnB,GAAG,EACH,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,EAAE;gBACvC,cAAc,EAAE,KAAK;gBACrB,KAAK,EAAE,MAAM;aACd,CAAC,CACH,CAAC;SACH;KACF;AACH,CAAC;AAED,MAAM,oBAAoB,GAAG,iBAAiB,CAAC,mBAAmB,CAAC,CAAC;AAEpE,MAAM,UAAU,mBAAmB,CACjC,OAAyB,EACzB,MAAiB,EACjB,YAAkB;IAElB,IAAI,YAAY,CAAC,IAAI,KAAK,mBAAmB,EAAE;QAC7C,OAAO;KACR;IAED,6CAA6C;IAC7C,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAE3D,IAAI,YAAY,CAAC,IAAI,KAAK,OAAO,EAAE;QACjC,OAAO,CAAC,OAAO,CAAC,gBAAgB,CAAC;YAC/B,IAAI,EAAE,kBAAkB;YACxB,OAAO,EAAE,6DAA6D;YACtE,QAAQ,EAAE,OAAO;YACjB,MAAM,EAAE,MAAM;SACf,CAAC,CAAC;QAEH,OAAO;KACR;IAED,0EAA0E;IAC1E,qDAAqD;IACrD,IAAI,MAAM,CAAC,SAAS,IAAI,oBAAoB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE;QACvF,OAAO;KACR;IAED,MAAM,GAAG,GAAG,kBAAkB,CAAC,OAAO,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IAC9D,IAAI,CAAC,GAAG,EAAE;QACR,gBAAgB,CAAC,OAAO,CAAC,OAAO,EAAE;YAChC,IAAI,EAAE,uBAAuB;YAC7B,MAAM,EAAE,MAAM;YACd,SAAS,EAAE,YAAY;YACvB,MAAM,EAAE;gBACN,IAAI,EAAE,WAAW,CAAC,YAAY,CAAC;aAChC;SACF,CAAC,CAAC;QAEH,OAAO;KACR;IAED,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,WAAW,CAAC,EAAE;QACjD,gBAAgB,CAAC,OAAO,CAAC,OAAO,EAAE;YAChC,IAAI,EAAE,uBAAuB;YAC7B,MAAM,EAAE,MAAM;YACd,SAAS,EAAE,gBAAgB;YAC3B,MAAM,EAAE;gBACN,IAAI,EAAE,WAAW,CAAC,YAAY,CAAC;aAChC;SACF,CAAC,CAAC;KACJ;AACH,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,OAAgB,EAAE,SAAoB;IACxE,OAAO,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;AAC/D,CAAC;AAED,MAAM,aAAa,GAAG,iBAAiB,CAAC,YAAY,CAAC,CAAC;AAEtD,MAAM,UAAU,WAAW,CAAC,OAAyB,EAAE,MAAiB;IACtE,yEAAyE;IACzE,cAAc;IACd,IAAI,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,MAAM,KAAK,CAAC,EAAE;QAC/C,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;KACrD;AACH,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,OAAgB;IAC5C,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAoB,CAAC,OAAO,CAAC,CAAC,EAAa,EAAE,EAAE;QAC5E,IACE,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,MAAM,KAAK,CAAC;YACvC,CAAC,WAAW,CAAC,OAAO,EAAE,EAAE,CAAC;YACzB,CAAC,YAAY,CAAC,OAAO,EAAE,EAAE,CAAC,EAC1B;YACA,gBAAgB,CAAC,OAAO,EAAE;gBACxB,IAAI,EAAE,2BAA2B;gBACjC,MAAM,EAAE,EAAE;aACX,CAAC,CAAC;SACJ;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAED,oBAAoB,CAAC,aAAa,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,iBAAiB,CAAC,CAAC;AAC9F,oBAAoB,CAClB,qBAAqB,EACrB,+BAA+B,EAC/B,uBAAuB,EACvB,mBAAmB,EACnB,WAAW,CACZ,CAAC"}
|
|
1
|
+
{"version":3,"file":"decorators.js","sourceRoot":"","sources":["../../src/decorators.ts"],"names":[],"mappings":"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"}
|
package/dist/src/lib.d.ts
CHANGED
|
@@ -2,6 +2,12 @@ export declare const namespace = "Azure.Core";
|
|
|
2
2
|
export declare const libDef: {
|
|
3
3
|
readonly name: "@azure-tools/typespec-azure-core";
|
|
4
4
|
readonly diagnostics: {
|
|
5
|
+
readonly "auth-required": {
|
|
6
|
+
readonly severity: "warning";
|
|
7
|
+
readonly messages: {
|
|
8
|
+
readonly default: "Provide an authentication scheme using the `@useAuth` decorator. See: https://azure.github.io/typespec-azure/docs/reference/azure-style-guide#security-definitions";
|
|
9
|
+
};
|
|
10
|
+
};
|
|
5
11
|
readonly byos: {
|
|
6
12
|
readonly severity: "warning";
|
|
7
13
|
readonly messages: {
|
|
@@ -142,6 +148,13 @@ export declare const libDef: {
|
|
|
142
148
|
readonly default: "List operations with an 'orderBy' parameter are uncommon; support should only be added after large collection sorting performance concerns are considered.";
|
|
143
149
|
};
|
|
144
150
|
};
|
|
151
|
+
readonly "no-response-body": {
|
|
152
|
+
readonly severity: "warning";
|
|
153
|
+
readonly messages: {
|
|
154
|
+
readonly default: "The body of non-204 responses should not be empty.";
|
|
155
|
+
readonly response204: "The body of 204 response should be empty.";
|
|
156
|
+
};
|
|
157
|
+
};
|
|
145
158
|
readonly "no-rest-library-interfaces": {
|
|
146
159
|
readonly severity: "error";
|
|
147
160
|
readonly messages: {
|
|
@@ -184,6 +197,13 @@ export declare const libDef: {
|
|
|
184
197
|
readonly default: "This RPC operation is defined inside the service namespace but does not have a route defined. Use the @route or @autoRoute decorators provide one.";
|
|
185
198
|
};
|
|
186
199
|
};
|
|
200
|
+
readonly "rpc-operation-request-body": {
|
|
201
|
+
readonly severity: "warning";
|
|
202
|
+
readonly messages: {
|
|
203
|
+
readonly default: "There is an issue with the RPCOperation request body.";
|
|
204
|
+
readonly noBodyAllowed: import("@typespec/compiler").CallableMessage<["verb"]>;
|
|
205
|
+
};
|
|
206
|
+
};
|
|
187
207
|
readonly "invalid-trait-property-count": {
|
|
188
208
|
readonly severity: "error";
|
|
189
209
|
readonly messages: {
|
|
@@ -232,6 +252,12 @@ export declare const libDef: {
|
|
|
232
252
|
readonly default: "At least one operation response must contain a field marked with `@lroStatus`";
|
|
233
253
|
};
|
|
234
254
|
};
|
|
255
|
+
readonly "no-error-status-codes": {
|
|
256
|
+
readonly severity: "warning";
|
|
257
|
+
readonly messages: {
|
|
258
|
+
readonly default: "Azure REST API guidelines recommend using 'default' error response for all error cases. Avoid defining custom 4xx or 5xx error cases.";
|
|
259
|
+
};
|
|
260
|
+
};
|
|
235
261
|
readonly "no-nullable": {
|
|
236
262
|
readonly severity: "warning";
|
|
237
263
|
readonly messages: {
|
|
@@ -281,9 +307,18 @@ export declare const libDef: {
|
|
|
281
307
|
readonly array: "Body schema should not be of raw array type.";
|
|
282
308
|
};
|
|
283
309
|
};
|
|
310
|
+
readonly "verb-conflict": {
|
|
311
|
+
readonly severity: "warning";
|
|
312
|
+
readonly messages: {
|
|
313
|
+
readonly default: import("@typespec/compiler").CallableMessage<["templateName", "requiredVerb", "verb"]>;
|
|
314
|
+
};
|
|
315
|
+
};
|
|
284
316
|
};
|
|
285
317
|
};
|
|
286
318
|
export declare const $lib: import("@typespec/compiler").TypeSpecLibrary<{
|
|
319
|
+
"auth-required": {
|
|
320
|
+
readonly default: "Provide an authentication scheme using the `@useAuth` decorator. See: https://azure.github.io/typespec-azure/docs/reference/azure-style-guide#security-definitions";
|
|
321
|
+
};
|
|
287
322
|
byos: {
|
|
288
323
|
readonly default: import("@typespec/compiler").CallableMessage<["contentType"]>;
|
|
289
324
|
};
|
|
@@ -358,6 +393,10 @@ export declare const $lib: import("@typespec/compiler").TypeSpecLibrary<{
|
|
|
358
393
|
"no-order-by": {
|
|
359
394
|
readonly default: "List operations with an 'orderBy' parameter are uncommon; support should only be added after large collection sorting performance concerns are considered.";
|
|
360
395
|
};
|
|
396
|
+
"no-response-body": {
|
|
397
|
+
readonly default: "The body of non-204 responses should not be empty.";
|
|
398
|
+
readonly response204: "The body of 204 response should be empty.";
|
|
399
|
+
};
|
|
361
400
|
"no-rest-library-interfaces": {
|
|
362
401
|
readonly default: "Resource interfaces from the TypeSpec.Rest.Resource library are incompatible with Azure.Core.";
|
|
363
402
|
};
|
|
@@ -379,6 +418,10 @@ export declare const $lib: import("@typespec/compiler").TypeSpecLibrary<{
|
|
|
379
418
|
"rpc-operation-needs-route": {
|
|
380
419
|
readonly default: "This RPC operation is defined inside the service namespace but does not have a route defined. Use the @route or @autoRoute decorators provide one.";
|
|
381
420
|
};
|
|
421
|
+
"rpc-operation-request-body": {
|
|
422
|
+
readonly default: "There is an issue with the RPCOperation request body.";
|
|
423
|
+
readonly noBodyAllowed: import("@typespec/compiler").CallableMessage<["verb"]>;
|
|
424
|
+
};
|
|
382
425
|
"invalid-trait-property-count": {
|
|
383
426
|
readonly default: import("@typespec/compiler").CallableMessage<["modelName"]>;
|
|
384
427
|
};
|
|
@@ -403,6 +446,9 @@ export declare const $lib: import("@typespec/compiler").TypeSpecLibrary<{
|
|
|
403
446
|
"lro-polling-data-missing-from-operation-response": {
|
|
404
447
|
readonly default: "At least one operation response must contain a field marked with `@lroStatus`";
|
|
405
448
|
};
|
|
449
|
+
"no-error-status-codes": {
|
|
450
|
+
readonly default: "Azure REST API guidelines recommend using 'default' error response for all error cases. Avoid defining custom 4xx or 5xx error cases.";
|
|
451
|
+
};
|
|
406
452
|
"no-nullable": {
|
|
407
453
|
readonly default: "Don't use `| null`. If you meant to have an optional property, use `?`. (e.g. `myProp?: string`)";
|
|
408
454
|
};
|
|
@@ -428,8 +474,14 @@ export declare const $lib: import("@typespec/compiler").TypeSpecLibrary<{
|
|
|
428
474
|
"invalid-body-schema": {
|
|
429
475
|
readonly array: "Body schema should not be of raw array type.";
|
|
430
476
|
};
|
|
477
|
+
"verb-conflict": {
|
|
478
|
+
readonly default: import("@typespec/compiler").CallableMessage<["templateName", "requiredVerb", "verb"]>;
|
|
479
|
+
};
|
|
431
480
|
}, Record<string, any>>;
|
|
432
|
-
export declare const reportDiagnostic: <C extends "byos" | "operation-missing-api-version" | "casing-style" | "known-encoding" | "prefer-csv-collection-format" | "lro-status-union-non-string" | "lro-status-property-invalid-type" | "lro-status-missing" | "bad-record-type" | "request-parameter-invalid" | "request-body-problem" | "response-property-invalid" | "response-schema-problem" | "no-multiple-discriminator" | "no-fixed-enum-discriminator" | "operation-link-parameter-invalid" | "invalid-resource-type" | "use-extensible-enum" | "use-standard-names" | "use-standard-operations" | "no-format" | "no-order-by" | "no-rest-library-interfaces" | "no-unknown" | "documentation-required" | "key-visibility-required" | "polling-operation-return-model" | "long-running-polling-operation-required" | "rpc-operation-needs-route" | "invalid-trait-property-count" | "invalid-trait-property-type" | "invalid-trait-context" | "trait-property-without-location" | "expected-trait-missing" | "invalid-parameter" | "expected-success-response" | "lro-polling-data-missing-from-operation-response" | "no-nullable" | "no-object" | "no-offsetdatetime" | "property-name-conflict" | "no-operation-id" | "no-rpc-path-params" | "no-explicit-routes-resource-ops" | "invalid-body-schema", M extends keyof {
|
|
481
|
+
export declare const reportDiagnostic: <C extends "auth-required" | "byos" | "operation-missing-api-version" | "casing-style" | "known-encoding" | "prefer-csv-collection-format" | "lro-status-union-non-string" | "lro-status-property-invalid-type" | "lro-status-missing" | "bad-record-type" | "request-parameter-invalid" | "request-body-problem" | "response-property-invalid" | "response-schema-problem" | "no-multiple-discriminator" | "no-fixed-enum-discriminator" | "operation-link-parameter-invalid" | "invalid-resource-type" | "use-extensible-enum" | "use-standard-names" | "use-standard-operations" | "no-format" | "no-order-by" | "no-response-body" | "no-rest-library-interfaces" | "no-unknown" | "documentation-required" | "key-visibility-required" | "polling-operation-return-model" | "long-running-polling-operation-required" | "rpc-operation-needs-route" | "rpc-operation-request-body" | "invalid-trait-property-count" | "invalid-trait-property-type" | "invalid-trait-context" | "trait-property-without-location" | "expected-trait-missing" | "invalid-parameter" | "expected-success-response" | "lro-polling-data-missing-from-operation-response" | "no-error-status-codes" | "no-nullable" | "no-object" | "no-offsetdatetime" | "property-name-conflict" | "no-operation-id" | "no-rpc-path-params" | "no-explicit-routes-resource-ops" | "invalid-body-schema" | "verb-conflict", M extends keyof {
|
|
482
|
+
"auth-required": {
|
|
483
|
+
readonly default: "Provide an authentication scheme using the `@useAuth` decorator. See: https://azure.github.io/typespec-azure/docs/reference/azure-style-guide#security-definitions";
|
|
484
|
+
};
|
|
433
485
|
byos: {
|
|
434
486
|
readonly default: import("@typespec/compiler").CallableMessage<["contentType"]>;
|
|
435
487
|
};
|
|
@@ -504,6 +556,10 @@ export declare const reportDiagnostic: <C extends "byos" | "operation-missing-ap
|
|
|
504
556
|
"no-order-by": {
|
|
505
557
|
readonly default: "List operations with an 'orderBy' parameter are uncommon; support should only be added after large collection sorting performance concerns are considered.";
|
|
506
558
|
};
|
|
559
|
+
"no-response-body": {
|
|
560
|
+
readonly default: "The body of non-204 responses should not be empty.";
|
|
561
|
+
readonly response204: "The body of 204 response should be empty.";
|
|
562
|
+
};
|
|
507
563
|
"no-rest-library-interfaces": {
|
|
508
564
|
readonly default: "Resource interfaces from the TypeSpec.Rest.Resource library are incompatible with Azure.Core.";
|
|
509
565
|
};
|
|
@@ -525,6 +581,10 @@ export declare const reportDiagnostic: <C extends "byos" | "operation-missing-ap
|
|
|
525
581
|
"rpc-operation-needs-route": {
|
|
526
582
|
readonly default: "This RPC operation is defined inside the service namespace but does not have a route defined. Use the @route or @autoRoute decorators provide one.";
|
|
527
583
|
};
|
|
584
|
+
"rpc-operation-request-body": {
|
|
585
|
+
readonly default: "There is an issue with the RPCOperation request body.";
|
|
586
|
+
readonly noBodyAllowed: import("@typespec/compiler").CallableMessage<["verb"]>;
|
|
587
|
+
};
|
|
528
588
|
"invalid-trait-property-count": {
|
|
529
589
|
readonly default: import("@typespec/compiler").CallableMessage<["modelName"]>;
|
|
530
590
|
};
|
|
@@ -549,6 +609,9 @@ export declare const reportDiagnostic: <C extends "byos" | "operation-missing-ap
|
|
|
549
609
|
"lro-polling-data-missing-from-operation-response": {
|
|
550
610
|
readonly default: "At least one operation response must contain a field marked with `@lroStatus`";
|
|
551
611
|
};
|
|
612
|
+
"no-error-status-codes": {
|
|
613
|
+
readonly default: "Azure REST API guidelines recommend using 'default' error response for all error cases. Avoid defining custom 4xx or 5xx error cases.";
|
|
614
|
+
};
|
|
552
615
|
"no-nullable": {
|
|
553
616
|
readonly default: "Don't use `| null`. If you meant to have an optional property, use `?`. (e.g. `myProp?: string`)";
|
|
554
617
|
};
|
|
@@ -574,7 +637,13 @@ export declare const reportDiagnostic: <C extends "byos" | "operation-missing-ap
|
|
|
574
637
|
"invalid-body-schema": {
|
|
575
638
|
readonly array: "Body schema should not be of raw array type.";
|
|
576
639
|
};
|
|
640
|
+
"verb-conflict": {
|
|
641
|
+
readonly default: import("@typespec/compiler").CallableMessage<["templateName", "requiredVerb", "verb"]>;
|
|
642
|
+
};
|
|
577
643
|
}[C]>(program: import("@typespec/compiler").Program, diag: import("@typespec/compiler").DiagnosticReport<{
|
|
644
|
+
"auth-required": {
|
|
645
|
+
readonly default: "Provide an authentication scheme using the `@useAuth` decorator. See: https://azure.github.io/typespec-azure/docs/reference/azure-style-guide#security-definitions";
|
|
646
|
+
};
|
|
578
647
|
byos: {
|
|
579
648
|
readonly default: import("@typespec/compiler").CallableMessage<["contentType"]>;
|
|
580
649
|
};
|
|
@@ -649,6 +718,10 @@ export declare const reportDiagnostic: <C extends "byos" | "operation-missing-ap
|
|
|
649
718
|
"no-order-by": {
|
|
650
719
|
readonly default: "List operations with an 'orderBy' parameter are uncommon; support should only be added after large collection sorting performance concerns are considered.";
|
|
651
720
|
};
|
|
721
|
+
"no-response-body": {
|
|
722
|
+
readonly default: "The body of non-204 responses should not be empty.";
|
|
723
|
+
readonly response204: "The body of 204 response should be empty.";
|
|
724
|
+
};
|
|
652
725
|
"no-rest-library-interfaces": {
|
|
653
726
|
readonly default: "Resource interfaces from the TypeSpec.Rest.Resource library are incompatible with Azure.Core.";
|
|
654
727
|
};
|
|
@@ -670,6 +743,10 @@ export declare const reportDiagnostic: <C extends "byos" | "operation-missing-ap
|
|
|
670
743
|
"rpc-operation-needs-route": {
|
|
671
744
|
readonly default: "This RPC operation is defined inside the service namespace but does not have a route defined. Use the @route or @autoRoute decorators provide one.";
|
|
672
745
|
};
|
|
746
|
+
"rpc-operation-request-body": {
|
|
747
|
+
readonly default: "There is an issue with the RPCOperation request body.";
|
|
748
|
+
readonly noBodyAllowed: import("@typespec/compiler").CallableMessage<["verb"]>;
|
|
749
|
+
};
|
|
673
750
|
"invalid-trait-property-count": {
|
|
674
751
|
readonly default: import("@typespec/compiler").CallableMessage<["modelName"]>;
|
|
675
752
|
};
|
|
@@ -694,6 +771,9 @@ export declare const reportDiagnostic: <C extends "byos" | "operation-missing-ap
|
|
|
694
771
|
"lro-polling-data-missing-from-operation-response": {
|
|
695
772
|
readonly default: "At least one operation response must contain a field marked with `@lroStatus`";
|
|
696
773
|
};
|
|
774
|
+
"no-error-status-codes": {
|
|
775
|
+
readonly default: "Azure REST API guidelines recommend using 'default' error response for all error cases. Avoid defining custom 4xx or 5xx error cases.";
|
|
776
|
+
};
|
|
697
777
|
"no-nullable": {
|
|
698
778
|
readonly default: "Don't use `| null`. If you meant to have an optional property, use `?`. (e.g. `myProp?: string`)";
|
|
699
779
|
};
|
|
@@ -719,7 +799,13 @@ export declare const reportDiagnostic: <C extends "byos" | "operation-missing-ap
|
|
|
719
799
|
"invalid-body-schema": {
|
|
720
800
|
readonly array: "Body schema should not be of raw array type.";
|
|
721
801
|
};
|
|
722
|
-
|
|
802
|
+
"verb-conflict": {
|
|
803
|
+
readonly default: import("@typespec/compiler").CallableMessage<["templateName", "requiredVerb", "verb"]>;
|
|
804
|
+
};
|
|
805
|
+
}, C, M>) => void, createDiagnostic: <C extends "auth-required" | "byos" | "operation-missing-api-version" | "casing-style" | "known-encoding" | "prefer-csv-collection-format" | "lro-status-union-non-string" | "lro-status-property-invalid-type" | "lro-status-missing" | "bad-record-type" | "request-parameter-invalid" | "request-body-problem" | "response-property-invalid" | "response-schema-problem" | "no-multiple-discriminator" | "no-fixed-enum-discriminator" | "operation-link-parameter-invalid" | "invalid-resource-type" | "use-extensible-enum" | "use-standard-names" | "use-standard-operations" | "no-format" | "no-order-by" | "no-response-body" | "no-rest-library-interfaces" | "no-unknown" | "documentation-required" | "key-visibility-required" | "polling-operation-return-model" | "long-running-polling-operation-required" | "rpc-operation-needs-route" | "rpc-operation-request-body" | "invalid-trait-property-count" | "invalid-trait-property-type" | "invalid-trait-context" | "trait-property-without-location" | "expected-trait-missing" | "invalid-parameter" | "expected-success-response" | "lro-polling-data-missing-from-operation-response" | "no-error-status-codes" | "no-nullable" | "no-object" | "no-offsetdatetime" | "property-name-conflict" | "no-operation-id" | "no-rpc-path-params" | "no-explicit-routes-resource-ops" | "invalid-body-schema" | "verb-conflict", M extends keyof {
|
|
806
|
+
"auth-required": {
|
|
807
|
+
readonly default: "Provide an authentication scheme using the `@useAuth` decorator. See: https://azure.github.io/typespec-azure/docs/reference/azure-style-guide#security-definitions";
|
|
808
|
+
};
|
|
723
809
|
byos: {
|
|
724
810
|
readonly default: import("@typespec/compiler").CallableMessage<["contentType"]>;
|
|
725
811
|
};
|
|
@@ -794,6 +880,10 @@ export declare const reportDiagnostic: <C extends "byos" | "operation-missing-ap
|
|
|
794
880
|
"no-order-by": {
|
|
795
881
|
readonly default: "List operations with an 'orderBy' parameter are uncommon; support should only be added after large collection sorting performance concerns are considered.";
|
|
796
882
|
};
|
|
883
|
+
"no-response-body": {
|
|
884
|
+
readonly default: "The body of non-204 responses should not be empty.";
|
|
885
|
+
readonly response204: "The body of 204 response should be empty.";
|
|
886
|
+
};
|
|
797
887
|
"no-rest-library-interfaces": {
|
|
798
888
|
readonly default: "Resource interfaces from the TypeSpec.Rest.Resource library are incompatible with Azure.Core.";
|
|
799
889
|
};
|
|
@@ -815,6 +905,10 @@ export declare const reportDiagnostic: <C extends "byos" | "operation-missing-ap
|
|
|
815
905
|
"rpc-operation-needs-route": {
|
|
816
906
|
readonly default: "This RPC operation is defined inside the service namespace but does not have a route defined. Use the @route or @autoRoute decorators provide one.";
|
|
817
907
|
};
|
|
908
|
+
"rpc-operation-request-body": {
|
|
909
|
+
readonly default: "There is an issue with the RPCOperation request body.";
|
|
910
|
+
readonly noBodyAllowed: import("@typespec/compiler").CallableMessage<["verb"]>;
|
|
911
|
+
};
|
|
818
912
|
"invalid-trait-property-count": {
|
|
819
913
|
readonly default: import("@typespec/compiler").CallableMessage<["modelName"]>;
|
|
820
914
|
};
|
|
@@ -839,6 +933,9 @@ export declare const reportDiagnostic: <C extends "byos" | "operation-missing-ap
|
|
|
839
933
|
"lro-polling-data-missing-from-operation-response": {
|
|
840
934
|
readonly default: "At least one operation response must contain a field marked with `@lroStatus`";
|
|
841
935
|
};
|
|
936
|
+
"no-error-status-codes": {
|
|
937
|
+
readonly default: "Azure REST API guidelines recommend using 'default' error response for all error cases. Avoid defining custom 4xx or 5xx error cases.";
|
|
938
|
+
};
|
|
842
939
|
"no-nullable": {
|
|
843
940
|
readonly default: "Don't use `| null`. If you meant to have an optional property, use `?`. (e.g. `myProp?: string`)";
|
|
844
941
|
};
|
|
@@ -864,7 +961,13 @@ export declare const reportDiagnostic: <C extends "byos" | "operation-missing-ap
|
|
|
864
961
|
"invalid-body-schema": {
|
|
865
962
|
readonly array: "Body schema should not be of raw array type.";
|
|
866
963
|
};
|
|
964
|
+
"verb-conflict": {
|
|
965
|
+
readonly default: import("@typespec/compiler").CallableMessage<["templateName", "requiredVerb", "verb"]>;
|
|
966
|
+
};
|
|
867
967
|
}[C]>(diag: import("@typespec/compiler").DiagnosticReport<{
|
|
968
|
+
"auth-required": {
|
|
969
|
+
readonly default: "Provide an authentication scheme using the `@useAuth` decorator. See: https://azure.github.io/typespec-azure/docs/reference/azure-style-guide#security-definitions";
|
|
970
|
+
};
|
|
868
971
|
byos: {
|
|
869
972
|
readonly default: import("@typespec/compiler").CallableMessage<["contentType"]>;
|
|
870
973
|
};
|
|
@@ -939,6 +1042,10 @@ export declare const reportDiagnostic: <C extends "byos" | "operation-missing-ap
|
|
|
939
1042
|
"no-order-by": {
|
|
940
1043
|
readonly default: "List operations with an 'orderBy' parameter are uncommon; support should only be added after large collection sorting performance concerns are considered.";
|
|
941
1044
|
};
|
|
1045
|
+
"no-response-body": {
|
|
1046
|
+
readonly default: "The body of non-204 responses should not be empty.";
|
|
1047
|
+
readonly response204: "The body of 204 response should be empty.";
|
|
1048
|
+
};
|
|
942
1049
|
"no-rest-library-interfaces": {
|
|
943
1050
|
readonly default: "Resource interfaces from the TypeSpec.Rest.Resource library are incompatible with Azure.Core.";
|
|
944
1051
|
};
|
|
@@ -960,6 +1067,10 @@ export declare const reportDiagnostic: <C extends "byos" | "operation-missing-ap
|
|
|
960
1067
|
"rpc-operation-needs-route": {
|
|
961
1068
|
readonly default: "This RPC operation is defined inside the service namespace but does not have a route defined. Use the @route or @autoRoute decorators provide one.";
|
|
962
1069
|
};
|
|
1070
|
+
"rpc-operation-request-body": {
|
|
1071
|
+
readonly default: "There is an issue with the RPCOperation request body.";
|
|
1072
|
+
readonly noBodyAllowed: import("@typespec/compiler").CallableMessage<["verb"]>;
|
|
1073
|
+
};
|
|
963
1074
|
"invalid-trait-property-count": {
|
|
964
1075
|
readonly default: import("@typespec/compiler").CallableMessage<["modelName"]>;
|
|
965
1076
|
};
|
|
@@ -984,6 +1095,9 @@ export declare const reportDiagnostic: <C extends "byos" | "operation-missing-ap
|
|
|
984
1095
|
"lro-polling-data-missing-from-operation-response": {
|
|
985
1096
|
readonly default: "At least one operation response must contain a field marked with `@lroStatus`";
|
|
986
1097
|
};
|
|
1098
|
+
"no-error-status-codes": {
|
|
1099
|
+
readonly default: "Azure REST API guidelines recommend using 'default' error response for all error cases. Avoid defining custom 4xx or 5xx error cases.";
|
|
1100
|
+
};
|
|
987
1101
|
"no-nullable": {
|
|
988
1102
|
readonly default: "Don't use `| null`. If you meant to have an optional property, use `?`. (e.g. `myProp?: string`)";
|
|
989
1103
|
};
|
|
@@ -1009,5 +1123,8 @@ export declare const reportDiagnostic: <C extends "byos" | "operation-missing-ap
|
|
|
1009
1123
|
"invalid-body-schema": {
|
|
1010
1124
|
readonly array: "Body schema should not be of raw array type.";
|
|
1011
1125
|
};
|
|
1126
|
+
"verb-conflict": {
|
|
1127
|
+
readonly default: import("@typespec/compiler").CallableMessage<["templateName", "requiredVerb", "verb"]>;
|
|
1128
|
+
};
|
|
1012
1129
|
}, C, M>) => import("@typespec/compiler").Diagnostic, createStateSymbol: (name: string) => symbol;
|
|
1013
1130
|
//# sourceMappingURL=lib.d.ts.map
|
package/dist/src/lib.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lib.d.ts","sourceRoot":"","sources":["../../src/lib.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,SAAS,eAAe,CAAC;AAEtC,eAAO,MAAM,MAAM
|
|
1
|
+
{"version":3,"file":"lib.d.ts","sourceRoot":"","sources":["../../src/lib.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,SAAS,eAAe,CAAC;AAEtC,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4UT,CAAC;AAEX,eAAO,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uBAAgC,CAAC;AAClD,eAAO,MAAQ,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAAE,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sDAAE,iBAAiB,0BAAS,CAAC"}
|
package/dist/src/lib.js
CHANGED
|
@@ -3,6 +3,12 @@ export const namespace = "Azure.Core";
|
|
|
3
3
|
export const libDef = {
|
|
4
4
|
name: "@azure-tools/typespec-azure-core",
|
|
5
5
|
diagnostics: {
|
|
6
|
+
"auth-required": {
|
|
7
|
+
severity: "warning",
|
|
8
|
+
messages: {
|
|
9
|
+
default: "Provide an authentication scheme using the `@useAuth` decorator. See: https://azure.github.io/typespec-azure/docs/reference/azure-style-guide#security-definitions",
|
|
10
|
+
},
|
|
11
|
+
},
|
|
6
12
|
byos: {
|
|
7
13
|
severity: "warning",
|
|
8
14
|
messages: {
|
|
@@ -143,6 +149,13 @@ export const libDef = {
|
|
|
143
149
|
default: `List operations with an 'orderBy' parameter are uncommon; support should only be added after large collection sorting performance concerns are considered.`,
|
|
144
150
|
},
|
|
145
151
|
},
|
|
152
|
+
"no-response-body": {
|
|
153
|
+
severity: "warning",
|
|
154
|
+
messages: {
|
|
155
|
+
default: `The body of non-204 responses should not be empty.`,
|
|
156
|
+
response204: `The body of 204 response should be empty.`,
|
|
157
|
+
},
|
|
158
|
+
},
|
|
146
159
|
"no-rest-library-interfaces": {
|
|
147
160
|
severity: "error",
|
|
148
161
|
messages: {
|
|
@@ -185,6 +198,13 @@ export const libDef = {
|
|
|
185
198
|
default: "This RPC operation is defined inside the service namespace but does not have a route defined. Use the @route or @autoRoute decorators provide one.",
|
|
186
199
|
},
|
|
187
200
|
},
|
|
201
|
+
"rpc-operation-request-body": {
|
|
202
|
+
severity: "warning",
|
|
203
|
+
messages: {
|
|
204
|
+
default: `There is an issue with the RPCOperation request body.`,
|
|
205
|
+
noBodyAllowed: paramMessage `RPCOperation with '@${"verb"}' cannot have a body.`,
|
|
206
|
+
},
|
|
207
|
+
},
|
|
188
208
|
"invalid-trait-property-count": {
|
|
189
209
|
severity: "error",
|
|
190
210
|
messages: {
|
|
@@ -233,6 +253,12 @@ export const libDef = {
|
|
|
233
253
|
default: "At least one operation response must contain a field marked with `@lroStatus`",
|
|
234
254
|
},
|
|
235
255
|
},
|
|
256
|
+
"no-error-status-codes": {
|
|
257
|
+
severity: "warning",
|
|
258
|
+
messages: {
|
|
259
|
+
default: "Azure REST API guidelines recommend using 'default' error response for all error cases. Avoid defining custom 4xx or 5xx error cases.",
|
|
260
|
+
},
|
|
261
|
+
},
|
|
236
262
|
"no-nullable": {
|
|
237
263
|
severity: "warning",
|
|
238
264
|
messages: {
|
|
@@ -282,6 +308,12 @@ export const libDef = {
|
|
|
282
308
|
array: "Body schema should not be of raw array type.",
|
|
283
309
|
},
|
|
284
310
|
},
|
|
311
|
+
"verb-conflict": {
|
|
312
|
+
severity: "warning",
|
|
313
|
+
messages: {
|
|
314
|
+
default: paramMessage `Operation template '${"templateName"}' requires HTTP verb '${"requiredVerb"}' but found '${"verb"}'.`,
|
|
315
|
+
},
|
|
316
|
+
},
|
|
285
317
|
},
|
|
286
318
|
};
|
|
287
319
|
export const $lib = createTypeSpecLibrary(libDef);
|
package/dist/src/lib.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lib.js","sourceRoot":"","sources":["../../src/lib.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEzE,MAAM,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC;AAEtC,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,IAAI,EAAE,kCAAkC;IACxC,WAAW,EAAE;QACX,IAAI,EAAE;YACJ,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,qBAAqB,aAAa,yNAAyN;aACjR;SACF;QACD,+BAA+B,EAAE;YAC/B,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,OAAO,EACL,kQAAkQ;aACrQ;SACF;QACD,cAAc,EAAE;YACd,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,gBAAgB,MAAM,mBAAmB,QAAQ,EAAE;aACzE;SACF;QACD,gBAAgB,EAAE;YAChB,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,aAAa,UAAU,+DAA+D,gBAAgB,EAAE;aAC9H;SACF;QACD,8BAA8B,EAAE;YAC9B,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,OAAO,EAAE,qEAAqE;aAC/E;SACF;QACD,6BAA6B,EAAE;YAC7B,QAAQ,EAAE,OAAO;YACjB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,wCAAwC,MAAM,GAAG;aACvE;SACF;QACD,kCAAkC,EAAE;YAClC,QAAQ,EAAE,OAAO;YACjB,QAAQ,EAAE;gBACR,OAAO,EAAE,sDAAsD;aAChE;SACF;QACD,oBAAoB,EAAE;YACpB,QAAQ,EAAE,OAAO;YACjB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,uDAAuD,QAAQ,GAAG;aACxF;SACF;QACD,iBAAiB,EAAE;YACjB,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,aAAa,EAAE,YAAY,CAAA,GAAG,MAAM,oBAAoB,SAAS,WAAW,UAAU,YAAY,SAAS,2BAA2B;gBACtI,oBAAoB,EAAE,YAAY,CAAA,GAAG,MAAM,eAAe,SAAS,WAAW,UAAU,gCAAgC;aACzH;SACF;QACD,2BAA2B,EAAE;YAC3B,QAAQ,EAAE,OAAO;YACjB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,sBAAsB,MAAM,oCAAoC;aACtF;SACF;QACD,sBAAsB,EAAE;YACtB,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,KAAK,EACH,4JAA4J;aAC/J;SACF;QACD,2BAA2B,EAAE;YAC3B,QAAQ,EAAE,OAAO;YACjB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,sBAAsB,MAAM,wCAAwC;aAC1F;SACF;QACD,yBAAyB,EAAE;YACzB,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,sBAAsB,EAAE,YAAY,CAAA,cAAc,MAAM,4CAA4C;aACrG;SACF;QACD,2BAA2B,EAAE;YAC3B,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,wBAAwB,MAAM,8DAA8D,QAAQ,GAAG;aAC7H;SACF;QACD,6BAA6B,EAAE;YAC7B,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,wHAAwH,UAAU,SAAS;aACjK;SACF;QACD,kCAAkC,EAAE;YAClC,QAAQ,EAAE,OAAO;YACjB,QAAQ,EAAE;gBACR,OAAO,EAAE,iFAAiF;aAC3F;SACF;QACD,uBAAuB,EAAE;YACvB,QAAQ,EAAE,OAAO;YACjB,QAAQ,EAAE;gBACR,UAAU,EAAE,YAAY,CAAA,eAAe,MAAM,oFAAoF;gBACjI,cAAc,EAAE,YAAY,CAAA,eAAe,MAAM,uFAAuF;aACzI;SACF;QACD,qBAAqB,EAAE;YACrB,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,OAAO,EAAE,yDAAyD;aACnE;SACF;QACD,oBAAoB,EAAE;YACpB,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,GAAG,EAAE,mEAAmE;gBACxE,IAAI,EAAE,2DAA2D;gBACjE,eAAe,EACb,iFAAiF;gBACnF,SAAS,EAAE,gFAAgF;gBAC3F,UAAU,EACR,iFAAiF;gBACnF,KAAK,EACH,4FAA4F;gBAC9F,MAAM,EAAE,8CAA8C;aACvD;SACF;QACD,yBAAyB,EAAE;YACzB,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,cAAc,MAAM,sEAAsE;aAChH;SACF;QACD,WAAW,EAAE;YACX,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,OAAO,EAAE,wDAAwD;aAClE;SACF;QACD,aAAa,EAAE;YACb,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,OAAO,EAAE,4JAA4J;aACtK;SACF;QACD,4BAA4B,EAAE;YAC5B,QAAQ,EAAE,OAAO;YACjB,QAAQ,EAAE;gBACR,OAAO,EAAE,+FAA+F;aACzG;SACF;QACD,YAAY,EAAE;YACZ,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,OAAO,EAAE,4DAA4D;aACtE;SACF;QACD,wBAAwB,EAAE;YACxB,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,OAAO,MAAM,WAAW,MAAM,oFAAoF;aACxI;SACF;QACD,yBAAyB,EAAE;YACzB,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,qBAAqB,MAAM,iGAAiG;aAClJ;SACF;QACD,gCAAgC,EAAE;YAChC,QAAQ,EAAE,OAAO;YACjB,QAAQ,EAAE;gBACR,OAAO,EACL,sFAAsF;aACzF;SACF;QACD,yCAAyC,EAAE;YACzC,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,OAAO,EACL,wJAAwJ;aAC3J;SACF;QACD,2BAA2B,EAAE;YAC3B,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,OAAO,EACL,qJAAqJ;aACxJ;SACF;QACD,8BAA8B,EAAE;YAC9B,QAAQ,EAAE,OAAO;YACjB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,eAAe,WAAW,+FAA+F;aAC/I;SACF;QACD,6BAA6B,EAAE;YAC7B,QAAQ,EAAE,OAAO;YACjB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,eAAe,WAAW,2DAA2D,cAAc,yBAAyB;aAClJ;SACF;QACD,uBAAuB,EAAE;YACvB,QAAQ,EAAE,OAAO;YACjB,QAAQ,EAAE;gBACR,OAAO,EACL,oFAAoF;aACvF;SACF;QACD,iCAAiC,EAAE;YACjC,QAAQ,EAAE,OAAO;YACjB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,eAAe,WAAW,wBAAwB,cAAc,mDAAmD;aACzI;SACF;QACD,wBAAwB,EAAE;YACxB,QAAQ,EAAE,OAAO;YACjB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,mBAAmB,OAAO,iBAAiB,SAAS,EAAE;aAC5E;SACF;QACD,mBAAmB,EAAE;YACnB,QAAQ,EAAE,OAAO;YACjB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,sBAAsB,cAAc,aAAa,MAAM,aAAa;aAC1F;SACF;QACD,2BAA2B,EAAE;YAC3B,QAAQ,EAAE,OAAO;YACjB,QAAQ,EAAE;gBACR,OAAO,EAAE,4CAA4C;aACtD;SACF;QACD,kDAAkD,EAAE;YAClD,QAAQ,EAAE,OAAO;YACjB,QAAQ,EAAE;gBACR,OAAO,EAAE,+EAA+E;aACzF;SACF;QACD,aAAa,EAAE;YACb,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,OAAO,EACL,kGAAkG;aACrG;SACF;QACD,WAAW,EAAE;YACX,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,OAAO,EACL,oIAAoI;aACvI;SACF;QACD,mBAAmB,EAAE;YACnB,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,OAAO,EACL,wFAAwF;aAC3F;SACF;QACD,wBAAwB,EAAE;YACxB,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,aAAa,cAAc,yMAAyM;gBACzP,aAAa,EAAE,YAAY,CAAA,sCAAsC,cAAc,iBAAiB,cAAc,kGAAkG;aACjN;SACF;QACD,iBAAiB,EAAE;YACjB,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,OAAO,EACL,uGAAuG;aAC1G;SACF;QACD,oBAAoB,EAAE;YACpB,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,OAAO,EACL,4IAA4I;aAC/I;SACF;QACD,iCAAiC,EAAE;YACjC,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,OAAO,EACL,4MAA4M;aAC/M;SACF;QACD,qBAAqB,EAAE;YACrB,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,KAAK,EAAE,8CAA8C;aACtD;SACF;KACF;CACO,CAAC;AAEX,MAAM,CAAC,MAAM,IAAI,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAC;AAClD,MAAM,CAAC,MAAM,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,GAAG,IAAI,CAAC"}
|
|
1
|
+
{"version":3,"file":"lib.js","sourceRoot":"","sources":["../../src/lib.ts"],"names":[],"mappings":"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"}
|
package/dist/src/linter.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"linter.d.ts","sourceRoot":"","sources":["../../src/linter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"linter.d.ts","sourceRoot":"","sources":["../../src/linter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAsE7C,wBAAgB,WAAW,CAAC,OAAO,EAAE,OAAO,QAM3C"}
|
package/dist/src/linter.js
CHANGED
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
import { getLinter } from "@typespec/lint";
|
|
2
|
-
import { checkRpcRoutes } from "./decorators.js";
|
|
2
|
+
import { checkEnsureVerb, checkRpcRoutes } from "./decorators.js";
|
|
3
3
|
import { $lib } from "./lib.js";
|
|
4
4
|
import { apiVersionRule } from "./rules/api-version-parameter.js";
|
|
5
|
+
import { authRequiredRule } from "./rules/auth-required.js";
|
|
5
6
|
import { byosRule } from "./rules/byos.js";
|
|
6
7
|
import { casingRule } from "./rules/casing.js";
|
|
7
8
|
import { extensibleEnumRule } from "./rules/extensible-enums.js";
|
|
8
9
|
import { knownEncodingRule } from "./rules/known-encoding.js";
|
|
9
10
|
import { longRunningOperationsRequirePollingOperation } from "./rules/lro-polling-operation.js";
|
|
11
|
+
import { noErrorStatusCodesRule } from "./rules/no-error-status-codes.js";
|
|
10
12
|
import { noExplicitRoutesResourceOps } from "./rules/no-explicit-routes-resource-ops.js";
|
|
11
13
|
import { noFixedEnumDiscriminatorRule } from "./rules/no-fixed-enum-discriminator.js";
|
|
12
14
|
import { noNullableRule } from "./rules/no-nullable.js";
|
|
@@ -24,9 +26,12 @@ import { bodyArrayRule } from "./rules/request-body-array.js";
|
|
|
24
26
|
import { requireDocumentation } from "./rules/require-docs.js";
|
|
25
27
|
import { requireKeyVisibility } from "./rules/require-key-visibility.js";
|
|
26
28
|
import { responseSchemaMultiStatusCodeRule } from "./rules/response-schema-multi-status-code.js";
|
|
29
|
+
import { rpcOperationRequestBodyRule } from "./rules/rpc-operation-request-body.js";
|
|
30
|
+
import { useStandardNames } from "./rules/use-standard-names.js";
|
|
27
31
|
import { useStandardOperations } from "./rules/use-standard-ops.js";
|
|
28
32
|
const linter = getLinter($lib);
|
|
29
33
|
linter.registerRules([
|
|
34
|
+
authRequiredRule,
|
|
30
35
|
operationIdRule,
|
|
31
36
|
bodyArrayRule,
|
|
32
37
|
byosRule,
|
|
@@ -36,6 +41,7 @@ linter.registerRules([
|
|
|
36
41
|
extensibleEnumRule,
|
|
37
42
|
knownEncodingRule,
|
|
38
43
|
useStandardOperations,
|
|
44
|
+
noErrorStatusCodesRule,
|
|
39
45
|
noFixedEnumDiscriminatorRule,
|
|
40
46
|
noNullableRule,
|
|
41
47
|
noOffsetDateTimeRule,
|
|
@@ -48,18 +54,18 @@ linter.registerRules([
|
|
|
48
54
|
recordTypeRule,
|
|
49
55
|
responseSchemaMultiStatusCodeRule,
|
|
50
56
|
propertyNameRule,
|
|
57
|
+
rpcOperationRequestBodyRule,
|
|
51
58
|
requireDocumentation,
|
|
52
59
|
requireKeyVisibility,
|
|
53
60
|
longRunningOperationsRequirePollingOperation,
|
|
54
|
-
|
|
55
|
-
// useStandardNames,
|
|
61
|
+
useStandardNames,
|
|
56
62
|
], {
|
|
57
63
|
autoEnable: true,
|
|
58
64
|
});
|
|
59
65
|
export function $onValidate(program) {
|
|
60
66
|
linter.autoEnableRules();
|
|
61
67
|
linter.lintOnValidate(program);
|
|
62
|
-
// Also validate whether
|
|
63
68
|
checkRpcRoutes(program);
|
|
69
|
+
checkEnsureVerb(program);
|
|
64
70
|
}
|
|
65
71
|
//# sourceMappingURL=linter.js.map
|
package/dist/src/linter.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"linter.js","sourceRoot":"","sources":["../../src/linter.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"linter.js","sourceRoot":"","sources":["../../src/linter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth-required.d.ts","sourceRoot":"","sources":["../../../src/rules/auth-required.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,gBAAgB,mCAqB3B,CAAC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { getService } from "@typespec/compiler";
|
|
2
|
+
import { getAuthentication } from "@typespec/http";
|
|
3
|
+
import { createRule } from "@typespec/lint";
|
|
4
|
+
import { reportDiagnostic } from "../lib.js";
|
|
5
|
+
import { isAzureSubNamespace, isExcludedCoreType } from "./utils.js";
|
|
6
|
+
export const authRequiredRule = createRule({
|
|
7
|
+
name: "auth-required",
|
|
8
|
+
create({ program }) {
|
|
9
|
+
return {
|
|
10
|
+
namespace: (namespace) => {
|
|
11
|
+
if (isExcludedCoreType(program, namespace))
|
|
12
|
+
return;
|
|
13
|
+
if (!isAzureSubNamespace(program, namespace))
|
|
14
|
+
return;
|
|
15
|
+
const service = getService(program, namespace);
|
|
16
|
+
if (!service)
|
|
17
|
+
return;
|
|
18
|
+
const auth = getAuthentication(program, namespace);
|
|
19
|
+
if (!auth) {
|
|
20
|
+
reportDiagnostic(program, {
|
|
21
|
+
code: "auth-required",
|
|
22
|
+
target: namespace,
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
},
|
|
26
|
+
};
|
|
27
|
+
},
|
|
28
|
+
});
|
|
29
|
+
//# sourceMappingURL=auth-required.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth-required.js","sourceRoot":"","sources":["../../../src/rules/auth-required.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAErE,MAAM,CAAC,MAAM,gBAAgB,GAAG,UAAU,CAAC;IACzC,IAAI,EAAE,eAAe;IACrB,MAAM,CAAC,EAAE,OAAO,EAAE;QAChB,OAAO;YACL,SAAS,EAAE,CAAC,SAAoB,EAAE,EAAE;gBAClC,IAAI,kBAAkB,CAAC,OAAO,EAAE,SAAS,CAAC;oBAAE,OAAO;gBACnD,IAAI,CAAC,mBAAmB,CAAC,OAAO,EAAE,SAAS,CAAC;oBAAE,OAAO;gBAErD,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;gBAC/C,IAAI,CAAC,OAAO;oBAAE,OAAO;gBAErB,MAAM,IAAI,GAAG,iBAAiB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;gBACnD,IAAI,CAAC,IAAI,EAAE;oBACT,gBAAgB,CAAC,OAAO,EAAE;wBACxB,IAAI,EAAE,eAAe;wBACrB,MAAM,EAAE,SAAS;qBAClB,CAAC,CAAC;iBACJ;YACH,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"no-error-status-codes.d.ts","sourceRoot":"","sources":["../../../src/rules/no-error-status-codes.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,sBAAsB,mCAuBjC,CAAC"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { ignoreDiagnostics } from "@typespec/compiler";
|
|
2
|
+
import { getHttpOperation } from "@typespec/http";
|
|
3
|
+
import { createRule } from "@typespec/lint";
|
|
4
|
+
import { reportDiagnostic } from "../lib.js";
|
|
5
|
+
import { isAzureSubNamespace, isExcludedCoreType } from "./utils.js";
|
|
6
|
+
export const noErrorStatusCodesRule = createRule({
|
|
7
|
+
name: "no-error-status-codes",
|
|
8
|
+
create({ program }) {
|
|
9
|
+
return {
|
|
10
|
+
operation: (operation) => {
|
|
11
|
+
if (isExcludedCoreType(program, operation))
|
|
12
|
+
return;
|
|
13
|
+
if (!isAzureSubNamespace(program, operation.namespace))
|
|
14
|
+
return;
|
|
15
|
+
const httpOperation = ignoreDiagnostics(getHttpOperation(program, operation));
|
|
16
|
+
if (httpOperation.responses !== undefined) {
|
|
17
|
+
for (const response of httpOperation.responses) {
|
|
18
|
+
const statusCode = parseInt(response.statusCode);
|
|
19
|
+
if (statusCode >= 400 && statusCode < 600) {
|
|
20
|
+
reportDiagnostic(program, {
|
|
21
|
+
code: "no-error-status-codes",
|
|
22
|
+
target: operation,
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
},
|
|
28
|
+
};
|
|
29
|
+
},
|
|
30
|
+
});
|
|
31
|
+
//# sourceMappingURL=no-error-status-codes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"no-error-status-codes.js","sourceRoot":"","sources":["../../../src/rules/no-error-status-codes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAa,MAAM,oBAAoB,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAErE,MAAM,CAAC,MAAM,sBAAsB,GAAG,UAAU,CAAC;IAC/C,IAAI,EAAE,uBAAuB;IAC7B,MAAM,CAAC,EAAE,OAAO,EAAE;QAChB,OAAO;YACL,SAAS,EAAE,CAAC,SAAoB,EAAE,EAAE;gBAClC,IAAI,kBAAkB,CAAC,OAAO,EAAE,SAAS,CAAC;oBAAE,OAAO;gBACnD,IAAI,CAAC,mBAAmB,CAAC,OAAO,EAAE,SAAS,CAAC,SAAS,CAAC;oBAAE,OAAO;gBAE/D,MAAM,aAAa,GAAG,iBAAiB,CAAC,gBAAgB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC;gBAC9E,IAAI,aAAa,CAAC,SAAS,KAAK,SAAS,EAAE;oBACzC,KAAK,MAAM,QAAQ,IAAI,aAAa,CAAC,SAAS,EAAE;wBAC9C,MAAM,UAAU,GAAG,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;wBACjD,IAAI,UAAU,IAAI,GAAG,IAAI,UAAU,GAAG,GAAG,EAAE;4BACzC,gBAAgB,CAAC,OAAO,EAAE;gCACxB,IAAI,EAAE,uBAAuB;gCAC7B,MAAM,EAAE,SAAS;6BAClB,CAAC,CAAC;yBACJ;qBACF;iBACF;YACH,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"no-response-body.d.ts","sourceRoot":"","sources":["../../../src/rules/no-response-body.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,kBAAkB,mCA8B7B,CAAC"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { getResponsesForOperation } from "@typespec/http";
|
|
2
|
+
import { createRule } from "@typespec/lint";
|
|
3
|
+
import { reportDiagnostic } from "../lib.js";
|
|
4
|
+
import { isAzureSubNamespace, isTemplatedInterfaceOperation } from "./utils.js";
|
|
5
|
+
export const noResponseBodyRule = createRule({
|
|
6
|
+
name: "no-response-body",
|
|
7
|
+
create({ program }) {
|
|
8
|
+
return {
|
|
9
|
+
operation: (op) => {
|
|
10
|
+
if (isTemplatedInterfaceOperation(op))
|
|
11
|
+
return;
|
|
12
|
+
if (!isAzureSubNamespace(program, op.namespace))
|
|
13
|
+
return;
|
|
14
|
+
const responses = getResponsesForOperation(program, op)[0].find((v) => v.statusCode !== "204");
|
|
15
|
+
if (responses && !responses.responses.every((v) => v.body)) {
|
|
16
|
+
reportDiagnostic(program, {
|
|
17
|
+
code: "no-response-body",
|
|
18
|
+
target: op,
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
const responses204 = getResponsesForOperation(program, op)[0].find((v) => v.statusCode === "204");
|
|
22
|
+
if (responses204 && responses204.responses.some((v) => v.body)) {
|
|
23
|
+
reportDiagnostic(program, {
|
|
24
|
+
code: "no-response-body",
|
|
25
|
+
target: op,
|
|
26
|
+
messageId: "response204",
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
},
|
|
30
|
+
};
|
|
31
|
+
},
|
|
32
|
+
});
|
|
33
|
+
//# sourceMappingURL=no-response-body.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"no-response-body.js","sourceRoot":"","sources":["../../../src/rules/no-response-body.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,mBAAmB,EAAE,6BAA6B,EAAE,MAAM,YAAY,CAAC;AAEhF,MAAM,CAAC,MAAM,kBAAkB,GAAG,UAAU,CAAC;IAC3C,IAAI,EAAE,kBAAkB;IACxB,MAAM,CAAC,EAAE,OAAO,EAAE;QAChB,OAAO;YACL,SAAS,EAAE,CAAC,EAAa,EAAE,EAAE;gBAC3B,IAAI,6BAA6B,CAAC,EAAE,CAAC;oBAAE,OAAO;gBAC9C,IAAI,CAAC,mBAAmB,CAAC,OAAO,EAAE,EAAE,CAAC,SAAS,CAAC;oBAAE,OAAO;gBAExD,MAAM,SAAS,GAAG,wBAAwB,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAC7D,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,KAAK,KAAK,CAC9B,CAAC;gBACF,IAAI,SAAS,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE;oBAC1D,gBAAgB,CAAC,OAAO,EAAE;wBACxB,IAAI,EAAE,kBAAkB;wBACxB,MAAM,EAAE,EAAE;qBACX,CAAC,CAAC;iBACJ;gBACD,MAAM,YAAY,GAAG,wBAAwB,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAChE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,KAAK,KAAK,CAC9B,CAAC;gBACF,IAAI,YAAY,IAAI,YAAY,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE;oBAC9D,gBAAgB,CAAC,OAAO,EAAE;wBACxB,IAAI,EAAE,kBAAkB;wBACxB,MAAM,EAAE,EAAE;wBACV,SAAS,EAAE,aAAa;qBACzB,CAAC,CAAC;iBACJ;YACH,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rpc-operation-request-body.d.ts","sourceRoot":"","sources":["../../../src/rules/rpc-operation-request-body.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,2BAA2B,mCA4BtC,CAAC"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { getTypeName } from "@typespec/compiler";
|
|
2
|
+
import { getHttpOperation } from "@typespec/http";
|
|
3
|
+
import { createRule } from "@typespec/lint";
|
|
4
|
+
import { reportDiagnostic } from "../lib.js";
|
|
5
|
+
import { isAzureSubNamespace, isExcludedCoreType } from "./utils.js";
|
|
6
|
+
export const rpcOperationRequestBodyRule = createRule({
|
|
7
|
+
name: "rpc-operation-request-body",
|
|
8
|
+
create({ program }) {
|
|
9
|
+
return {
|
|
10
|
+
operation: (operation) => {
|
|
11
|
+
if (isExcludedCoreType(program, operation))
|
|
12
|
+
return;
|
|
13
|
+
if (operation.node.templateParameters.length !== 0)
|
|
14
|
+
return;
|
|
15
|
+
if (!isAzureSubNamespace(program, operation.namespace))
|
|
16
|
+
return;
|
|
17
|
+
const originalOperation = operation;
|
|
18
|
+
while (operation.sourceOperation) {
|
|
19
|
+
operation = operation.sourceOperation;
|
|
20
|
+
if (/^Azure\.Core\..*RpcOperation$/.test(getTypeName(operation))) {
|
|
21
|
+
const httpOperation = getHttpOperation(program, originalOperation)[0];
|
|
22
|
+
const verb = httpOperation.verb.toLowerCase();
|
|
23
|
+
if (verb === "get" || verb === "delete") {
|
|
24
|
+
reportDiagnostic(program, {
|
|
25
|
+
code: "rpc-operation-request-body",
|
|
26
|
+
target: originalOperation,
|
|
27
|
+
messageId: "noBodyAllowed",
|
|
28
|
+
format: { verb: verb },
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
},
|
|
34
|
+
};
|
|
35
|
+
},
|
|
36
|
+
});
|
|
37
|
+
//# sourceMappingURL=rpc-operation-request-body.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rpc-operation-request-body.js","sourceRoot":"","sources":["../../../src/rules/rpc-operation-request-body.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAErE,MAAM,CAAC,MAAM,2BAA2B,GAAG,UAAU,CAAC;IACpD,IAAI,EAAE,4BAA4B;IAClC,MAAM,CAAC,EAAE,OAAO,EAAE;QAChB,OAAO;YACL,SAAS,EAAE,CAAC,SAAoB,EAAE,EAAE;gBAClC,IAAI,kBAAkB,CAAC,OAAO,EAAE,SAAS,CAAC;oBAAE,OAAO;gBACnD,IAAI,SAAS,CAAC,IAAI,CAAC,kBAAkB,CAAC,MAAM,KAAK,CAAC;oBAAE,OAAO;gBAC3D,IAAI,CAAC,mBAAmB,CAAC,OAAO,EAAE,SAAS,CAAC,SAAS,CAAC;oBAAE,OAAO;gBAE/D,MAAM,iBAAiB,GAAG,SAAS,CAAC;gBACpC,OAAO,SAAS,CAAC,eAAe,EAAE;oBAChC,SAAS,GAAG,SAAS,CAAC,eAAe,CAAC;oBACtC,IAAI,+BAA+B,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,EAAE;wBAChE,MAAM,aAAa,GAAG,gBAAgB,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC;wBACtE,MAAM,IAAI,GAAG,aAAa,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;wBAC9C,IAAI,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,QAAQ,EAAE;4BACvC,gBAAgB,CAAC,OAAO,EAAE;gCACxB,IAAI,EAAE,4BAA4B;gCAClC,MAAM,EAAE,iBAAiB;gCACzB,SAAS,EAAE,eAAe;gCAC1B,MAAM,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE;6BACvB,CAAC,CAAC;yBACJ;qBACF;iBACF;YACH,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-standard-names.d.ts","sourceRoot":"","sources":["../../../src/rules/use-standard-names.ts"],"names":[],"mappings":"AAkCA,eAAO,MAAM,gBAAgB,
|
|
1
|
+
{"version":3,"file":"use-standard-names.d.ts","sourceRoot":"","sources":["../../../src/rules/use-standard-names.ts"],"names":[],"mappings":"AAkCA,eAAO,MAAM,gBAAgB,mCA0E3B,CAAC"}
|
|
@@ -4,7 +4,7 @@ import { createRule } from "@typespec/lint";
|
|
|
4
4
|
import { isListOperation } from "@typespec/rest";
|
|
5
5
|
import { getPagedResult } from "../decorators.js";
|
|
6
6
|
import { reportDiagnostic } from "../lib.js";
|
|
7
|
-
import { isExcludedCoreType } from "./utils.js";
|
|
7
|
+
import { isAzureSubNamespace, isExcludedCoreType } from "./utils.js";
|
|
8
8
|
function isArmProviderNamespace(ns) {
|
|
9
9
|
if (!ns)
|
|
10
10
|
return false;
|
|
@@ -38,6 +38,8 @@ export const useStandardNames = createRule({
|
|
|
38
38
|
return;
|
|
39
39
|
if (isExcludedCoreType(program, op))
|
|
40
40
|
return;
|
|
41
|
+
if (!isAzureSubNamespace(program, op.namespace))
|
|
42
|
+
return;
|
|
41
43
|
const httpOp = ignoreDiagnostics(getHttpOperation(program, op));
|
|
42
44
|
const verb = httpOp.verb;
|
|
43
45
|
const name = op.name;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-standard-names.js","sourceRoot":"","sources":["../../../src/rules/use-standard-names.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EAEjB,+BAA+B,GAGhC,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"use-standard-names.js","sourceRoot":"","sources":["../../../src/rules/use-standard-names.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,6 +14,7 @@ export declare function getNamespaceName(program: Program, type: DeclarableType
|
|
|
14
14
|
* @returns true if the type is defined in a namespace that is excluded from linting.
|
|
15
15
|
*/
|
|
16
16
|
export declare function isExcludedCoreType(program: Program, type: DeclarableType): boolean;
|
|
17
|
+
export declare function isAzureSubNamespace(program: Program, ns: Namespace | undefined): boolean;
|
|
17
18
|
/**
|
|
18
19
|
* Returns true if the model type is inline (has no name).
|
|
19
20
|
* @param target the target model
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/rules/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EACJ,UAAU,EAEV,SAAS,EAET,KAAK,EACL,aAAa,EACb,SAAS,EACT,SAAS,EACT,OAAO,EACP,MAAM,EAEN,KAAK,EACL,YAAY,EACb,MAAM,oBAAoB,CAAC;AAE5B,KAAK,cAAc,GACf,SAAS,GACT,KAAK,GACL,aAAa,GACb,IAAI,GACJ,UAAU,GACV,KAAK,GACL,YAAY,GACZ,MAAM,GACN,SAAS,GACT,SAAS,CAAC;AAEd;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,cAAc,GAAG,SAAS,GAAG,MAAM,CAW3F;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,cAAc,GAAG,OAAO,CAclF;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,KAAK,WAE1C;AAED;;;;GAIG;AACH,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,KAAK,kBAEtD;AAED;;;;GAIG;AACH,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,SAAS,uBAM9D;AAED;;;;GAIG;AACH,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,SAAS,WAE9D;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAG5D;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAG3D;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,KAAK,GAAG,MAAM,GAAG,SAAS,GAAG,aAAa,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,GACtF,OAAO,CAET"}
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/rules/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EACJ,UAAU,EAEV,SAAS,EAET,KAAK,EACL,aAAa,EACb,SAAS,EACT,SAAS,EACT,OAAO,EACP,MAAM,EAEN,KAAK,EACL,YAAY,EACb,MAAM,oBAAoB,CAAC;AAE5B,KAAK,cAAc,GACf,SAAS,GACT,KAAK,GACL,aAAa,GACb,IAAI,GACJ,UAAU,GACV,KAAK,GACL,YAAY,GACZ,MAAM,GACN,SAAS,GACT,SAAS,CAAC;AAEd;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,cAAc,GAAG,SAAS,GAAG,MAAM,CAW3F;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,cAAc,GAAG,OAAO,CAclF;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,SAAS,GAAG,SAAS,GAAG,OAAO,CAIxF;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,KAAK,WAE1C;AAED;;;;GAIG;AACH,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,KAAK,kBAEtD;AAED;;;;GAIG;AACH,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,SAAS,uBAM9D;AAED;;;;GAIG;AACH,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,SAAS,WAE9D;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAG5D;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAG3D;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,KAAK,GAAG,MAAM,GAAG,SAAS,GAAG,aAAa,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,GACtF,OAAO,CAET"}
|
package/dist/src/rules/utils.js
CHANGED
|
@@ -43,6 +43,12 @@ export function isExcludedCoreType(program, type) {
|
|
|
43
43
|
const allowedNamespaces = ["TypeSpec", "Azure.Core", "Azure.ResourceManager", "OpenAPI"];
|
|
44
44
|
return allowedNamespaces.find((allowed) => nsName.startsWith(allowed)) !== undefined;
|
|
45
45
|
}
|
|
46
|
+
export function isAzureSubNamespace(program, ns) {
|
|
47
|
+
if (!ns)
|
|
48
|
+
return false;
|
|
49
|
+
const nsName = getNamespaceName(program, ns);
|
|
50
|
+
return nsName.startsWith("Azure.");
|
|
51
|
+
}
|
|
46
52
|
/**
|
|
47
53
|
* Returns true if the model type is inline (has no name).
|
|
48
54
|
* @param target the target model
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/rules/utils.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/rules/utils.ts"],"names":[],"mappings":"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"}
|
package/lib/auth.tsp
ADDED
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import "@typespec/http";
|
|
2
|
+
import "@typespec/rest";
|
|
3
|
+
import "@typespec/versioning";
|
|
4
|
+
import "./traits.tsp";
|
|
5
|
+
|
|
6
|
+
using TypeSpec.Http;
|
|
7
|
+
using TypeSpec.Rest;
|
|
8
|
+
using TypeSpec.Versioning;
|
|
9
|
+
using Azure.Core.Traits;
|
|
10
|
+
using Azure.Core.Traits.Private;
|
|
11
|
+
|
|
12
|
+
namespace Azure.Core;
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Azure Active Directory (AAD) Token Authentication Flow
|
|
16
|
+
* @template AuthUrl The authorization URL.
|
|
17
|
+
* @template TokenUrl The token URL.
|
|
18
|
+
* @template Scopes A list of scopes the token applies to.
|
|
19
|
+
*/
|
|
20
|
+
model AadTokenAuthFlow<Scopes extends string[], AuthUrl extends string, TokenUrl extends string>
|
|
21
|
+
extends TypeSpec.Http.AuthorizationCodeFlow {
|
|
22
|
+
type: OAuth2FlowType.authorizationCode;
|
|
23
|
+
authorizationUrl: AuthUrl;
|
|
24
|
+
tokenUrl: TokenUrl;
|
|
25
|
+
scopes: Scopes;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* Azure Active Directory OAuth2 Flow
|
|
30
|
+
* @template AuthUrl The authorization URL.
|
|
31
|
+
* @template TokenUrl The token URL.
|
|
32
|
+
* @template Scopes A list of scopes the token applies to.
|
|
33
|
+
*/
|
|
34
|
+
@doc("The Azure Active Directory OAuth2 Flow")
|
|
35
|
+
model AadOauth2Auth<
|
|
36
|
+
Scopes extends string[],
|
|
37
|
+
AuthUrl extends string = "https://login.microsoftonline.com/common/oauth2/authorize",
|
|
38
|
+
TokenUrl extends string = "https://login.microsoftonline.com/common/oauth2/token"
|
|
39
|
+
> is OAuth2Auth<[AadTokenAuthFlow<Scopes, AuthUrl, TokenUrl>]>;
|
|
40
|
+
|
|
41
|
+
/**
|
|
42
|
+
* Azure API Key Authentication using the "Ocp-Apim-Subscription-Key" hea
|
|
43
|
+
*/
|
|
44
|
+
@doc("Azure API Key Authentication")
|
|
45
|
+
model AzureApiKeyAuthentication
|
|
46
|
+
is TypeSpec.Http.ApiKeyAuth<ApiKeyLocation.header, "Ocp-Apim-Subscription-Key">;
|
package/lib/azure-core.tsp
CHANGED
package/lib/decorators.tsp
CHANGED
|
@@ -142,9 +142,20 @@ namespace Azure {
|
|
|
142
142
|
|
|
143
143
|
/**
|
|
144
144
|
* Checks the TResource parameter of an operation signature to ensure it's a valid resource type.
|
|
145
|
-
* @param resourceType The possible resource Type to validate.
|
|
146
145
|
*/
|
|
147
146
|
extern dec needsRoute(entity: TypeSpec.Reflection.Operation);
|
|
147
|
+
|
|
148
|
+
/**
|
|
149
|
+
* Issues a warning if an operation which derives from an operation templated marked with `@ensureVerb`
|
|
150
|
+
* differs from the verb specified.
|
|
151
|
+
* @param templateName: Name of the template operation.
|
|
152
|
+
* @param verb The intended HTTP verb.
|
|
153
|
+
*/
|
|
154
|
+
extern dec ensureVerb(
|
|
155
|
+
entity: TypeSpec.Reflection.Operation,
|
|
156
|
+
templateName: valueof string,
|
|
157
|
+
verb: valueof string
|
|
158
|
+
);
|
|
148
159
|
}
|
|
149
160
|
}
|
|
150
161
|
}
|
package/lib/models.tsp
CHANGED
|
@@ -39,7 +39,7 @@ model RequestParameter<T extends valueof string> {}
|
|
|
39
39
|
model ResponseProperty<T extends valueof string> {}
|
|
40
40
|
|
|
41
41
|
/**
|
|
42
|
-
* Provides the status of a resource operation.
|
|
42
|
+
* @dev Provides the status of a resource operation.
|
|
43
43
|
* @template TResource The resource type.
|
|
44
44
|
* @template TStatusResult Model describing the status result object. If not specified, the default is the resource type.
|
|
45
45
|
* @template TStatusError Model describing the status error object. If not specified, the default is the Foundations.Error.
|
package/lib/operations.tsp
CHANGED
|
@@ -94,6 +94,7 @@ interface ResourceOperations<
|
|
|
94
94
|
* @template TResource Resource type.
|
|
95
95
|
* @template Traits Object describing the traits of the operation.
|
|
96
96
|
*/
|
|
97
|
+
@Foundations.Private.ensureVerb("ResourceCreateOrReplace", "PUT")
|
|
97
98
|
@createsOrReplacesResource(TResource)
|
|
98
99
|
ResourceCreateOrReplace<
|
|
99
100
|
TResource extends TypeSpec.Reflection.Model,
|
|
@@ -121,6 +122,7 @@ interface ResourceOperations<
|
|
|
121
122
|
* @template TResource Resource type.
|
|
122
123
|
* @template Traits Object describing the traits of the operation.
|
|
123
124
|
*/
|
|
125
|
+
@Foundations.Private.ensureVerb("LongRunningResourceCreateOrReplace", "PUT")
|
|
124
126
|
@createsOrReplacesResource(TResource)
|
|
125
127
|
LongRunningResourceCreateOrReplace<
|
|
126
128
|
TResource extends TypeSpec.Reflection.Model,
|
|
@@ -149,6 +151,7 @@ interface ResourceOperations<
|
|
|
149
151
|
* @template TResource Resource type.
|
|
150
152
|
* @template Traits Object describing the traits of the operation.
|
|
151
153
|
*/
|
|
154
|
+
@Foundations.Private.ensureVerb("ResourceCreateOrUpdate", "PATCH")
|
|
152
155
|
@createsOrUpdatesResource(TResource)
|
|
153
156
|
ResourceCreateOrUpdate<
|
|
154
157
|
TResource extends TypeSpec.Reflection.Model,
|
|
@@ -182,6 +185,7 @@ interface ResourceOperations<
|
|
|
182
185
|
* @template TResource Resource type.
|
|
183
186
|
* @template Traits Object describing the traits of the operation.
|
|
184
187
|
*/
|
|
188
|
+
@Foundations.Private.ensureVerb("LongRunningResourceCreateOrUpdate", "PATCH")
|
|
185
189
|
@createsOrUpdatesResource(TResource)
|
|
186
190
|
LongRunningResourceCreateOrUpdate<
|
|
187
191
|
TResource extends TypeSpec.Reflection.Model,
|
|
@@ -216,6 +220,7 @@ interface ResourceOperations<
|
|
|
216
220
|
* @template TResource Resource type.
|
|
217
221
|
* @template Traits Object describing the traits of the operation.
|
|
218
222
|
*/
|
|
223
|
+
@Foundations.Private.ensureVerb("ResourceUpdate", "PATCH")
|
|
219
224
|
@updatesResource(TResource)
|
|
220
225
|
ResourceUpdate<
|
|
221
226
|
TResource extends TypeSpec.Reflection.Model,
|
|
@@ -242,6 +247,7 @@ interface ResourceOperations<
|
|
|
242
247
|
* @template Traits Object describing the traits of the operation.
|
|
243
248
|
*/
|
|
244
249
|
#suppress "@azure-tools/typespec-providerhub/no-inline-model" "This operation signature is not used in Azure Resource Manager operations (yet)"
|
|
250
|
+
@Foundations.Private.ensureVerb("ResourceCreateWithServiceProvidedName", "POST")
|
|
245
251
|
@createsResource(TResource)
|
|
246
252
|
ResourceCreateWithServiceProvidedName<
|
|
247
253
|
TResource extends TypeSpec.Reflection.Model,
|
|
@@ -262,6 +268,7 @@ interface ResourceOperations<
|
|
|
262
268
|
* @template Traits Object describing the traits of the operation.
|
|
263
269
|
*/
|
|
264
270
|
#suppress "@azure-tools/typespec-providerhub/no-inline-model" "This operation signature is not used in Azure Resource Manager operations (yet)"
|
|
271
|
+
@Foundations.Private.ensureVerb("LongRunningResourceCreateWithServiceProvidedName", "POST")
|
|
265
272
|
@createsResource(TResource)
|
|
266
273
|
LongRunningResourceCreateWithServiceProvidedName<
|
|
267
274
|
TResource extends TypeSpec.Reflection.Model,
|
|
@@ -281,6 +288,7 @@ interface ResourceOperations<
|
|
|
281
288
|
* @template TResource Resource type.
|
|
282
289
|
* @template Traits Object describing the traits of the operation.
|
|
283
290
|
*/
|
|
291
|
+
@Foundations.Private.ensureVerb("ResourceRead", "GET")
|
|
284
292
|
@readsResource(TResource)
|
|
285
293
|
ResourceRead<
|
|
286
294
|
TResource extends TypeSpec.Reflection.Model,
|
|
@@ -300,6 +308,7 @@ interface ResourceOperations<
|
|
|
300
308
|
* @template Traits Object describing the traits of the operation.
|
|
301
309
|
*/
|
|
302
310
|
#suppress "@azure-tools/typespec-providerhub/no-inline-model" "This operation signature is not used in Azure Resource Manager operations (yet)"
|
|
311
|
+
@Foundations.Private.ensureVerb("ResourceDelete", "DELETE")
|
|
303
312
|
@deletesResource(TResource)
|
|
304
313
|
ResourceDelete<
|
|
305
314
|
TResource extends TypeSpec.Reflection.Model,
|
|
@@ -319,6 +328,7 @@ interface ResourceOperations<
|
|
|
319
328
|
* @template Traits Object describing the traits of the operation.
|
|
320
329
|
*/
|
|
321
330
|
#suppress "@azure-tools/typespec-azure-resource-manager/no-response-body" "We do support bodies in data plane service APIs..."
|
|
331
|
+
@Foundations.Private.ensureVerb("LongRunningResourceDelete", "DELETE")
|
|
322
332
|
@deletesResource(TResource)
|
|
323
333
|
LongRunningResourceDelete<
|
|
324
334
|
TResource extends TypeSpec.Reflection.Model,
|
|
@@ -338,6 +348,7 @@ interface ResourceOperations<
|
|
|
338
348
|
* @template TResource Resource type.
|
|
339
349
|
* @template Traits Object describing the traits of the operation.
|
|
340
350
|
*/
|
|
351
|
+
@Foundations.Private.ensureVerb("ResourceList", "GET")
|
|
341
352
|
ResourceList<
|
|
342
353
|
TResource extends TypeSpec.Reflection.Model,
|
|
343
354
|
Traits extends TypeSpec.Reflection.Model = {}
|
|
@@ -356,6 +367,7 @@ interface ResourceOperations<
|
|
|
356
367
|
* @template TResponse Object describing the response of the operation.
|
|
357
368
|
* @template Traits Object describing the traits of the operation.
|
|
358
369
|
*/
|
|
370
|
+
@Foundations.Private.ensureVerb("ResourceAction", "POST")
|
|
359
371
|
@action
|
|
360
372
|
@actionSeparator(":")
|
|
361
373
|
ResourceAction<
|
|
@@ -380,6 +392,7 @@ interface ResourceOperations<
|
|
|
380
392
|
* @template TResponse Object describing the response of the operation.
|
|
381
393
|
* @template Traits Object describing the traits of the operation.
|
|
382
394
|
*/
|
|
395
|
+
@Foundations.Private.ensureVerb("ResourceCollectionAction", "POST")
|
|
383
396
|
@collectionAction(TResource)
|
|
384
397
|
@actionSeparator(":")
|
|
385
398
|
ResourceCollectionAction<
|
|
@@ -407,6 +420,7 @@ interface ResourceOperations<
|
|
|
407
420
|
*/
|
|
408
421
|
#suppress "@azure-tools/typespec-providerhub/no-inline-model" "This operation signature is not used in Azure Resource Manager operations (yet)"
|
|
409
422
|
#suppress "@azure-tools/typespec-azure-resource-manager/no-response-body" "This operation must return a status monitor in its response."
|
|
423
|
+
@Foundations.Private.ensureVerb("LongRunningResourceAction", "POST")
|
|
410
424
|
@action
|
|
411
425
|
@actionSeparator(":")
|
|
412
426
|
LongRunningResourceAction<
|
|
@@ -437,6 +451,7 @@ interface ResourceOperations<
|
|
|
437
451
|
*/
|
|
438
452
|
#suppress "@azure-tools/typespec-providerhub/no-inline-model" "This operation signature is not used in Azure Resource Manager operations (yet)"
|
|
439
453
|
#suppress "@azure-tools/typespec-azure-resource-manager/no-response-body" "This operation must return a status monitor in its response."
|
|
454
|
+
@Foundations.Private.ensureVerb("LongRunningResourceCollectionAction", "POST")
|
|
440
455
|
@autoRoute
|
|
441
456
|
@collectionAction(TResource)
|
|
442
457
|
@actionSeparator(":")
|
|
@@ -465,6 +480,7 @@ interface ResourceOperations<
|
|
|
465
480
|
* @template TStatusError Object describing the status error of the operation.
|
|
466
481
|
* @template Traits Object describing the traits of the operation.
|
|
467
482
|
*/
|
|
483
|
+
@Foundations.Private.ensureVerb("GetResourceOperationStatus", "GET")
|
|
468
484
|
@readsResource(ResourceOperationStatus<TResource>)
|
|
469
485
|
@Foundations.Private.ensureResourceType(TResource)
|
|
470
486
|
GetResourceOperationStatus<
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@azure-tools/typespec-azure-core",
|
|
3
|
-
"version": "0.32.0
|
|
3
|
+
"version": "0.32.0",
|
|
4
4
|
"author": "Microsoft Corporation",
|
|
5
5
|
"description": "TypeSpec Azure Core library",
|
|
6
6
|
"homepage": "https://azure.github.io/typespec-azure",
|
|
@@ -42,22 +42,22 @@
|
|
|
42
42
|
"!dist/test/**"
|
|
43
43
|
],
|
|
44
44
|
"peerDependencies": {
|
|
45
|
-
"@typespec/compiler": "~0.
|
|
46
|
-
"@typespec/http": "~0.
|
|
47
|
-
"@typespec/rest": "~0.
|
|
45
|
+
"@typespec/compiler": "~0.46.0",
|
|
46
|
+
"@typespec/http": "~0.46.0",
|
|
47
|
+
"@typespec/rest": "~0.46.0"
|
|
48
48
|
},
|
|
49
49
|
"dependencies": {
|
|
50
|
-
"@typespec/lint": "~0.
|
|
50
|
+
"@typespec/lint": "~0.46.0"
|
|
51
51
|
},
|
|
52
52
|
"devDependencies": {
|
|
53
|
-
"@typespec/compiler": "~0.
|
|
54
|
-
"@typespec/http": "~0.
|
|
55
|
-
"@typespec/rest": "~0.
|
|
56
|
-
"@typespec/eslint-config-typespec": "~0.
|
|
57
|
-
"@typespec/library-linter": "~0.
|
|
58
|
-
"@typespec/eslint-plugin": "~0.
|
|
59
|
-
"@typespec/openapi": "~0.
|
|
60
|
-
"@typespec/versioning": "~0.
|
|
53
|
+
"@typespec/compiler": "~0.46.0",
|
|
54
|
+
"@typespec/http": "~0.46.0",
|
|
55
|
+
"@typespec/rest": "~0.46.0",
|
|
56
|
+
"@typespec/eslint-config-typespec": "~0.46.0",
|
|
57
|
+
"@typespec/library-linter": "~0.46.0",
|
|
58
|
+
"@typespec/eslint-plugin": "~0.46.0",
|
|
59
|
+
"@typespec/openapi": "~0.46.0",
|
|
60
|
+
"@typespec/versioning": "~0.46.0",
|
|
61
61
|
"@types/mocha": "~10.0.1",
|
|
62
62
|
"@types/node": "~18.11.9",
|
|
63
63
|
"eslint": "^8.42.0",
|