@azure-tools/typespec-azure-core 0.27.0 → 0.28.0-dev.2

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.
@@ -1,6 +1,8 @@
1
1
  import "./index.js";
2
2
  import { DecoratorContext, Enum, EnumMember, Model, ModelProperty, Operation, Program, Scalar, Type } from "@typespec/compiler";
3
3
  export declare const namespace = "Azure.Core";
4
+ export declare const PollingOperationKey: string;
5
+ export declare const FinalOperationKey = "final";
4
6
  export declare function $fixed(context: DecoratorContext, target: Enum): void;
5
7
  export declare function isFixed(program: Program, target: Enum): boolean;
6
8
  export declare function $pagedResult(context: DecoratorContext, entity: Type): void;
@@ -39,6 +41,7 @@ export interface LongRunningStates {
39
41
  states: string[];
40
42
  }
41
43
  export declare function $lroStatus(context: DecoratorContext, entity: Enum | ModelProperty): void;
44
+ export declare function extractLroStates(program: Program, entity: Type): LongRunningStates | undefined;
42
45
  /**
43
46
  * Returns the `LongRunningStates` associated with `entity`.
44
47
  */
@@ -87,7 +90,9 @@ export declare function $pollingOperation(context: DecoratorContext, entity: Ope
87
90
  export declare function $finalOperation(context: DecoratorContext, entity: Operation, linkedOperation: Operation, parameters?: Model): void;
88
91
  export declare function $nextPageOperation(context: DecoratorContext, entity: Operation, linkedOperation: Operation, parameters?: Model): void;
89
92
  export declare function $requestParameter(context: DecoratorContext, entity: Model, name: string): void;
93
+ export declare function getRequestParameter(program: Program, entity: ModelProperty): string | undefined;
90
94
  export declare function $responseProperty(context: DecoratorContext, entity: Model, name: string): void;
95
+ export declare function getResponseProperty(program: Program, entity: ModelProperty): string | undefined;
91
96
  export declare function $spreadCustomParameters(context: DecoratorContext, entity: Model, customizations: Model): void;
92
97
  export declare function $spreadCustomResponseProperties(context: DecoratorContext, entity: Model, customizations: Model): void;
93
98
  export declare function $ensureResourceType(context: DecoratorContext, entity: Operation, resourceType: Type): void;
@@ -1 +1 @@
1
- {"version":3,"file":"decorators.d.ts","sourceRoot":"","sources":["../../src/decorators.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"decorators.d.ts","sourceRoot":"","sources":["../../src/decorators.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,11 @@ import { getKnownValues, getNamespaceFullName, getTypeName, isErrorModel, isKey,
4
4
  import { getOperationParameters, getResponsesForOperation, getRoutePath } from "@typespec/http";
5
5
  import { getResourceTypeKey, getSegment, isAutoRoute } from "@typespec/rest";
6
6
  export const namespace = "Azure.Core";
7
+ /*
8
+ * Constants for polling and final operation links
9
+ */
10
+ export const PollingOperationKey = "polling";
11
+ export const FinalOperationKey = "final";
7
12
  // @fixed
8
13
  const fixedKey = createStateSymbol("fixed");
9
14
  export function $fixed(context, target) {
@@ -199,7 +204,7 @@ function storeLroState(program, states, name, enumMember) {
199
204
  }
200
205
  }
201
206
  }
202
- function extractLroStates(program, entity) {
207
+ export function extractLroStates(program, entity) {
203
208
  const result = { states: [] };
204
209
  if (entity.kind === "ModelProperty") {
205
210
  // Call the function recursively on the property type
@@ -436,13 +441,13 @@ export function $pollingOperation(context, entity, linkedOperation, parameters)
436
441
  if (!validateDecoratorTarget(context, entity, "@pollingOperation", "Operation")) {
437
442
  return;
438
443
  }
439
- context.call($operationLink, entity, linkedOperation, "polling", parameters);
444
+ context.call($operationLink, entity, linkedOperation, PollingOperationKey, parameters);
440
445
  }
441
446
  export function $finalOperation(context, entity, linkedOperation, parameters) {
442
447
  if (!validateDecoratorTarget(context, entity, "@finalOperation", "Operation")) {
443
448
  return;
444
449
  }
445
- context.call($operationLink, entity, linkedOperation, "final", parameters);
450
+ context.call($operationLink, entity, linkedOperation, FinalOperationKey, parameters);
446
451
  }
447
452
  export function $nextPageOperation(context, entity, linkedOperation, parameters) {
448
453
  if (!validateDecoratorTarget(context, entity, "@nextPageOperation", "Operation")) {
@@ -454,10 +459,22 @@ const requestParameterKey = createStateSymbol("requestParameter");
454
459
  export function $requestParameter(context, entity, name) {
455
460
  context.program.stateMap(requestParameterKey).set(entity, name);
456
461
  }
462
+ export function getRequestParameter(program, entity) {
463
+ if (entity.type.kind !== "Model")
464
+ return undefined;
465
+ const parameterName = program.stateMap(requestParameterKey).get(entity.type);
466
+ return parameterName;
467
+ }
457
468
  const responsePropertyKey = createStateSymbol("responseParameter");
458
469
  export function $responseProperty(context, entity, name) {
459
470
  context.program.stateMap(responsePropertyKey).set(entity, name);
460
471
  }
472
+ export function getResponseProperty(program, entity) {
473
+ if (entity.type.kind !== "Model")
474
+ return undefined;
475
+ const parameterName = program.stateMap(responsePropertyKey).get(entity.type);
476
+ return parameterName;
477
+ }
461
478
  export function $spreadCustomParameters(context, entity, customizations) {
462
479
  var _a;
463
480
  const customParameters = (_a = customizations.properties.get("parameters")) === null || _a === void 0 ? void 0 : _a.type;
@@ -1 +1 @@
1
- {"version":3,"file":"decorators.js","sourceRoot":"","sources":["../../src/decorators.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"decorators.js","sourceRoot":"","sources":["../../src/decorators.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,9 @@
1
1
  export * from "./decorators.js";
2
2
  export { libDef } from "./lib.js";
3
3
  export * from "./linter.js";
4
+ export * from "./lro-helpers.js";
4
5
  export * from "./rules/prevent-rest-library.js";
5
6
  export * from "./rules/use-standard-ops.js";
6
7
  export * from "./traits.js";
8
+ export * from "./utils.js";
7
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,cAAc,iCAAiC,CAAC;AAChD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,cAAc,kBAAkB,CAAC;AACjC,cAAc,iCAAiC,CAAC;AAChD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC"}
package/dist/src/index.js CHANGED
@@ -1,7 +1,9 @@
1
1
  export * from "./decorators.js";
2
2
  export { libDef } from "./lib.js";
3
3
  export * from "./linter.js";
4
+ export * from "./lro-helpers.js";
4
5
  export * from "./rules/prevent-rest-library.js";
5
6
  export * from "./rules/use-standard-ops.js";
6
7
  export * from "./traits.js";
8
+ export * from "./utils.js";
7
9
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,cAAc,iCAAiC,CAAC;AAChD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,cAAc,kBAAkB,CAAC;AACjC,cAAc,iCAAiC,CAAC;AAChD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC"}
package/dist/src/lib.d.ts CHANGED
@@ -107,7 +107,7 @@ export declare const libDef: {
107
107
  };
108
108
  };
109
109
  readonly "key-visibility-required": {
110
- readonly severity: "error";
110
+ readonly severity: "warning";
111
111
  readonly messages: {
112
112
  readonly default: import("@typespec/compiler").CallableMessage<["name"]>;
113
113
  };
@@ -160,6 +160,18 @@ export declare const libDef: {
160
160
  readonly default: import("@typespec/compiler").CallableMessage<["propertyName", "kind"]>;
161
161
  };
162
162
  };
163
+ readonly "expected-success-response": {
164
+ readonly severity: "error";
165
+ readonly messages: {
166
+ readonly default: "The operation must have a success response";
167
+ };
168
+ };
169
+ readonly "lro-polling-data-missing-from-operation-response": {
170
+ readonly severity: "error";
171
+ readonly messages: {
172
+ readonly default: "At least one operation response must contain a field marked with `@lroStatus`";
173
+ };
174
+ };
163
175
  };
164
176
  };
165
177
  export declare const $lib: import("@typespec/compiler").TypeSpecLibrary<{
@@ -243,8 +255,14 @@ export declare const $lib: import("@typespec/compiler").TypeSpecLibrary<{
243
255
  "invalid-parameter": {
244
256
  readonly default: import("@typespec/compiler").CallableMessage<["propertyName", "kind"]>;
245
257
  };
258
+ "expected-success-response": {
259
+ readonly default: "The operation must have a success response";
260
+ };
261
+ "lro-polling-data-missing-from-operation-response": {
262
+ readonly default: "At least one operation response must contain a field marked with `@lroStatus`";
263
+ };
246
264
  }, Record<string, any>>;
247
- export declare const reportDiagnostic: <C extends "casing-style" | "lro-status-union-non-string" | "lro-status-property-invalid-type" | "lro-status-missing" | "bad-record-type" | "request-parameter-invalid" | "response-property-invalid" | "no-multiple-discriminator" | "operation-link-parameter-invalid" | "client-definition-parameters-not-model" | "invalid-resource-type" | "use-extensible-enum" | "use-standard-operations" | "no-format" | "no-rest-library-interfaces" | "no-unknown" | "documentation-required" | "key-visibility-required" | "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", M extends keyof {
265
+ export declare const reportDiagnostic: <C extends "casing-style" | "lro-status-union-non-string" | "lro-status-property-invalid-type" | "lro-status-missing" | "bad-record-type" | "request-parameter-invalid" | "response-property-invalid" | "no-multiple-discriminator" | "operation-link-parameter-invalid" | "client-definition-parameters-not-model" | "invalid-resource-type" | "use-extensible-enum" | "use-standard-operations" | "no-format" | "no-rest-library-interfaces" | "no-unknown" | "documentation-required" | "key-visibility-required" | "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", M extends keyof {
248
266
  "casing-style": {
249
267
  readonly default: import("@typespec/compiler").CallableMessage<["type", "casing"]>;
250
268
  };
@@ -325,6 +343,12 @@ export declare const reportDiagnostic: <C extends "casing-style" | "lro-status-u
325
343
  "invalid-parameter": {
326
344
  readonly default: import("@typespec/compiler").CallableMessage<["propertyName", "kind"]>;
327
345
  };
346
+ "expected-success-response": {
347
+ readonly default: "The operation must have a success response";
348
+ };
349
+ "lro-polling-data-missing-from-operation-response": {
350
+ readonly default: "At least one operation response must contain a field marked with `@lroStatus`";
351
+ };
328
352
  }[C]>(program: import("@typespec/compiler").Program, diag: import("@typespec/compiler").DiagnosticReport<{
329
353
  "casing-style": {
330
354
  readonly default: import("@typespec/compiler").CallableMessage<["type", "casing"]>;
@@ -406,5 +430,11 @@ export declare const reportDiagnostic: <C extends "casing-style" | "lro-status-u
406
430
  "invalid-parameter": {
407
431
  readonly default: import("@typespec/compiler").CallableMessage<["propertyName", "kind"]>;
408
432
  };
433
+ "expected-success-response": {
434
+ readonly default: "The operation must have a success response";
435
+ };
436
+ "lro-polling-data-missing-from-operation-response": {
437
+ readonly default: "At least one operation response must contain a field marked with `@lroStatus`";
438
+ };
409
439
  }, C, M>) => void, createStateSymbol: (name: string) => symbol;
410
440
  //# sourceMappingURL=lib.d.ts.map
@@ -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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqKT,CAAC;AAEX,eAAO,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uBAAgC,CAAC;AAClD,eAAO,MAAQ,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAAE,iBAAiB,0BAAS,CAAC"}
1
+ {"version":3,"file":"lib.d.ts","sourceRoot":"","sources":["../../src/lib.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,SAAS,eAAe,CAAC;AAEtC,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiLT,CAAC;AAEX,eAAO,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uBAAgC,CAAC;AAClD,eAAO,MAAQ,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAAE,iBAAiB,0BAAS,CAAC"}
package/dist/src/lib.js CHANGED
@@ -108,7 +108,7 @@ export const libDef = {
108
108
  },
109
109
  },
110
110
  "key-visibility-required": {
111
- severity: "error",
111
+ severity: "warning",
112
112
  messages: {
113
113
  default: paramMessage `The key property '${"name"}' does not have an explicit visibility setting, please use the @visibility decorator to set it.`,
114
114
  },
@@ -161,6 +161,18 @@ export const libDef = {
161
161
  default: paramMessage `Expected property '${"propertyName"}' to be a ${"kind"} parameter.`,
162
162
  },
163
163
  },
164
+ "expected-success-response": {
165
+ severity: "error",
166
+ messages: {
167
+ default: "The operation must have a success response",
168
+ },
169
+ },
170
+ "lro-polling-data-missing-from-operation-response": {
171
+ severity: "error",
172
+ messages: {
173
+ default: "At least one operation response must contain a field marked with `@lroStatus`",
174
+ },
175
+ },
164
176
  },
165
177
  };
166
178
  export const $lib = createTypeSpecLibrary(libDef);
@@ -1 +1 @@
1
- {"version":3,"file":"lib.js","sourceRoot":"","sources":["../../src/lib.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lib.js","sourceRoot":"","sources":["../../src/lib.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,143 @@
1
+ import "./index.js";
2
+ import { Model, ModelProperty, Operation, Program } from "@typespec/compiler";
3
+ /**
4
+ * Custom polling
5
+ * Represents a property or header that provides a Uri linking to another operation
6
+ */
7
+ export interface OperationLink {
8
+ kind: "link";
9
+ location: "ResponseHeader" | "ResponseBody";
10
+ property: ModelProperty;
11
+ }
12
+ /**
13
+ * Custom polling
14
+ * Represents the property that contains the state and the terminal state values
15
+ */
16
+ export type TerminationStatus = HttpTerminationStatus | ModelPropertyTerminationStatus;
17
+ /**
18
+ * Definition of a StatusMonitor that uses http status rather then status code
19
+ */
20
+ export interface HttpTerminationStatus {
21
+ kind: "status-code";
22
+ }
23
+ /**
24
+ * Definition of a status monitor that uses a status field
25
+ */
26
+ export interface ModelPropertyTerminationStatus {
27
+ kind: "model-property";
28
+ property: ModelProperty;
29
+ succeededState: string[];
30
+ failedState: string[];
31
+ canceledState: string[];
32
+ }
33
+ /**
34
+ * Custom polling
35
+ * Represents the source of a parameter value when the client resolves an operation reference
36
+ */
37
+ export interface ParameterSource {
38
+ location: "OperationParameters" | "RequestBody" | "Response";
39
+ parameter: string;
40
+ }
41
+ /**
42
+ * Custom polling
43
+ * Represents a reference to an operation, including a map from the
44
+ * original operation to the parameters of the linked operation
45
+ */
46
+ export interface OperationReference {
47
+ kind: "reference";
48
+ operation: Operation;
49
+ parameterMap?: Map<string, ParameterSource>;
50
+ }
51
+ /**
52
+ * Custom polling
53
+ * A step in a logical operation that involves multiple calls
54
+ */
55
+ export interface LogicalOperationStep {
56
+ responseModel: Model;
57
+ }
58
+ export type OperationStep = NextOperationLink | NextOperationReference | PollingOperationStep | FinalOperationLink | FinalOperationReference | PollingSuccessProperty;
59
+ /**
60
+ * Indicates that an operation step involves polling, and includes details on
61
+ * how to end polling
62
+ */
63
+ export interface PollingOperationStep extends LogicalOperationStep {
64
+ kind: "pollingOperationStep";
65
+ terminationStatus: TerminationStatus;
66
+ }
67
+ export type nextOperationStep = NextOperationLink | NextOperationReference;
68
+ /**
69
+ * A resource link to the next operation
70
+ */
71
+ export interface NextOperationLink extends LogicalOperationStep {
72
+ kind: "nextOperationLink";
73
+ target: OperationLink;
74
+ }
75
+ /**
76
+ * An operation link to the next operation
77
+ */
78
+ export interface NextOperationReference extends LogicalOperationStep {
79
+ kind: "nextOperationReference";
80
+ target: OperationReference;
81
+ }
82
+ /**
83
+ * For long-running operations, a description of the final step for
84
+ * getting to a success result
85
+ */
86
+ export type FinalOperationStep = FinalOperationLink | FinalOperationReference | PollingSuccessProperty;
87
+ /**
88
+ * For long-running operations, the resource link to the final result
89
+ */
90
+ export interface FinalOperationLink extends LogicalOperationStep {
91
+ kind: "finalOperationLink";
92
+ target: OperationLink;
93
+ }
94
+ /**
95
+ * For long-running operations, the operation link to the final result
96
+ */
97
+ export interface FinalOperationReference extends LogicalOperationStep {
98
+ kind: "finalOperationReference";
99
+ target: OperationReference;
100
+ }
101
+ /**
102
+ * For long-running operations using a status monitor, describes the
103
+ * property of the StatusMonitor that contains the success response
104
+ */
105
+ export interface PollingSuccessProperty extends LogicalOperationStep {
106
+ kind: "pollingSuccessProperty";
107
+ target: ModelProperty;
108
+ sourceProperty: ModelProperty;
109
+ }
110
+ /**
111
+ * Azure SDK polling information: provides data contained in the
112
+ * long-running-operation-options.final-state-via field
113
+ */
114
+ export declare enum FinalStateValue {
115
+ azureAsyncOperation = "azure-async-operation",
116
+ location = "location",
117
+ operationLocation = "operation-location",
118
+ originalUri = "original-uri",
119
+ customLink = "custom-link",
120
+ customOperationReference = "custom-operation-reference"
121
+ }
122
+ /**
123
+ * Information about long-running operations
124
+ * For standard Lro Patterns, only the 'logicalResult' and 'finalStateVia' will be used.
125
+ */
126
+ export interface LroMetadata {
127
+ operation: Operation;
128
+ logicalResult: Model;
129
+ finalStateVia: FinalStateValue;
130
+ statusMonitorStep?: NextOperationLink | NextOperationReference;
131
+ pollingInfo: PollingOperationStep;
132
+ finalStep?: FinalOperationStep;
133
+ }
134
+ /**
135
+ *
136
+ * @param program The program being processed
137
+ * @param operation The operation to get Lwo Metadata for
138
+ * @returns LroMetadata for the operation is it is long-running,
139
+ * or nothing if the operation is synchronous, or lro information
140
+ * cannot be processed.
141
+ */
142
+ export declare function getLroMetadata(program: Program, operation: Operation): LroMetadata | undefined;
143
+ //# sourceMappingURL=lro-helpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lro-helpers.d.ts","sourceRoot":"","sources":["../../src/lro-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,CAAC;AAUpB,OAAO,EAEL,KAAK,EACL,aAAa,EACb,SAAS,EACT,OAAO,EAGR,MAAM,oBAAoB,CAAC;AAiB5B;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,gBAAgB,GAAG,cAAc,CAAC;IAC5C,QAAQ,EAAE,aAAa,CAAC;CACzB;AAED;;;GAGG;AACH,MAAM,MAAM,iBAAiB,GAAG,qBAAqB,GAAG,8BAA8B,CAAC;AAEvF;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,aAAa,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,8BAA8B;IAC7C,IAAI,EAAE,gBAAgB,CAAC;IACvB,QAAQ,EAAE,aAAa,CAAC;IACxB,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,aAAa,EAAE,MAAM,EAAE,CAAC;CACzB;AAED;;;GAGG;AACH,MAAM,WAAW,eAAe;IAE9B,QAAQ,EAAE,qBAAqB,GAAG,aAAa,GAAG,UAAU,CAAC;IAC7D,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;;GAIG;AACH,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,WAAW,CAAC;IAClB,SAAS,EAAE,SAAS,CAAC;IACrB,YAAY,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;CAC7C;AAED;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC,aAAa,EAAE,KAAK,CAAC;CACtB;AAED,MAAM,MAAM,aAAa,GACrB,iBAAiB,GACjB,sBAAsB,GACtB,oBAAoB,GACpB,kBAAkB,GAClB,uBAAuB,GACvB,sBAAsB,CAAC;AAE3B;;;GAGG;AACH,MAAM,WAAW,oBAAqB,SAAQ,oBAAoB;IAChE,IAAI,EAAE,sBAAsB,CAAC;IAC7B,iBAAiB,EAAE,iBAAiB,CAAC;CACtC;AAED,MAAM,MAAM,iBAAiB,GAAG,iBAAiB,GAAG,sBAAsB,CAAC;AAE3E;;GAEG;AACH,MAAM,WAAW,iBAAkB,SAAQ,oBAAoB;IAC7D,IAAI,EAAE,mBAAmB,CAAC;IAC1B,MAAM,EAAE,aAAa,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,sBAAuB,SAAQ,oBAAoB;IAClE,IAAI,EAAE,wBAAwB,CAAC;IAC/B,MAAM,EAAE,kBAAkB,CAAC;CAC5B;AAED;;;GAGG;AACH,MAAM,MAAM,kBAAkB,GAC1B,kBAAkB,GAClB,uBAAuB,GACvB,sBAAsB,CAAC;AAE3B;;GAEG;AACH,MAAM,WAAW,kBAAmB,SAAQ,oBAAoB;IAC9D,IAAI,EAAE,oBAAoB,CAAC;IAC3B,MAAM,EAAE,aAAa,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,uBAAwB,SAAQ,oBAAoB;IACnE,IAAI,EAAE,yBAAyB,CAAC;IAChC,MAAM,EAAE,kBAAkB,CAAC;CAC5B;AAED;;;GAGG;AACH,MAAM,WAAW,sBAAuB,SAAQ,oBAAoB;IAClE,IAAI,EAAE,wBAAwB,CAAC;IAC/B,MAAM,EAAE,aAAa,CAAC;IACtB,cAAc,EAAE,aAAa,CAAC;CAC/B;AAED;;;GAGG;AACH,oBAAY,eAAe;IACzB,mBAAmB,0BAA0B;IAC7C,QAAQ,aAAa;IACrB,iBAAiB,uBAAuB;IACxC,WAAW,iBAAiB;IAC5B,UAAU,gBAAgB;IAC1B,wBAAwB,+BAA+B;CACxD;AAED;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,SAAS,EAAE,SAAS,CAAC;IACrB,aAAa,EAAE,KAAK,CAAC;IACrB,aAAa,EAAE,eAAe,CAAC;IAG/B,iBAAiB,CAAC,EAAE,iBAAiB,GAAG,sBAAsB,CAAC;IAC/D,WAAW,EAAE,oBAAoB,CAAC;IAClC,SAAS,CAAC,EAAE,kBAAkB,CAAC;CAChC;AAED;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,GAAG,WAAW,GAAG,SAAS,CA6B9F"}