@microsoft/typespec-msgraph 0.0.1-Preview.25 → 0.0.1-Preview.27
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/components/common-elements.d.ts +6 -6
- package/dist/src/components/common-elements.d.ts.map +1 -1
- package/dist/src/components/open-property-type-constraint-annotation-element.js.map +1 -1
- package/dist/src/components/operation-element.d.ts.map +1 -1
- package/dist/src/components/operation-element.js +9 -7
- package/dist/src/components/operation-element.js.map +1 -1
- package/dist/src/components/structured-type-element.d.ts.map +1 -1
- package/dist/src/components/structured-type-element.js +3 -4
- package/dist/src/components/structured-type-element.js.map +1 -1
- package/dist/src/decorators/ags-attribute.d.ts.map +1 -1
- package/dist/src/decorators/ags-attribute.js +25 -12
- package/dist/src/decorators/ags-attribute.js.map +1 -1
- package/dist/src/decorators/entity.d.ts +1 -0
- package/dist/src/decorators/entity.d.ts.map +1 -1
- package/dist/src/decorators/entity.js +5 -1
- package/dist/src/decorators/entity.js.map +1 -1
- package/dist/src/decorators/index.d.ts +1 -0
- package/dist/src/decorators/index.d.ts.map +1 -1
- package/dist/src/decorators/index.js +1 -0
- package/dist/src/decorators/index.js.map +1 -1
- package/dist/src/decorators/shared-entity.d.ts +9 -0
- package/dist/src/decorators/shared-entity.d.ts.map +1 -0
- package/dist/src/decorators/shared-entity.js +15 -0
- package/dist/src/decorators/shared-entity.js.map +1 -0
- package/dist/src/dom/renderer.d.ts.map +1 -1
- package/dist/src/entities/annotations.js +1 -1
- package/dist/src/entities/annotations.js.map +1 -1
- package/dist/src/entities/model.d.ts.map +1 -1
- package/dist/src/entities/model.js +35 -36
- package/dist/src/entities/model.js.map +1 -1
- package/dist/src/entities/namespace.d.ts.map +1 -1
- package/dist/src/entities/namespace.js +6 -6
- package/dist/src/entities/namespace.js.map +1 -1
- package/dist/src/entities/operation.d.ts +2 -0
- package/dist/src/entities/operation.d.ts.map +1 -1
- package/dist/src/entities/operation.js +29 -5
- package/dist/src/entities/operation.js.map +1 -1
- package/dist/src/entities/property.d.ts.map +1 -1
- package/dist/src/entities/property.js +7 -0
- package/dist/src/entities/property.js.map +1 -1
- package/dist/src/lib.d.ts +24 -2
- package/dist/src/lib.d.ts.map +1 -1
- package/dist/src/lib.js +13 -2
- package/dist/src/lib.js.map +1 -1
- package/dist/src/linter.d.ts.map +1 -1
- package/dist/src/linter.js +2 -3
- package/dist/src/linter.js.map +1 -1
- package/dist/src/path-tree.js.map +1 -1
- package/dist/src/rules/address-url.d.ts.map +1 -1
- package/dist/src/rules/address-url.js +8 -6
- package/dist/src/rules/address-url.js.map +1 -1
- package/dist/src/rules/delta.d.ts.map +1 -1
- package/dist/src/rules/delta.js +7 -2
- package/dist/src/rules/delta.js.map +1 -1
- package/dist/src/rules/entity.d.ts.map +1 -1
- package/dist/src/rules/entity.js +9 -10
- package/dist/src/rules/entity.js.map +1 -1
- package/dist/src/rules/global-operation.d.ts.map +1 -1
- package/dist/src/rules/global-operation.js +3 -3
- package/dist/src/rules/global-operation.js.map +1 -1
- package/dist/src/rules/graph-route.d.ts +2 -0
- package/dist/src/rules/graph-route.d.ts.map +1 -1
- package/dist/src/rules/graph-route.js +72 -10
- package/dist/src/rules/graph-route.js.map +1 -1
- package/dist/src/rules/index.d.ts +9 -9
- package/dist/src/rules/index.d.ts.map +1 -1
- package/dist/src/rules/index.js +9 -9
- package/dist/src/rules/index.js.map +1 -1
- package/dist/src/rules/model.d.ts.map +1 -1
- package/dist/src/rules/model.js +2 -2
- package/dist/src/rules/model.js.map +1 -1
- package/dist/src/rules/operation-inside-interface.d.ts.map +1 -1
- package/dist/src/rules/operation-inside-interface.js +3 -3
- package/dist/src/rules/operation-inside-interface.js.map +1 -1
- package/dist/src/rules/ownerless.js.map +1 -1
- package/dist/src/rules/partial.d.ts +2 -0
- package/dist/src/rules/partial.d.ts.map +1 -1
- package/dist/src/rules/partial.js +40 -8
- package/dist/src/rules/partial.js.map +1 -1
- package/dist/src/rules/record-t.d.ts.map +1 -1
- package/dist/src/rules/record-t.js +12 -8
- package/dist/src/rules/record-t.js.map +1 -1
- package/dist/src/rules/reference-target.d.ts +1 -3
- package/dist/src/rules/reference-target.d.ts.map +1 -1
- package/dist/src/rules/reference-target.js +14 -18
- package/dist/src/rules/reference-target.js.map +1 -1
- package/dist/src/rules/shared-entity.d.ts +8 -0
- package/dist/src/rules/shared-entity.d.ts.map +1 -0
- package/dist/src/rules/shared-entity.js +176 -0
- package/dist/src/rules/shared-entity.js.map +1 -0
- package/dist/src/utils.d.ts +6 -0
- package/dist/src/utils.d.ts.map +1 -1
- package/dist/src/utils.js +56 -9
- package/dist/src/utils.js.map +1 -1
- package/dist/src/validate.d.ts.map +1 -1
- package/dist/src/validate.js +11 -0
- package/dist/src/validate.js.map +1 -1
- package/lib/decorators.tsp +30 -23
- package/package.json +17 -17
package/dist/src/lib.d.ts
CHANGED
|
@@ -17,6 +17,10 @@ export declare const reportDiagnostic: <C extends "decorator-missing-dependencie
|
|
|
17
17
|
readonly operationParameterMismatch: import("@typespec/compiler").CallableMessage<["operation", "parameters"]>;
|
|
18
18
|
readonly topLevelNamespaceMissingPublicNamespace: import("@typespec/compiler").CallableMessage<["namespace"]>;
|
|
19
19
|
readonly propertyMissingContainsOrReferences: import("@typespec/compiler").CallableMessage<["property", "entity"]>;
|
|
20
|
+
readonly singletonOrEntitysetHostingBindingsShouldExist: import("@typespec/compiler").CallableMessage<["firstSegment", "target"]>;
|
|
21
|
+
readonly sharedEntityNotFoundInReferenceLibrary: import("@typespec/compiler").CallableMessage<["model"]>;
|
|
22
|
+
readonly sharedEntityPropertyNotFoundInReferenceEntity: import("@typespec/compiler").CallableMessage<["property", "model"]>;
|
|
23
|
+
readonly sharedEntityMustBeSharedInSourceLibrary: import("@typespec/compiler").CallableMessage<["model"]>;
|
|
20
24
|
};
|
|
21
25
|
"decorator-invalid-use": {
|
|
22
26
|
readonly default: import("@typespec/compiler").CallableMessage<["decorator", "other", "location"]>;
|
|
@@ -62,13 +66,19 @@ export declare const reportDiagnostic: <C extends "decorator-missing-dependencie
|
|
|
62
66
|
readonly interfaceWithDeltaDefinitionMustIncludeAGetOperation: import("@typespec/compiler").CallableMessage<[]>;
|
|
63
67
|
readonly deltaFunctionReturnTypeMustBeCollectionOfEntityType: import("@typespec/compiler").CallableMessage<[]>;
|
|
64
68
|
readonly complexTypesAreNotAddressableThroughUniqueUrls: import("@typespec/compiler").CallableMessage<["complexType"]>;
|
|
65
|
-
readonly entityAndComplexAreMutuallyExclusive: import("@typespec/compiler").CallableMessage<["model"]>;
|
|
69
|
+
readonly entityAndComplexAreMutuallyExclusive: import("@typespec/compiler").CallableMessage<["decorator", "model"]>;
|
|
66
70
|
readonly filterPropertiesShouldBeSimple: import("@typespec/compiler").CallableMessage<["property", "model"]>;
|
|
67
71
|
readonly navigationPropertyShouldBeTargettedWithOneInterface: import("@typespec/compiler").CallableMessage<["models"]>;
|
|
68
72
|
readonly graphRouteMustMatchModelStructure: import("@typespec/compiler").CallableMessage<["graphRoute", "model"]>;
|
|
69
73
|
readonly overloadedFunctionReturnTypesMustBeSame: import("@typespec/compiler").CallableMessage<["returnTypes", "operation"]>;
|
|
70
74
|
readonly enumMemberUnknownFutureValueCannotHaveDocString: import("@typespec/compiler").CallableMessage<["member"]>;
|
|
71
75
|
readonly addressUrlsAreNotEqual: import("@typespec/compiler").CallableMessage<["decorator", "target"]>;
|
|
76
|
+
readonly partialDeclaringSignatureMustMatchReference: import("@typespec/compiler").CallableMessage<["target", "decorator"]>;
|
|
77
|
+
readonly openDecoratorCannotBeUsedWithPartial: import("@typespec/compiler").CallableMessage<[]>;
|
|
78
|
+
readonly interfaceWithGraphRouteTargetingFunctionMustTargetComposableFunction: import("@typespec/compiler").CallableMessage<[]>;
|
|
79
|
+
readonly graphRouteMustHaveMatchingGraphRoutesForEachSubPath: import("@typespec/compiler").CallableMessage<["subPath", "graphRoute"]>;
|
|
80
|
+
readonly sharedEntityCannotBePartial: import("@typespec/compiler").CallableMessage<["model"]>;
|
|
81
|
+
readonly sharedEntityCannotHaveOwner: import("@typespec/compiler").CallableMessage<["model"]>;
|
|
72
82
|
};
|
|
73
83
|
"singleton-invalid-name": {
|
|
74
84
|
readonly default: import("@typespec/compiler").CallableMessage<["value"]>;
|
|
@@ -84,6 +94,7 @@ export declare const reportDiagnostic: <C extends "decorator-missing-dependencie
|
|
|
84
94
|
readonly recordTypeCannotBeUsedInLine: import("@typespec/compiler").CallableMessage<["type"]>;
|
|
85
95
|
readonly interfaceWithPartialBindingType: import("@typespec/compiler").CallableMessage<["interface", "type"]>;
|
|
86
96
|
readonly propertyTypeCannotBeStringLiteral: import("@typespec/compiler").CallableMessage<["property", "type"]>;
|
|
97
|
+
readonly sharedEntityCannotCreateSingletonOrEntitySet: import("@typespec/compiler").CallableMessage<["type"]>;
|
|
87
98
|
};
|
|
88
99
|
}[C]>(program: import("@typespec/compiler").Program, diag: import("@typespec/compiler").DiagnosticReport<{
|
|
89
100
|
"decorator-missing-dependencies": {
|
|
@@ -99,6 +110,10 @@ export declare const reportDiagnostic: <C extends "decorator-missing-dependencie
|
|
|
99
110
|
readonly operationParameterMismatch: import("@typespec/compiler").CallableMessage<["operation", "parameters"]>;
|
|
100
111
|
readonly topLevelNamespaceMissingPublicNamespace: import("@typespec/compiler").CallableMessage<["namespace"]>;
|
|
101
112
|
readonly propertyMissingContainsOrReferences: import("@typespec/compiler").CallableMessage<["property", "entity"]>;
|
|
113
|
+
readonly singletonOrEntitysetHostingBindingsShouldExist: import("@typespec/compiler").CallableMessage<["firstSegment", "target"]>;
|
|
114
|
+
readonly sharedEntityNotFoundInReferenceLibrary: import("@typespec/compiler").CallableMessage<["model"]>;
|
|
115
|
+
readonly sharedEntityPropertyNotFoundInReferenceEntity: import("@typespec/compiler").CallableMessage<["property", "model"]>;
|
|
116
|
+
readonly sharedEntityMustBeSharedInSourceLibrary: import("@typespec/compiler").CallableMessage<["model"]>;
|
|
102
117
|
};
|
|
103
118
|
"decorator-invalid-use": {
|
|
104
119
|
readonly default: import("@typespec/compiler").CallableMessage<["decorator", "other", "location"]>;
|
|
@@ -144,13 +159,19 @@ export declare const reportDiagnostic: <C extends "decorator-missing-dependencie
|
|
|
144
159
|
readonly interfaceWithDeltaDefinitionMustIncludeAGetOperation: import("@typespec/compiler").CallableMessage<[]>;
|
|
145
160
|
readonly deltaFunctionReturnTypeMustBeCollectionOfEntityType: import("@typespec/compiler").CallableMessage<[]>;
|
|
146
161
|
readonly complexTypesAreNotAddressableThroughUniqueUrls: import("@typespec/compiler").CallableMessage<["complexType"]>;
|
|
147
|
-
readonly entityAndComplexAreMutuallyExclusive: import("@typespec/compiler").CallableMessage<["model"]>;
|
|
162
|
+
readonly entityAndComplexAreMutuallyExclusive: import("@typespec/compiler").CallableMessage<["decorator", "model"]>;
|
|
148
163
|
readonly filterPropertiesShouldBeSimple: import("@typespec/compiler").CallableMessage<["property", "model"]>;
|
|
149
164
|
readonly navigationPropertyShouldBeTargettedWithOneInterface: import("@typespec/compiler").CallableMessage<["models"]>;
|
|
150
165
|
readonly graphRouteMustMatchModelStructure: import("@typespec/compiler").CallableMessage<["graphRoute", "model"]>;
|
|
151
166
|
readonly overloadedFunctionReturnTypesMustBeSame: import("@typespec/compiler").CallableMessage<["returnTypes", "operation"]>;
|
|
152
167
|
readonly enumMemberUnknownFutureValueCannotHaveDocString: import("@typespec/compiler").CallableMessage<["member"]>;
|
|
153
168
|
readonly addressUrlsAreNotEqual: import("@typespec/compiler").CallableMessage<["decorator", "target"]>;
|
|
169
|
+
readonly partialDeclaringSignatureMustMatchReference: import("@typespec/compiler").CallableMessage<["target", "decorator"]>;
|
|
170
|
+
readonly openDecoratorCannotBeUsedWithPartial: import("@typespec/compiler").CallableMessage<[]>;
|
|
171
|
+
readonly interfaceWithGraphRouteTargetingFunctionMustTargetComposableFunction: import("@typespec/compiler").CallableMessage<[]>;
|
|
172
|
+
readonly graphRouteMustHaveMatchingGraphRoutesForEachSubPath: import("@typespec/compiler").CallableMessage<["subPath", "graphRoute"]>;
|
|
173
|
+
readonly sharedEntityCannotBePartial: import("@typespec/compiler").CallableMessage<["model"]>;
|
|
174
|
+
readonly sharedEntityCannotHaveOwner: import("@typespec/compiler").CallableMessage<["model"]>;
|
|
154
175
|
};
|
|
155
176
|
"singleton-invalid-name": {
|
|
156
177
|
readonly default: import("@typespec/compiler").CallableMessage<["value"]>;
|
|
@@ -166,6 +187,7 @@ export declare const reportDiagnostic: <C extends "decorator-missing-dependencie
|
|
|
166
187
|
readonly recordTypeCannotBeUsedInLine: import("@typespec/compiler").CallableMessage<["type"]>;
|
|
167
188
|
readonly interfaceWithPartialBindingType: import("@typespec/compiler").CallableMessage<["interface", "type"]>;
|
|
168
189
|
readonly propertyTypeCannotBeStringLiteral: import("@typespec/compiler").CallableMessage<["property", "type"]>;
|
|
190
|
+
readonly sharedEntityCannotCreateSingletonOrEntitySet: import("@typespec/compiler").CallableMessage<["type"]>;
|
|
169
191
|
};
|
|
170
192
|
}, C, M>) => void;
|
|
171
193
|
//# 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,YAAY,CAAC;AAEnC,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAeD,eAAO,MAAM,MAAM,2CAEjB,CAAC;AAEH,eAAO,MAAQ,gBAAgB
|
|
1
|
+
{"version":3,"file":"lib.d.ts","sourceRoot":"","sources":["../../src/lib.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,SAAS,YAAY,CAAC;AAEnC,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAeD,eAAO,MAAM,MAAM,2CAEjB,CAAC;AAEH,eAAO,MAAQ,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAmHpB,CAAC"}
|
package/dist/src/lib.js
CHANGED
|
@@ -36,6 +36,10 @@ export const { reportDiagnostic } = createTypeSpecLibrary({
|
|
|
36
36
|
operationParameterMismatch: paramMessage `The operation "${"operation"}" must declare the parameters "${"parameters"}", have a "graphRouteParams" parameter or use the porcelain syntax.`,
|
|
37
37
|
topLevelNamespaceMissingPublicNamespace: paramMessage `@publicNamespace decorator is required on namespace "${"namespace"}".`,
|
|
38
38
|
propertyMissingContainsOrReferences: paramMessage `The property "${"property"}" of type "${"entity"}" which is an entity must have @contains or @references.`,
|
|
39
|
+
singletonOrEntitysetHostingBindingsShouldExist: paramMessage `A singleton or entityset definition should exist to bind "${"firstSegment"}" to "${"target"}".`,
|
|
40
|
+
sharedEntityNotFoundInReferenceLibrary: paramMessage `The shared entity "${"model"}" does not exist in the reference library.`,
|
|
41
|
+
sharedEntityPropertyNotFoundInReferenceEntity: paramMessage `The property "${"property"}" in the shared entity "${"model"}" must also exist in the reference library entity.`,
|
|
42
|
+
sharedEntityMustBeSharedInSourceLibrary: paramMessage `The declared shared entity "${"model"}" must also be defined as a shared entity in the source library.`,
|
|
39
43
|
},
|
|
40
44
|
},
|
|
41
45
|
"decorator-invalid-use": {
|
|
@@ -84,13 +88,19 @@ export const { reportDiagnostic } = createTypeSpecLibrary({
|
|
|
84
88
|
interfaceWithDeltaDefinitionMustIncludeAGetOperation: paramMessage `Interfaces with @delta definition must include a get operation.`,
|
|
85
89
|
deltaFunctionReturnTypeMustBeCollectionOfEntityType: paramMessage `The return type of a @delta function must be a collection of entity type.`,
|
|
86
90
|
complexTypesAreNotAddressableThroughUniqueUrls: paramMessage `The complex type "${"complexType"}" cannot be addressed through unique URLs.`,
|
|
87
|
-
entityAndComplexAreMutuallyExclusive: paramMessage `The
|
|
91
|
+
entityAndComplexAreMutuallyExclusive: paramMessage `The ${"decorator"} and @complex decorators are mutually exclusive and cannot be used together on "${"model"}" model.`,
|
|
88
92
|
filterPropertiesShouldBeSimple: paramMessage `The property "${"property"}" defined in the @filter decorator must be a simple property in the model "${"model"}".`,
|
|
89
93
|
navigationPropertyShouldBeTargettedWithOneInterface: paramMessage `The navigation properties "${"models"}" should not be targetted by more than one interface with @delta. Please choose one interface for each navigation property.`,
|
|
90
94
|
graphRouteMustMatchModelStructure: paramMessage `The @graphRoute "${"graphRoute"}" must match a navigation path in the model "${"model"}".`,
|
|
91
95
|
overloadedFunctionReturnTypesMustBeSame: paramMessage `The return types "${"returnTypes"}" of the overloaded function "${"operation"}" must be identical.`,
|
|
92
96
|
enumMemberUnknownFutureValueCannotHaveDocString: paramMessage `Description is not allowed on "${"member"}" because it will be auto-generated.`,
|
|
93
97
|
addressUrlsAreNotEqual: paramMessage `The decorator values (string and booleans) of "${"decorator"}" applied to multiple interfaces that point to the same navigation property "${"target"}" must be identical.`,
|
|
98
|
+
partialDeclaringSignatureMustMatchReference: paramMessage `The declaring signature of the partial entity "${"target"}" must match the referenced entity's, with the same use of the ${"decorator"} decorator.`,
|
|
99
|
+
openDecoratorCannotBeUsedWithPartial: paramMessage `The @open decorator can only be specified in the the owning workload.`,
|
|
100
|
+
interfaceWithGraphRouteTargetingFunctionMustTargetComposableFunction: paramMessage `An interface with a @graphroute decorator targeting a function must target a composable function.`,
|
|
101
|
+
graphRouteMustHaveMatchingGraphRoutesForEachSubPath: paramMessage `Missing matching @graphRoute for subpath "${"subPath"}" of path "${"graphRoute"}".`,
|
|
102
|
+
sharedEntityCannotBePartial: paramMessage `The @sharedEntity and @partial decorators cannot be used together on "${"model"}" model.`,
|
|
103
|
+
sharedEntityCannotHaveOwner: paramMessage `The @sharedEntity decorator cannot be used with ownership decorator values set to true on "${"model"}" model.`,
|
|
94
104
|
},
|
|
95
105
|
},
|
|
96
106
|
"singleton-invalid-name": {
|
|
@@ -114,7 +124,8 @@ export const { reportDiagnostic } = createTypeSpecLibrary({
|
|
|
114
124
|
recordTypeCannotBeNull: paramMessage `The record type "${"type"}" cannot be null.`,
|
|
115
125
|
recordTypeCannotBeUsedInLine: paramMessage `Using inline record as type on ${"type"} is not supported. Create a complex entity to represent it.`,
|
|
116
126
|
interfaceWithPartialBindingType: paramMessage `The interface "${"interface"}" targets a partial or non-owned type "${"type"}" and as such cannot declare operations.`,
|
|
117
|
-
propertyTypeCannotBeStringLiteral: paramMessage `The type for "${"property"}" cannot be a ${"type"} literal
|
|
127
|
+
propertyTypeCannotBeStringLiteral: paramMessage `The type for "${"property"}" cannot be a ${"type"} literal.`,
|
|
128
|
+
sharedEntityCannotCreateSingletonOrEntitySet: paramMessage `The shared entity "${"type"}" cannot be the type of a routed interface that creates a Singleton or an EntitySet`,
|
|
118
129
|
}
|
|
119
130
|
}
|
|
120
131
|
},
|
package/dist/src/lib.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lib.js","sourceRoot":"","sources":["../../src/lib.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,qBAAqB,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAE7G,MAAM,CAAC,MAAM,SAAS,GAAG,SAAS,CAAC;AAMnC,MAAM,oBAAoB,GAA0C;IAClE,IAAI,EAAE,QAAQ;IACd,oBAAoB,EAAE,KAAK;IAC3B,UAAU,EAAE;QACV,QAAQ,EAAE;YACR,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,IAAI;YACd,WAAW,EAAE,wFAAwF;SACtG;KACF;IACD,QAAQ,EAAE,EAAE;CACb,CAAA;AAED,MAAM,CAAC,MAAM,MAAM,GAAG,kBAAkB,CAAC;IACvC,uBAAuB,EAAE,KAAK;CAC/B,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,EAAE,gBAAgB,EAAE,GAAG,qBAAqB,CAAC;IACxD,IAAI,EAAE,6BAA6B;IACnC,WAAW,EAAE;QACX,gCAAgC,EAAE;YAChC,QAAQ,EAAE,OAAO;YACjB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,OAAO,WAAW,sDAAsD,UAAU,qBAAqB,UAAU,GAAG;gBACzI,QAAQ,EAAE,YAAY,CAAA,oFAAoF;aAC3G;SACF;QACD,8BAA8B,EAAE;YAC9B,QAAQ,EAAE,OAAO;YACjB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,OAAO,SAAS,+BAA+B,OAAO,SAAS,UAAU,GAAG;gBACjG,SAAS,EAAE,YAAY,CAAA,4CAA4C;gBACnE,yCAAyC,EAAE,6DAA6D;gBACxG,yBAAyB,EAAE,YAAY,CAAA,iBAAiB,UAAU,SAAS,OAAO,6FAA6F;gBAC/K,qBAAqB,EAAE,YAAY,CAAA,cAAc,OAAO,mCAAmC;gBAC3F,0BAA0B,EAAE,YAAY,CAAA,kBAAkB,WAAW,kCAAkC,YAAY,qEAAqE;gBACxL,uCAAuC,EAAE,YAAY,CAAA,wDAAwD,WAAW,IAAI;gBAC5H,mCAAmC,EAAE,YAAY,CAAA,iBAAiB,UAAU,cAAc,QAAQ,0DAA0D;
|
|
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":"AASA,eAAO,MAAM,OAAO,+
|
|
1
|
+
{"version":3,"file":"linter.d.ts","sourceRoot":"","sources":["../../src/linter.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,OAAO,+CAwBlB,CAAA"}
|
package/dist/src/linter.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { defineLinter } from "@typespec/compiler";
|
|
2
|
-
import { modelShouldBeEntityOrComplexType,
|
|
2
|
+
import { modelShouldBeEntityOrComplexType, useEvolvableEnumRule, mediaTypeValuesShouldBeMinimallyFormattedForMIMETypes, interfaceNavigationSourceShouldHaveMediaIf$ValueIsSpecified, getPutPostAndPatchOperationsShouldHaveSelectDecorator, useRecordTypeInsteadOfDictionary, dictionaryTypeIsMostlyUsedWithRecordType, containedNavigationPropertyTypeShouldNotBeExternallyReferenced, entityAndComplexPropertyNameShouldNotBeName, validateCoreElementsHaveDocString } from "./rules/index.js";
|
|
3
3
|
export const $linter = defineLinter({
|
|
4
|
-
rules: [useEvolvableEnumRule,
|
|
4
|
+
rules: [useEvolvableEnumRule,
|
|
5
5
|
modelShouldBeEntityOrComplexType, mediaTypeValuesShouldBeMinimallyFormattedForMIMETypes,
|
|
6
6
|
interfaceNavigationSourceShouldHaveMediaIf$ValueIsSpecified, getPutPostAndPatchOperationsShouldHaveSelectDecorator,
|
|
7
7
|
useRecordTypeInsteadOfDictionary, dictionaryTypeIsMostlyUsedWithRecordType,
|
|
@@ -12,7 +12,6 @@ export const $linter = defineLinter({
|
|
|
12
12
|
recommended: {
|
|
13
13
|
enable: {
|
|
14
14
|
[`@microsoft/typespec-msgraph/${useEvolvableEnumRule.name}`]: true,
|
|
15
|
-
[`@microsoft/typespec-msgraph/${singletonOrEntitySetHostingBindingsShouldExist.name}`]: true,
|
|
16
15
|
[`@microsoft/typespec-msgraph/${modelShouldBeEntityOrComplexType.name}`]: true,
|
|
17
16
|
[`@microsoft/typespec-msgraph/${mediaTypeValuesShouldBeMinimallyFormattedForMIMETypes.name}`]: true,
|
|
18
17
|
[`@microsoft/typespec-msgraph/${interfaceNavigationSourceShouldHaveMediaIf$ValueIsSpecified.name}`]: true,
|
package/dist/src/linter.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"linter.js","sourceRoot":"","sources":["../../src/linter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,gCAAgC,
|
|
1
|
+
{"version":3,"file":"linter.js","sourceRoot":"","sources":["../../src/linter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,gCAAgC,EACvC,oBAAoB,EAAE,qDAAqD,EAC3E,2DAA2D,EAAE,qDAAqD,EAClH,gCAAgC,EAAE,wCAAwC,EAC1E,8DAA8D,EAAE,2CAA2C,EAC3G,iCAAiC,EACjC,MAAM,kBAAkB,CAAC;AAE3B,MAAM,CAAC,MAAM,OAAO,GAAG,YAAY,CAAC;IAClC,KAAK,EAAE,CAAC,oBAAoB;QAC1B,gCAAgC,EAAE,qDAAqD;QACvF,2DAA2D,EAAE,qDAAqD;QAClH,gCAAgC,EAAE,wCAAwC;QAC1E,8DAA8D,EAAE,2CAA2C;QAC3G,iCAAiC;KAClC;IACD,QAAQ,EAAE;QACR,WAAW,EAAE;YACX,MAAM,EAAE;gBACN,CAAC,+BAA+B,oBAAoB,CAAC,IAAI,EAAE,CAAC,EAAE,IAAI;gBAClE,CAAC,+BAA+B,gCAAgC,CAAC,IAAI,EAAE,CAAC,EAAE,IAAI;gBAC9E,CAAC,+BAA+B,qDAAqD,CAAC,IAAI,EAAE,CAAC,EAAE,IAAI;gBACnG,CAAC,+BAA+B,2DAA2D,CAAC,IAAI,EAAE,CAAC,EAAE,IAAI;gBACzG,CAAC,+BAA+B,qDAAqD,CAAC,IAAI,EAAE,CAAC,EAAE,IAAI;gBACnG,CAAC,+BAA+B,gCAAgC,CAAC,IAAI,EAAE,CAAC,EAAE,IAAI;gBAC9E,CAAC,+BAA+B,wCAAwC,CAAC,IAAI,EAAE,CAAC,EAAE,IAAI;gBACtF,CAAC,+BAA+B,8DAA8D,CAAC,IAAI,EAAE,CAAC,EAAE,IAAI;gBAC5G,CAAC,+BAA+B,2CAA2C,CAAC,IAAI,EAAE,CAAC,EAAE,IAAI;gBACzF,CAAC,+BAA+B,iCAAiC,CAAC,IAAI,EAAE,CAAC,EAAE,IAAI;aAChF;SACF;KACF;CACF,CAAC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"path-tree.js","sourceRoot":"","sources":["../../src/path-tree.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,
|
|
1
|
+
{"version":3,"file":"path-tree.js","sourceRoot":"","sources":["../../src/path-tree.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"address-url.d.ts","sourceRoot":"","sources":["../../../src/rules/address-url.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"address-url.d.ts","sourceRoot":"","sources":["../../../src/rules/address-url.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,OAAO,EAAkD,MAAM,oBAAoB,CAAC;AAK7F;;GAEG;AACH,wBAAgB,iEAAiE,CAC/E,OAAO,EAAE,OAAO,QAgBjB;AAED;;GAEG;AACH,wBAAgB,oEAAoE,CAClF,OAAO,EAAE,OAAO,QAgBjB;AAED;;GAEG;AACH,wBAAgB,4EAA4E,CAC1F,OAAO,EAAE,OAAO,QAgBjB;AAED;;GAEG;AACH,wBAAgB,+EAA+E,CAC7F,OAAO,EAAE,OAAO,QAgBjB;AAED,wBAAgB,2EAA2E,CACzF,OAAO,EAAE,OAAO,QAqEjB;AAwCD,wBAAgB,8DAA8D,CAAC,OAAO,EAAE,OAAO,QAa9F"}
|
|
@@ -3,7 +3,7 @@ import { reportDiagnostic } from "../lib.js";
|
|
|
3
3
|
import { navigateTypesInNamespace } from "@typespec/compiler";
|
|
4
4
|
import { GetDeclaredNamespaces } from "../entities/namespace.js";
|
|
5
5
|
import { getPassthroughAddressUrlMsa, hasPassthroughAddressUrlMsa } from "../decorators/passthrough-address-url-msa.js";
|
|
6
|
-
import { getIdForType, isEqual } from "../utils.js";
|
|
6
|
+
import { buildPathTree, getIdForType, getParentModelForPropertyFromGraphRoute, isEqual } from "../utils.js";
|
|
7
7
|
/**
|
|
8
8
|
* @addressUrl only applies to either routed interfaces (entity sets, singletons and navigation properties) or action operations.
|
|
9
9
|
*/
|
|
@@ -194,18 +194,20 @@ function validateAddressUrlParameters(program, interfaces, target, getParameter)
|
|
|
194
194
|
}
|
|
195
195
|
}
|
|
196
196
|
function getInterfacesWithSameNavSource(program, interfaces) {
|
|
197
|
+
const pathTree = buildPathTree(program);
|
|
197
198
|
let interfacesWithSameSource = new Map();
|
|
198
199
|
for (const [_, theInterface] of interfaces) {
|
|
199
200
|
const graphRoutes = getGraphRoutePaths(program, theInterface);
|
|
200
201
|
graphRoutes === null || graphRoutes === void 0 ? void 0 : graphRoutes.forEach(route => {
|
|
201
202
|
var _a;
|
|
202
|
-
const
|
|
203
|
-
if (
|
|
204
|
-
|
|
205
|
-
|
|
203
|
+
const parentModel = getParentModelForPropertyFromGraphRoute(pathTree, route);
|
|
204
|
+
if (parentModel) {
|
|
205
|
+
const lastSegment = route.split("/").pop();
|
|
206
|
+
if (interfacesWithSameSource.has(parentModel.name)) {
|
|
207
|
+
(_a = interfacesWithSameSource.get(parentModel.name)) === null || _a === void 0 ? void 0 : _a.interfaces.push(theInterface);
|
|
206
208
|
}
|
|
207
209
|
else {
|
|
208
|
-
interfacesWithSameSource.set(
|
|
210
|
+
interfacesWithSameSource.set(parentModel.name, { navigationPropertyName: lastSegment, interfaces: [theInterface] });
|
|
209
211
|
}
|
|
210
212
|
}
|
|
211
213
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"address-url.js","sourceRoot":"","sources":["../../../src/rules/address-url.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,aAAa,EACb,gBAAgB,EAChB,kBAAkB,
|
|
1
|
+
{"version":3,"file":"address-url.js","sourceRoot":"","sources":["../../../src/rules/address-url.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delta.d.ts","sourceRoot":"","sources":["../../../src/rules/delta.ts"],"names":[],"mappings":"AAAA,OAAO,EAA8C,OAAO,EAA0D,MAAM,oBAAoB,CAAC;AAOjJ,wBAAgB,kDAAkD,CAAC,OAAO,EAAE,OAAO,QAmBlF;AAED,wBAAgB,uCAAuC,CAAC,OAAO,EAAE,OAAO,QAkBvE;AAED,wBAAgB,qEAAqE,CAAC,OAAO,EAAE,OAAO,QAwBrG;AAED,wBAAgB,4DAA4D,CAAC,OAAO,EAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"delta.d.ts","sourceRoot":"","sources":["../../../src/rules/delta.ts"],"names":[],"mappings":"AAAA,OAAO,EAA8C,OAAO,EAA0D,MAAM,oBAAoB,CAAC;AAOjJ,wBAAgB,kDAAkD,CAAC,OAAO,EAAE,OAAO,QAmBlF;AAED,wBAAgB,uCAAuC,CAAC,OAAO,EAAE,OAAO,QAkBvE;AAED,wBAAgB,qEAAqE,CAAC,OAAO,EAAE,OAAO,QAwBrG;AAED,wBAAgB,4DAA4D,CAAC,OAAO,EAAE,OAAO,QAiC5F;AAED,wBAAgB,2DAA2D,CAAC,OAAO,EAAE,OAAO,QAiC3F;AAED,wBAAgB,kEAAkE,CAAC,OAAO,EAAE,OAAO,QA8BlG"}
|
package/dist/src/rules/delta.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { getPropertyType, navigateTypesInNamespace } from "@typespec/compiler";
|
|
2
2
|
import { GetDeclaredNamespaces } from "../entities/namespace.js";
|
|
3
|
-
import { isDelta, isEntity, isFunction } from "../index.js";
|
|
3
|
+
import { getGraphRoutePaths, isDelta, isEntity, isFunction } from "../index.js";
|
|
4
4
|
import { reportDiagnostic } from "../lib.js";
|
|
5
|
-
import { extractTypesFromUnion, filterMapByIdenticalValues, getInterfaceNavigationSourceType, getNavigationSourceType, getSourceInterfaces, isCollection, isNavigationProperty } from "../utils.js";
|
|
5
|
+
import { extractTypesFromUnion, filterMapByIdenticalValues, getComposableFunctionSegmentFromGraphRoute, getInterfaceNavigationSourceType, getNavigationSourceType, getSourceInterfaces, isCollection, isNavigationProperty } from "../utils.js";
|
|
6
6
|
import { getOperationVerb } from "@typespec/http";
|
|
7
7
|
export function validateDeltaCanOnlyBeAppliedToFunctionsNamedDelta(program) {
|
|
8
8
|
for (const namespace of GetDeclaredNamespaces(program)) {
|
|
@@ -74,6 +74,11 @@ export function validateInterfaceWithDeltaDefinitionMustIncludeAGetOperation(pro
|
|
|
74
74
|
.map(([_, operation]) => operation)
|
|
75
75
|
.some((operation) => isDelta(program, operation));
|
|
76
76
|
if (hasDelta) {
|
|
77
|
+
// check if graph route is a function
|
|
78
|
+
const graphRoutePaths = getGraphRoutePaths(program, theInterface);
|
|
79
|
+
if (graphRoutePaths === null || graphRoutePaths === void 0 ? void 0 : graphRoutePaths.some(path => getComposableFunctionSegmentFromGraphRoute(path))) {
|
|
80
|
+
return;
|
|
81
|
+
}
|
|
77
82
|
const getOperations = [...theInterface.operations]
|
|
78
83
|
.map(([_, operation]) => operation)
|
|
79
84
|
.filter((operation) => getOperationVerb(program, operation) === "get");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delta.js","sourceRoot":"","sources":["../../../src/rules/delta.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoE,eAAe,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AACjJ,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"delta.js","sourceRoot":"","sources":["../../../src/rules/delta.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entity.d.ts","sourceRoot":"","sources":["../../../src/rules/entity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EACsH,MAAM,oBAAoB,CAAC;AAMjK,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,OAAO,QAsDzD;AAED,wBAAgB,mDAAmD,CAAC,OAAO,EAAE,OAAO,QA2CnF;AAGD,wBAAgB,8CAA8C,CAAC,OAAO,EAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"entity.d.ts","sourceRoot":"","sources":["../../../src/rules/entity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EACsH,MAAM,oBAAoB,CAAC;AAMjK,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,OAAO,QAsDzD;AAED,wBAAgB,mDAAmD,CAAC,OAAO,EAAE,OAAO,QA2CnF;AAGD,wBAAgB,8CAA8C,CAAC,OAAO,EAAE,OAAO,QA2B9E;AAED,wBAAgB,4DAA4D,CAAE,OAAO,EAAE,OAAO,QA0B7F;AAED,wBAAgB,4CAA4C,CAAC,OAAO,EAAE,OAAO,QAmB5E;AAED,eAAO,MAAM,2CAA2C;;EA2BtD,CAAA"}
|
package/dist/src/rules/entity.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { isComplex,
|
|
1
|
+
import { isKey, navigateTypesInNamespace, walkPropertiesInherited, isArrayModelType, createRule, paramMessage } from "@typespec/compiler";
|
|
2
|
+
import { isComplex, isDirectEntity, isOwnerless, isSharedEntity, isPartial, isEntity } from "../index.js";
|
|
3
3
|
import { reportDiagnostic } from "../lib.js";
|
|
4
|
-
import { isTypeNullable, isExcludedLibraryType, isSameNamespace, extractTypesFromUnion, getInterfaceNavigationSourceType, isNavigationProperty } from "../utils.js";
|
|
4
|
+
import { isTypeNullable, isExcludedLibraryType, isSameNamespace, extractTypesFromUnion, getInterfaceNavigationSourceType, isNavigationProperty, isTypeDefinedInExternalLibrary, isTypeDefinedInLocalProject, isParentSharedEntity } from "../utils.js";
|
|
5
5
|
import { GetDeclaredNamespaces } from "../entities/namespace.js";
|
|
6
6
|
export function validateEntityMustHaveKey(program) {
|
|
7
7
|
for (const namespace of GetDeclaredNamespaces(program)) {
|
|
8
8
|
navigateTypesInNamespace(namespace, {
|
|
9
9
|
model: (model) => {
|
|
10
|
-
if (!
|
|
10
|
+
if (!isDirectEntity(program, model) && !isParentSharedEntity(program, model)) {
|
|
11
11
|
return;
|
|
12
12
|
}
|
|
13
13
|
if (isPartial(program, model)) {
|
|
@@ -103,12 +103,10 @@ export function validateExtendOnlyAppliesOnDifferentNamespaces(program) {
|
|
|
103
103
|
if (!model.baseModel) {
|
|
104
104
|
return;
|
|
105
105
|
}
|
|
106
|
-
|
|
107
|
-
const modelLocationContextType = getLocationContext(program, model).type;
|
|
108
|
-
if (baseModelLocationContextType === "library" && modelLocationContextType === "library") {
|
|
106
|
+
if (isTypeDefinedInExternalLibrary(program, model.baseModel) && isTypeDefinedInExternalLibrary(program, model)) {
|
|
109
107
|
return;
|
|
110
108
|
}
|
|
111
|
-
if (
|
|
109
|
+
if (isTypeDefinedInLocalProject(program, model.baseModel) && isTypeDefinedInLocalProject(program, model)) {
|
|
112
110
|
return;
|
|
113
111
|
}
|
|
114
112
|
if (isSameNamespace(program, model, model.baseModel)) {
|
|
@@ -134,7 +132,7 @@ export function validatePropertyTypeOfEntityTypeMustHaveContainsOrReferences(pro
|
|
|
134
132
|
return;
|
|
135
133
|
}
|
|
136
134
|
}
|
|
137
|
-
if (property.type.kind === "Union" &&
|
|
135
|
+
if (property.type.kind === "Union" && !isTypeDefinedInExternalLibrary(program, property)) {
|
|
138
136
|
const unionTypes = extractTypesFromUnion(property.type);
|
|
139
137
|
for (const unionType of unionTypes) {
|
|
140
138
|
if (unionType.kind === "Model" && isEntity(program, unionType)) {
|
|
@@ -160,6 +158,7 @@ export function validateEntityAndComplexAreMutuallyExclusive(program) {
|
|
|
160
158
|
messageId: "entityAndComplexAreMutuallyExclusive",
|
|
161
159
|
format: {
|
|
162
160
|
model: model.name,
|
|
161
|
+
decorator: isSharedEntity(program, model) ? "@sharedEntity" : "@entity",
|
|
163
162
|
},
|
|
164
163
|
});
|
|
165
164
|
}
|
|
@@ -196,7 +195,7 @@ export const entityAndComplexPropertyNameShouldNotBeName = createRule({
|
|
|
196
195
|
});
|
|
197
196
|
function isPropertyParentModelAndPropertyTypeEntity(program, property) {
|
|
198
197
|
const propertyType = getPropertyType(program, property);
|
|
199
|
-
return
|
|
198
|
+
return !isTypeDefinedInExternalLibrary(program, property) &&
|
|
200
199
|
property.model &&
|
|
201
200
|
propertyType.kind === "Model" &&
|
|
202
201
|
isEntity(program, property.model) &&
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entity.js","sourceRoot":"","sources":["../../../src/rules/entity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,
|
|
1
|
+
{"version":3,"file":"entity.js","sourceRoot":"","sources":["../../../src/rules/entity.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"global-operation.d.ts","sourceRoot":"","sources":["../../../src/rules/global-operation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,OAAO,
|
|
1
|
+
{"version":3,"file":"global-operation.d.ts","sourceRoot":"","sources":["../../../src/rules/global-operation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,OAAO,EAA4B,MAAM,oBAAoB,CAAC;AAMlF,wBAAgB,uDAAuD,CAAC,OAAO,EAAE,OAAO,QAmBvF;AAED,wBAAgB,uDAAuD,CAAC,OAAO,EAAE,OAAO,QAuBvF"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { navigateTypesInNamespace } from "@typespec/compiler";
|
|
2
2
|
import { GetDeclaredNamespaces } from "../entities/namespace.js";
|
|
3
3
|
import { isGlobalOperation, isPartial } from "../index.js";
|
|
4
4
|
import { reportDiagnostic } from "../lib.js";
|
|
5
|
-
import { getInterfaceNavigationSourceType } from "../utils.js";
|
|
5
|
+
import { getInterfaceNavigationSourceType, isTypeDefinedInLocalProject } from "../utils.js";
|
|
6
6
|
export function validateGlobalOperationMustBeUsedWithNonRoutedInterface(program) {
|
|
7
7
|
for (const namespace of GetDeclaredNamespaces(program)) {
|
|
8
8
|
navigateTypesInNamespace(namespace, {
|
|
@@ -31,7 +31,7 @@ export function validateGlobalOperationMustBeUsedWithProjectBindingType(program)
|
|
|
31
31
|
}
|
|
32
32
|
if (operation.interface) {
|
|
33
33
|
const interfaceBindingType = getInterfaceNavigationSourceType(program, operation.interface);
|
|
34
|
-
if (interfaceBindingType && (isPartial(program, interfaceBindingType) ||
|
|
34
|
+
if (interfaceBindingType && (isPartial(program, interfaceBindingType) || !isTypeDefinedInLocalProject(program, interfaceBindingType))) {
|
|
35
35
|
reportDiagnostic(program, {
|
|
36
36
|
code: "decorator-invalid-use",
|
|
37
37
|
target: operation,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"global-operation.js","sourceRoot":"","sources":["../../../src/rules/global-operation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,
|
|
1
|
+
{"version":3,"file":"global-operation.js","sourceRoot":"","sources":["../../../src/rules/global-operation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAClF,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,gCAAgC,EAAE,2BAA2B,EAAE,MAAM,aAAa,CAAC;AAE5F,MAAM,UAAU,uDAAuD,CAAC,OAAgB;IACtF,KAAK,MAAM,SAAS,IAAI,qBAAqB,CAAC,OAAO,CAAC,EAAE,CAAC;QACvD,wBAAwB,CAAC,SAAS,EAAE;YAClC,SAAS,EAAE,CAAC,SAAS,EAAE,EAAE;gBACvB,IAAG,CAAC,iBAAiB,CAAC,OAAO,EAAE,SAAS,CAAC,EAAC,CAAC;oBACzC,OAAO;gBACT,CAAC;gBAED,IAAG,cAAc,CAAC,OAAO,EAAE,SAAS,CAAC,EAAC,CAAC;oBACrC,gBAAgB,CAAC,OAAO,EAAE;wBACxB,IAAI,EAAE,uBAAuB;wBAC7B,MAAM,EAAE,SAAS;wBACjB,SAAS,EAAE,iDAAiD;wBAC5D,MAAM,EAAE,EAAE;qBACX,CAAC,CAAA;gBACJ,CAAC;YACH,CAAC;SACF,CAAC,CAAA;IACJ,CAAC;AACH,CAAC;AAED,MAAM,UAAU,uDAAuD,CAAC,OAAgB;IACtF,KAAK,MAAM,SAAS,IAAI,qBAAqB,CAAC,OAAO,CAAC,EAAC,CAAC;QACtD,wBAAwB,CAAC,SAAS,EAAE;YAClC,SAAS,EAAE,CAAC,SAAS,EAAE,EAAE;gBACvB,IAAG,CAAC,iBAAiB,CAAC,OAAO,EAAE,SAAS,CAAC,EAAC,CAAC;oBACzC,OAAO;gBACT,CAAC;gBAED,IAAG,SAAS,CAAC,SAAS,EAAC,CAAC;oBACtB,MAAM,oBAAoB,GAAG,gCAAgC,CAAC,OAAO,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;oBAC5F,IAAG,oBAAoB,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,oBAAoB,CAAC,IAAI,CAAC,2BAA2B,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC,EAAC,CAAC;wBACpI,gBAAgB,CAAC,OAAO,EAAE;4BACxB,IAAI,EAAE,uBAAuB;4BAC7B,MAAM,EAAE,SAAS;4BACjB,SAAS,EAAE,iDAAiD;4BAC5D,MAAM,EAAE,EAAE;yBACX,CAAC,CAAA;oBACJ,CAAC;gBAEH,CAAC;YACH,CAAC;SACF,CAAC,CAAA;IACJ,CAAC;AACH,CAAC;AAED,SAAS,cAAc,CAAC,OAAgB,EAAE,SAAoB;;IAC5D,MAAM,mBAAmB,GAAG,MAAA,SAAS,CAAC,SAAS,0CAAE,UAAU,CAAC;IAC5D,IAAI,CAAC,CAAA,mBAAmB,aAAnB,mBAAmB,uBAAnB,mBAAmB,CAAE,MAAM,CAAA,EAAE,CAAC;QACjC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,KAAK,MAAM,SAAS,IAAI,mBAAmB,EAAE,CAAC;QAC5C,IAAI,CAAA,MAAA,SAAS,CAAC,UAAU,0CAAE,IAAI,MAAK,aAAa,EAAE,CAAC;YACjD,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC"}
|
|
@@ -9,7 +9,9 @@ export declare function validateGraphRouteAndInterfaceExtendsMatchForCollections
|
|
|
9
9
|
* A interface decorated with @graphRoute must ultimately extend one of the standard graph interface i.e Resource<T> or Collection<T>.
|
|
10
10
|
*/
|
|
11
11
|
export declare function validateGraphRouteInterfaceExtendsGraphStandardInterface(program: Program): void;
|
|
12
|
+
export declare function validateGraphRouteInterfaceTargetingFunctionMustTargetComposableFunction(program: Program): void;
|
|
12
13
|
export declare function validateDuplicateGraphRoutesNotAllowed(program: Program): void;
|
|
13
14
|
export declare function validateGraphRouteParametersMustBeUnique(program: Program): void;
|
|
15
|
+
export declare function validateGraphRouteHasMatchingGraphRoutesForEachOfItsSubPaths(program: Program): void;
|
|
14
16
|
export declare function validateGraphRouteMustMatchModelStructureWithRespectToNavigationProperties(program: Program): void;
|
|
15
17
|
//# sourceMappingURL=graph-route.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"graph-route.d.ts","sourceRoot":"","sources":["../../../src/rules/graph-route.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"graph-route.d.ts","sourceRoot":"","sources":["../../../src/rules/graph-route.ts"],"names":[],"mappings":"AAGA,OAAO,EAAwB,OAAO,EAAkC,MAAM,oBAAoB,CAAC;AAKnG;;GAEG;AAEH,wBAAgB,8BAA8B,CAAC,OAAO,EAAE,OAAO,QAW9D;AAyBD,wBAAgB,oDAAoD,CAAC,OAAO,EAAE,OAAO,QAWpF;AAqDD,wBAAgB,wDAAwD,CAAC,OAAO,EAAE,OAAO,QA2BxF;AAeD;;GAEG;AACH,wBAAgB,wDAAwD,CAAC,OAAO,EAAE,OAAO,QA0BxF;AAED,wBAAgB,wEAAwE,CAAC,OAAO,EAAE,OAAO,QAuCxG;AAWD,wBAAgB,sCAAsC,CAAC,OAAO,EAAE,OAAO,QAwBtE;AAgBD,wBAAgB,wCAAwC,CAAC,OAAO,EAAE,OAAO,QA6BxE;AAED,wBAAgB,4DAA4D,CAAC,OAAO,EAAE,OAAO,QAwC5F;AAED,wBAAgB,0EAA0E,CAAC,OAAO,EAAE,OAAO,QA0E1G"}
|