diff --git a/packages/typespec-go/CHANGELOG.md b/packages/typespec-go/CHANGELOG.md index 74448942ad..e6513abad3 100644 --- a/packages/typespec-go/CHANGELOG.md +++ b/packages/typespec-go/CHANGELOG.md @@ -6,6 +6,10 @@ * Fixed missing propagation of parent client parameters to sub-clients created via client accessor methods. +### Other Changes + +* Updated to the latest tsp toolset. + ## 0.10.2 (2026-03-06) ### Bugs Fixed diff --git a/packages/typespec-go/package.json b/packages/typespec-go/package.json index 1cafbc0491..e45b3d9f2f 100644 --- a/packages/typespec-go/package.json +++ b/packages/typespec-go/package.json @@ -3,7 +3,7 @@ "version": "0.10.3", "description": "TypeSpec emitter for Go SDKs", "type": "module", - "packageManager": "pnpm@10.30.3", + "packageManager": "pnpm@10.32.1", "exports": { ".": { "import": "./dist/typespec-go/src/index.js" @@ -50,26 +50,26 @@ "homepage": "https://github.com/Azure/autorest.go#readme", "readme": "https://github.com/Azure/autorest.go/blob/main/readme.md", "devDependencies": { - "@azure-tools/azure-http-specs": "0.1.0-alpha.37", - "@azure-tools/typespec-autorest": "0.65.0", - "@azure-tools/typespec-azure-core": "0.65.0", - "@azure-tools/typespec-azure-resource-manager": "0.65.0", - "@azure-tools/typespec-azure-rulesets": "0.65.0", - "@azure-tools/typespec-client-generator-core": "0.65.4", + "@azure-tools/azure-http-specs": "0.1.0-alpha.38", + "@azure-tools/typespec-autorest": "0.66.0", + "@azure-tools/typespec-azure-core": "0.66.0", + "@azure-tools/typespec-azure-resource-manager": "0.66.0", + "@azure-tools/typespec-azure-rulesets": "0.66.0", + "@azure-tools/typespec-client-generator-core": "0.66.2", "@types/node": "catalog:", "@types/semver": "catalog:", - "@typespec/compiler": "1.9.0", - "@typespec/events": "0.79.0", - "@typespec/http": "1.9.1", - "@typespec/http-specs": "0.1.0-alpha.32", - "@typespec/openapi": "1.9.0", - "@typespec/rest": "0.79.0", - "@typespec/spector": "0.1.0-alpha.23", - "@typespec/sse": "0.79.0", - "@typespec/streams": "0.79.0", - "@typespec/tspd": "0.74.0", - "@typespec/versioning": "0.79.0", - "@typespec/xml": "0.79.0", + "@typespec/compiler": "1.10.0", + "@typespec/events": "0.80.0", + "@typespec/http": "1.10.0", + "@typespec/http-specs": "0.1.0-alpha.34", + "@typespec/openapi": "1.10.0", + "@typespec/rest": "0.80.0", + "@typespec/spector": "0.1.0-alpha.24", + "@typespec/sse": "0.80.0", + "@typespec/streams": "0.80.0", + "@typespec/tspd": "0.74.1", + "@typespec/versioning": "0.80.0", + "@typespec/xml": "0.80.0", "@vitest/coverage-v8": "catalog:", "@vitest/ui": "catalog:", "eslint": "catalog:", @@ -78,9 +78,9 @@ "vitest": "catalog:" }, "peerDependencies": { - "@azure-tools/typespec-client-generator-core": "^0.65.4", - "@typespec/compiler": "^1.9.0", - "@typespec/http": "^1.9.1" + "@azure-tools/typespec-client-generator-core": "^0.66.2", + "@typespec/compiler": "^1.10.0", + "@typespec/http": "^1.10.0" }, "dependencies": { "semver": "catalog:", diff --git a/packages/typespec-go/test/azure-http-specs/azure/client-generator-core/flattengroup/fake/zz_flattenproperty_server.go b/packages/typespec-go/test/azure-http-specs/azure/client-generator-core/flattengroup/fake/zz_flattenproperty_server.go index bc527bb34d..c39066231e 100644 --- a/packages/typespec-go/test/azure-http-specs/azure/client-generator-core/flattengroup/fake/zz_flattenproperty_server.go +++ b/packages/typespec-go/test/azure-http-specs/azure/client-generator-core/flattengroup/fake/zz_flattenproperty_server.go @@ -21,6 +21,14 @@ type FlattenPropertyServer struct { // HTTP status codes to indicate success: http.StatusOK PutFlattenModel func(ctx context.Context, input flattengroup.FlattenModel, options *flattengroup.FlattenPropertyClientPutFlattenModelOptions) (resp azfake.Responder[flattengroup.FlattenPropertyClientPutFlattenModelResponse], errResp azfake.ErrorResponder) + // PutFlattenReadOnlyModel is the fake for method FlattenPropertyClient.PutFlattenReadOnlyModel + // HTTP status codes to indicate success: http.StatusOK + PutFlattenReadOnlyModel func(ctx context.Context, body flattengroup.Solution, options *flattengroup.FlattenPropertyClientPutFlattenReadOnlyModelOptions) (resp azfake.Responder[flattengroup.FlattenPropertyClientPutFlattenReadOnlyModelResponse], errResp azfake.ErrorResponder) + + // PutFlattenUnknownModel is the fake for method FlattenPropertyClient.PutFlattenUnknownModel + // HTTP status codes to indicate success: http.StatusOK + PutFlattenUnknownModel func(ctx context.Context, input flattengroup.FlattenUnknownModel, options *flattengroup.FlattenPropertyClientPutFlattenUnknownModelOptions) (resp azfake.Responder[flattengroup.FlattenPropertyClientPutFlattenUnknownModelResponse], errResp azfake.ErrorResponder) + // PutNestedFlattenModel is the fake for method FlattenPropertyClient.PutNestedFlattenModel // HTTP status codes to indicate success: http.StatusOK PutNestedFlattenModel func(ctx context.Context, input flattengroup.NestedFlattenModel, options *flattengroup.FlattenPropertyClientPutNestedFlattenModelOptions) (resp azfake.Responder[flattengroup.FlattenPropertyClientPutNestedFlattenModelResponse], errResp azfake.ErrorResponder) @@ -64,6 +72,10 @@ func (f *FlattenPropertyServerTransport) dispatchToMethodFake(req *http.Request, switch method { case "FlattenPropertyClient.PutFlattenModel": res.resp, res.err = f.dispatchPutFlattenModel(req) + case "FlattenPropertyClient.PutFlattenReadOnlyModel": + res.resp, res.err = f.dispatchPutFlattenReadOnlyModel(req) + case "FlattenPropertyClient.PutFlattenUnknownModel": + res.resp, res.err = f.dispatchPutFlattenUnknownModel(req) case "FlattenPropertyClient.PutNestedFlattenModel": res.resp, res.err = f.dispatchPutNestedFlattenModel(req) default: @@ -108,6 +120,52 @@ func (f *FlattenPropertyServerTransport) dispatchPutFlattenModel(req *http.Reque return resp, nil } +func (f *FlattenPropertyServerTransport) dispatchPutFlattenReadOnlyModel(req *http.Request) (*http.Response, error) { + if f.srv.PutFlattenReadOnlyModel == nil { + return nil, &nonRetriableError{errors.New("fake for method PutFlattenReadOnlyModel not implemented")} + } + body, err := server.UnmarshalRequestAsJSON[flattengroup.Solution](req) + if err != nil { + return nil, err + } + respr, errRespr := f.srv.PutFlattenReadOnlyModel(req.Context(), body, nil) + if respErr := server.GetError(errRespr, req); respErr != nil { + return nil, respErr + } + respContent := server.GetResponseContent(respr) + if !contains([]int{http.StatusOK}, respContent.HTTPStatus) { + return nil, &nonRetriableError{fmt.Errorf("unexpected status code %d. acceptable values are http.StatusOK", respContent.HTTPStatus)} + } + resp, err := server.MarshalResponseAsJSON(respContent, server.GetResponse(respr).Solution, req) + if err != nil { + return nil, err + } + return resp, nil +} + +func (f *FlattenPropertyServerTransport) dispatchPutFlattenUnknownModel(req *http.Request) (*http.Response, error) { + if f.srv.PutFlattenUnknownModel == nil { + return nil, &nonRetriableError{errors.New("fake for method PutFlattenUnknownModel not implemented")} + } + body, err := server.UnmarshalRequestAsJSON[flattengroup.FlattenUnknownModel](req) + if err != nil { + return nil, err + } + respr, errRespr := f.srv.PutFlattenUnknownModel(req.Context(), body, nil) + if respErr := server.GetError(errRespr, req); respErr != nil { + return nil, respErr + } + respContent := server.GetResponseContent(respr) + if !contains([]int{http.StatusOK}, respContent.HTTPStatus) { + return nil, &nonRetriableError{fmt.Errorf("unexpected status code %d. acceptable values are http.StatusOK", respContent.HTTPStatus)} + } + resp, err := server.MarshalResponseAsJSON(respContent, server.GetResponse(respr).FlattenUnknownModel, req) + if err != nil { + return nil, err + } + return resp, nil +} + func (f *FlattenPropertyServerTransport) dispatchPutNestedFlattenModel(req *http.Request) (*http.Response, error) { if f.srv.PutNestedFlattenModel == nil { return nil, &nonRetriableError{errors.New("fake for method PutNestedFlattenModel not implemented")} diff --git a/packages/typespec-go/test/azure-http-specs/azure/client-generator-core/flattengroup/flattenproperty_client_test.go b/packages/typespec-go/test/azure-http-specs/azure/client-generator-core/flattengroup/flattenproperty_client_test.go index 4fd566f1d4..a9fd2d96ef 100644 --- a/packages/typespec-go/test/azure-http-specs/azure/client-generator-core/flattengroup/flattenproperty_client_test.go +++ b/packages/typespec-go/test/azure-http-specs/azure/client-generator-core/flattengroup/flattenproperty_client_test.go @@ -57,3 +57,31 @@ func TestFlattenPropertyClient_PutNestedFlattenModel(t *testing.T) { }, }, resp.NestedFlattenModel) } + +func TestFlattenPropertyClient_PutFlattenUnknownModel(t *testing.T) { + client, err := flattengroup.NewFlattenPropertyClientWithNoCredential("http://localhost:3000", nil) + require.NoError(t, err) + resp, err := client.PutFlattenUnknownModel(context.Background(), flattengroup.FlattenUnknownModel{ + Name: to.Ptr("foo"), + }, nil) + require.NoError(t, err) + require.Equal(t, to.Ptr("test"), resp.Name) + props, ok := resp.Properties.(map[string]any) + require.True(t, ok) + require.Equal(t, "value1", props["key1"]) + require.Equal(t, "value2", props["key2"]) +} + +func TestFlattenPropertyClient_PutFlattenReadOnlyModel(t *testing.T) { + client, err := flattengroup.NewFlattenPropertyClientWithNoCredential("http://localhost:3000", nil) + require.NoError(t, err) + resp, err := client.PutFlattenReadOnlyModel(context.Background(), flattengroup.Solution{ + Name: to.Ptr("foo"), + }, nil) + require.NoError(t, err) + require.Equal(t, to.Ptr("foo"), resp.Name) + require.NotNil(t, resp.Properties) + require.Equal(t, to.Ptr("solution1"), resp.Properties.SolutionID) + require.Equal(t, to.Ptr("Solution Title"), resp.Properties.Title) + require.Equal(t, to.Ptr("Solution Content"), resp.Properties.Content) +} diff --git a/packages/typespec-go/test/azure-http-specs/azure/client-generator-core/flattengroup/zz_flattenproperty_client.go b/packages/typespec-go/test/azure-http-specs/azure/client-generator-core/flattengroup/zz_flattenproperty_client.go index 69c69e66f4..573c99bed5 100644 --- a/packages/typespec-go/test/azure-http-specs/azure/client-generator-core/flattengroup/zz_flattenproperty_client.go +++ b/packages/typespec-go/test/azure-http-specs/azure/client-generator-core/flattengroup/zz_flattenproperty_client.go @@ -92,6 +92,106 @@ func (client *FlattenPropertyClient) putFlattenModelHandleResponse(resp *http.Re return result, nil } +// PutFlattenReadOnlyModel - +// If the operation fails it returns an *azcore.ResponseError type. +// - options - FlattenPropertyClientPutFlattenReadOnlyModelOptions contains the optional parameters for the FlattenPropertyClient.PutFlattenReadOnlyModel +// method. +func (client *FlattenPropertyClient) PutFlattenReadOnlyModel(ctx context.Context, body Solution, options *FlattenPropertyClientPutFlattenReadOnlyModelOptions) (FlattenPropertyClientPutFlattenReadOnlyModelResponse, error) { + var err error + const operationName = "FlattenPropertyClient.PutFlattenReadOnlyModel" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.putFlattenReadOnlyModelCreateRequest(ctx, body, options) + if err != nil { + return FlattenPropertyClientPutFlattenReadOnlyModelResponse{}, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return FlattenPropertyClientPutFlattenReadOnlyModelResponse{}, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK) { + err = runtime.NewResponseError(httpResp) + return FlattenPropertyClientPutFlattenReadOnlyModelResponse{}, err + } + resp, err := client.putFlattenReadOnlyModelHandleResponse(httpResp) + return resp, err +} + +// putFlattenReadOnlyModelCreateRequest creates the PutFlattenReadOnlyModel request. +func (client *FlattenPropertyClient) putFlattenReadOnlyModelCreateRequest(ctx context.Context, body Solution, _ *FlattenPropertyClientPutFlattenReadOnlyModelOptions) (*policy.Request, error) { + urlPath := "/azure/client-generator-core/flatten-property/flattenReadOnlyModel" + req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.endpoint, urlPath)) + if err != nil { + return nil, err + } + req.Raw().Header["Accept"] = []string{"application/json"} + req.Raw().Header["Content-Type"] = []string{"application/json"} + if err := runtime.MarshalAsJSON(req, body); err != nil { + return nil, err + } + return req, nil +} + +// putFlattenReadOnlyModelHandleResponse handles the PutFlattenReadOnlyModel response. +func (client *FlattenPropertyClient) putFlattenReadOnlyModelHandleResponse(resp *http.Response) (FlattenPropertyClientPutFlattenReadOnlyModelResponse, error) { + result := FlattenPropertyClientPutFlattenReadOnlyModelResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.Solution); err != nil { + return FlattenPropertyClientPutFlattenReadOnlyModelResponse{}, err + } + return result, nil +} + +// PutFlattenUnknownModel - +// If the operation fails it returns an *azcore.ResponseError type. +// - options - FlattenPropertyClientPutFlattenUnknownModelOptions contains the optional parameters for the FlattenPropertyClient.PutFlattenUnknownModel +// method. +func (client *FlattenPropertyClient) PutFlattenUnknownModel(ctx context.Context, input FlattenUnknownModel, options *FlattenPropertyClientPutFlattenUnknownModelOptions) (FlattenPropertyClientPutFlattenUnknownModelResponse, error) { + var err error + const operationName = "FlattenPropertyClient.PutFlattenUnknownModel" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.putFlattenUnknownModelCreateRequest(ctx, input, options) + if err != nil { + return FlattenPropertyClientPutFlattenUnknownModelResponse{}, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return FlattenPropertyClientPutFlattenUnknownModelResponse{}, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK) { + err = runtime.NewResponseError(httpResp) + return FlattenPropertyClientPutFlattenUnknownModelResponse{}, err + } + resp, err := client.putFlattenUnknownModelHandleResponse(httpResp) + return resp, err +} + +// putFlattenUnknownModelCreateRequest creates the PutFlattenUnknownModel request. +func (client *FlattenPropertyClient) putFlattenUnknownModelCreateRequest(ctx context.Context, input FlattenUnknownModel, _ *FlattenPropertyClientPutFlattenUnknownModelOptions) (*policy.Request, error) { + urlPath := "/azure/client-generator-core/flatten-property/flattenUnknownModel" + req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.endpoint, urlPath)) + if err != nil { + return nil, err + } + req.Raw().Header["Accept"] = []string{"application/json"} + req.Raw().Header["Content-Type"] = []string{"application/json"} + if err := runtime.MarshalAsJSON(req, input); err != nil { + return nil, err + } + return req, nil +} + +// putFlattenUnknownModelHandleResponse handles the PutFlattenUnknownModel response. +func (client *FlattenPropertyClient) putFlattenUnknownModelHandleResponse(resp *http.Response) (FlattenPropertyClientPutFlattenUnknownModelResponse, error) { + result := FlattenPropertyClientPutFlattenUnknownModelResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.FlattenUnknownModel); err != nil { + return FlattenPropertyClientPutFlattenUnknownModelResponse{}, err + } + return result, nil +} + // PutNestedFlattenModel - // If the operation fails it returns an *azcore.ResponseError type. // - options - FlattenPropertyClientPutNestedFlattenModelOptions contains the optional parameters for the FlattenPropertyClient.PutNestedFlattenModel diff --git a/packages/typespec-go/test/azure-http-specs/azure/client-generator-core/flattengroup/zz_models.go b/packages/typespec-go/test/azure-http-specs/azure/client-generator-core/flattengroup/zz_models.go index 3a13c0a506..3e93c081f3 100644 --- a/packages/typespec-go/test/azure-http-specs/azure/client-generator-core/flattengroup/zz_models.go +++ b/packages/typespec-go/test/azure-http-specs/azure/client-generator-core/flattengroup/zz_models.go @@ -31,6 +31,13 @@ type FlattenModel struct { Properties *ChildModel } +// FlattenUnknownModel - This is the model with unknown type properties to be flattened. +type FlattenUnknownModel struct { + // REQUIRED + Name *string + Properties any +} + // NestedFlattenModel - This is the model with two levels of flattening. type NestedFlattenModel struct { // REQUIRED @@ -39,3 +46,22 @@ type NestedFlattenModel struct { // REQUIRED Properties *ChildFlattenModel } + +// Solution - This is the model with flattened properties that are all read-only. +type Solution struct { + // REQUIRED + Name *string + Properties *SolutionProperties +} + +// SolutionProperties - This is the model with all read-only properties to be flattened. +type SolutionProperties struct { + // READ-ONLY + Content *string + + // READ-ONLY + SolutionID *string + + // READ-ONLY + Title *string +} diff --git a/packages/typespec-go/test/azure-http-specs/azure/client-generator-core/flattengroup/zz_models_serde.go b/packages/typespec-go/test/azure-http-specs/azure/client-generator-core/flattengroup/zz_models_serde.go index 308f8baed4..36724fd485 100644 --- a/packages/typespec-go/test/azure-http-specs/azure/client-generator-core/flattengroup/zz_models_serde.go +++ b/packages/typespec-go/test/azure-http-specs/azure/client-generator-core/flattengroup/zz_models_serde.go @@ -104,6 +104,37 @@ func (f *FlattenModel) UnmarshalJSON(data []byte) error { return nil } +// MarshalJSON implements the json.Marshaller interface for type FlattenUnknownModel. +func (f FlattenUnknownModel) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "name", f.Name) + populateAny(objectMap, "properties", f.Properties) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type FlattenUnknownModel. +func (f *FlattenUnknownModel) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", f, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "name": + err = unpopulate(val, "Name", &f.Name) + delete(rawMsg, key) + case "properties": + err = unpopulate(val, "Properties", &f.Properties) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", f, err) + } + } + return nil +} + // MarshalJSON implements the json.Marshaller interface for type NestedFlattenModel. func (n NestedFlattenModel) MarshalJSON() ([]byte, error) { objectMap := make(map[string]any) @@ -135,6 +166,72 @@ func (n *NestedFlattenModel) UnmarshalJSON(data []byte) error { return nil } +// MarshalJSON implements the json.Marshaller interface for type Solution. +func (s Solution) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "name", s.Name) + populate(objectMap, "properties", s.Properties) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type Solution. +func (s *Solution) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", s, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "name": + err = unpopulate(val, "Name", &s.Name) + delete(rawMsg, key) + case "properties": + err = unpopulate(val, "Properties", &s.Properties) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", s, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type SolutionProperties. +func (s SolutionProperties) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "content", s.Content) + populate(objectMap, "solutionId", s.SolutionID) + populate(objectMap, "title", s.Title) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type SolutionProperties. +func (s *SolutionProperties) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", s, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "content": + err = unpopulate(val, "Content", &s.Content) + delete(rawMsg, key) + case "solutionId": + err = unpopulate(val, "SolutionID", &s.SolutionID) + delete(rawMsg, key) + case "title": + err = unpopulate(val, "Title", &s.Title) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", s, err) + } + } + return nil +} + func populate(m map[string]any, k string, v any) { if v == nil { return @@ -145,6 +242,16 @@ func populate(m map[string]any, k string, v any) { } } +func populateAny(m map[string]any, k string, v any) { + if v == nil { + return + } else if azcore.IsNullValue(v) { + m[k] = nil + } else { + m[k] = v + } +} + func unpopulate(data json.RawMessage, fn string, v any) error { if data == nil || string(data) == "null" { return nil diff --git a/packages/typespec-go/test/azure-http-specs/azure/client-generator-core/flattengroup/zz_options.go b/packages/typespec-go/test/azure-http-specs/azure/client-generator-core/flattengroup/zz_options.go index d7b9c62cd2..61334a4c3c 100644 --- a/packages/typespec-go/test/azure-http-specs/azure/client-generator-core/flattengroup/zz_options.go +++ b/packages/typespec-go/test/azure-http-specs/azure/client-generator-core/flattengroup/zz_options.go @@ -10,6 +10,18 @@ type FlattenPropertyClientPutFlattenModelOptions struct { // placeholder for future optional parameters } +// FlattenPropertyClientPutFlattenReadOnlyModelOptions contains the optional parameters for the FlattenPropertyClient.PutFlattenReadOnlyModel +// method. +type FlattenPropertyClientPutFlattenReadOnlyModelOptions struct { + // placeholder for future optional parameters +} + +// FlattenPropertyClientPutFlattenUnknownModelOptions contains the optional parameters for the FlattenPropertyClient.PutFlattenUnknownModel +// method. +type FlattenPropertyClientPutFlattenUnknownModelOptions struct { + // placeholder for future optional parameters +} + // FlattenPropertyClientPutNestedFlattenModelOptions contains the optional parameters for the FlattenPropertyClient.PutNestedFlattenModel // method. type FlattenPropertyClientPutNestedFlattenModelOptions struct { diff --git a/packages/typespec-go/test/azure-http-specs/azure/client-generator-core/flattengroup/zz_responses.go b/packages/typespec-go/test/azure-http-specs/azure/client-generator-core/flattengroup/zz_responses.go index c69ffdad37..73816559e2 100644 --- a/packages/typespec-go/test/azure-http-specs/azure/client-generator-core/flattengroup/zz_responses.go +++ b/packages/typespec-go/test/azure-http-specs/azure/client-generator-core/flattengroup/zz_responses.go @@ -10,6 +10,18 @@ type FlattenPropertyClientPutFlattenModelResponse struct { FlattenModel } +// FlattenPropertyClientPutFlattenReadOnlyModelResponse contains the response from method FlattenPropertyClient.PutFlattenReadOnlyModel. +type FlattenPropertyClientPutFlattenReadOnlyModelResponse struct { + // This is the model with flattened properties that are all read-only. + Solution +} + +// FlattenPropertyClientPutFlattenUnknownModelResponse contains the response from method FlattenPropertyClient.PutFlattenUnknownModel. +type FlattenPropertyClientPutFlattenUnknownModelResponse struct { + // This is the model with unknown type properties to be flattened. + FlattenUnknownModel +} + // FlattenPropertyClientPutNestedFlattenModelResponse contains the response from method FlattenPropertyClient.PutNestedFlattenModel. type FlattenPropertyClientPutNestedFlattenModelResponse struct { // This is the model with two levels of flattening. diff --git a/packages/typespec-go/test/azure-http-specs/azure/core/azurepagegroup/custom_client_test.go b/packages/typespec-go/test/azure-http-specs/azure/core/azurepagegroup/custom_client_test.go index 45c68f5f82..9b8dfac4fe 100644 --- a/packages/typespec-go/test/azure-http-specs/azure/core/azurepagegroup/custom_client_test.go +++ b/packages/typespec-go/test/azure-http-specs/azure/core/azurepagegroup/custom_client_test.go @@ -109,3 +109,37 @@ func TestPageClient_NewListWithParametersPager(t *testing.T) { } require.EqualValues(t, 2, pages) }*/ + +// TODO: runtime.FetcherForNextLink doesn't support relative next link URLs +/*func TestPageClient_NewWithRelativeNextLinkPager(t *testing.T) { + client, err := azurepagegroup.NewPageClientWithNoCredential("http://localhost:3000", nil) + require.NoError(t, err) + pager := client.NewWithRelativeNextLinkPager(nil) + pages := 0 + for pager.More() { + page, err := pager.NextPage(context.Background()) + require.NoError(t, err) + pages++ + switch pages { + case 1: + require.EqualValues(t, []*azurepagegroup.User{ + { + ID: to.Ptr[int32](1), + Name: to.Ptr("User1"), + Etag: to.Ptr[azcore.ETag]("11bdc430-65e8-45ad-81d9-8ffa60d55b59"), + }, + }, page.Value) + case 2: + require.EqualValues(t, []*azurepagegroup.User{ + { + ID: to.Ptr[int32](2), + Name: to.Ptr("User2"), + Etag: to.Ptr[azcore.ETag]("11bdc430-65e8-45ad-81d9-8ffa60d55b59"), + }, + }, page.Value) + default: + t.Fatalf("unexpected page number %d", pages) + } + } + require.EqualValues(t, 2, pages) +}*/ diff --git a/packages/typespec-go/test/azure-http-specs/azure/core/azurepagegroup/fake/zz_page_server.go b/packages/typespec-go/test/azure-http-specs/azure/core/azurepagegroup/fake/zz_page_server.go index d5ed02fdd6..69f6b8ff8a 100644 --- a/packages/typespec-go/test/azure-http-specs/azure/core/azurepagegroup/fake/zz_page_server.go +++ b/packages/typespec-go/test/azure-http-specs/azure/core/azurepagegroup/fake/zz_page_server.go @@ -34,6 +34,10 @@ type PageServer struct { // NewListWithParametersPager is the fake for method PageClient.NewListWithParametersPager // HTTP status codes to indicate success: http.StatusOK NewListWithParametersPager func(bodyInput azurepagegroup.ListItemInputBody, options *azurepagegroup.PageClientListWithParametersOptions) (resp azfake.PagerResponder[azurepagegroup.PageClientListWithParametersResponse]) + + // NewWithRelativeNextLinkPager is the fake for method PageClient.NewWithRelativeNextLinkPager + // HTTP status codes to indicate success: http.StatusOK + NewWithRelativeNextLinkPager func(options *azurepagegroup.PageClientWithRelativeNextLinkOptions) (resp azfake.PagerResponder[azurepagegroup.PageClientWithRelativeNextLinkResponse]) } // NewPageServerTransport creates a new instance of PageServerTransport with the provided implementation. @@ -45,6 +49,7 @@ func NewPageServerTransport(srv *PageServer) *PageServerTransport { newListWithCustomPageModelPager: newTracker[azfake.PagerResponder[azurepagegroup.PageClientListWithCustomPageModelResponse]](), newListWithPagePager: newTracker[azfake.PagerResponder[azurepagegroup.PageClientListWithPageResponse]](), newListWithParametersPager: newTracker[azfake.PagerResponder[azurepagegroup.PageClientListWithParametersResponse]](), + newWithRelativeNextLinkPager: newTracker[azfake.PagerResponder[azurepagegroup.PageClientWithRelativeNextLinkResponse]](), } } @@ -57,6 +62,7 @@ type PageServerTransport struct { newListWithCustomPageModelPager *tracker[azfake.PagerResponder[azurepagegroup.PageClientListWithCustomPageModelResponse]] newListWithPagePager *tracker[azfake.PagerResponder[azurepagegroup.PageClientListWithPageResponse]] newListWithParametersPager *tracker[azfake.PagerResponder[azurepagegroup.PageClientListWithParametersResponse]] + newWithRelativeNextLinkPager *tracker[azfake.PagerResponder[azurepagegroup.PageClientWithRelativeNextLinkResponse]] } // Do implements the policy.Transporter interface for PageServerTransport. @@ -108,6 +114,8 @@ func (p *PageServerTransport) dispatchToMethodFake(req *http.Request, method str res.resp, res.err = p.dispatchNewListWithPagePager(req) case "PageClient.NewListWithParametersPager": res.resp, res.err = p.dispatchNewListWithParametersPager(req) + case "PageClient.NewWithRelativeNextLinkPager": + res.resp, res.err = p.dispatchNewWithRelativeNextLinkPager(req) default: res.err = fmt.Errorf("unhandled API %s", method) } @@ -224,6 +232,33 @@ func (p *PageServerTransport) dispatchNewListWithParametersPager(req *http.Reque return resp, nil } +func (p *PageServerTransport) dispatchNewWithRelativeNextLinkPager(req *http.Request) (*http.Response, error) { + if p.srv.NewWithRelativeNextLinkPager == nil { + return nil, &nonRetriableError{errors.New("fake for method NewWithRelativeNextLinkPager not implemented")} + } + newWithRelativeNextLinkPager := p.newWithRelativeNextLinkPager.get(req) + if newWithRelativeNextLinkPager == nil { + resp := p.srv.NewWithRelativeNextLinkPager(nil) + newWithRelativeNextLinkPager = &resp + p.newWithRelativeNextLinkPager.add(req, newWithRelativeNextLinkPager) + server.PagerResponderInjectNextLinks(newWithRelativeNextLinkPager, req, func(page *azurepagegroup.PageClientWithRelativeNextLinkResponse, createLink func() string) { + page.NextLink = to.Ptr(createLink()) + }) + } + resp, err := server.PagerResponderNext(newWithRelativeNextLinkPager, req) + if err != nil { + return nil, err + } + if !contains([]int{http.StatusOK}, resp.StatusCode) { + p.newWithRelativeNextLinkPager.remove(req) + return nil, &nonRetriableError{fmt.Errorf("unexpected status code %d. acceptable values are http.StatusOK", resp.StatusCode)} + } + if !server.PagerResponderMore(newWithRelativeNextLinkPager) { + p.newWithRelativeNextLinkPager.remove(req) + } + return resp, nil +} + // set this to conditionally intercept incoming requests to PageServerTransport var pageServerTransportInterceptor interface { // Do returns true if the server transport should use the returned response/error diff --git a/packages/typespec-go/test/azure-http-specs/azure/core/azurepagegroup/zz_options.go b/packages/typespec-go/test/azure-http-specs/azure/core/azurepagegroup/zz_options.go index 523eab2419..f69664d333 100644 --- a/packages/typespec-go/test/azure-http-specs/azure/core/azurepagegroup/zz_options.go +++ b/packages/typespec-go/test/azure-http-specs/azure/core/azurepagegroup/zz_options.go @@ -21,6 +21,12 @@ type PageClientListWithParametersOptions struct { Another *ListItemInputExtensibleEnum } +// PageClientWithRelativeNextLinkOptions contains the optional parameters for the PageClient.NewWithRelativeNextLinkPager +// method. +type PageClientWithRelativeNextLinkOptions struct { + // placeholder for future optional parameters +} + // PageTwoModelsAsPageItemClientListFirstItemOptions contains the optional parameters for the PageTwoModelsAsPageItemClient.NewListFirstItemPager // method. type PageTwoModelsAsPageItemClientListFirstItemOptions struct { diff --git a/packages/typespec-go/test/azure-http-specs/azure/core/azurepagegroup/zz_page_client.go b/packages/typespec-go/test/azure-http-specs/azure/core/azurepagegroup/zz_page_client.go index cd8df6f4b7..5afc763f05 100644 --- a/packages/typespec-go/test/azure-http-specs/azure/core/azurepagegroup/zz_page_client.go +++ b/packages/typespec-go/test/azure-http-specs/azure/core/azurepagegroup/zz_page_client.go @@ -214,3 +214,49 @@ func (client *PageClient) listWithParametersHandleResponse(resp *http.Response) } return result, nil } + +// NewWithRelativeNextLinkPager - List with relative nextLink URL that requires endpoint resolution. +// - options - PageClientWithRelativeNextLinkOptions contains the optional parameters for the PageClient.NewWithRelativeNextLinkPager +// method. +func (client *PageClient) NewWithRelativeNextLinkPager(options *PageClientWithRelativeNextLinkOptions) *runtime.Pager[PageClientWithRelativeNextLinkResponse] { + return runtime.NewPager(runtime.PagingHandler[PageClientWithRelativeNextLinkResponse]{ + More: func(page PageClientWithRelativeNextLinkResponse) bool { + return page.NextLink != nil && len(*page.NextLink) > 0 + }, + Fetcher: func(ctx context.Context, page *PageClientWithRelativeNextLinkResponse) (PageClientWithRelativeNextLinkResponse, error) { + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, "PageClient.NewWithRelativeNextLinkPager") + nextLink := "" + if page != nil { + nextLink = *page.NextLink + } + resp, err := runtime.FetcherForNextLink(ctx, client.internal.Pipeline(), nextLink, func(ctx context.Context) (*policy.Request, error) { + return client.withRelativeNextLinkCreateRequest(ctx, options) + }, nil) + if err != nil { + return PageClientWithRelativeNextLinkResponse{}, err + } + return client.withRelativeNextLinkHandleResponse(resp) + }, + Tracer: client.internal.Tracer(), + }) +} + +// withRelativeNextLinkCreateRequest creates the WithRelativeNextLink request. +func (client *PageClient) withRelativeNextLinkCreateRequest(ctx context.Context, _ *PageClientWithRelativeNextLinkOptions) (*policy.Request, error) { + urlPath := "/azure/core/page/with-relative-next-link" + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.endpoint, urlPath)) + if err != nil { + return nil, err + } + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// withRelativeNextLinkHandleResponse handles the WithRelativeNextLink response. +func (client *PageClient) withRelativeNextLinkHandleResponse(resp *http.Response) (PageClientWithRelativeNextLinkResponse, error) { + result := PageClientWithRelativeNextLinkResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.PagedUser); err != nil { + return PageClientWithRelativeNextLinkResponse{}, err + } + return result, nil +} diff --git a/packages/typespec-go/test/azure-http-specs/azure/core/azurepagegroup/zz_responses.go b/packages/typespec-go/test/azure-http-specs/azure/core/azurepagegroup/zz_responses.go index b91ff97a83..4622119d24 100644 --- a/packages/typespec-go/test/azure-http-specs/azure/core/azurepagegroup/zz_responses.go +++ b/packages/typespec-go/test/azure-http-specs/azure/core/azurepagegroup/zz_responses.go @@ -21,6 +21,12 @@ type PageClientListWithParametersResponse struct { PagedUser } +// PageClientWithRelativeNextLinkResponse contains the response from method PageClient.NewWithRelativeNextLinkPager. +type PageClientWithRelativeNextLinkResponse struct { + // Paged collection of User items + PagedUser +} + // PageTwoModelsAsPageItemClientListFirstItemResponse contains the response from method PageTwoModelsAsPageItemClient.NewListFirstItemPager. type PageTwoModelsAsPageItemClientListFirstItemResponse struct { // Paged collection of FirstItem items diff --git a/packages/typespec-go/test/http-specs/payload/xmlgroup/fake/zz_xml_server.go b/packages/typespec-go/test/http-specs/payload/xmlgroup/fake/zz_xml_server.go index 198b8099ef..56b57df713 100644 --- a/packages/typespec-go/test/http-specs/payload/xmlgroup/fake/zz_xml_server.go +++ b/packages/typespec-go/test/http-specs/payload/xmlgroup/fake/zz_xml_server.go @@ -21,6 +21,9 @@ type XMLServer struct { // XMLModelWithAttributesValueServer contains the fakes for client XMLModelWithAttributesValueClient XMLModelWithAttributesValueServer XMLModelWithAttributesValueServer + // XMLModelWithDatetimeValueServer contains the fakes for client XMLModelWithDatetimeValueClient + XMLModelWithDatetimeValueServer XMLModelWithDatetimeValueServer + // XMLModelWithDictionaryValueServer contains the fakes for client XMLModelWithDictionaryValueClient XMLModelWithDictionaryValueServer XMLModelWithDictionaryValueServer @@ -30,6 +33,9 @@ type XMLServer struct { // XMLModelWithEncodedNamesValueServer contains the fakes for client XMLModelWithEncodedNamesValueClient XMLModelWithEncodedNamesValueServer XMLModelWithEncodedNamesValueServer + // XMLModelWithEnumValueServer contains the fakes for client XMLModelWithEnumValueClient + XMLModelWithEnumValueServer XMLModelWithEnumValueServer + // XMLModelWithOptionalFieldValueServer contains the fakes for client XMLModelWithOptionalFieldValueClient XMLModelWithOptionalFieldValueServer XMLModelWithOptionalFieldValueServer @@ -69,9 +75,11 @@ type XMLServerTransport struct { trMu sync.Mutex trXMLModelWithArrayOfModelValueServer *XMLModelWithArrayOfModelValueServerTransport trXMLModelWithAttributesValueServer *XMLModelWithAttributesValueServerTransport + trXMLModelWithDatetimeValueServer *XMLModelWithDatetimeValueServerTransport trXMLModelWithDictionaryValueServer *XMLModelWithDictionaryValueServerTransport trXMLModelWithEmptyArrayValueServer *XMLModelWithEmptyArrayValueServerTransport trXMLModelWithEncodedNamesValueServer *XMLModelWithEncodedNamesValueServerTransport + trXMLModelWithEnumValueServer *XMLModelWithEnumValueServerTransport trXMLModelWithOptionalFieldValueServer *XMLModelWithOptionalFieldValueServerTransport trXMLModelWithRenamedArraysValueServer *XMLModelWithRenamedArraysValueServerTransport trXMLModelWithRenamedFieldsValueServer *XMLModelWithRenamedFieldsValueServerTransport @@ -108,6 +116,11 @@ func (x *XMLServerTransport) dispatchToClientFake(req *http.Request, client stri return NewXMLModelWithAttributesValueServerTransport(&x.srv.XMLModelWithAttributesValueServer) }) resp, err = x.trXMLModelWithAttributesValueServer.Do(req) + case "XMLModelWithDatetimeValueClient": + initServer(&x.trMu, &x.trXMLModelWithDatetimeValueServer, func() *XMLModelWithDatetimeValueServerTransport { + return NewXMLModelWithDatetimeValueServerTransport(&x.srv.XMLModelWithDatetimeValueServer) + }) + resp, err = x.trXMLModelWithDatetimeValueServer.Do(req) case "XMLModelWithDictionaryValueClient": initServer(&x.trMu, &x.trXMLModelWithDictionaryValueServer, func() *XMLModelWithDictionaryValueServerTransport { return NewXMLModelWithDictionaryValueServerTransport(&x.srv.XMLModelWithDictionaryValueServer) @@ -123,6 +136,11 @@ func (x *XMLServerTransport) dispatchToClientFake(req *http.Request, client stri return NewXMLModelWithEncodedNamesValueServerTransport(&x.srv.XMLModelWithEncodedNamesValueServer) }) resp, err = x.trXMLModelWithEncodedNamesValueServer.Do(req) + case "XMLModelWithEnumValueClient": + initServer(&x.trMu, &x.trXMLModelWithEnumValueServer, func() *XMLModelWithEnumValueServerTransport { + return NewXMLModelWithEnumValueServerTransport(&x.srv.XMLModelWithEnumValueServer) + }) + resp, err = x.trXMLModelWithEnumValueServer.Do(req) case "XMLModelWithOptionalFieldValueClient": initServer(&x.trMu, &x.trXMLModelWithOptionalFieldValueServer, func() *XMLModelWithOptionalFieldValueServerTransport { return NewXMLModelWithOptionalFieldValueServerTransport(&x.srv.XMLModelWithOptionalFieldValueServer) diff --git a/packages/typespec-go/test/http-specs/payload/xmlgroup/fake/zz_xmlmodelwithdatetimevalue_server.go b/packages/typespec-go/test/http-specs/payload/xmlgroup/fake/zz_xmlmodelwithdatetimevalue_server.go new file mode 100644 index 0000000000..697a22acb3 --- /dev/null +++ b/packages/typespec-go/test/http-specs/payload/xmlgroup/fake/zz_xmlmodelwithdatetimevalue_server.go @@ -0,0 +1,137 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) Go Code Generator. DO NOT EDIT. + +package fake + +import ( + "context" + "errors" + "fmt" + azfake "github.com/Azure/azure-sdk-for-go/sdk/azcore/fake" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/fake/server" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime" + "net/http" + "xmlgroup" +) + +// XMLModelWithDatetimeValueServer is a fake server for instances of the xmlgroup.XMLModelWithDatetimeValueClient type. +type XMLModelWithDatetimeValueServer struct { + // Get is the fake for method XMLModelWithDatetimeValueClient.Get + // HTTP status codes to indicate success: http.StatusOK + Get func(ctx context.Context, options *xmlgroup.XMLModelWithDatetimeValueClientGetOptions) (resp azfake.Responder[xmlgroup.XMLModelWithDatetimeValueClientGetResponse], errResp azfake.ErrorResponder) + + // Put is the fake for method XMLModelWithDatetimeValueClient.Put + // HTTP status codes to indicate success: http.StatusNoContent + Put func(ctx context.Context, input xmlgroup.ModelWithDatetime, options *xmlgroup.XMLModelWithDatetimeValueClientPutOptions) (resp azfake.Responder[xmlgroup.XMLModelWithDatetimeValueClientPutResponse], errResp azfake.ErrorResponder) +} + +// NewXMLModelWithDatetimeValueServerTransport creates a new instance of XMLModelWithDatetimeValueServerTransport with the provided implementation. +// The returned XMLModelWithDatetimeValueServerTransport instance is connected to an instance of xmlgroup.XMLModelWithDatetimeValueClient via the +// azcore.ClientOptions.Transporter field in the client's constructor parameters. +func NewXMLModelWithDatetimeValueServerTransport(srv *XMLModelWithDatetimeValueServer) *XMLModelWithDatetimeValueServerTransport { + return &XMLModelWithDatetimeValueServerTransport{srv: srv} +} + +// XMLModelWithDatetimeValueServerTransport connects instances of xmlgroup.XMLModelWithDatetimeValueClient to instances of XMLModelWithDatetimeValueServer. +// Don't use this type directly, use NewXMLModelWithDatetimeValueServerTransport instead. +type XMLModelWithDatetimeValueServerTransport struct { + srv *XMLModelWithDatetimeValueServer +} + +// Do implements the policy.Transporter interface for XMLModelWithDatetimeValueServerTransport. +func (x *XMLModelWithDatetimeValueServerTransport) Do(req *http.Request) (*http.Response, error) { + rawMethod := req.Context().Value(runtime.CtxAPINameKey{}) + method, ok := rawMethod.(string) + if !ok { + return nil, nonRetriableError{errors.New("unable to dispatch request, missing value for CtxAPINameKey")} + } + + return x.dispatchToMethodFake(req, method) +} + +func (x *XMLModelWithDatetimeValueServerTransport) dispatchToMethodFake(req *http.Request, method string) (*http.Response, error) { + resultChan := make(chan result) + defer close(resultChan) + + go func() { + var intercepted bool + var res result + if xmlModelWithDatetimeValueServerTransportInterceptor != nil { + res.resp, res.err, intercepted = xmlModelWithDatetimeValueServerTransportInterceptor.Do(req) + } + if !intercepted { + switch method { + case "XMLModelWithDatetimeValueClient.Get": + res.resp, res.err = x.dispatchGet(req) + case "XMLModelWithDatetimeValueClient.Put": + res.resp, res.err = x.dispatchPut(req) + default: + res.err = fmt.Errorf("unhandled API %s", method) + } + + } + select { + case resultChan <- res: + case <-req.Context().Done(): + } + }() + + select { + case <-req.Context().Done(): + return nil, req.Context().Err() + case res := <-resultChan: + return res.resp, res.err + } +} + +func (x *XMLModelWithDatetimeValueServerTransport) dispatchGet(req *http.Request) (*http.Response, error) { + if x.srv.Get == nil { + return nil, &nonRetriableError{errors.New("fake for method Get not implemented")} + } + respr, errRespr := x.srv.Get(req.Context(), nil) + if respErr := server.GetError(errRespr, req); respErr != nil { + return nil, respErr + } + respContent := server.GetResponseContent(respr) + if !contains([]int{http.StatusOK}, respContent.HTTPStatus) { + return nil, &nonRetriableError{fmt.Errorf("unexpected status code %d. acceptable values are http.StatusOK", respContent.HTTPStatus)} + } + resp, err := server.MarshalResponseAsXML(respContent, server.GetResponse(respr).ModelWithDatetime, req) + if err != nil { + return nil, err + } + if val := server.GetResponse(respr).ContentType; val != nil { + resp.Header.Set("content-type", "application/xml") + } + return resp, nil +} + +func (x *XMLModelWithDatetimeValueServerTransport) dispatchPut(req *http.Request) (*http.Response, error) { + if x.srv.Put == nil { + return nil, &nonRetriableError{errors.New("fake for method Put not implemented")} + } + body, err := server.UnmarshalRequestAsXML[xmlgroup.ModelWithDatetime](req) + if err != nil { + return nil, err + } + respr, errRespr := x.srv.Put(req.Context(), body, nil) + if respErr := server.GetError(errRespr, req); respErr != nil { + return nil, respErr + } + respContent := server.GetResponseContent(respr) + if !contains([]int{http.StatusNoContent}, respContent.HTTPStatus) { + return nil, &nonRetriableError{fmt.Errorf("unexpected status code %d. acceptable values are http.StatusNoContent", respContent.HTTPStatus)} + } + resp, err := server.NewResponse(respContent, req, nil) + if err != nil { + return nil, err + } + return resp, nil +} + +// set this to conditionally intercept incoming requests to XMLModelWithDatetimeValueServerTransport +var xmlModelWithDatetimeValueServerTransportInterceptor interface { + // Do returns true if the server transport should use the returned response/error + Do(*http.Request) (*http.Response, error, bool) +} diff --git a/packages/typespec-go/test/http-specs/payload/xmlgroup/fake/zz_xmlmodelwithenumvalue_server.go b/packages/typespec-go/test/http-specs/payload/xmlgroup/fake/zz_xmlmodelwithenumvalue_server.go new file mode 100644 index 0000000000..ff75fa2bab --- /dev/null +++ b/packages/typespec-go/test/http-specs/payload/xmlgroup/fake/zz_xmlmodelwithenumvalue_server.go @@ -0,0 +1,137 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) Go Code Generator. DO NOT EDIT. + +package fake + +import ( + "context" + "errors" + "fmt" + azfake "github.com/Azure/azure-sdk-for-go/sdk/azcore/fake" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/fake/server" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime" + "net/http" + "xmlgroup" +) + +// XMLModelWithEnumValueServer is a fake server for instances of the xmlgroup.XMLModelWithEnumValueClient type. +type XMLModelWithEnumValueServer struct { + // Get is the fake for method XMLModelWithEnumValueClient.Get + // HTTP status codes to indicate success: http.StatusOK + Get func(ctx context.Context, options *xmlgroup.XMLModelWithEnumValueClientGetOptions) (resp azfake.Responder[xmlgroup.XMLModelWithEnumValueClientGetResponse], errResp azfake.ErrorResponder) + + // Put is the fake for method XMLModelWithEnumValueClient.Put + // HTTP status codes to indicate success: http.StatusNoContent + Put func(ctx context.Context, input xmlgroup.ModelWithEnum, options *xmlgroup.XMLModelWithEnumValueClientPutOptions) (resp azfake.Responder[xmlgroup.XMLModelWithEnumValueClientPutResponse], errResp azfake.ErrorResponder) +} + +// NewXMLModelWithEnumValueServerTransport creates a new instance of XMLModelWithEnumValueServerTransport with the provided implementation. +// The returned XMLModelWithEnumValueServerTransport instance is connected to an instance of xmlgroup.XMLModelWithEnumValueClient via the +// azcore.ClientOptions.Transporter field in the client's constructor parameters. +func NewXMLModelWithEnumValueServerTransport(srv *XMLModelWithEnumValueServer) *XMLModelWithEnumValueServerTransport { + return &XMLModelWithEnumValueServerTransport{srv: srv} +} + +// XMLModelWithEnumValueServerTransport connects instances of xmlgroup.XMLModelWithEnumValueClient to instances of XMLModelWithEnumValueServer. +// Don't use this type directly, use NewXMLModelWithEnumValueServerTransport instead. +type XMLModelWithEnumValueServerTransport struct { + srv *XMLModelWithEnumValueServer +} + +// Do implements the policy.Transporter interface for XMLModelWithEnumValueServerTransport. +func (x *XMLModelWithEnumValueServerTransport) Do(req *http.Request) (*http.Response, error) { + rawMethod := req.Context().Value(runtime.CtxAPINameKey{}) + method, ok := rawMethod.(string) + if !ok { + return nil, nonRetriableError{errors.New("unable to dispatch request, missing value for CtxAPINameKey")} + } + + return x.dispatchToMethodFake(req, method) +} + +func (x *XMLModelWithEnumValueServerTransport) dispatchToMethodFake(req *http.Request, method string) (*http.Response, error) { + resultChan := make(chan result) + defer close(resultChan) + + go func() { + var intercepted bool + var res result + if xmlModelWithEnumValueServerTransportInterceptor != nil { + res.resp, res.err, intercepted = xmlModelWithEnumValueServerTransportInterceptor.Do(req) + } + if !intercepted { + switch method { + case "XMLModelWithEnumValueClient.Get": + res.resp, res.err = x.dispatchGet(req) + case "XMLModelWithEnumValueClient.Put": + res.resp, res.err = x.dispatchPut(req) + default: + res.err = fmt.Errorf("unhandled API %s", method) + } + + } + select { + case resultChan <- res: + case <-req.Context().Done(): + } + }() + + select { + case <-req.Context().Done(): + return nil, req.Context().Err() + case res := <-resultChan: + return res.resp, res.err + } +} + +func (x *XMLModelWithEnumValueServerTransport) dispatchGet(req *http.Request) (*http.Response, error) { + if x.srv.Get == nil { + return nil, &nonRetriableError{errors.New("fake for method Get not implemented")} + } + respr, errRespr := x.srv.Get(req.Context(), nil) + if respErr := server.GetError(errRespr, req); respErr != nil { + return nil, respErr + } + respContent := server.GetResponseContent(respr) + if !contains([]int{http.StatusOK}, respContent.HTTPStatus) { + return nil, &nonRetriableError{fmt.Errorf("unexpected status code %d. acceptable values are http.StatusOK", respContent.HTTPStatus)} + } + resp, err := server.MarshalResponseAsXML(respContent, server.GetResponse(respr).ModelWithEnum, req) + if err != nil { + return nil, err + } + if val := server.GetResponse(respr).ContentType; val != nil { + resp.Header.Set("content-type", "application/xml") + } + return resp, nil +} + +func (x *XMLModelWithEnumValueServerTransport) dispatchPut(req *http.Request) (*http.Response, error) { + if x.srv.Put == nil { + return nil, &nonRetriableError{errors.New("fake for method Put not implemented")} + } + body, err := server.UnmarshalRequestAsXML[xmlgroup.ModelWithEnum](req) + if err != nil { + return nil, err + } + respr, errRespr := x.srv.Put(req.Context(), body, nil) + if respErr := server.GetError(errRespr, req); respErr != nil { + return nil, respErr + } + respContent := server.GetResponseContent(respr) + if !contains([]int{http.StatusNoContent}, respContent.HTTPStatus) { + return nil, &nonRetriableError{fmt.Errorf("unexpected status code %d. acceptable values are http.StatusNoContent", respContent.HTTPStatus)} + } + resp, err := server.NewResponse(respContent, req, nil) + if err != nil { + return nil, err + } + return resp, nil +} + +// set this to conditionally intercept incoming requests to XMLModelWithEnumValueServerTransport +var xmlModelWithEnumValueServerTransportInterceptor interface { + // Do returns true if the server transport should use the returned response/error + Do(*http.Request) (*http.Response, error, bool) +} diff --git a/packages/typespec-go/test/http-specs/payload/xmlgroup/xmlmodelwithdatetimevalue_client_test.go b/packages/typespec-go/test/http-specs/payload/xmlgroup/xmlmodelwithdatetimevalue_client_test.go new file mode 100644 index 0000000000..bb4f83d07d --- /dev/null +++ b/packages/typespec-go/test/http-specs/payload/xmlgroup/xmlmodelwithdatetimevalue_client_test.go @@ -0,0 +1,41 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. + +package xmlgroup_test + +import ( + "context" + "testing" + "time" + "xmlgroup" + + "github.com/Azure/azure-sdk-for-go/sdk/azcore/to" + "github.com/stretchr/testify/require" +) + +func TestXMLModelWithDatetimeValueClient_Get(t *testing.T) { + client, err := xmlgroup.NewXMLClientWithNoCredential("http://localhost:3000", nil) + require.NoError(t, err) + resp, err := client.NewXMLModelWithDatetimeValueClient().Get(context.Background(), nil) + require.NoError(t, err) + rfc3339 := time.Date(2022, 8, 26, 18, 38, 0, 0, time.UTC) + rfc7231 := time.Date(2022, 8, 26, 14, 38, 0, 0, time.UTC) + require.NotNil(t, resp.RFC3339) + require.True(t, rfc3339.Equal(*resp.RFC3339)) + require.NotNil(t, resp.RFC7231) + require.True(t, rfc7231.Equal(*resp.RFC7231)) +} + +func TestXMLModelWithDatetimeValueClient_Put(t *testing.T) { + t.Skip("Go's datetime.RFC1123 marshals as 'UTC' but the mock server expects 'GMT'") + client, err := xmlgroup.NewXMLClientWithNoCredential("http://localhost:3000", nil) + require.NoError(t, err) + rfc3339 := time.Date(2022, 8, 26, 18, 38, 0, 0, time.UTC) + rfc7231 := time.Date(2022, 8, 26, 14, 38, 0, 0, time.UTC) + resp, err := client.NewXMLModelWithDatetimeValueClient().Put(context.Background(), xmlgroup.ModelWithDatetime{ + RFC3339: to.Ptr(rfc3339), + RFC7231: to.Ptr(rfc7231), + }, nil) + require.NoError(t, err) + require.Zero(t, resp) +} diff --git a/packages/typespec-go/test/http-specs/payload/xmlgroup/xmlmodelwithenumvalue_client_test.go b/packages/typespec-go/test/http-specs/payload/xmlgroup/xmlmodelwithenumvalue_client_test.go new file mode 100644 index 0000000000..df6fdb8927 --- /dev/null +++ b/packages/typespec-go/test/http-specs/payload/xmlgroup/xmlmodelwithenumvalue_client_test.go @@ -0,0 +1,33 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. + +package xmlgroup_test + +import ( + "context" + "testing" + "xmlgroup" + + "github.com/Azure/azure-sdk-for-go/sdk/azcore/to" + "github.com/stretchr/testify/require" +) + +func TestXMLModelWithEnumValueClient_Get(t *testing.T) { + client, err := xmlgroup.NewXMLClientWithNoCredential("http://localhost:3000", nil) + require.NoError(t, err) + resp, err := client.NewXMLModelWithEnumValueClient().Get(context.Background(), nil) + require.NoError(t, err) + require.EqualValues(t, xmlgroup.ModelWithEnum{ + Status: to.Ptr(xmlgroup.StatusSuccess), + }, resp.ModelWithEnum) +} + +func TestXMLModelWithEnumValueClient_Put(t *testing.T) { + client, err := xmlgroup.NewXMLClientWithNoCredential("http://localhost:3000", nil) + require.NoError(t, err) + resp, err := client.NewXMLModelWithEnumValueClient().Put(context.Background(), xmlgroup.ModelWithEnum{ + Status: to.Ptr(xmlgroup.StatusSuccess), + }, nil) + require.NoError(t, err) + require.Zero(t, resp) +} diff --git a/packages/typespec-go/test/http-specs/payload/xmlgroup/zz_constants.go b/packages/typespec-go/test/http-specs/payload/xmlgroup/zz_constants.go new file mode 100644 index 0000000000..f66ab28083 --- /dev/null +++ b/packages/typespec-go/test/http-specs/payload/xmlgroup/zz_constants.go @@ -0,0 +1,26 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) Go Code Generator. DO NOT EDIT. + +package xmlgroup + +// Status - Status values for the model with enum. +type Status string + +const ( + // StatusError - Error status. + StatusError Status = "error" + // StatusPending - Pending status. + StatusPending Status = "pending" + // StatusSuccess - Success status. + StatusSuccess Status = "success" +) + +// PossibleStatusValues returns the possible values for the Status const type. +func PossibleStatusValues() []Status { + return []Status{ + StatusError, + StatusPending, + StatusSuccess, + } +} diff --git a/packages/typespec-go/test/http-specs/payload/xmlgroup/zz_models.go b/packages/typespec-go/test/http-specs/payload/xmlgroup/zz_models.go index 91e545cce8..cfeb5d305b 100644 --- a/packages/typespec-go/test/http-specs/payload/xmlgroup/zz_models.go +++ b/packages/typespec-go/test/http-specs/payload/xmlgroup/zz_models.go @@ -4,6 +4,8 @@ package xmlgroup +import "time" + // ModelWithArrayOfModel - Contains an array of models. type ModelWithArrayOfModel struct { // REQUIRED @@ -22,6 +24,15 @@ type ModelWithAttributes struct { Id2 *string `xml:"id2,attr"` } +// ModelWithDatetime - Contains datetime properties with different encodings. +type ModelWithDatetime struct { + // REQUIRED; DateTime value with rfc3339 encoding. + RFC3339 *time.Time `xml:"rfc3339"` + + // REQUIRED; DateTime value with rfc7231 encoding. + RFC7231 *time.Time `xml:"rfc7231"` +} + // ModelWithDictionary - Contains a dictionary of key value pairs. type ModelWithDictionary struct { // REQUIRED @@ -43,6 +54,12 @@ type ModelWithEncodedNames struct { ModelData *SimpleModel `xml:"SimpleModelData"` } +// ModelWithEnum - Contains a single property with an enum value. +type ModelWithEnum struct { + // REQUIRED + Status *Status `xml:"status"` +} + // ModelWithOptionalField - Contains an optional field. type ModelWithOptionalField struct { // REQUIRED diff --git a/packages/typespec-go/test/http-specs/payload/xmlgroup/zz_models_serde.go b/packages/typespec-go/test/http-specs/payload/xmlgroup/zz_models_serde.go index da361c6ef2..d9b3f4db16 100644 --- a/packages/typespec-go/test/http-specs/payload/xmlgroup/zz_models_serde.go +++ b/packages/typespec-go/test/http-specs/payload/xmlgroup/zz_models_serde.go @@ -9,7 +9,9 @@ import ( "encoding/xml" "fmt" "github.com/Azure/azure-sdk-for-go/sdk/azcore" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime/datetime" "reflect" + "time" ) // MarshalXML implements the xml.Marshaller interface for type ModelWithArrayOfModel. @@ -27,6 +29,43 @@ func (m ModelWithArrayOfModel) MarshalXML(enc *xml.Encoder, start xml.StartEleme return enc.EncodeElement(aux, start) } +// MarshalXML implements the xml.Marshaller interface for type ModelWithDatetime. +func (m ModelWithDatetime) MarshalXML(enc *xml.Encoder, start xml.StartElement) error { + type alias ModelWithDatetime + aux := &struct { + *alias + RFC3339 *datetime.RFC3339 `xml:"rfc3339"` + RFC7231 *datetime.RFC1123 `xml:"rfc7231"` + }{ + alias: (*alias)(&m), + RFC3339: (*datetime.RFC3339)(m.RFC3339), + RFC7231: (*datetime.RFC1123)(m.RFC7231), + } + return enc.EncodeElement(aux, start) +} + +// UnmarshalXML implements the xml.Unmarshaller interface for type ModelWithDatetime. +func (m *ModelWithDatetime) UnmarshalXML(dec *xml.Decoder, start xml.StartElement) error { + type alias ModelWithDatetime + aux := &struct { + *alias + RFC3339 *datetime.RFC3339 `xml:"rfc3339"` + RFC7231 *datetime.RFC1123 `xml:"rfc7231"` + }{ + alias: (*alias)(m), + } + if err := dec.DecodeElement(aux, &start); err != nil { + return err + } + if aux.RFC3339 != nil && !(*time.Time)(aux.RFC3339).IsZero() { + m.RFC3339 = (*time.Time)(aux.RFC3339) + } + if aux.RFC7231 != nil && !(*time.Time)(aux.RFC7231).IsZero() { + m.RFC7231 = (*time.Time)(aux.RFC7231) + } + return nil +} + // MarshalXML implements the xml.Marshaller interface for type ModelWithDictionary. func (m ModelWithDictionary) MarshalXML(enc *xml.Encoder, start xml.StartElement) error { type alias ModelWithDictionary diff --git a/packages/typespec-go/test/http-specs/payload/xmlgroup/zz_options.go b/packages/typespec-go/test/http-specs/payload/xmlgroup/zz_options.go index e93df3c783..59a0b7b0bf 100644 --- a/packages/typespec-go/test/http-specs/payload/xmlgroup/zz_options.go +++ b/packages/typespec-go/test/http-specs/payload/xmlgroup/zz_options.go @@ -28,6 +28,18 @@ type XMLModelWithAttributesValueClientPutOptions struct { // placeholder for future optional parameters } +// XMLModelWithDatetimeValueClientGetOptions contains the optional parameters for the XMLModelWithDatetimeValueClient.Get +// method. +type XMLModelWithDatetimeValueClientGetOptions struct { + // placeholder for future optional parameters +} + +// XMLModelWithDatetimeValueClientPutOptions contains the optional parameters for the XMLModelWithDatetimeValueClient.Put +// method. +type XMLModelWithDatetimeValueClientPutOptions struct { + // placeholder for future optional parameters +} + // XMLModelWithDictionaryValueClientGetOptions contains the optional parameters for the XMLModelWithDictionaryValueClient.Get // method. type XMLModelWithDictionaryValueClientGetOptions struct { @@ -64,6 +76,16 @@ type XMLModelWithEncodedNamesValueClientPutOptions struct { // placeholder for future optional parameters } +// XMLModelWithEnumValueClientGetOptions contains the optional parameters for the XMLModelWithEnumValueClient.Get method. +type XMLModelWithEnumValueClientGetOptions struct { + // placeholder for future optional parameters +} + +// XMLModelWithEnumValueClientPutOptions contains the optional parameters for the XMLModelWithEnumValueClient.Put method. +type XMLModelWithEnumValueClientPutOptions struct { + // placeholder for future optional parameters +} + // XMLModelWithOptionalFieldValueClientGetOptions contains the optional parameters for the XMLModelWithOptionalFieldValueClient.Get // method. type XMLModelWithOptionalFieldValueClientGetOptions struct { diff --git a/packages/typespec-go/test/http-specs/payload/xmlgroup/zz_responses.go b/packages/typespec-go/test/http-specs/payload/xmlgroup/zz_responses.go index 2b35cc11ff..e0f2de010c 100644 --- a/packages/typespec-go/test/http-specs/payload/xmlgroup/zz_responses.go +++ b/packages/typespec-go/test/http-specs/payload/xmlgroup/zz_responses.go @@ -28,6 +28,18 @@ type XMLModelWithAttributesValueClientPutResponse struct { // placeholder for future response values } +// XMLModelWithDatetimeValueClientGetResponse contains the response from method XMLModelWithDatetimeValueClient.Get. +type XMLModelWithDatetimeValueClientGetResponse struct { + // Contains datetime properties with different encodings. + ModelWithDatetime + ContentType *string +} + +// XMLModelWithDatetimeValueClientPutResponse contains the response from method XMLModelWithDatetimeValueClient.Put. +type XMLModelWithDatetimeValueClientPutResponse struct { + // placeholder for future response values +} + // XMLModelWithDictionaryValueClientGetResponse contains the response from method XMLModelWithDictionaryValueClient.Get. type XMLModelWithDictionaryValueClientGetResponse struct { // Contains a dictionary of key value pairs. @@ -64,6 +76,18 @@ type XMLModelWithEncodedNamesValueClientPutResponse struct { // placeholder for future response values } +// XMLModelWithEnumValueClientGetResponse contains the response from method XMLModelWithEnumValueClient.Get. +type XMLModelWithEnumValueClientGetResponse struct { + // Contains a single property with an enum value. + ModelWithEnum + ContentType *string +} + +// XMLModelWithEnumValueClientPutResponse contains the response from method XMLModelWithEnumValueClient.Put. +type XMLModelWithEnumValueClientPutResponse struct { + // placeholder for future response values +} + // XMLModelWithOptionalFieldValueClientGetResponse contains the response from method XMLModelWithOptionalFieldValueClient.Get. type XMLModelWithOptionalFieldValueClientGetResponse struct { // Contains an optional field. diff --git a/packages/typespec-go/test/http-specs/payload/xmlgroup/zz_xml_client.go b/packages/typespec-go/test/http-specs/payload/xmlgroup/zz_xml_client.go index b256323bed..b9cfdfa6a4 100644 --- a/packages/typespec-go/test/http-specs/payload/xmlgroup/zz_xml_client.go +++ b/packages/typespec-go/test/http-specs/payload/xmlgroup/zz_xml_client.go @@ -55,6 +55,14 @@ func (client *XMLClient) NewXMLModelWithAttributesValueClient() *XMLModelWithAtt } } +// NewXMLModelWithDatetimeValueClient creates a new instance of [XMLModelWithDatetimeValueClient]. +func (client *XMLClient) NewXMLModelWithDatetimeValueClient() *XMLModelWithDatetimeValueClient { + return &XMLModelWithDatetimeValueClient{ + endpoint: client.endpoint, + internal: client.internal, + } +} + // NewXMLModelWithDictionaryValueClient creates a new instance of [XMLModelWithDictionaryValueClient]. func (client *XMLClient) NewXMLModelWithDictionaryValueClient() *XMLModelWithDictionaryValueClient { return &XMLModelWithDictionaryValueClient{ @@ -79,6 +87,14 @@ func (client *XMLClient) NewXMLModelWithEncodedNamesValueClient() *XMLModelWithE } } +// NewXMLModelWithEnumValueClient creates a new instance of [XMLModelWithEnumValueClient]. +func (client *XMLClient) NewXMLModelWithEnumValueClient() *XMLModelWithEnumValueClient { + return &XMLModelWithEnumValueClient{ + endpoint: client.endpoint, + internal: client.internal, + } +} + // NewXMLModelWithOptionalFieldValueClient creates a new instance of [XMLModelWithOptionalFieldValueClient]. func (client *XMLClient) NewXMLModelWithOptionalFieldValueClient() *XMLModelWithOptionalFieldValueClient { return &XMLModelWithOptionalFieldValueClient{ diff --git a/packages/typespec-go/test/http-specs/payload/xmlgroup/zz_xmlmodelwithdatetimevalue_client.go b/packages/typespec-go/test/http-specs/payload/xmlgroup/zz_xmlmodelwithdatetimevalue_client.go new file mode 100644 index 0000000000..38cbbcf13d --- /dev/null +++ b/packages/typespec-go/test/http-specs/payload/xmlgroup/zz_xmlmodelwithdatetimevalue_client.go @@ -0,0 +1,108 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) Go Code Generator. DO NOT EDIT. + +package xmlgroup + +import ( + "context" + "github.com/Azure/azure-sdk-for-go/sdk/azcore" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/policy" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime" + "net/http" +) + +// XMLModelWithDatetimeValueClient - Operations for the ModelWithDatetime type. +// Don't use this type directly, use [XMLClient.NewXMLModelWithDatetimeValueClient] instead. +type XMLModelWithDatetimeValueClient struct { + internal *azcore.Client + endpoint string +} + +// Get - +// If the operation fails it returns an *azcore.ResponseError type. +// - options - XMLModelWithDatetimeValueClientGetOptions contains the optional parameters for the XMLModelWithDatetimeValueClient.Get +// method. +func (client *XMLModelWithDatetimeValueClient) Get(ctx context.Context, options *XMLModelWithDatetimeValueClientGetOptions) (XMLModelWithDatetimeValueClientGetResponse, error) { + var err error + const operationName = "XMLModelWithDatetimeValueClient.Get" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.getCreateRequest(ctx, options) + if err != nil { + return XMLModelWithDatetimeValueClientGetResponse{}, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return XMLModelWithDatetimeValueClientGetResponse{}, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK) { + err = runtime.NewResponseError(httpResp) + return XMLModelWithDatetimeValueClientGetResponse{}, err + } + resp, err := client.getHandleResponse(httpResp) + return resp, err +} + +// getCreateRequest creates the Get request. +func (client *XMLModelWithDatetimeValueClient) getCreateRequest(ctx context.Context, _ *XMLModelWithDatetimeValueClientGetOptions) (*policy.Request, error) { + urlPath := "/payload/xml/modelWithDatetime" + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.endpoint, urlPath)) + if err != nil { + return nil, err + } + req.Raw().Header["Accept"] = []string{"application/xml"} + return req, nil +} + +// getHandleResponse handles the Get response. +func (client *XMLModelWithDatetimeValueClient) getHandleResponse(resp *http.Response) (XMLModelWithDatetimeValueClientGetResponse, error) { + result := XMLModelWithDatetimeValueClientGetResponse{} + if val := resp.Header.Get("content-type"); val != "" { + result.ContentType = &val + } + if err := runtime.UnmarshalAsXML(resp, &result.ModelWithDatetime); err != nil { + return XMLModelWithDatetimeValueClientGetResponse{}, err + } + return result, nil +} + +// Put - +// If the operation fails it returns an *azcore.ResponseError type. +// - options - XMLModelWithDatetimeValueClientPutOptions contains the optional parameters for the XMLModelWithDatetimeValueClient.Put +// method. +func (client *XMLModelWithDatetimeValueClient) Put(ctx context.Context, input ModelWithDatetime, options *XMLModelWithDatetimeValueClientPutOptions) (XMLModelWithDatetimeValueClientPutResponse, error) { + var err error + const operationName = "XMLModelWithDatetimeValueClient.Put" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.putCreateRequest(ctx, input, options) + if err != nil { + return XMLModelWithDatetimeValueClientPutResponse{}, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return XMLModelWithDatetimeValueClientPutResponse{}, err + } + if !runtime.HasStatusCode(httpResp, http.StatusNoContent) { + err = runtime.NewResponseError(httpResp) + return XMLModelWithDatetimeValueClientPutResponse{}, err + } + return XMLModelWithDatetimeValueClientPutResponse{}, nil +} + +// putCreateRequest creates the Put request. +func (client *XMLModelWithDatetimeValueClient) putCreateRequest(ctx context.Context, input ModelWithDatetime, _ *XMLModelWithDatetimeValueClientPutOptions) (*policy.Request, error) { + urlPath := "/payload/xml/modelWithDatetime" + req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.endpoint, urlPath)) + if err != nil { + return nil, err + } + req.Raw().Header["Content-Type"] = []string{"application/xml"} + if err := runtime.MarshalAsXML(req, input); err != nil { + return nil, err + } + return req, nil +} diff --git a/packages/typespec-go/test/http-specs/payload/xmlgroup/zz_xmlmodelwithenumvalue_client.go b/packages/typespec-go/test/http-specs/payload/xmlgroup/zz_xmlmodelwithenumvalue_client.go new file mode 100644 index 0000000000..247be732a5 --- /dev/null +++ b/packages/typespec-go/test/http-specs/payload/xmlgroup/zz_xmlmodelwithenumvalue_client.go @@ -0,0 +1,108 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) Go Code Generator. DO NOT EDIT. + +package xmlgroup + +import ( + "context" + "github.com/Azure/azure-sdk-for-go/sdk/azcore" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/policy" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime" + "net/http" +) + +// XMLModelWithEnumValueClient - Operations for the ModelWithEnum type. +// Don't use this type directly, use [XMLClient.NewXMLModelWithEnumValueClient] instead. +type XMLModelWithEnumValueClient struct { + internal *azcore.Client + endpoint string +} + +// Get - +// If the operation fails it returns an *azcore.ResponseError type. +// - options - XMLModelWithEnumValueClientGetOptions contains the optional parameters for the XMLModelWithEnumValueClient.Get +// method. +func (client *XMLModelWithEnumValueClient) Get(ctx context.Context, options *XMLModelWithEnumValueClientGetOptions) (XMLModelWithEnumValueClientGetResponse, error) { + var err error + const operationName = "XMLModelWithEnumValueClient.Get" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.getCreateRequest(ctx, options) + if err != nil { + return XMLModelWithEnumValueClientGetResponse{}, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return XMLModelWithEnumValueClientGetResponse{}, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK) { + err = runtime.NewResponseError(httpResp) + return XMLModelWithEnumValueClientGetResponse{}, err + } + resp, err := client.getHandleResponse(httpResp) + return resp, err +} + +// getCreateRequest creates the Get request. +func (client *XMLModelWithEnumValueClient) getCreateRequest(ctx context.Context, _ *XMLModelWithEnumValueClientGetOptions) (*policy.Request, error) { + urlPath := "/payload/xml/modelWithEnum" + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.endpoint, urlPath)) + if err != nil { + return nil, err + } + req.Raw().Header["Accept"] = []string{"application/xml"} + return req, nil +} + +// getHandleResponse handles the Get response. +func (client *XMLModelWithEnumValueClient) getHandleResponse(resp *http.Response) (XMLModelWithEnumValueClientGetResponse, error) { + result := XMLModelWithEnumValueClientGetResponse{} + if val := resp.Header.Get("content-type"); val != "" { + result.ContentType = &val + } + if err := runtime.UnmarshalAsXML(resp, &result.ModelWithEnum); err != nil { + return XMLModelWithEnumValueClientGetResponse{}, err + } + return result, nil +} + +// Put - +// If the operation fails it returns an *azcore.ResponseError type. +// - options - XMLModelWithEnumValueClientPutOptions contains the optional parameters for the XMLModelWithEnumValueClient.Put +// method. +func (client *XMLModelWithEnumValueClient) Put(ctx context.Context, input ModelWithEnum, options *XMLModelWithEnumValueClientPutOptions) (XMLModelWithEnumValueClientPutResponse, error) { + var err error + const operationName = "XMLModelWithEnumValueClient.Put" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.putCreateRequest(ctx, input, options) + if err != nil { + return XMLModelWithEnumValueClientPutResponse{}, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return XMLModelWithEnumValueClientPutResponse{}, err + } + if !runtime.HasStatusCode(httpResp, http.StatusNoContent) { + err = runtime.NewResponseError(httpResp) + return XMLModelWithEnumValueClientPutResponse{}, err + } + return XMLModelWithEnumValueClientPutResponse{}, nil +} + +// putCreateRequest creates the Put request. +func (client *XMLModelWithEnumValueClient) putCreateRequest(ctx context.Context, input ModelWithEnum, _ *XMLModelWithEnumValueClientPutOptions) (*policy.Request, error) { + urlPath := "/payload/xml/modelWithEnum" + req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.endpoint, urlPath)) + if err != nil { + return nil, err + } + req.Raw().Header["Content-Type"] = []string{"application/xml"} + if err := runtime.MarshalAsXML(req, input); err != nil { + return nil, err + } + return req, nil +} diff --git a/packages/typespec-go/test/http-specs/specialwordsgroup/extensiblestrings_client_test.go b/packages/typespec-go/test/http-specs/specialwordsgroup/extensiblestrings_client_test.go new file mode 100644 index 0000000000..66274540ad --- /dev/null +++ b/packages/typespec-go/test/http-specs/specialwordsgroup/extensiblestrings_client_test.go @@ -0,0 +1,21 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. + +package specialwordsgroup_test + +import ( + "context" + "specialwordsgroup" + "testing" + + "github.com/stretchr/testify/require" +) + +func TestExtensibleStringsClient_PutExtensibleStringValue(t *testing.T) { + client, err := specialwordsgroup.NewSpecialWordsClientWithNoCredential("http://localhost:3000", nil) + require.NoError(t, err) + resp, err := client.NewSpecialWordsExtensibleStringsClient().PutExtensibleStringValue(context.Background(), specialwordsgroup.ExtensibleStringClass, nil) + require.NoError(t, err) + require.NotNil(t, resp.Value) + require.EqualValues(t, specialwordsgroup.ExtensibleStringClass, *resp.Value) +} diff --git a/packages/typespec-go/test/http-specs/specialwordsgroup/fake/zz_specialwords_server.go b/packages/typespec-go/test/http-specs/specialwordsgroup/fake/zz_specialwords_server.go index 4b5add8f40..0ef75d9082 100644 --- a/packages/typespec-go/test/http-specs/specialwordsgroup/fake/zz_specialwords_server.go +++ b/packages/typespec-go/test/http-specs/specialwordsgroup/fake/zz_specialwords_server.go @@ -15,6 +15,9 @@ import ( // SpecialWordsServer is a fake server for instances of the specialwordsgroup.SpecialWordsClient type. type SpecialWordsServer struct { + // SpecialWordsExtensibleStringsServer contains the fakes for client SpecialWordsExtensibleStringsClient + SpecialWordsExtensibleStringsServer SpecialWordsExtensibleStringsServer + // SpecialWordsModelPropertiesServer contains the fakes for client SpecialWordsModelPropertiesClient SpecialWordsModelPropertiesServer SpecialWordsModelPropertiesServer @@ -38,12 +41,13 @@ func NewSpecialWordsServerTransport(srv *SpecialWordsServer) *SpecialWordsServer // SpecialWordsServerTransport connects instances of specialwordsgroup.SpecialWordsClient to instances of SpecialWordsServer. // Don't use this type directly, use NewSpecialWordsServerTransport instead. type SpecialWordsServerTransport struct { - srv *SpecialWordsServer - trMu sync.Mutex - trSpecialWordsModelPropertiesServer *SpecialWordsModelPropertiesServerTransport - trSpecialWordsModelsServer *SpecialWordsModelsServerTransport - trSpecialWordsOperationsServer *SpecialWordsOperationsServerTransport - trSpecialWordsParametersServer *SpecialWordsParametersServerTransport + srv *SpecialWordsServer + trMu sync.Mutex + trSpecialWordsExtensibleStringsServer *SpecialWordsExtensibleStringsServerTransport + trSpecialWordsModelPropertiesServer *SpecialWordsModelPropertiesServerTransport + trSpecialWordsModelsServer *SpecialWordsModelsServerTransport + trSpecialWordsOperationsServer *SpecialWordsOperationsServerTransport + trSpecialWordsParametersServer *SpecialWordsParametersServerTransport } // Do implements the policy.Transporter interface for SpecialWordsServerTransport. @@ -62,6 +66,11 @@ func (s *SpecialWordsServerTransport) dispatchToClientFake(req *http.Request, cl var err error switch client { + case "SpecialWordsExtensibleStringsClient": + initServer(&s.trMu, &s.trSpecialWordsExtensibleStringsServer, func() *SpecialWordsExtensibleStringsServerTransport { + return NewSpecialWordsExtensibleStringsServerTransport(&s.srv.SpecialWordsExtensibleStringsServer) + }) + resp, err = s.trSpecialWordsExtensibleStringsServer.Do(req) case "SpecialWordsModelPropertiesClient": initServer(&s.trMu, &s.trSpecialWordsModelPropertiesServer, func() *SpecialWordsModelPropertiesServerTransport { return NewSpecialWordsModelPropertiesServerTransport(&s.srv.SpecialWordsModelPropertiesServer) diff --git a/packages/typespec-go/test/http-specs/specialwordsgroup/fake/zz_specialwordsextensiblestrings_server.go b/packages/typespec-go/test/http-specs/specialwordsgroup/fake/zz_specialwordsextensiblestrings_server.go new file mode 100644 index 0000000000..8ab653e911 --- /dev/null +++ b/packages/typespec-go/test/http-specs/specialwordsgroup/fake/zz_specialwordsextensiblestrings_server.go @@ -0,0 +1,112 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) Go Code Generator. DO NOT EDIT. + +package fake + +import ( + "context" + "errors" + "fmt" + azfake "github.com/Azure/azure-sdk-for-go/sdk/azcore/fake" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/fake/server" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime" + "net/http" + "specialwordsgroup" +) + +// SpecialWordsExtensibleStringsServer is a fake server for instances of the specialwordsgroup.SpecialWordsExtensibleStringsClient type. +type SpecialWordsExtensibleStringsServer struct { + // PutExtensibleStringValue is the fake for method SpecialWordsExtensibleStringsClient.PutExtensibleStringValue + // HTTP status codes to indicate success: http.StatusOK + PutExtensibleStringValue func(ctx context.Context, body specialwordsgroup.ExtensibleString, options *specialwordsgroup.SpecialWordsExtensibleStringsClientPutExtensibleStringValueOptions) (resp azfake.Responder[specialwordsgroup.SpecialWordsExtensibleStringsClientPutExtensibleStringValueResponse], errResp azfake.ErrorResponder) +} + +// NewSpecialWordsExtensibleStringsServerTransport creates a new instance of SpecialWordsExtensibleStringsServerTransport with the provided implementation. +// The returned SpecialWordsExtensibleStringsServerTransport instance is connected to an instance of specialwordsgroup.SpecialWordsExtensibleStringsClient via the +// azcore.ClientOptions.Transporter field in the client's constructor parameters. +func NewSpecialWordsExtensibleStringsServerTransport(srv *SpecialWordsExtensibleStringsServer) *SpecialWordsExtensibleStringsServerTransport { + return &SpecialWordsExtensibleStringsServerTransport{srv: srv} +} + +// SpecialWordsExtensibleStringsServerTransport connects instances of specialwordsgroup.SpecialWordsExtensibleStringsClient to instances of SpecialWordsExtensibleStringsServer. +// Don't use this type directly, use NewSpecialWordsExtensibleStringsServerTransport instead. +type SpecialWordsExtensibleStringsServerTransport struct { + srv *SpecialWordsExtensibleStringsServer +} + +// Do implements the policy.Transporter interface for SpecialWordsExtensibleStringsServerTransport. +func (s *SpecialWordsExtensibleStringsServerTransport) Do(req *http.Request) (*http.Response, error) { + rawMethod := req.Context().Value(runtime.CtxAPINameKey{}) + method, ok := rawMethod.(string) + if !ok { + return nil, nonRetriableError{errors.New("unable to dispatch request, missing value for CtxAPINameKey")} + } + + return s.dispatchToMethodFake(req, method) +} + +func (s *SpecialWordsExtensibleStringsServerTransport) dispatchToMethodFake(req *http.Request, method string) (*http.Response, error) { + resultChan := make(chan result) + defer close(resultChan) + + go func() { + var intercepted bool + var res result + if specialWordsExtensibleStringsServerTransportInterceptor != nil { + res.resp, res.err, intercepted = specialWordsExtensibleStringsServerTransportInterceptor.Do(req) + } + if !intercepted { + switch method { + case "SpecialWordsExtensibleStringsClient.PutExtensibleStringValue": + res.resp, res.err = s.dispatchPutExtensibleStringValue(req) + default: + res.err = fmt.Errorf("unhandled API %s", method) + } + + } + select { + case resultChan <- res: + case <-req.Context().Done(): + } + }() + + select { + case <-req.Context().Done(): + return nil, req.Context().Err() + case res := <-resultChan: + return res.resp, res.err + } +} + +func (s *SpecialWordsExtensibleStringsServerTransport) dispatchPutExtensibleStringValue(req *http.Request) (*http.Response, error) { + if s.srv.PutExtensibleStringValue == nil { + return nil, &nonRetriableError{errors.New("fake for method PutExtensibleStringValue not implemented")} + } + body, err := server.UnmarshalRequestAsJSON[specialwordsgroup.ExtensibleString](req) + if err != nil { + return nil, err + } + respr, errRespr := s.srv.PutExtensibleStringValue(req.Context(), body, nil) + if respErr := server.GetError(errRespr, req); respErr != nil { + return nil, respErr + } + respContent := server.GetResponseContent(respr) + if !contains([]int{http.StatusOK}, respContent.HTTPStatus) { + return nil, &nonRetriableError{fmt.Errorf("unexpected status code %d. acceptable values are http.StatusOK", respContent.HTTPStatus)} + } + resp, err := server.MarshalResponseAsJSON(respContent, server.GetResponse(respr).Value, req) + if err != nil { + return nil, err + } + if val := server.GetResponse(respr).ContentType; val != nil { + resp.Header.Set("content-type", "application/json") + } + return resp, nil +} + +// set this to conditionally intercept incoming requests to SpecialWordsExtensibleStringsServerTransport +var specialWordsExtensibleStringsServerTransportInterceptor interface { + // Do returns true if the server transport should use the returned response/error + Do(*http.Request) (*http.Response, error, bool) +} diff --git a/packages/typespec-go/test/http-specs/specialwordsgroup/zz_constants.go b/packages/typespec-go/test/http-specs/specialwordsgroup/zz_constants.go new file mode 100644 index 0000000000..a568bcaebd --- /dev/null +++ b/packages/typespec-go/test/http-specs/specialwordsgroup/zz_constants.go @@ -0,0 +1,83 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) Go Code Generator. DO NOT EDIT. + +package specialwordsgroup + +// ExtensibleString - Verify enum member names that are special words using extensible enum (union). +type ExtensibleString string + +const ( + ExtensibleStringAnd ExtensibleString = "and" + ExtensibleStringAs ExtensibleString = "as" + ExtensibleStringAssert ExtensibleString = "assert" + ExtensibleStringAsync ExtensibleString = "async" + ExtensibleStringAwait ExtensibleString = "await" + ExtensibleStringBreak ExtensibleString = "break" + ExtensibleStringClass ExtensibleString = "class" + ExtensibleStringConstructor ExtensibleString = "constructor" + ExtensibleStringContinue ExtensibleString = "continue" + ExtensibleStringDef ExtensibleString = "def" + ExtensibleStringDel ExtensibleString = "del" + ExtensibleStringElif ExtensibleString = "elif" + ExtensibleStringElse ExtensibleString = "else" + ExtensibleStringExcept ExtensibleString = "except" + ExtensibleStringExec ExtensibleString = "exec" + ExtensibleStringFinally ExtensibleString = "finally" + ExtensibleStringFor ExtensibleString = "for" + ExtensibleStringFrom ExtensibleString = "from" + ExtensibleStringGlobal ExtensibleString = "global" + ExtensibleStringIf ExtensibleString = "if" + ExtensibleStringImport ExtensibleString = "import" + ExtensibleStringIn ExtensibleString = "in" + ExtensibleStringIs ExtensibleString = "is" + ExtensibleStringLambda ExtensibleString = "lambda" + ExtensibleStringNot ExtensibleString = "not" + ExtensibleStringOr ExtensibleString = "or" + ExtensibleStringPass ExtensibleString = "pass" + ExtensibleStringRaise ExtensibleString = "raise" + ExtensibleStringReturn ExtensibleString = "return" + ExtensibleStringTry ExtensibleString = "try" + ExtensibleStringWhile ExtensibleString = "while" + ExtensibleStringWith ExtensibleString = "with" + ExtensibleStringYield ExtensibleString = "yield" +) + +// PossibleExtensibleStringValues returns the possible values for the ExtensibleString const type. +func PossibleExtensibleStringValues() []ExtensibleString { + return []ExtensibleString{ + ExtensibleStringAnd, + ExtensibleStringAs, + ExtensibleStringAssert, + ExtensibleStringAsync, + ExtensibleStringAwait, + ExtensibleStringBreak, + ExtensibleStringClass, + ExtensibleStringConstructor, + ExtensibleStringContinue, + ExtensibleStringDef, + ExtensibleStringDel, + ExtensibleStringElif, + ExtensibleStringElse, + ExtensibleStringExcept, + ExtensibleStringExec, + ExtensibleStringFinally, + ExtensibleStringFor, + ExtensibleStringFrom, + ExtensibleStringGlobal, + ExtensibleStringIf, + ExtensibleStringImport, + ExtensibleStringIn, + ExtensibleStringIs, + ExtensibleStringLambda, + ExtensibleStringNot, + ExtensibleStringOr, + ExtensibleStringPass, + ExtensibleStringRaise, + ExtensibleStringReturn, + ExtensibleStringTry, + ExtensibleStringWhile, + ExtensibleStringWith, + ExtensibleStringYield, + } +} diff --git a/packages/typespec-go/test/http-specs/specialwordsgroup/zz_options.go b/packages/typespec-go/test/http-specs/specialwordsgroup/zz_options.go index 5112e2707c..5c5bd56f34 100644 --- a/packages/typespec-go/test/http-specs/specialwordsgroup/zz_options.go +++ b/packages/typespec-go/test/http-specs/specialwordsgroup/zz_options.go @@ -4,6 +4,12 @@ package specialwordsgroup +// SpecialWordsExtensibleStringsClientPutExtensibleStringValueOptions contains the optional parameters for the SpecialWordsExtensibleStringsClient.PutExtensibleStringValue +// method. +type SpecialWordsExtensibleStringsClientPutExtensibleStringValueOptions struct { + // placeholder for future optional parameters +} + // SpecialWordsModelPropertiesClientDictMethodsOptions contains the optional parameters for the SpecialWordsModelPropertiesClient.DictMethods // method. type SpecialWordsModelPropertiesClientDictMethodsOptions struct { diff --git a/packages/typespec-go/test/http-specs/specialwordsgroup/zz_responses.go b/packages/typespec-go/test/http-specs/specialwordsgroup/zz_responses.go index 1edc8abe0f..113f55a4c3 100644 --- a/packages/typespec-go/test/http-specs/specialwordsgroup/zz_responses.go +++ b/packages/typespec-go/test/http-specs/specialwordsgroup/zz_responses.go @@ -4,6 +4,12 @@ package specialwordsgroup +// SpecialWordsExtensibleStringsClientPutExtensibleStringValueResponse contains the response from method SpecialWordsExtensibleStringsClient.PutExtensibleStringValue. +type SpecialWordsExtensibleStringsClientPutExtensibleStringValueResponse struct { + ContentType *string + Value *ExtensibleString +} + // SpecialWordsModelPropertiesClientDictMethodsResponse contains the response from method SpecialWordsModelPropertiesClient.DictMethods. type SpecialWordsModelPropertiesClientDictMethodsResponse struct { // placeholder for future response values diff --git a/packages/typespec-go/test/http-specs/specialwordsgroup/zz_specialwords_client.go b/packages/typespec-go/test/http-specs/specialwordsgroup/zz_specialwords_client.go index fc74d808c8..a348550976 100644 --- a/packages/typespec-go/test/http-specs/specialwordsgroup/zz_specialwords_client.go +++ b/packages/typespec-go/test/http-specs/specialwordsgroup/zz_specialwords_client.go @@ -76,6 +76,14 @@ func NewSpecialWordsClientWithNoCredential(endpoint string, options *SpecialWord return client, nil } +// NewSpecialWordsExtensibleStringsClient creates a new instance of [SpecialWordsExtensibleStringsClient]. +func (client *SpecialWordsClient) NewSpecialWordsExtensibleStringsClient() *SpecialWordsExtensibleStringsClient { + return &SpecialWordsExtensibleStringsClient{ + endpoint: client.endpoint, + internal: client.internal, + } +} + // NewSpecialWordsModelPropertiesClient creates a new instance of [SpecialWordsModelPropertiesClient]. func (client *SpecialWordsClient) NewSpecialWordsModelPropertiesClient() *SpecialWordsModelPropertiesClient { return &SpecialWordsModelPropertiesClient{ diff --git a/packages/typespec-go/test/http-specs/specialwordsgroup/zz_specialwordsextensiblestrings_client.go b/packages/typespec-go/test/http-specs/specialwordsgroup/zz_specialwordsextensiblestrings_client.go new file mode 100644 index 0000000000..14195db97c --- /dev/null +++ b/packages/typespec-go/test/http-specs/specialwordsgroup/zz_specialwordsextensiblestrings_client.go @@ -0,0 +1,73 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) Go Code Generator. DO NOT EDIT. + +package specialwordsgroup + +import ( + "context" + "github.com/Azure/azure-sdk-for-go/sdk/azcore" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/policy" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime" + "net/http" +) + +// SpecialWordsExtensibleStringsClient - Verify enum member names that are special words. +// Don't use this type directly, use [SpecialWordsClient.NewSpecialWordsExtensibleStringsClient] instead. +type SpecialWordsExtensibleStringsClient struct { + internal *azcore.Client + endpoint string +} + +// PutExtensibleStringValue - +// If the operation fails it returns an *azcore.ResponseError type. +// - options - SpecialWordsExtensibleStringsClientPutExtensibleStringValueOptions contains the optional parameters for the SpecialWordsExtensibleStringsClient.PutExtensibleStringValue +// method. +func (client *SpecialWordsExtensibleStringsClient) PutExtensibleStringValue(ctx context.Context, body ExtensibleString, options *SpecialWordsExtensibleStringsClientPutExtensibleStringValueOptions) (SpecialWordsExtensibleStringsClientPutExtensibleStringValueResponse, error) { + var err error + const operationName = "SpecialWordsExtensibleStringsClient.PutExtensibleStringValue" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.putExtensibleStringValueCreateRequest(ctx, body, options) + if err != nil { + return SpecialWordsExtensibleStringsClientPutExtensibleStringValueResponse{}, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return SpecialWordsExtensibleStringsClientPutExtensibleStringValueResponse{}, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK) { + err = runtime.NewResponseError(httpResp) + return SpecialWordsExtensibleStringsClientPutExtensibleStringValueResponse{}, err + } + resp, err := client.putExtensibleStringValueHandleResponse(httpResp) + return resp, err +} + +// putExtensibleStringValueCreateRequest creates the PutExtensibleStringValue request. +func (client *SpecialWordsExtensibleStringsClient) putExtensibleStringValueCreateRequest(ctx context.Context, body ExtensibleString, _ *SpecialWordsExtensibleStringsClientPutExtensibleStringValueOptions) (*policy.Request, error) { + urlPath := "/special-words/extensible-strings/string" + req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.endpoint, urlPath)) + if err != nil { + return nil, err + } + req.Raw().Header["Accept"] = []string{"application/json"} + req.Raw().Header["Content-Type"] = []string{"application/json"} + if err := runtime.MarshalAsJSON(req, body); err != nil { + return nil, err + } + return req, nil +} + +// putExtensibleStringValueHandleResponse handles the PutExtensibleStringValue response. +func (client *SpecialWordsExtensibleStringsClient) putExtensibleStringValueHandleResponse(resp *http.Response) (SpecialWordsExtensibleStringsClientPutExtensibleStringValueResponse, error) { + result := SpecialWordsExtensibleStringsClientPutExtensibleStringValueResponse{} + if val := resp.Header.Get("content-type"); val != "" { + result.ContentType = &val + } + if err := runtime.UnmarshalAsJSON(resp, &result.Value); err != nil { + return SpecialWordsExtensibleStringsClientPutExtensibleStringValueResponse{}, err + } + return result, nil +} diff --git a/packages/typespec-go/test/local/azblob/zz_appendblob_client.go b/packages/typespec-go/test/local/azblob/zz_appendblob_client.go index f72836e771..2ca9a80bda 100644 --- a/packages/typespec-go/test/local/azblob/zz_appendblob_client.go +++ b/packages/typespec-go/test/local/azblob/zz_appendblob_client.go @@ -50,7 +50,7 @@ func (client *AppendBlobClient) AppendBlock(ctx context.Context, body io.ReadSee // appendBlockCreateRequest creates the AppendBlock request. func (client *AppendBlobClient) appendBlockCreateRequest(ctx context.Context, body io.ReadSeekCloser, contentLength int64, options *AppendBlobClientAppendBlockOptions) (*policy.Request, error) { - urlPath := "/?comp=appendblock" + urlPath := "?comp=appendblock" req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err @@ -222,7 +222,7 @@ func (client *AppendBlobClient) AppendBlockFromURL(ctx context.Context, sourceUR // appendBlockFromURLCreateRequest creates the AppendBlockFromURL request. func (client *AppendBlobClient) appendBlockFromURLCreateRequest(ctx context.Context, sourceURL string, contentLength int64, options *AppendBlobClientAppendBlockFromURLOptions) (*policy.Request, error) { - urlPath := "/?comp=appendblock" + urlPath := "?comp=appendblock" req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err @@ -577,7 +577,7 @@ func (client *AppendBlobClient) Seal(ctx context.Context, options *AppendBlobCli // sealCreateRequest creates the Seal request. func (client *AppendBlobClient) sealCreateRequest(ctx context.Context, options *AppendBlobClientSealOptions) (*policy.Request, error) { - urlPath := "/?comp=seal" + urlPath := "?comp=seal" req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err diff --git a/packages/typespec-go/test/local/azblob/zz_blockblob_client.go b/packages/typespec-go/test/local/azblob/zz_blockblob_client.go index f99d60f7f0..1b4a87e1a9 100644 --- a/packages/typespec-go/test/local/azblob/zz_blockblob_client.go +++ b/packages/typespec-go/test/local/azblob/zz_blockblob_client.go @@ -57,7 +57,7 @@ func (client *BlockBlobClient) CommitBlockList(ctx context.Context, blocks Block // commitBlockListCreateRequest creates the CommitBlockList request. func (client *BlockBlobClient) commitBlockListCreateRequest(ctx context.Context, blocks BlockLookupList, options *BlockBlobClientCommitBlockListOptions) (*policy.Request, error) { - urlPath := "/?comp=blocklist" + urlPath := "?comp=blocklist" req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err @@ -242,7 +242,7 @@ func (client *BlockBlobClient) GetBlockList(ctx context.Context, listType BlockL // getBlockListCreateRequest creates the GetBlockList request. func (client *BlockBlobClient) getBlockListCreateRequest(ctx context.Context, listType BlockListType, options *BlockBlobClientGetBlockListOptions) (*policy.Request, error) { - urlPath := "/?comp=blocklist" + urlPath := "?comp=blocklist" req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err @@ -341,7 +341,7 @@ func (client *BlockBlobClient) Query(ctx context.Context, queryRequest QueryRequ // queryCreateRequest creates the Query request. func (client *BlockBlobClient) queryCreateRequest(ctx context.Context, queryRequest QueryRequest, options *BlockBlobClientQueryOptions) (*policy.Request, error) { - urlPath := "/?comp=query" + urlPath := "?comp=query" req, err := runtime.NewRequest(ctx, http.MethodPost, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err @@ -575,7 +575,7 @@ func (client *BlockBlobClient) StageBlock(ctx context.Context, blockID string, c // stageBlockCreateRequest creates the StageBlock request. func (client *BlockBlobClient) stageBlockCreateRequest(ctx context.Context, blockID string, contentLength int64, body io.ReadSeekCloser, options *BlockBlobClientStageBlockOptions) (*policy.Request, error) { - urlPath := "/?comp=block" + urlPath := "?comp=block" req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err @@ -709,7 +709,7 @@ func (client *BlockBlobClient) StageBlockFromURL(ctx context.Context, blockID st // stageBlockFromURLCreateRequest creates the StageBlockFromURL request. func (client *BlockBlobClient) stageBlockFromURLCreateRequest(ctx context.Context, blockID string, contentLength int64, sourceURL string, options *BlockBlobClientStageBlockFromURLOptions) (*policy.Request, error) { - urlPath := "/?comp=block" + urlPath := "?comp=block" req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err diff --git a/packages/typespec-go/test/local/azblob/zz_client.go b/packages/typespec-go/test/local/azblob/zz_client.go index fe1471a24a..38e283814d 100644 --- a/packages/typespec-go/test/local/azblob/zz_client.go +++ b/packages/typespec-go/test/local/azblob/zz_client.go @@ -51,7 +51,7 @@ func (client *Client) AbortCopyFromURL(ctx context.Context, copyID string, optio // abortCopyFromURLCreateRequest creates the AbortCopyFromURL request. func (client *Client) abortCopyFromURLCreateRequest(ctx context.Context, copyID string, options *ClientAbortCopyFromURLOptions) (*policy.Request, error) { - urlPath := "/?comp=copy" + urlPath := "?comp=copy" req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err @@ -123,7 +123,7 @@ func (client *Client) AcquireLease(ctx context.Context, duration int32, options // acquireLeaseCreateRequest creates the AcquireLease request. func (client *Client) acquireLeaseCreateRequest(ctx context.Context, duration int32, options *ClientAcquireLeaseOptions) (*policy.Request, error) { - urlPath := "/?comp=lease" + urlPath := "?comp=lease" req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err @@ -221,7 +221,7 @@ func (client *Client) BreakLease(ctx context.Context, options *ClientBreakLeaseO // breakLeaseCreateRequest creates the BreakLease request. func (client *Client) breakLeaseCreateRequest(ctx context.Context, options *ClientBreakLeaseOptions) (*policy.Request, error) { - urlPath := "/?comp=lease" + urlPath := "?comp=lease" req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err @@ -325,7 +325,7 @@ func (client *Client) ChangeLease(ctx context.Context, leaseID string, proposedL // changeLeaseCreateRequest creates the ChangeLease request. func (client *Client) changeLeaseCreateRequest(ctx context.Context, leaseID string, proposedLeaseID string, options *ClientChangeLeaseOptions) (*policy.Request, error) { - urlPath := "/?comp=lease" + urlPath := "?comp=lease" req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err @@ -424,7 +424,7 @@ func (client *Client) CopyFromURL(ctx context.Context, copySource string, option // copyFromURLCreateRequest creates the CopyFromURL request. func (client *Client) copyFromURLCreateRequest(ctx context.Context, copySource string, options *ClientCopyFromURLOptions) (*policy.Request, error) { - urlPath := "/?comp=copy" + urlPath := "?comp=copy" req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err @@ -593,7 +593,7 @@ func (client *Client) CreateSnapshot(ctx context.Context, options *ClientCreateS // createSnapshotCreateRequest creates the CreateSnapshot request. func (client *Client) createSnapshotCreateRequest(ctx context.Context, options *ClientCreateSnapshotOptions) (*policy.Request, error) { - urlPath := "/?comp=snapshot" + urlPath := "?comp=snapshot" req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err @@ -825,7 +825,7 @@ func (client *Client) DeleteImmutabilityPolicy(ctx context.Context, options *Cli // deleteImmutabilityPolicyCreateRequest creates the DeleteImmutabilityPolicy request. func (client *Client) deleteImmutabilityPolicyCreateRequest(ctx context.Context, options *ClientDeleteImmutabilityPolicyOptions) (*policy.Request, error) { - urlPath := "/?comp=immutabilityPolicies" + urlPath := "?comp=immutabilityPolicies" req, err := runtime.NewRequest(ctx, http.MethodDelete, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err @@ -1211,7 +1211,7 @@ func (client *Client) GetAccountInfo(ctx context.Context, options *ClientGetAcco // getAccountInfoCreateRequest creates the GetAccountInfo request. func (client *Client) getAccountInfoCreateRequest(ctx context.Context, options *ClientGetAccountInfoOptions) (*policy.Request, error) { - urlPath := "/?restype=account&comp=properties" + urlPath := "?restype=account&comp=properties" req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err @@ -1602,7 +1602,7 @@ func (client *Client) GetTags(ctx context.Context, options *ClientGetTagsOptions // getTagsCreateRequest creates the GetTags request. func (client *Client) getTagsCreateRequest(ctx context.Context, options *ClientGetTagsOptions) (*policy.Request, error) { - urlPath := "/?comp=tags" + urlPath := "?comp=tags" req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err @@ -1700,7 +1700,7 @@ func (client *Client) ReleaseLease(ctx context.Context, leaseID string, options // releaseLeaseCreateRequest creates the ReleaseLease request. func (client *Client) releaseLeaseCreateRequest(ctx context.Context, leaseID string, options *ClientReleaseLeaseOptions) (*policy.Request, error) { - urlPath := "/?comp=lease" + urlPath := "?comp=lease" req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err @@ -1793,7 +1793,7 @@ func (client *Client) RenewLease(ctx context.Context, leaseID string, options *C // renewLeaseCreateRequest creates the RenewLease request. func (client *Client) renewLeaseCreateRequest(ctx context.Context, leaseID string, options *ClientRenewLeaseOptions) (*policy.Request, error) { - urlPath := "/?comp=lease" + urlPath := "?comp=lease" req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err @@ -1888,7 +1888,7 @@ func (client *Client) SetExpiry(ctx context.Context, expiryOptions ExpiryOptions // setExpiryCreateRequest creates the SetExpiry request. func (client *Client) setExpiryCreateRequest(ctx context.Context, expiryOptions ExpiryOptions, options *ClientSetExpiryOptions) (*policy.Request, error) { - urlPath := "/?comp=expiry" + urlPath := "?comp=expiry" req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err @@ -1966,7 +1966,7 @@ func (client *Client) SetHTTPHeaders(ctx context.Context, options *ClientSetHTTP // setHTTPHeadersCreateRequest creates the SetHTTPHeaders request. func (client *Client) setHTTPHeadersCreateRequest(ctx context.Context, options *ClientSetHTTPHeadersOptions) (*policy.Request, error) { - urlPath := "/?comp=properties" + urlPath := "?comp=properties" req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err @@ -2084,7 +2084,7 @@ func (client *Client) SetImmutabilityPolicy(ctx context.Context, expiry time.Tim // setImmutabilityPolicyCreateRequest creates the SetImmutabilityPolicy request. func (client *Client) setImmutabilityPolicyCreateRequest(ctx context.Context, expiry time.Time, options *ClientSetImmutabilityPolicyOptions) (*policy.Request, error) { - urlPath := "/?comp=immutabilityPolicies" + urlPath := "?comp=immutabilityPolicies" req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err @@ -2172,7 +2172,7 @@ func (client *Client) SetLegalHold(ctx context.Context, legalHold bool, options // setLegalHoldCreateRequest creates the SetLegalHold request. func (client *Client) setLegalHoldCreateRequest(ctx context.Context, legalHold bool, options *ClientSetLegalHoldOptions) (*policy.Request, error) { - urlPath := "/?comp=legalhold" + urlPath := "?comp=legalhold" req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err @@ -2250,7 +2250,7 @@ func (client *Client) SetMetadata(ctx context.Context, options *ClientSetMetadat // setMetadataCreateRequest creates the SetMetadata request. func (client *Client) setMetadataCreateRequest(ctx context.Context, options *ClientSetMetadataOptions) (*policy.Request, error) { - urlPath := "/?comp=metadata" + urlPath := "?comp=metadata" req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err @@ -2378,7 +2378,7 @@ func (client *Client) SetTags(ctx context.Context, tags Tags, options *ClientSet // setTagsCreateRequest creates the SetTags request. func (client *Client) setTagsCreateRequest(ctx context.Context, tags Tags, options *ClientSetTagsOptions) (*policy.Request, error) { - urlPath := "/?comp=tags" + urlPath := "?comp=tags" req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err @@ -2476,7 +2476,7 @@ func (client *Client) SetTier(ctx context.Context, tier AccessTier, options *Cli // setTierCreateRequest creates the SetTier request. func (client *Client) setTierCreateRequest(ctx context.Context, tier AccessTier, options *ClientSetTierOptions) (*policy.Request, error) { - urlPath := "/?comp=tier" + urlPath := "?comp=tier" req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err @@ -2703,7 +2703,7 @@ func (client *Client) Undelete(ctx context.Context, options *ClientUndeleteOptio // undeleteCreateRequest creates the Undelete request. func (client *Client) undeleteCreateRequest(ctx context.Context, options *ClientUndeleteOptions) (*policy.Request, error) { - urlPath := "/?comp=undelete" + urlPath := "?comp=undelete" req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err diff --git a/packages/typespec-go/test/local/azblob/zz_container_client.go b/packages/typespec-go/test/local/azblob/zz_container_client.go index 947bbe4d0c..f533451d6e 100644 --- a/packages/typespec-go/test/local/azblob/zz_container_client.go +++ b/packages/typespec-go/test/local/azblob/zz_container_client.go @@ -52,7 +52,7 @@ func (client *ContainerClient) AcquireLease(ctx context.Context, duration int32, // acquireLeaseCreateRequest creates the AcquireLease request. func (client *ContainerClient) acquireLeaseCreateRequest(ctx context.Context, duration int32, options *ContainerClientAcquireLeaseOptions) (*policy.Request, error) { - urlPath := "/?comp=lease&restype=container" + urlPath := "?comp=lease&restype=container" req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err @@ -141,7 +141,7 @@ func (client *ContainerClient) BreakLease(ctx context.Context, options *Containe // breakLeaseCreateRequest creates the BreakLease request. func (client *ContainerClient) breakLeaseCreateRequest(ctx context.Context, options *ContainerClientBreakLeaseOptions) (*policy.Request, error) { - urlPath := "/?comp=lease&restype=container" + urlPath := "?comp=lease&restype=container" req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err @@ -236,7 +236,7 @@ func (client *ContainerClient) ChangeLease(ctx context.Context, leaseID string, // changeLeaseCreateRequest creates the ChangeLease request. func (client *ContainerClient) changeLeaseCreateRequest(ctx context.Context, leaseID string, proposedLeaseID string, options *ContainerClientChangeLeaseOptions) (*policy.Request, error) { - urlPath := "/?comp=lease&restype=container" + urlPath := "?comp=lease&restype=container" req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err @@ -323,7 +323,7 @@ func (client *ContainerClient) Create(ctx context.Context, options *ContainerCli // createCreateRequest creates the Create request. func (client *ContainerClient) createCreateRequest(ctx context.Context, options *ContainerClientCreateOptions) (*policy.Request, error) { - urlPath := "/?restype=container" + urlPath := "?restype=container" req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err @@ -414,7 +414,7 @@ func (client *ContainerClient) Delete(ctx context.Context, options *ContainerCli // deleteCreateRequest creates the Delete request. func (client *ContainerClient) deleteCreateRequest(ctx context.Context, options *ContainerClientDeleteOptions) (*policy.Request, error) { - urlPath := "/?restype=container" + urlPath := "?restype=container" req, err := runtime.NewRequest(ctx, http.MethodDelete, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err @@ -489,7 +489,7 @@ func (client *ContainerClient) FilterBlobs(ctx context.Context, filterExpression // filterBlobsCreateRequest creates the FilterBlobs request. func (client *ContainerClient) filterBlobsCreateRequest(ctx context.Context, filterExpression string, options *ContainerClientFilterBlobsOptions) (*policy.Request, error) { - urlPath := "/?restype=container&comp=blobs" + urlPath := "?restype=container&comp=blobs" req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err @@ -572,7 +572,7 @@ func (client *ContainerClient) GetAccessPolicy(ctx context.Context, options *Con // getAccessPolicyCreateRequest creates the GetAccessPolicy request. func (client *ContainerClient) getAccessPolicyCreateRequest(ctx context.Context, options *ContainerClientGetAccessPolicyOptions) (*policy.Request, error) { - urlPath := "/?restype=container&comp=acl" + urlPath := "?restype=container&comp=acl" req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err @@ -660,7 +660,7 @@ func (client *ContainerClient) GetAccountInfo(ctx context.Context, options *Cont // getAccountInfoCreateRequest creates the GetAccountInfo request. func (client *ContainerClient) getAccountInfoCreateRequest(ctx context.Context, options *ContainerClientGetAccountInfoOptions) (*policy.Request, error) { - urlPath := "/?restype=account&comp=properties" + urlPath := "?restype=account&comp=properties" req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err @@ -738,7 +738,7 @@ func (client *ContainerClient) GetProperties(ctx context.Context, options *Conta // getPropertiesCreateRequest creates the GetProperties request. func (client *ContainerClient) getPropertiesCreateRequest(ctx context.Context, options *ContainerClientGetPropertiesOptions) (*policy.Request, error) { - urlPath := "/?restype=container" + urlPath := "?restype=container" req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err @@ -870,7 +870,7 @@ func (client *ContainerClient) NewListBlobFlatSegmentPager(options *ContainerCli // listBlobFlatSegmentCreateRequest creates the ListBlobFlatSegment request. func (client *ContainerClient) listBlobFlatSegmentCreateRequest(ctx context.Context, options *ContainerClientListBlobFlatSegmentOptions) (*policy.Request, error) { - urlPath := "/?restype=container&comp=list" + urlPath := "?restype=container&comp=list" req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err @@ -964,7 +964,7 @@ func (client *ContainerClient) NewListBlobHierarchySegmentPager(delimiter string // listBlobHierarchySegmentCreateRequest creates the ListBlobHierarchySegment request. func (client *ContainerClient) listBlobHierarchySegmentCreateRequest(ctx context.Context, delimiter string, options *ContainerClientListBlobHierarchySegmentOptions) (*policy.Request, error) { - urlPath := "/?restype=container&comp=list" + urlPath := "?restype=container&comp=list" req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err @@ -1054,7 +1054,7 @@ func (client *ContainerClient) ReleaseLease(ctx context.Context, leaseID string, // releaseLeaseCreateRequest creates the ReleaseLease request. func (client *ContainerClient) releaseLeaseCreateRequest(ctx context.Context, leaseID string, options *ContainerClientReleaseLeaseOptions) (*policy.Request, error) { - urlPath := "/?comp=lease&restype=container" + urlPath := "?comp=lease&restype=container" req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err @@ -1137,7 +1137,7 @@ func (client *ContainerClient) Rename(ctx context.Context, sourceContainerName s // renameCreateRequest creates the Rename request. func (client *ContainerClient) renameCreateRequest(ctx context.Context, sourceContainerName string, options *ContainerClientRenameOptions) (*policy.Request, error) { - urlPath := "/?restype=container&comp=rename" + urlPath := "?restype=container&comp=rename" req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err @@ -1207,7 +1207,7 @@ func (client *ContainerClient) RenewLease(ctx context.Context, leaseID string, o // renewLeaseCreateRequest creates the RenewLease request. func (client *ContainerClient) renewLeaseCreateRequest(ctx context.Context, leaseID string, options *ContainerClientRenewLeaseOptions) (*policy.Request, error) { - urlPath := "/?comp=lease&restype=container" + urlPath := "?comp=lease&restype=container" req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err @@ -1292,7 +1292,7 @@ func (client *ContainerClient) Restore(ctx context.Context, options *ContainerCl // restoreCreateRequest creates the Restore request. func (client *ContainerClient) restoreCreateRequest(ctx context.Context, options *ContainerClientRestoreOptions) (*policy.Request, error) { - urlPath := "/?restype=container&comp=undelete" + urlPath := "?restype=container&comp=undelete" req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err @@ -1365,7 +1365,7 @@ func (client *ContainerClient) SetAccessPolicy(ctx context.Context, containerACL // setAccessPolicyCreateRequest creates the SetAccessPolicy request. func (client *ContainerClient) setAccessPolicyCreateRequest(ctx context.Context, containerACL SignedIdentifiers, options *ContainerClientSetAccessPolicyOptions) (*policy.Request, error) { - urlPath := "/?restype=container&comp=acl" + urlPath := "?restype=container&comp=acl" req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err @@ -1455,7 +1455,7 @@ func (client *ContainerClient) SetMetadata(ctx context.Context, options *Contain // setMetadataCreateRequest creates the SetMetadata request. func (client *ContainerClient) setMetadataCreateRequest(ctx context.Context, options *ContainerClientSetMetadataOptions) (*policy.Request, error) { - urlPath := "/?restype=container&comp=metadata" + urlPath := "?restype=container&comp=metadata" req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err @@ -1544,7 +1544,7 @@ func (client *ContainerClient) SubmitBatch(ctx context.Context, contentLength in // submitBatchCreateRequest creates the SubmitBatch request. func (client *ContainerClient) submitBatchCreateRequest(ctx context.Context, contentLength int64, body SubmitBatchRequest, options *ContainerClientSubmitBatchOptions) (*policy.Request, error) { - urlPath := "/?restype=container&comp=batch" + urlPath := "?restype=container&comp=batch" req, err := runtime.NewRequest(ctx, http.MethodPost, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err diff --git a/packages/typespec-go/test/local/azblob/zz_pageblob_client.go b/packages/typespec-go/test/local/azblob/zz_pageblob_client.go index 39c7b22201..ce8d15a398 100644 --- a/packages/typespec-go/test/local/azblob/zz_pageblob_client.go +++ b/packages/typespec-go/test/local/azblob/zz_pageblob_client.go @@ -49,7 +49,7 @@ func (client *PageBlobClient) ClearPages(ctx context.Context, rangeParam string, // clearPagesCreateRequest creates the ClearPages request. func (client *PageBlobClient) clearPagesCreateRequest(ctx context.Context, rangeParam string, options *PageBlobClientClearPagesOptions) (*policy.Request, error) { - urlPath := "/?comp=page" + urlPath := "?comp=page" req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err @@ -193,7 +193,7 @@ func (client *PageBlobClient) CopyIncremental(ctx context.Context, copySource st // copyIncrementalCreateRequest creates the CopyIncremental request. func (client *PageBlobClient) copyIncrementalCreateRequest(ctx context.Context, copySource string, options *PageBlobClientCopyIncrementalOptions) (*policy.Request, error) { - urlPath := "/?comp=incrementalcopy" + urlPath := "?comp=incrementalcopy" req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err @@ -464,7 +464,7 @@ func (client *PageBlobClient) GetPageRanges(ctx context.Context, options *PageBl // getPageRangesCreateRequest creates the GetPageRanges request. func (client *PageBlobClient) getPageRangesCreateRequest(ctx context.Context, options *PageBlobClientGetPageRangesOptions) (*policy.Request, error) { - urlPath := "/?comp=pagelist" + urlPath := "?comp=pagelist" req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err @@ -584,7 +584,7 @@ func (client *PageBlobClient) GetPageRangesDiff(ctx context.Context, options *Pa // getPageRangesDiffCreateRequest creates the GetPageRangesDiff request. func (client *PageBlobClient) getPageRangesDiffCreateRequest(ctx context.Context, options *PageBlobClientGetPageRangesDiffOptions) (*policy.Request, error) { - urlPath := "/?comp=pagelist" + urlPath := "?comp=pagelist" req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err @@ -710,7 +710,7 @@ func (client *PageBlobClient) Resize(ctx context.Context, size int64, options *P // resizeCreateRequest creates the Resize request. func (client *PageBlobClient) resizeCreateRequest(ctx context.Context, size int64, options *PageBlobClientResizeOptions) (*policy.Request, error) { - urlPath := "/?comp=properties" + urlPath := "?comp=properties" req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err @@ -826,7 +826,7 @@ func (client *PageBlobClient) UpdateSequenceNumber(ctx context.Context, sequence // updateSequenceNumberCreateRequest creates the UpdateSequenceNumber request. func (client *PageBlobClient) updateSequenceNumberCreateRequest(ctx context.Context, sequenceNumberAction SequenceNumberActionType, options *PageBlobClientUpdateSequenceNumberOptions) (*policy.Request, error) { - urlPath := "/?comp=properties" + urlPath := "?comp=properties" req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err @@ -932,7 +932,7 @@ func (client *PageBlobClient) UploadPages(ctx context.Context, body io.ReadSeekC // uploadPagesCreateRequest creates the UploadPages request. func (client *PageBlobClient) uploadPagesCreateRequest(ctx context.Context, body io.ReadSeekCloser, contentLength int64, rangeParam string, options *PageBlobClientUploadPagesOptions) (*policy.Request, error) { - urlPath := "/?comp=page" + urlPath := "?comp=page" req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err @@ -1109,7 +1109,7 @@ func (client *PageBlobClient) UploadPagesFromURL(ctx context.Context, sourceURL // uploadPagesFromURLCreateRequest creates the UploadPagesFromURL request. func (client *PageBlobClient) uploadPagesFromURLCreateRequest(ctx context.Context, sourceURL string, sourceRange string, contentLength int64, rangeParam string, options *PageBlobClientUploadPagesFromURLOptions) (*policy.Request, error) { - urlPath := "/?comp=page" + urlPath := "?comp=page" req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err diff --git a/packages/typespec-go/test/local/azblob/zz_service_client.go b/packages/typespec-go/test/local/azblob/zz_service_client.go index 0d9f720324..196abd861c 100644 --- a/packages/typespec-go/test/local/azblob/zz_service_client.go +++ b/packages/typespec-go/test/local/azblob/zz_service_client.go @@ -50,7 +50,7 @@ func (client *ServiceClient) FilterBlobs(ctx context.Context, filterExpression s // filterBlobsCreateRequest creates the FilterBlobs request. func (client *ServiceClient) filterBlobsCreateRequest(ctx context.Context, filterExpression string, options *ServiceClientFilterBlobsOptions) (*policy.Request, error) { - urlPath := "/?comp=blobs" + urlPath := "?comp=blobs" req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err @@ -131,7 +131,7 @@ func (client *ServiceClient) GetAccountInfo(ctx context.Context, options *Servic // getAccountInfoCreateRequest creates the GetAccountInfo request. func (client *ServiceClient) getAccountInfoCreateRequest(ctx context.Context, options *ServiceClientGetAccountInfoOptions) (*policy.Request, error) { - urlPath := "/?restype=account&comp=properties" + urlPath := "?restype=account&comp=properties" req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err @@ -209,7 +209,7 @@ func (client *ServiceClient) GetProperties(ctx context.Context, options *Service // getPropertiesCreateRequest creates the GetProperties request. func (client *ServiceClient) getPropertiesCreateRequest(ctx context.Context, options *ServiceClientGetPropertiesOptions) (*policy.Request, error) { - urlPath := "/?restype=service&comp=properties" + urlPath := "?restype=service&comp=properties" req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err @@ -281,7 +281,7 @@ func (client *ServiceClient) GetStatistics(ctx context.Context, options *Service // getStatisticsCreateRequest creates the GetStatistics request. func (client *ServiceClient) getStatisticsCreateRequest(ctx context.Context, options *ServiceClientGetStatisticsOptions) (*policy.Request, error) { - urlPath := "/?restype=service&comp=stats" + urlPath := "?restype=service&comp=stats" req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err @@ -355,7 +355,7 @@ func (client *ServiceClient) GetUserDelegationKey(ctx context.Context, keyInfo K // getUserDelegationKeyCreateRequest creates the GetUserDelegationKey request. func (client *ServiceClient) getUserDelegationKeyCreateRequest(ctx context.Context, keyInfo KeyInfo, options *ServiceClientGetUserDelegationKeyOptions) (*policy.Request, error) { - urlPath := "/?restype=service&comp=userdelegationkey" + urlPath := "?restype=service&comp=userdelegationkey" req, err := runtime.NewRequest(ctx, http.MethodPost, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err @@ -435,7 +435,7 @@ func (client *ServiceClient) NewListContainersSegmentPager(options *ServiceClien // listContainersSegmentCreateRequest creates the ListContainersSegment request. func (client *ServiceClient) listContainersSegmentCreateRequest(ctx context.Context, options *ServiceClientListContainersSegmentOptions) (*policy.Request, error) { - urlPath := "/?comp=list" + urlPath := "?comp=list" req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err @@ -520,7 +520,7 @@ func (client *ServiceClient) SetProperties(ctx context.Context, storageServicePr // setPropertiesCreateRequest creates the SetProperties request. func (client *ServiceClient) setPropertiesCreateRequest(ctx context.Context, storageServiceProperties StorageServiceProperties, options *ServiceClientSetPropertiesOptions) (*policy.Request, error) { - urlPath := "/?restype=service&comp=properties" + urlPath := "?restype=service&comp=properties" req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err @@ -590,7 +590,7 @@ func (client *ServiceClient) SubmitBatch(ctx context.Context, contentLength int6 // submitBatchCreateRequest creates the SubmitBatch request. func (client *ServiceClient) submitBatchCreateRequest(ctx context.Context, contentLength int64, body SubmitBatchRequest, options *ServiceClientSubmitBatchOptions) (*policy.Request, error) { - urlPath := "/?comp=batch" + urlPath := "?comp=batch" req, err := runtime.NewRequest(ctx, http.MethodPost, runtime.JoinPaths(client.url, urlPath)) if err != nil { return nil, err diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index dd89c4cd7b..beb49785f7 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -262,23 +262,23 @@ importers: version: 0.5.21 devDependencies: '@azure-tools/azure-http-specs': - specifier: 0.1.0-alpha.37 - version: 0.1.0-alpha.37(38d310fd60466ff6c7d057842ae705d7) + specifier: 0.1.0-alpha.38 + version: 0.1.0-alpha.38(9029b0f03a9b79bfe26328c8e606fe51) '@azure-tools/typespec-autorest': - specifier: 0.65.0 - version: 0.65.0(5de629f7ec4825e29c9e4d247b6d2442) + specifier: 0.66.0 + version: 0.66.0(5a3c409e98b4129494ffe7602d2b2dba) '@azure-tools/typespec-azure-core': - specifier: 0.65.0 - version: 0.65.0(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/http@1.9.1(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))))(@typespec/rest@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/http@1.9.1(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))))) + specifier: 0.66.0 + version: 0.66.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/http@1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))))(@typespec/rest@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/http@1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))))) '@azure-tools/typespec-azure-resource-manager': - specifier: 0.65.0 - version: 0.65.0(1e5c7dc609368fe5c319bd1250a8dd60) + specifier: 0.66.0 + version: 0.66.0(92284d77af4bc64e2272860c16ccb203) '@azure-tools/typespec-azure-rulesets': - specifier: 0.65.0 - version: 0.65.0(@azure-tools/typespec-azure-core@0.65.0(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/http@1.9.1(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))))(@typespec/rest@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/http@1.9.1(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))))))(@azure-tools/typespec-azure-resource-manager@0.65.0(1e5c7dc609368fe5c319bd1250a8dd60))(@azure-tools/typespec-client-generator-core@0.65.4(2296a36abc0f17fe42099d3726403d0d))(@typespec/compiler@1.9.0(@types/node@20.19.27)) + specifier: 0.66.0 + version: 0.66.0(@azure-tools/typespec-azure-core@0.66.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/http@1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))))(@typespec/rest@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/http@1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))))))(@azure-tools/typespec-azure-resource-manager@0.66.0(92284d77af4bc64e2272860c16ccb203))(@azure-tools/typespec-client-generator-core@0.66.2(7116c80abeec3045387c176f44a26031))(@typespec/compiler@1.10.0(@types/node@20.19.27)) '@azure-tools/typespec-client-generator-core': - specifier: 0.65.4 - version: 0.65.4(2296a36abc0f17fe42099d3726403d0d) + specifier: 0.66.2 + version: 0.66.2(7116c80abeec3045387c176f44a26031) '@types/node': specifier: 'catalog:' version: 20.19.27 @@ -286,41 +286,41 @@ importers: specifier: 'catalog:' version: 7.7.1 '@typespec/compiler': - specifier: 1.9.0 - version: 1.9.0(@types/node@20.19.27) + specifier: 1.10.0 + version: 1.10.0(@types/node@20.19.27) '@typespec/events': - specifier: 0.79.0 - version: 0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27)) + specifier: 0.80.0 + version: 0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27)) '@typespec/http': - specifier: 1.9.1 - version: 1.9.1(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))) + specifier: 1.10.0 + version: 1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))) '@typespec/http-specs': - specifier: 0.1.0-alpha.32 - version: 0.1.0-alpha.32(@types/node@20.19.27)(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/http@1.9.1(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))))(@typespec/rest@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/http@1.9.1(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27)))))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27)))(@typespec/versioning@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27)))(@typespec/xml@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))) + specifier: 0.1.0-alpha.34 + version: 0.1.0-alpha.34(@types/node@20.19.27)(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/http@1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))))(@typespec/rest@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/http@1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27)))))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27)))(@typespec/versioning@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27)))(@typespec/xml@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))) '@typespec/openapi': - specifier: 1.9.0 - version: 1.9.0(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/http@1.9.1(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27)))) + specifier: 1.10.0 + version: 1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/http@1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27)))) '@typespec/rest': - specifier: 0.79.0 - version: 0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/http@1.9.1(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27)))) + specifier: 0.80.0 + version: 0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/http@1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27)))) '@typespec/spector': - specifier: 0.1.0-alpha.23 - version: 0.1.0-alpha.23(@types/node@20.19.27)(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))) + specifier: 0.1.0-alpha.24 + version: 0.1.0-alpha.24(@types/node@20.19.27)(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))) '@typespec/sse': - specifier: 0.79.0 - version: 0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/events@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27)))(@typespec/http@1.9.1(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))) + specifier: 0.80.0 + version: 0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/events@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27)))(@typespec/http@1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))) '@typespec/streams': - specifier: 0.79.0 - version: 0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27)) + specifier: 0.80.0 + version: 0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27)) '@typespec/tspd': - specifier: 0.74.0 - version: 0.74.0(@types/node@20.19.27)(typescript@5.9.3) + specifier: 0.74.1 + version: 0.74.1(@types/node@20.19.27)(typescript@5.9.3) '@typespec/versioning': - specifier: 0.79.0 - version: 0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27)) + specifier: 0.80.0 + version: 0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27)) '@typespec/xml': - specifier: 0.79.0 - version: 0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27)) + specifier: 0.80.0 + version: 0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27)) '@vitest/coverage-v8': specifier: 'catalog:' version: 3.1.3(vitest@3.1.3) @@ -374,16 +374,16 @@ packages: resolution: {integrity: sha512-4w2xfBcT0dj/IYp9t/fsBvuzTrV8faQnCs3URqfui9RBnoHVj12p8FdxCRKuRaN5CRPQlZ6XW4eMhp1wu5E8GQ==} engines: {node: '>=12.13.0'} - '@azure-tools/azure-http-specs@0.1.0-alpha.37': - resolution: {integrity: sha512-oMo0f14FGn2pg4epJQM7W86W6PNTIgtFUCmBGNUXUcffaZIMnzreR9M488ynyuAP4lbsOiu0uFcE2skDXip2Eg==} + '@azure-tools/azure-http-specs@0.1.0-alpha.38': + resolution: {integrity: sha512-OkwmMhmSNOV4PO4UA4Tm4ufyA0UPcOrWgZuhybQjWzUq0bbryW9y5ODyknvUV0Z0IOAInW1dUJQ2wRX9pLqNCA==} engines: {node: '>=20.0.0'} peerDependencies: - '@azure-tools/typespec-azure-core': ^0.65.0 - '@typespec/compiler': ^1.9.0 - '@typespec/http': ^1.9.0 - '@typespec/rest': ^0.79.0 - '@typespec/versioning': ^0.79.0 - '@typespec/xml': ^0.79.0 + '@azure-tools/typespec-azure-core': ^0.66.0 + '@typespec/compiler': ^1.10.0 + '@typespec/http': ^1.10.0 + '@typespec/rest': ^0.80.0 + '@typespec/versioning': ^0.80.0 + '@typespec/xml': ^0.80.0 '@azure-tools/codegen@2.10.0': resolution: {integrity: sha512-gdy0at3BUZAAARgiX9Ye6SNCKhcjLs5FNUewa/KV/dMGcPv7mBvbslt5VO3W8wj0n96ifk970aIFaivjacBxeQ==} @@ -413,65 +413,65 @@ packages: resolution: {integrity: sha512-ojnEXV1RIzsC9XpEoDGU8n1X6uiwaz5bhJeXtqK2tOLJFMNM0BK37CQN60FiBvZCZQADsyw2GC4r6FuHHMceEA==} engines: {node: '>=12.13.0'} - '@azure-tools/typespec-autorest@0.65.0': - resolution: {integrity: sha512-R8pZt7rYdA2Hr3nck93OGapkQZe3MSzoYq4PgRtsGDHcvA5Qp7RBQMF/tP5DEcFWDDm+unoQeDpbD02POb/LTA==} + '@azure-tools/typespec-autorest@0.66.0': + resolution: {integrity: sha512-sznnlQ2Cyxny7bXSl+PzGu+qQf/rrSIvf2qR7G/bqWbK6MNykXwiDk9uR5q93Y8spA9vv4jk38Il4rSXqmAzLQ==} engines: {node: '>=20.0.0'} peerDependencies: - '@azure-tools/typespec-azure-core': ^0.65.0 - '@azure-tools/typespec-azure-resource-manager': ^0.65.0 - '@azure-tools/typespec-client-generator-core': ^0.65.0 - '@typespec/compiler': ^1.9.0 - '@typespec/http': ^1.9.0 - '@typespec/openapi': ^1.9.0 - '@typespec/rest': ^0.79.0 - '@typespec/versioning': ^0.79.0 - '@typespec/xml': ^0.79.0 + '@azure-tools/typespec-azure-core': ^0.66.0 + '@azure-tools/typespec-azure-resource-manager': ^0.66.0 + '@azure-tools/typespec-client-generator-core': ^0.66.0 + '@typespec/compiler': ^1.10.0 + '@typespec/http': ^1.10.0 + '@typespec/openapi': ^1.10.0 + '@typespec/rest': ^0.80.0 + '@typespec/versioning': ^0.80.0 + '@typespec/xml': ^0.80.0 peerDependenciesMeta: '@typespec/xml': optional: true - '@azure-tools/typespec-azure-core@0.65.0': - resolution: {integrity: sha512-dYgHtt0CY0Q9AimdIsMV41jHKLmAT4r++TLwyxAHRbxdiRG+Sll1UKJzOIIoq45Bq64wCfEltu5OOnyPA01/sQ==} + '@azure-tools/typespec-azure-core@0.66.0': + resolution: {integrity: sha512-OBKxRN7AucK3snh+GtLKSDdcZTz08IgcSZlIO3c4KSlmcR5twT1NMyqf1+V8SAhyOdZimndb+ikzrkkgab+GpA==} engines: {node: '>=20.0.0'} peerDependencies: - '@typespec/compiler': ^1.9.0 - '@typespec/http': ^1.9.0 - '@typespec/rest': ^0.79.0 + '@typespec/compiler': ^1.10.0 + '@typespec/http': ^1.10.0 + '@typespec/rest': ^0.80.0 - '@azure-tools/typespec-azure-resource-manager@0.65.0': - resolution: {integrity: sha512-3rvyGDIYSqraZ7jHfq5Bfet8u3ZeERWJWhwWMNvbShnrS/vVR3iuu/1z2M0p5mTRFuwUaSMlL/dbtBp1YqgGAg==} + '@azure-tools/typespec-azure-resource-manager@0.66.0': + resolution: {integrity: sha512-UbgYUaYTt7prsv+RYxd2kiOWjeEeoH56QOqgXnSOFhYzq/h9fyDaQAm6+CY7cklziED+MYy3uMQd1BG9mNwlfQ==} engines: {node: '>=20.0.0'} peerDependencies: - '@azure-tools/typespec-azure-core': ^0.65.0 - '@typespec/compiler': ^1.9.0 - '@typespec/http': ^1.9.0 - '@typespec/openapi': ^1.9.0 - '@typespec/rest': ^0.79.0 - '@typespec/versioning': ^0.79.0 - - '@azure-tools/typespec-azure-rulesets@0.65.0': - resolution: {integrity: sha512-oGuCw61uU9fUASog/1iD1rGeGhcKgnAuyBWA63wRcMMrcW1ZqUK2xvjV1XJuoYRlMxU8HpQShFcvsj715pNVLQ==} + '@azure-tools/typespec-azure-core': ^0.66.0 + '@typespec/compiler': ^1.10.0 + '@typespec/http': ^1.10.0 + '@typespec/openapi': ^1.10.0 + '@typespec/rest': ^0.80.0 + '@typespec/versioning': ^0.80.0 + + '@azure-tools/typespec-azure-rulesets@0.66.0': + resolution: {integrity: sha512-Wf0SpphmKDDzHgaqpxl68DpP65VUWjpD3mrnZ3Lw4Pdtt8BcZf7+LKgFF06gPRnh15hR0VbjAERCzxI/qGY4ag==} engines: {node: '>=20.0.0'} peerDependencies: - '@azure-tools/typespec-azure-core': ^0.65.0 - '@azure-tools/typespec-azure-resource-manager': ^0.65.0 - '@azure-tools/typespec-client-generator-core': ^0.65.0 - '@typespec/compiler': ^1.9.0 + '@azure-tools/typespec-azure-core': ^0.66.0 + '@azure-tools/typespec-azure-resource-manager': ^0.66.0 + '@azure-tools/typespec-client-generator-core': ^0.66.1 + '@typespec/compiler': ^1.10.0 - '@azure-tools/typespec-client-generator-core@0.65.4': - resolution: {integrity: sha512-p+MZU/nEmU3ciLEuNbqQtAybPxUKo/fKeKT9feh+tZLVpDDFO5DTefYoN4cteZQkPu/xyzxhjeUnKKvyVQxd6A==} + '@azure-tools/typespec-client-generator-core@0.66.2': + resolution: {integrity: sha512-Qr5fstJ0yQiTYNvp/EuY3+mUBue2ri9qNZkT6aC+CsfBt5yjfdjo++3SuEsDQtELyS8pBoDOT3weLiB0N+/fSw==} engines: {node: '>=20.0.0'} peerDependencies: - '@azure-tools/typespec-azure-core': ^0.65.0 - '@typespec/compiler': ^1.9.0 - '@typespec/events': ^0.79.0 - '@typespec/http': ^1.9.0 - '@typespec/openapi': ^1.9.0 - '@typespec/rest': ^0.79.0 - '@typespec/sse': ^0.79.0 - '@typespec/streams': ^0.79.0 - '@typespec/versioning': ^0.79.0 - '@typespec/xml': ^0.79.0 + '@azure-tools/typespec-azure-core': ^0.66.0 + '@typespec/compiler': ^1.10.0 + '@typespec/events': ^0.80.0 + '@typespec/http': ^1.10.0 + '@typespec/openapi': ^1.10.0 + '@typespec/rest': ^0.80.0 + '@typespec/sse': ^0.80.0 + '@typespec/streams': ^0.80.0 + '@typespec/versioning': ^0.80.0 + '@typespec/xml': ^0.80.0 '@azure/abort-controller@2.1.2': resolution: {integrity: sha512-nBrLsEWm4J2u5LpAPjxADTlq3trDgVZZXHNKabeXZtpq3d3AbN/KGO82R87rdDz5/lYB024rtEf10/q0urNgsA==} @@ -537,8 +537,8 @@ packages: resolution: {integrity: sha512-IQjj9RIzAKatmNca3D6bT0qJ+Pkox1WZGOg2esJF2YLHb45pQKOwGPIAV+w3rfgkj7zV3RMxpn/c6iftzSOZJQ==} engines: {node: '>=18.0.0'} - '@azure/storage-blob@12.30.0': - resolution: {integrity: sha512-peDCR8blSqhsAKDbpSP/o55S4sheNwSrblvCaHUZ5xUI73XA7ieUGGwrONgD/Fng0EoDe1VOa3fAQ7+WGB3Ocg==} + '@azure/storage-blob@12.31.0': + resolution: {integrity: sha512-DBgNv10aCSxopt92DkTDD0o9xScXeBqPKGmR50FPZQaEcH4JLQ+GEOGEDv19V5BMkB7kxr+m4h6il/cCDPvmHg==} engines: {node: '>=20.0.0'} '@azure/storage-common@12.3.0': @@ -553,6 +553,10 @@ packages: resolution: {integrity: sha512-JYgintcMjRiCvS8mMECzaEn+m3PfoQiyqukOMCCVQtoJGYJw8j/8LBJEiqkHLkfwCcs74E3pbAUFNg7d9VNJ+Q==} engines: {node: '>=6.9.0'} + '@babel/code-frame@7.29.0': + resolution: {integrity: sha512-9NhCeYjq9+3uxgdtp20LSiJXJvN0FeCtNGpJxuMFZ1Kv3cWUNb6DOhJwUvcVCzKGR66cw4njwM6hrJLqgOwbcw==} + engines: {node: '>=6.9.0'} + '@babel/compat-data@7.27.1': resolution: {integrity: sha512-Q+E+rd/yBzNQhXkG+zQnF58e4zoZfBedaxwzPmicKsiK3nt8iJYrSrDbjwFFDGC4f+rPafqRaPH6TsDoSvMf7A==} engines: {node: '>=6.9.0'} @@ -1127,14 +1131,6 @@ packages: '@types/node': optional: true - '@isaacs/balanced-match@4.0.1': - resolution: {integrity: sha512-yzMTt9lEb8Gv7zRioUilSglI0c0smZ9k5D65677DLWLtWJaXIS3CqcGyUFByYKlnUj6TkjLVs54fBl6+TiGQDQ==} - engines: {node: 20 || >=22} - - '@isaacs/brace-expansion@5.0.0': - resolution: {integrity: sha512-ZT55BDLV0yv0RBm2czMiZ+SqCGO7AvmOM3G/w2xhVPH+te0aKgFjmBvGlL1dH+ql2tgGO3MVrbb3jCKyvpgnxA==} - engines: {node: 20 || >=22} - '@isaacs/cliui@8.0.2': resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} engines: {node: '>=12'} @@ -1332,16 +1328,19 @@ packages: engines: {node: '>=18'} hasBin: true - '@microsoft/api-extractor-model@7.32.2': - resolution: {integrity: sha512-Ussc25rAalc+4JJs9HNQE7TuO9y6jpYQX9nWD1DhqUzYPBr3Lr7O9intf+ZY8kD5HnIqeIRJX7ccCT0QyBy2Ww==} + '@microsoft/api-extractor-model@7.33.4': + resolution: {integrity: sha512-u1LTaNTikZAQ9uK6KG1Ms7nvNedsnODnspq/gH2dcyETWvH4hVNGNDvRAEutH66kAmxA4/necElqGNs1FggC8w==} - '@microsoft/api-extractor@7.55.2': - resolution: {integrity: sha512-1jlWO4qmgqYoVUcyh+oXYRztZde/pAi7cSVzBz/rc+S7CoVzDasy8QE13dx6sLG4VRo8SfkkLbFORR6tBw4uGQ==} + '@microsoft/api-extractor@7.57.7': + resolution: {integrity: sha512-kmnmVs32MFWbV5X6BInC1/TfCs7y1ugwxv1xHsAIj/DyUfoe7vtO0alRUgbQa57+yRGHBBjlNcEk33SCAt5/dA==} hasBin: true '@microsoft/tsdoc-config@0.18.0': resolution: {integrity: sha512-8N/vClYyfOH+l4fLkkr9+myAoR6M7akc8ntBJ4DJdWH2b09uVfr71+LTMpNyG19fNqWDg8KEDZhx5wxuqHyGjw==} + '@microsoft/tsdoc-config@0.18.1': + resolution: {integrity: sha512-9brPoVdfN9k9g0dcWkFeA7IH9bbcttzDJlXvkf8b2OBzd5MueR1V2wkKBL0abn0otvmkHJC6aapBOTJDDeMCZg==} + '@microsoft/tsdoc@0.16.0': resolution: {integrity: sha512-xgAyonlVVS+q7Vc7qLW0UrJU7rSFcETRWsqdXZtjzRU8dF+6CkozTK4V4y1LwOX7j8r/vHphjDeMeGI4tNGeGA==} @@ -1478,35 +1477,35 @@ packages: '@rtsao/scc@1.1.0': resolution: {integrity: sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==} - '@rushstack/node-core-library@5.19.1': - resolution: {integrity: sha512-ESpb2Tajlatgbmzzukg6zyAhH+sICqJR2CNXNhXcEbz6UGCQfrKCtkxOpJTftWc8RGouroHG0Nud1SJAszvpmA==} + '@rushstack/node-core-library@5.20.3': + resolution: {integrity: sha512-95JgEPq2k7tHxhF9/OJnnyHDXfC9cLhhta0An/6MlkDsX2A6dTzDrTUG18vx4vjc280V0fi0xDH9iQczpSuWsw==} peerDependencies: '@types/node': '*' peerDependenciesMeta: '@types/node': optional: true - '@rushstack/problem-matcher@0.1.1': - resolution: {integrity: sha512-Fm5XtS7+G8HLcJHCWpES5VmeMyjAKaWeyZU5qPzZC+22mPlJzAsOxymHiWIfuirtPckX3aptWws+K2d0BzniJA==} + '@rushstack/problem-matcher@0.2.1': + resolution: {integrity: sha512-gulfhBs6n+I5b7DvjKRfhMGyUejtSgOHTclF/eONr8hcgF1APEDjhxIsfdUYYMzC3rvLwGluqLjbwCFZ8nxrog==} peerDependencies: '@types/node': '*' peerDependenciesMeta: '@types/node': optional: true - '@rushstack/rig-package@0.6.0': - resolution: {integrity: sha512-ZQmfzsLE2+Y91GF15c65L/slMRVhF6Hycq04D4TwtdGaUAbIXXg9c5pKA5KFU7M4QMaihoobp9JJYpYcaY3zOw==} + '@rushstack/rig-package@0.7.2': + resolution: {integrity: sha512-9XbFWuqMYcHUso4mnETfhGVUSaADBRj6HUAAEYk50nMPn8WRICmBuCphycQGNB3duIR6EEZX3Xj3SYc2XiP+9A==} - '@rushstack/terminal@0.19.5': - resolution: {integrity: sha512-6k5tpdB88G0K7QrH/3yfKO84HK9ggftfUZ51p7fePyCE7+RLLHkWZbID9OFWbXuna+eeCFE7AkKnRMHMxNbz7Q==} + '@rushstack/terminal@0.22.3': + resolution: {integrity: sha512-gHC9pIMrUPzAbBiI4VZMU7Q+rsCzb8hJl36lFIulIzoceKotyKL3Rd76AZ2CryCTKEg+0bnTj406HE5YY5OQvw==} peerDependencies: '@types/node': '*' peerDependenciesMeta: '@types/node': optional: true - '@rushstack/ts-command-line@5.1.5': - resolution: {integrity: sha512-YmrFTFUdHXblYSa+Xc9OO9FsL/XFcckZy0ycQ6q7VSBsVs5P0uD9vcges5Q9vctGlVdu27w+Ct6IuJ458V0cTQ==} + '@rushstack/ts-command-line@5.3.3': + resolution: {integrity: sha512-c+ltdcvC7ym+10lhwR/vWiOhsrm/bP3By2VsFcs5qTKv+6tTmxgbVrtJ5NdNjANiV5TcmOZgUN+5KYQ4llsvEw==} '@shikijs/engine-oniguruma@3.4.2': resolution: {integrity: sha512-zcZKMnNndgRa3ORja6Iemsr3DrLtkX3cAF7lTJkdMB6v9alhlBsX9uNiCpqofNrXOvpA3h6lHcLJxgCIhVOU5Q==} @@ -1615,15 +1614,15 @@ packages: '@types/node@24.10.1': resolution: {integrity: sha512-GNWcUTRBgIRJD5zj+Tq0fKOJ5XZajIiBroOF0yvj2bSU1WvNdYS/dn9UxwsujGW4JX06dnHyjV2y9rRaybH0iQ==} - '@types/node@25.0.10': - resolution: {integrity: sha512-zWW5KPngR/yvakJgGOmZ5vTBemDoSqF3AcV/LrO5u5wTWyEAVVh+IT39G4gtyAkh3CtTZs8aX/yRM82OfzHJRg==} - '@types/node@25.0.3': resolution: {integrity: sha512-W609buLVRVmeW693xKfzHeIV6nJGGz98uCPfeXI1ELMLXVeKYZ9m15fAMSaUPBHYLGFsVRcMmSCksQOrZV9BYA==} '@types/node@25.2.3': resolution: {integrity: sha512-m0jEgYlYz+mDJZ2+F4v8D1AyQb+QzsNqRuI7xg1VQX/KlKS0qT9r1Mo16yo5F/MtifXFgaofIFsdFMox2SxIbQ==} + '@types/node@25.3.5': + resolution: {integrity: sha512-oX8xrhvpiyRCQkG1MFchB09f+cXftgIXb3a7UUa4Y3wpmZPw5tyZGTLWhlESOLq1Rq6oDlc8npVU2/9xiCuXMA==} + '@types/nunjucks@3.2.6': resolution: {integrity: sha512-pHiGtf83na1nCzliuAdq8GowYiXvH5l931xZ0YEHaLMNFgynpEqx+IPStlu7UaDkehfvl01e4x/9Tpwhy7Ue3w==} @@ -1754,99 +1753,99 @@ packages: resolution: {integrity: sha512-LlKaciDe3GmZFphXIc79THF/YYBugZ7FS1pO581E/edlVVNbZKDy93evqmrfQ9/Y4uN0vVhX4iuchq26mK/iiA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typespec/compiler@1.9.0': - resolution: {integrity: sha512-Rz9fFWQSTJSnhBfZvtA/bDIuO82fknYdtyMsL9lZNJE82rquC6JByHPFsnbGH1VXA0HhMj9L7Oqyp3f0m/BTOA==} + '@typespec/compiler@1.10.0': + resolution: {integrity: sha512-R6BATDkughntPpaxeESJF+wxma5PEjgmnnKvH0/ByqUH8VyhIckQWE9kkP0Uc/EJ0o0VYhe8qCwWQvV70k5lTw==} engines: {node: '>=20.0.0'} hasBin: true - '@typespec/events@0.79.0': - resolution: {integrity: sha512-41R2jA7k21uMArjyUdvnqYzVnPPaSEcGi40dLMiRVP79m6XgnD3INuTdlMblaS1i+5jJ1BtS1o4QhBBuS/5/qg==} + '@typespec/events@0.80.0': + resolution: {integrity: sha512-FrWEUwxhDNbE2YN4fyqV5Qrz9qFJbvPoiKrJM7dexkb7eyhepq3dbc5zZgAm/qFBQ+XxGQQVJ4swXxKT+338fw==} engines: {node: '>=20.0.0'} peerDependencies: - '@typespec/compiler': ^1.9.0 + '@typespec/compiler': ^1.10.0 - '@typespec/http-specs@0.1.0-alpha.32': - resolution: {integrity: sha512-a5kOR6M6H23+w4cmYyprh/2Oa5bmPmz6wOQKc9cKfXH8f2sFJ4ViIHBMovyAl5HsSaDAY4VvVz1vmEWA+OWj8g==} + '@typespec/http-specs@0.1.0-alpha.34': + resolution: {integrity: sha512-xyOOFVUjBgZLYeDaoaZ6Mj6DoLjvDhhUvSRZIpWroAUHL+P30XR2wZ6dKLtOgF9uPn7S2MvpSvAAs4Z+mYh9YQ==} engines: {node: '>=16.0.0'} peerDependencies: - '@typespec/compiler': ^1.9.0 - '@typespec/http': ^1.9.0 - '@typespec/rest': ^0.79.0 - '@typespec/versioning': ^0.79.0 - '@typespec/xml': ^0.79.0 - - '@typespec/http@1.9.1': - resolution: {integrity: sha512-agcwmbB/hK/o9KmM38UB8OGZwLgB17lJ7b4EjqYGpyshqcRMTESMRxnJIH7rRzUq4HJDTqal0tsb8z0K0zXuDg==} + '@typespec/compiler': ^1.10.0 + '@typespec/http': ^1.10.0 + '@typespec/rest': ^0.80.0 + '@typespec/versioning': ^0.80.0 + '@typespec/xml': ^0.80.0 + + '@typespec/http@1.10.0': + resolution: {integrity: sha512-/fj55fmUj4m/FmNdfH0V52menVrmS2r5Xj9d1H+pnjQbxvvaxS906RSRcoF8kbg3PvlibP/Py5u82TAk53AyqA==} engines: {node: '>=20.0.0'} peerDependencies: - '@typespec/compiler': ^1.9.0 - '@typespec/streams': ^0.79.0 + '@typespec/compiler': ^1.10.0 + '@typespec/streams': ^0.80.0 peerDependenciesMeta: '@typespec/streams': optional: true - '@typespec/openapi@1.9.0': - resolution: {integrity: sha512-5ieXCWRLcyFLv3IFk26ena/RW/NxvT5KiHaoNVFRd79J0XZjFcE0Od6Lxxqj4dWmCo3C8oKtOwFoQuie18G3lQ==} + '@typespec/openapi@1.10.0': + resolution: {integrity: sha512-tukmyp+c9CFlA2FdF61XfT9eTe5WXWz6J8pOrJ9+IYg0BcBwhJkvDj6BYpDD6SjxbRr1wO5ZL2Whe6MequsyVw==} engines: {node: '>=20.0.0'} peerDependencies: - '@typespec/compiler': ^1.9.0 - '@typespec/http': ^1.9.0 + '@typespec/compiler': ^1.10.0 + '@typespec/http': ^1.10.0 - '@typespec/rest@0.79.0': - resolution: {integrity: sha512-6QIX7oaUGy/z4rseUrC86LjHxZn8rAAY4fXvGnlPRce6GhEdTb9S9OQPmlPeWngXwCx/07P2+FCR915APqmZxg==} + '@typespec/rest@0.80.0': + resolution: {integrity: sha512-xczXLoB2akSIDner41gQYTS9CG6TdCN0QHYvXBT6ZrYEnBh+pMvdymW//5CSOTamZLOGo9AOJVJaFfwbFA4vQQ==} engines: {node: '>=20.0.0'} peerDependencies: - '@typespec/compiler': ^1.9.0 - '@typespec/http': ^1.9.0 + '@typespec/compiler': ^1.10.0 + '@typespec/http': ^1.10.0 - '@typespec/spec-api@0.1.0-alpha.12': - resolution: {integrity: sha512-cAJ1vj6qk2Vw5g1uesohBItA6fl8KqrTRIwj0DdpPaBtQeaUS7yRJZgGQQz/JLeqDj2B+8z2pooLuvEBtnS+jA==} + '@typespec/spec-api@0.1.0-alpha.13': + resolution: {integrity: sha512-ed0qqGM92vKuangmENUYMeDQZpSlsEMYdeH7+wMl+bIgXzfZ7yv07fNwcmROzSEJd0CzdCTgz+Hp+ifmR4USNQ==} engines: {node: '>=20.0.0'} - '@typespec/spec-coverage-sdk@0.1.0-alpha.15': - resolution: {integrity: sha512-Y7SxNBEouGBlMIw5nD+skCYX8FkM2v1CxW79VjqX+iigJQsh2ML0F/G1Zh551l2Dr7zuMv+0qiPrmOC5v3yEgQ==} + '@typespec/spec-coverage-sdk@0.1.0-alpha.16': + resolution: {integrity: sha512-qwSnuE+CXjv4mn2uhioTVlaO4GjypR4ZtbkSoLmWA677ggYmoAjIDpyNgT1tjsc1lDKVtSiPvGhM9XFKExVmbQ==} engines: {node: '>=16.0.0'} - '@typespec/spector@0.1.0-alpha.23': - resolution: {integrity: sha512-z5ORR/HnaLKYcTL2a73sUfC4LmuOqlCRmSPF8h5NtUNDpER3s4aLlFu4DgcaVYTgHruiBLMkLyHpfNPxKDzY7g==} + '@typespec/spector@0.1.0-alpha.24': + resolution: {integrity: sha512-POUSFunRZ4UbPEs+YLz0vE9tDoc6chQ/61moyiWO/k4hD2R1KTH0qlRHhuKW8/Y2wa8Jbuex39Ft/O3reHZSTQ==} engines: {node: '>=16.0.0'} hasBin: true - '@typespec/sse@0.79.0': - resolution: {integrity: sha512-YQYlDWCNBza75S360jc51emwntWXMZfkvqXKng+etKP4iCuogJfTX1J8h1yd8tZwkuUNBcklEPCuz3O/+psopg==} + '@typespec/sse@0.80.0': + resolution: {integrity: sha512-/lxYgMaxgEcjBVhep9tf/VnFD2wnkZlkmjUHLeZL8Cuf+qip61Ren6Ml91YtNnnIFYsuuymDzRclrA073ZBR6Q==} engines: {node: '>=20.0.0'} peerDependencies: - '@typespec/compiler': ^1.9.0 - '@typespec/events': ^0.79.0 - '@typespec/http': ^1.9.0 - '@typespec/streams': ^0.79.0 + '@typespec/compiler': ^1.10.0 + '@typespec/events': ^0.80.0 + '@typespec/http': ^1.10.0 + '@typespec/streams': ^0.80.0 - '@typespec/streams@0.79.0': - resolution: {integrity: sha512-nOXpLcEYNdWvLY/6WJ16rD6hGs7bKSmkH+WwgyVwdRON5KJ559quw56pns2DSANw+NaV0lJxJq/8ek5xKCGD6g==} + '@typespec/streams@0.80.0': + resolution: {integrity: sha512-lNvzrvX/ZRIxRpxIBZu90XNsT+uWsMbLtxHd9edspHAiID3c9WKZbl2fnLcPqdR/60odqKve4yGzB9gF58GUDQ==} engines: {node: '>=20.0.0'} peerDependencies: - '@typespec/compiler': ^1.9.0 + '@typespec/compiler': ^1.10.0 '@typespec/ts-http-runtime@0.2.2': resolution: {integrity: sha512-Gz/Sm64+Sq/vklJu1tt9t+4R2lvnud8NbTD/ZfpZtMiUX7YeVpCA8j6NSW8ptwcoLL+NmYANwqP8DV0q/bwl2w==} engines: {node: '>=18.0.0'} - '@typespec/tspd@0.74.0': - resolution: {integrity: sha512-3djIZittIUk7PWzBvXTyu3UII8WXujjBnKz+ADzKUEPcLCZgVMjdXUAjeYQHM8q7AJr6jAovUqAQSft49wCk3Q==} + '@typespec/tspd@0.74.1': + resolution: {integrity: sha512-0padEJ3gQNkhYtihA+NVZwjiRfJuZDlj7dy4pofoeBcBPRQtb+7Rr3ejSadhOT2kp7+GwhlXzcfMxOw6hRildA==} engines: {node: '>=20.0.0'} hasBin: true - '@typespec/versioning@0.79.0': - resolution: {integrity: sha512-mk65zpKNm+ARyHASnre/lp3o3FKzb0P8Nj96ji182JUy7ShrVCCF0u+bC+ZXQ8ZTRza1d0xBjRC/Xr4iM+Uwag==} + '@typespec/versioning@0.80.0': + resolution: {integrity: sha512-WQCT0jN2lSRfwOy+Cd1KUYzenpKR5TdoX0uW6zQdvxQ9nQZIXoaSaReh9/ldhmSV4xv3p2dqF9oq1cdbVGfJTg==} engines: {node: '>=20.0.0'} peerDependencies: - '@typespec/compiler': ^1.9.0 + '@typespec/compiler': ^1.10.0 - '@typespec/xml@0.79.0': - resolution: {integrity: sha512-BqbbtkL9xuiAhehHKKUCMtRg0a1vjSvoiAOanvTIuoFq3N8PbKVV3dKTcyI/oS3iCCkJErdu11HQcAoD/VsIsA==} + '@typespec/xml@0.80.0': + resolution: {integrity: sha512-Qfy5eyCcOF3xYOU/dejhpmmeY75U1Q9C8XBE+GvSZ3lakRfKBIpT+X6Q07qmKSAbGYJZKYLWCIAy/dgCuu/OAA==} engines: {node: '>=20.0.0'} peerDependencies: - '@typespec/compiler': ^1.9.0 + '@typespec/compiler': ^1.10.0 '@ungap/structured-clone@1.3.0': resolution: {integrity: sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==} @@ -2130,12 +2129,12 @@ packages: ajv@8.12.0: resolution: {integrity: sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==} - ajv@8.13.0: - resolution: {integrity: sha512-PRA911Blj99jR5RMeTunVbNXMF6Lp4vZXnk5GQjcnUWUTsrXtekg/pnmFFI2u/I36Y/2bITGS30GZCXei6uNkA==} - ajv@8.17.1: resolution: {integrity: sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==} + ajv@8.18.0: + resolution: {integrity: sha512-PlXPeEWMXMZ7sPYOHqmDyCJzcfNrUr3fGNKtezX14ykXOEIvyK81d+qydx89KY5O71FKMPaQ2vBfBFI5NHR63A==} + ansi-escapes@4.3.2: resolution: {integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==} engines: {node: '>=8'} @@ -2286,6 +2285,10 @@ packages: balanced-match@1.0.2: resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} + balanced-match@4.0.4: + resolution: {integrity: sha512-BLrgEcRTwX2o6gGxGOCNyMvGSp35YofuYzw9h1IMTRmKqttAZZVU67bdb9Pr2vUHA8+j3i2tJfjO6C6+4myGTA==} + engines: {node: 18 || 20 || >=22} + baseline-browser-mapping@2.9.19: resolution: {integrity: sha512-ipDqC8FrAl/76p2SSWKSI+H9tFwm7vYqXQrItCuiVPt26Km0jS+NzSsBWAaBusvSbQcfJG+JitdMm+wZAgTYqg==} hasBin: true @@ -2308,6 +2311,10 @@ packages: brace-expansion@2.0.1: resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==} + brace-expansion@5.0.4: + resolution: {integrity: sha512-h+DEnpVvxmfVefa4jFbCf5HdH5YMDXRsmKflpf1pILZWRFlTbJpxeU55nJl4Smt5HQaGzg1o6RHFPJaOqnmBDg==} + engines: {node: 18 || 20 || >=22} + braces@3.0.3: resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} engines: {node: '>=8'} @@ -2793,9 +2800,9 @@ packages: resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==} engines: {node: '>=0.12'} - env-paths@3.0.0: - resolution: {integrity: sha512-dtJUTepzMW3Lm/NPxRf3wP4642UWhjL2sQxc+ym2YMj1m/H2zDNQOlezafzkHwn6sMstjHTwG6iQQsctDW/b1A==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + env-paths@4.0.0: + resolution: {integrity: sha512-pxP8eL2SwwaTRi/KHYwLYXinDs7gL3jxFcBYmEdYfZmZXbaVDvdppd0XBU8qVz03rDfKZMXg1omHCbsJjZrMsw==} + engines: {node: '>=20'} error-ex@1.3.2: resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==} @@ -3501,6 +3508,10 @@ packages: resolution: {integrity: sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==} engines: {node: '>= 0.4'} + is-safe-filename@0.1.1: + resolution: {integrity: sha512-4SrR7AdnY11LHfDKTZY1u6Ga3RuxZdl3YKWWShO5iyuG5h8QS4GD2tOb04peBJ5I7pXbR+CGBNEhTcwK+FzN3g==} + engines: {node: '>=20'} + is-set@2.0.3: resolution: {integrity: sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==} engines: {node: '>= 0.4'} @@ -4125,9 +4136,9 @@ packages: resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} engines: {node: '>=6'} - minimatch@10.0.3: - resolution: {integrity: sha512-IPZ167aShDZZUMdRk66cyQAW3qr0WzbHkPdMYa8bzZhlHhO3jALbKdxcaak7W9FfT2rZNpQuUu4Od7ILEpXSaw==} - engines: {node: 20 || >=22} + minimatch@10.2.3: + resolution: {integrity: sha512-Rwi3pnapEqirPSbWbrZaa6N3nmqq4Xer/2XooiOKyV3q12ML06f7MOuc5DVH8ONZIFhwIYQ3yzPH4nt7iWHaTg==} + engines: {node: 18 || 20 || >=22} minimatch@3.1.2: resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} @@ -5150,6 +5161,9 @@ packages: undici-types@7.16.0: resolution: {integrity: sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw==} + undici-types@7.18.2: + resolution: {integrity: sha512-AsuCzffGHJybSaRrmr5eHr81mwJU3kjw6M+uprWvCXiNeN9SOGwQ3Jn8jb8m3Z6izVgknn1R0FTCEAP2QrLY/w==} + unicorn-magic@0.4.0: resolution: {integrity: sha512-wH590V9VNgYH9g3lH9wWjTrUoKsjLF6sGLjhR4sH1LWpLmCOH0Zf7PukhDA8BiS7KHe4oPNkcTHqYkj7SOGUOw==} engines: {node: '>=20'} @@ -5589,16 +5603,16 @@ snapshots: '@azure-tools/tasks': 4.0.246 proper-lockfile: 2.0.1 - '@azure-tools/azure-http-specs@0.1.0-alpha.37(38d310fd60466ff6c7d057842ae705d7)': + '@azure-tools/azure-http-specs@0.1.0-alpha.38(9029b0f03a9b79bfe26328c8e606fe51)': dependencies: - '@azure-tools/typespec-azure-core': 0.65.0(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/http@1.9.1(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))))(@typespec/rest@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/http@1.9.1(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))))) - '@typespec/compiler': 1.9.0(@types/node@20.19.27) - '@typespec/http': 1.9.1(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))) - '@typespec/rest': 0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/http@1.9.1(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27)))) - '@typespec/spec-api': 0.1.0-alpha.12 - '@typespec/spector': 0.1.0-alpha.23(@types/node@20.19.27)(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))) - '@typespec/versioning': 0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27)) - '@typespec/xml': 0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27)) + '@azure-tools/typespec-azure-core': 0.66.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/http@1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))))(@typespec/rest@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/http@1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))))) + '@typespec/compiler': 1.10.0(@types/node@20.19.27) + '@typespec/http': 1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))) + '@typespec/rest': 0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/http@1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27)))) + '@typespec/spec-api': 0.1.0-alpha.13 + '@typespec/spector': 0.1.0-alpha.24(@types/node@20.19.27)(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))) + '@typespec/versioning': 0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27)) + '@typespec/xml': 0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27)) transitivePeerDependencies: - '@types/node' - '@typespec/streams' @@ -5631,55 +5645,55 @@ snapshots: '@azure-tools/tasks@4.0.246': {} - '@azure-tools/typespec-autorest@0.65.0(5de629f7ec4825e29c9e4d247b6d2442)': + '@azure-tools/typespec-autorest@0.66.0(5a3c409e98b4129494ffe7602d2b2dba)': dependencies: - '@azure-tools/typespec-azure-core': 0.65.0(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/http@1.9.1(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))))(@typespec/rest@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/http@1.9.1(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))))) - '@azure-tools/typespec-azure-resource-manager': 0.65.0(1e5c7dc609368fe5c319bd1250a8dd60) - '@azure-tools/typespec-client-generator-core': 0.65.4(2296a36abc0f17fe42099d3726403d0d) - '@typespec/compiler': 1.9.0(@types/node@20.19.27) - '@typespec/http': 1.9.1(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))) - '@typespec/openapi': 1.9.0(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/http@1.9.1(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27)))) - '@typespec/rest': 0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/http@1.9.1(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27)))) - '@typespec/versioning': 0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27)) + '@azure-tools/typespec-azure-core': 0.66.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/http@1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))))(@typespec/rest@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/http@1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))))) + '@azure-tools/typespec-azure-resource-manager': 0.66.0(92284d77af4bc64e2272860c16ccb203) + '@azure-tools/typespec-client-generator-core': 0.66.2(7116c80abeec3045387c176f44a26031) + '@typespec/compiler': 1.10.0(@types/node@20.19.27) + '@typespec/http': 1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))) + '@typespec/openapi': 1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/http@1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27)))) + '@typespec/rest': 0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/http@1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27)))) + '@typespec/versioning': 0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27)) optionalDependencies: - '@typespec/xml': 0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27)) + '@typespec/xml': 0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27)) - '@azure-tools/typespec-azure-core@0.65.0(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/http@1.9.1(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))))(@typespec/rest@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/http@1.9.1(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27)))))': + '@azure-tools/typespec-azure-core@0.66.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/http@1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))))(@typespec/rest@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/http@1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27)))))': dependencies: - '@typespec/compiler': 1.9.0(@types/node@20.19.27) - '@typespec/http': 1.9.1(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))) - '@typespec/rest': 0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/http@1.9.1(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27)))) + '@typespec/compiler': 1.10.0(@types/node@20.19.27) + '@typespec/http': 1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))) + '@typespec/rest': 0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/http@1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27)))) - '@azure-tools/typespec-azure-resource-manager@0.65.0(1e5c7dc609368fe5c319bd1250a8dd60)': + '@azure-tools/typespec-azure-resource-manager@0.66.0(92284d77af4bc64e2272860c16ccb203)': dependencies: - '@azure-tools/typespec-azure-core': 0.65.0(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/http@1.9.1(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))))(@typespec/rest@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/http@1.9.1(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))))) - '@typespec/compiler': 1.9.0(@types/node@20.19.27) - '@typespec/http': 1.9.1(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))) - '@typespec/openapi': 1.9.0(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/http@1.9.1(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27)))) - '@typespec/rest': 0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/http@1.9.1(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27)))) - '@typespec/versioning': 0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27)) + '@azure-tools/typespec-azure-core': 0.66.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/http@1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))))(@typespec/rest@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/http@1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))))) + '@typespec/compiler': 1.10.0(@types/node@20.19.27) + '@typespec/http': 1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))) + '@typespec/openapi': 1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/http@1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27)))) + '@typespec/rest': 0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/http@1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27)))) + '@typespec/versioning': 0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27)) change-case: 5.4.4 pluralize: 8.0.0 - '@azure-tools/typespec-azure-rulesets@0.65.0(@azure-tools/typespec-azure-core@0.65.0(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/http@1.9.1(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))))(@typespec/rest@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/http@1.9.1(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))))))(@azure-tools/typespec-azure-resource-manager@0.65.0(1e5c7dc609368fe5c319bd1250a8dd60))(@azure-tools/typespec-client-generator-core@0.65.4(2296a36abc0f17fe42099d3726403d0d))(@typespec/compiler@1.9.0(@types/node@20.19.27))': - dependencies: - '@azure-tools/typespec-azure-core': 0.65.0(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/http@1.9.1(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))))(@typespec/rest@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/http@1.9.1(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))))) - '@azure-tools/typespec-azure-resource-manager': 0.65.0(1e5c7dc609368fe5c319bd1250a8dd60) - '@azure-tools/typespec-client-generator-core': 0.65.4(2296a36abc0f17fe42099d3726403d0d) - '@typespec/compiler': 1.9.0(@types/node@20.19.27) - - '@azure-tools/typespec-client-generator-core@0.65.4(2296a36abc0f17fe42099d3726403d0d)': - dependencies: - '@azure-tools/typespec-azure-core': 0.65.0(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/http@1.9.1(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))))(@typespec/rest@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/http@1.9.1(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))))) - '@typespec/compiler': 1.9.0(@types/node@20.19.27) - '@typespec/events': 0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27)) - '@typespec/http': 1.9.1(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))) - '@typespec/openapi': 1.9.0(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/http@1.9.1(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27)))) - '@typespec/rest': 0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/http@1.9.1(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27)))) - '@typespec/sse': 0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/events@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27)))(@typespec/http@1.9.1(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))) - '@typespec/streams': 0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27)) - '@typespec/versioning': 0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27)) - '@typespec/xml': 0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27)) + '@azure-tools/typespec-azure-rulesets@0.66.0(@azure-tools/typespec-azure-core@0.66.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/http@1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))))(@typespec/rest@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/http@1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))))))(@azure-tools/typespec-azure-resource-manager@0.66.0(92284d77af4bc64e2272860c16ccb203))(@azure-tools/typespec-client-generator-core@0.66.2(7116c80abeec3045387c176f44a26031))(@typespec/compiler@1.10.0(@types/node@20.19.27))': + dependencies: + '@azure-tools/typespec-azure-core': 0.66.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/http@1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))))(@typespec/rest@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/http@1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))))) + '@azure-tools/typespec-azure-resource-manager': 0.66.0(92284d77af4bc64e2272860c16ccb203) + '@azure-tools/typespec-client-generator-core': 0.66.2(7116c80abeec3045387c176f44a26031) + '@typespec/compiler': 1.10.0(@types/node@20.19.27) + + '@azure-tools/typespec-client-generator-core@0.66.2(7116c80abeec3045387c176f44a26031)': + dependencies: + '@azure-tools/typespec-azure-core': 0.66.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/http@1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))))(@typespec/rest@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/http@1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))))) + '@typespec/compiler': 1.10.0(@types/node@20.19.27) + '@typespec/events': 0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27)) + '@typespec/http': 1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))) + '@typespec/openapi': 1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/http@1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27)))) + '@typespec/rest': 0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/http@1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27)))) + '@typespec/sse': 0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/events@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27)))(@typespec/http@1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))) + '@typespec/streams': 0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27)) + '@typespec/versioning': 0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27)) + '@typespec/xml': 0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27)) change-case: 5.4.4 pluralize: 8.0.0 yaml: 2.8.2 @@ -5811,7 +5825,7 @@ snapshots: transitivePeerDependencies: - supports-color - '@azure/storage-blob@12.30.0': + '@azure/storage-blob@12.31.0': dependencies: '@azure/abort-controller': 2.1.2 '@azure/core-auth': 1.9.0 @@ -5856,6 +5870,12 @@ snapshots: js-tokens: 4.0.0 picocolors: 1.1.1 + '@babel/code-frame@7.29.0': + dependencies: + '@babel/helper-validator-identifier': 7.28.5 + js-tokens: 4.0.0 + picocolors: 1.1.1 + '@babel/compat-data@7.27.1': {} '@babel/compat-data@7.27.7': {} @@ -5863,7 +5883,7 @@ snapshots: '@babel/core@7.27.1': dependencies: '@ampproject/remapping': 2.3.0 - '@babel/code-frame': 7.27.1 + '@babel/code-frame': 7.28.6 '@babel/generator': 7.27.1 '@babel/helper-compilation-targets': 7.27.1 '@babel/helper-module-transforms': 7.27.1(@babel/core@7.27.1) @@ -5883,7 +5903,7 @@ snapshots: '@babel/core@7.27.7': dependencies: '@ampproject/remapping': 2.3.0 - '@babel/code-frame': 7.27.1 + '@babel/code-frame': 7.28.6 '@babel/generator': 7.27.5 '@babel/helper-compilation-targets': 7.27.2 '@babel/helper-module-transforms': 7.27.3(@babel/core@7.27.7) @@ -5943,7 +5963,7 @@ snapshots: dependencies: '@babel/core': 7.27.1 '@babel/helper-module-imports': 7.27.1 - '@babel/helper-validator-identifier': 7.27.1 + '@babel/helper-validator-identifier': 7.28.5 '@babel/traverse': 7.27.1 transitivePeerDependencies: - supports-color @@ -5952,7 +5972,7 @@ snapshots: dependencies: '@babel/core': 7.27.7 '@babel/helper-module-imports': 7.27.1 - '@babel/helper-validator-identifier': 7.27.1 + '@babel/helper-validator-identifier': 7.28.5 '@babel/traverse': 7.27.7 transitivePeerDependencies: - supports-color @@ -6153,19 +6173,19 @@ snapshots: '@babel/template@7.27.1': dependencies: - '@babel/code-frame': 7.27.1 + '@babel/code-frame': 7.28.6 '@babel/parser': 7.27.7 '@babel/types': 7.27.7 '@babel/template@7.27.2': dependencies: - '@babel/code-frame': 7.27.1 + '@babel/code-frame': 7.28.6 '@babel/parser': 7.27.7 '@babel/types': 7.27.7 '@babel/traverse@7.27.1': dependencies: - '@babel/code-frame': 7.27.1 + '@babel/code-frame': 7.28.6 '@babel/generator': 7.27.1 '@babel/parser': 7.27.7 '@babel/template': 7.27.1 @@ -6177,7 +6197,7 @@ snapshots: '@babel/traverse@7.27.7': dependencies: - '@babel/code-frame': 7.27.1 + '@babel/code-frame': 7.28.6 '@babel/generator': 7.27.5 '@babel/parser': 7.27.7 '@babel/template': 7.27.2 @@ -6190,12 +6210,12 @@ snapshots: '@babel/types@7.27.1': dependencies: '@babel/helper-string-parser': 7.27.1 - '@babel/helper-validator-identifier': 7.27.1 + '@babel/helper-validator-identifier': 7.28.5 '@babel/types@7.27.7': dependencies: '@babel/helper-string-parser': 7.27.1 - '@babel/helper-validator-identifier': 7.27.1 + '@babel/helper-validator-identifier': 7.28.5 '@bcoe/v8-coverage@0.2.3': {} @@ -6494,12 +6514,6 @@ snapshots: optionalDependencies: '@types/node': 20.19.27 - '@isaacs/balanced-match@4.0.1': {} - - '@isaacs/brace-expansion@5.0.0': - dependencies: - '@isaacs/balanced-match': 4.0.1 - '@isaacs/cliui@8.0.2': dependencies: string-width: 5.1.2 @@ -6526,7 +6540,7 @@ snapshots: '@jest/console@29.7.0': dependencies: '@jest/types': 29.6.3 - '@types/node': 25.0.10 + '@types/node': 25.2.3 chalk: 4.1.2 jest-message-util: 29.7.0 jest-util: 29.7.0 @@ -6535,7 +6549,7 @@ snapshots: '@jest/console@30.0.2': dependencies: '@jest/types': 30.0.1 - '@types/node': 25.0.10 + '@types/node': 25.2.3 chalk: 4.1.2 jest-message-util: 30.0.2 jest-util: 30.0.2 @@ -6548,14 +6562,14 @@ snapshots: '@jest/test-result': 29.7.0 '@jest/transform': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 25.0.10 + '@types/node': 25.2.3 ansi-escapes: 4.3.2 chalk: 4.1.2 ci-info: 3.9.0 exit: 0.1.2 graceful-fs: 4.2.11 jest-changed-files: 29.7.0 - jest-config: 29.7.0(@types/node@25.0.10) + jest-config: 29.7.0(@types/node@25.2.3) jest-haste-map: 29.7.0 jest-message-util: 29.7.0 jest-regex-util: 29.6.3 @@ -6584,14 +6598,14 @@ snapshots: '@jest/test-result': 30.0.2 '@jest/transform': 30.0.2 '@jest/types': 30.0.1 - '@types/node': 25.0.10 + '@types/node': 25.2.3 ansi-escapes: 4.3.2 chalk: 4.1.2 ci-info: 4.2.0 exit-x: 0.2.2 graceful-fs: 4.2.11 jest-changed-files: 30.0.2 - jest-config: 30.0.3(@types/node@25.0.10) + jest-config: 30.0.3(@types/node@25.2.3) jest-haste-map: 30.0.2 jest-message-util: 30.0.2 jest-regex-util: 30.0.1 @@ -6618,14 +6632,14 @@ snapshots: dependencies: '@jest/fake-timers': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 25.0.10 + '@types/node': 25.2.3 jest-mock: 29.7.0 '@jest/environment@30.0.2': dependencies: '@jest/fake-timers': 30.0.2 '@jest/types': 30.0.1 - '@types/node': 25.0.10 + '@types/node': 25.2.3 jest-mock: 30.0.2 '@jest/expect-utils@29.7.0': @@ -6654,7 +6668,7 @@ snapshots: dependencies: '@jest/types': 29.6.3 '@sinonjs/fake-timers': 10.3.0 - '@types/node': 25.0.10 + '@types/node': 25.2.3 jest-message-util: 29.7.0 jest-mock: 29.7.0 jest-util: 29.7.0 @@ -6663,7 +6677,7 @@ snapshots: dependencies: '@jest/types': 30.0.1 '@sinonjs/fake-timers': 13.0.5 - '@types/node': 25.0.10 + '@types/node': 25.2.3 jest-message-util: 30.0.2 jest-mock: 30.0.2 jest-util: 30.0.2 @@ -6690,7 +6704,7 @@ snapshots: '@jest/pattern@30.0.1': dependencies: - '@types/node': 25.0.10 + '@types/node': 25.2.3 jest-regex-util: 30.0.1 '@jest/reporters@29.7.0': @@ -6701,7 +6715,7 @@ snapshots: '@jest/transform': 29.7.0 '@jest/types': 29.6.3 '@jridgewell/trace-mapping': 0.3.31 - '@types/node': 25.0.10 + '@types/node': 25.2.3 chalk: 4.1.2 collect-v8-coverage: 1.0.2 exit: 0.1.2 @@ -6730,7 +6744,7 @@ snapshots: '@jest/transform': 30.0.2 '@jest/types': 30.0.1 '@jridgewell/trace-mapping': 0.3.31 - '@types/node': 25.0.10 + '@types/node': 25.2.3 chalk: 4.1.2 collect-v8-coverage: 1.0.2 exit-x: 0.2.2 @@ -6850,7 +6864,7 @@ snapshots: '@jest/schemas': 29.6.3 '@types/istanbul-lib-coverage': 2.0.6 '@types/istanbul-reports': 3.0.4 - '@types/node': 25.0.10 + '@types/node': 25.2.3 '@types/yargs': 17.0.33 chalk: 4.1.2 @@ -6860,7 +6874,7 @@ snapshots: '@jest/schemas': 30.0.1 '@types/istanbul-lib-coverage': 2.0.6 '@types/istanbul-reports': 3.0.4 - '@types/node': 25.0.10 + '@types/node': 25.2.3 '@types/yargs': 17.0.33 chalk: 4.1.2 @@ -6913,26 +6927,26 @@ snapshots: - '@types/express' - supports-color - '@microsoft/api-extractor-model@7.32.2(@types/node@20.19.27)': + '@microsoft/api-extractor-model@7.33.4(@types/node@20.19.27)': dependencies: '@microsoft/tsdoc': 0.16.0 - '@microsoft/tsdoc-config': 0.18.0 - '@rushstack/node-core-library': 5.19.1(@types/node@20.19.27) + '@microsoft/tsdoc-config': 0.18.1 + '@rushstack/node-core-library': 5.20.3(@types/node@20.19.27) transitivePeerDependencies: - '@types/node' - '@microsoft/api-extractor@7.55.2(@types/node@20.19.27)': + '@microsoft/api-extractor@7.57.7(@types/node@20.19.27)': dependencies: - '@microsoft/api-extractor-model': 7.32.2(@types/node@20.19.27) + '@microsoft/api-extractor-model': 7.33.4(@types/node@20.19.27) '@microsoft/tsdoc': 0.16.0 - '@microsoft/tsdoc-config': 0.18.0 - '@rushstack/node-core-library': 5.19.1(@types/node@20.19.27) - '@rushstack/rig-package': 0.6.0 - '@rushstack/terminal': 0.19.5(@types/node@20.19.27) - '@rushstack/ts-command-line': 5.1.5(@types/node@20.19.27) + '@microsoft/tsdoc-config': 0.18.1 + '@rushstack/node-core-library': 5.20.3(@types/node@20.19.27) + '@rushstack/rig-package': 0.7.2 + '@rushstack/terminal': 0.22.3(@types/node@20.19.27) + '@rushstack/ts-command-line': 5.3.3(@types/node@20.19.27) diff: 8.0.3 lodash: 4.17.23 - minimatch: 10.0.3 + minimatch: 10.2.3 resolve: 1.22.10 semver: 7.5.4 source-map: 0.6.1 @@ -6947,6 +6961,13 @@ snapshots: jju: 1.4.0 resolve: 1.22.10 + '@microsoft/tsdoc-config@0.18.1': + dependencies: + '@microsoft/tsdoc': 0.16.0 + ajv: 8.18.0 + jju: 1.4.0 + resolve: 1.22.10 + '@microsoft/tsdoc@0.16.0': {} '@napi-rs/wasm-runtime@0.2.11': @@ -7039,11 +7060,11 @@ snapshots: '@rtsao/scc@1.1.0': {} - '@rushstack/node-core-library@5.19.1(@types/node@20.19.27)': + '@rushstack/node-core-library@5.20.3(@types/node@20.19.27)': dependencies: - ajv: 8.13.0 - ajv-draft-04: 1.0.0(ajv@8.13.0) - ajv-formats: 3.0.1(ajv@8.13.0) + ajv: 8.18.0 + ajv-draft-04: 1.0.0(ajv@8.18.0) + ajv-formats: 3.0.1(ajv@8.18.0) fs-extra: 11.3.0 import-lazy: 4.0.0 jju: 1.4.0 @@ -7052,26 +7073,26 @@ snapshots: optionalDependencies: '@types/node': 20.19.27 - '@rushstack/problem-matcher@0.1.1(@types/node@20.19.27)': + '@rushstack/problem-matcher@0.2.1(@types/node@20.19.27)': optionalDependencies: '@types/node': 20.19.27 - '@rushstack/rig-package@0.6.0': + '@rushstack/rig-package@0.7.2': dependencies: resolve: 1.22.10 strip-json-comments: 3.1.1 - '@rushstack/terminal@0.19.5(@types/node@20.19.27)': + '@rushstack/terminal@0.22.3(@types/node@20.19.27)': dependencies: - '@rushstack/node-core-library': 5.19.1(@types/node@20.19.27) - '@rushstack/problem-matcher': 0.1.1(@types/node@20.19.27) + '@rushstack/node-core-library': 5.20.3(@types/node@20.19.27) + '@rushstack/problem-matcher': 0.2.1(@types/node@20.19.27) supports-color: 8.1.1 optionalDependencies: '@types/node': 20.19.27 - '@rushstack/ts-command-line@5.1.5(@types/node@20.19.27)': + '@rushstack/ts-command-line@5.3.3(@types/node@20.19.27)': dependencies: - '@rushstack/terminal': 0.19.5(@types/node@20.19.27) + '@rushstack/terminal': 0.22.3(@types/node@20.19.27) '@types/argparse': 1.0.38 argparse: 1.0.10 string-argv: 0.3.2 @@ -7163,7 +7184,7 @@ snapshots: '@types/graceful-fs@4.1.9': dependencies: - '@types/node': 25.0.10 + '@types/node': 25.2.3 '@types/hast@3.0.4': dependencies: @@ -7205,10 +7226,6 @@ snapshots: dependencies: undici-types: 7.16.0 - '@types/node@25.0.10': - dependencies: - undici-types: 7.16.0 - '@types/node@25.0.3': dependencies: undici-types: 7.16.0 @@ -7217,6 +7234,10 @@ snapshots: dependencies: undici-types: 7.16.0 + '@types/node@25.3.5': + dependencies: + undici-types: 7.18.2 + '@types/nunjucks@3.2.6': {} '@types/semver@7.7.1': {} @@ -7468,13 +7489,13 @@ snapshots: '@typescript-eslint/types': 8.49.0 eslint-visitor-keys: 4.2.1 - '@typespec/compiler@1.9.0(@types/node@20.19.27)': + '@typespec/compiler@1.10.0(@types/node@20.19.27)': dependencies: - '@babel/code-frame': 7.28.6 + '@babel/code-frame': 7.29.0 '@inquirer/prompts': 8.0.2(@types/node@20.19.27) - ajv: 8.17.1 + ajv: 8.18.0 change-case: 5.4.4 - env-paths: 3.0.0 + env-paths: 4.0.0 globby: 16.1.0 is-unicode-supported: 2.1.0 mustache: 4.2.0 @@ -7490,42 +7511,42 @@ snapshots: transitivePeerDependencies: - '@types/node' - '@typespec/events@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))': + '@typespec/events@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))': dependencies: - '@typespec/compiler': 1.9.0(@types/node@20.19.27) + '@typespec/compiler': 1.10.0(@types/node@20.19.27) - '@typespec/http-specs@0.1.0-alpha.32(@types/node@20.19.27)(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/http@1.9.1(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))))(@typespec/rest@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/http@1.9.1(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27)))))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27)))(@typespec/versioning@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27)))(@typespec/xml@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27)))': + '@typespec/http-specs@0.1.0-alpha.34(@types/node@20.19.27)(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/http@1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))))(@typespec/rest@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/http@1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27)))))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27)))(@typespec/versioning@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27)))(@typespec/xml@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27)))': dependencies: - '@typespec/compiler': 1.9.0(@types/node@20.19.27) - '@typespec/http': 1.9.1(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))) - '@typespec/rest': 0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/http@1.9.1(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27)))) - '@typespec/spec-api': 0.1.0-alpha.12 - '@typespec/spector': 0.1.0-alpha.23(@types/node@20.19.27)(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))) - '@typespec/versioning': 0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27)) - '@typespec/xml': 0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27)) + '@typespec/compiler': 1.10.0(@types/node@20.19.27) + '@typespec/http': 1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))) + '@typespec/rest': 0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/http@1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27)))) + '@typespec/spec-api': 0.1.0-alpha.13 + '@typespec/spector': 0.1.0-alpha.24(@types/node@20.19.27)(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))) + '@typespec/versioning': 0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27)) + '@typespec/xml': 0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27)) deep-equal: 2.2.3 transitivePeerDependencies: - '@types/node' - '@typespec/streams' - supports-color - '@typespec/http@1.9.1(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27)))': + '@typespec/http@1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27)))': dependencies: - '@typespec/compiler': 1.9.0(@types/node@20.19.27) + '@typespec/compiler': 1.10.0(@types/node@20.19.27) optionalDependencies: - '@typespec/streams': 0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27)) + '@typespec/streams': 0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27)) - '@typespec/openapi@1.9.0(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/http@1.9.1(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))))': + '@typespec/openapi@1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/http@1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))))': dependencies: - '@typespec/compiler': 1.9.0(@types/node@20.19.27) - '@typespec/http': 1.9.1(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))) + '@typespec/compiler': 1.10.0(@types/node@20.19.27) + '@typespec/http': 1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))) - '@typespec/rest@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/http@1.9.1(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))))': + '@typespec/rest@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/http@1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))))': dependencies: - '@typespec/compiler': 1.9.0(@types/node@20.19.27) - '@typespec/http': 1.9.1(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))) + '@typespec/compiler': 1.10.0(@types/node@20.19.27) + '@typespec/http': 1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))) - '@typespec/spec-api@0.1.0-alpha.12': + '@typespec/spec-api@0.1.0-alpha.13': dependencies: deep-equal: 2.2.3 express: 5.2.1 @@ -7533,24 +7554,26 @@ snapshots: transitivePeerDependencies: - supports-color - '@typespec/spec-coverage-sdk@0.1.0-alpha.15': + '@typespec/spec-coverage-sdk@0.1.0-alpha.16': dependencies: '@azure/identity': 4.13.0 - '@azure/storage-blob': 12.30.0 - '@types/node': 25.0.10 + '@azure/storage-blob': 12.31.0 + '@types/node': 25.3.5 + '@types/semver': 7.7.1 + semver: 7.7.2 transitivePeerDependencies: - supports-color - '@typespec/spector@0.1.0-alpha.23(@types/node@20.19.27)(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27)))': + '@typespec/spector@0.1.0-alpha.24(@types/node@20.19.27)(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27)))': dependencies: '@azure/identity': 4.13.0 - '@typespec/compiler': 1.9.0(@types/node@20.19.27) - '@typespec/http': 1.9.1(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))) - '@typespec/rest': 0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/http@1.9.1(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27)))) - '@typespec/spec-api': 0.1.0-alpha.12 - '@typespec/spec-coverage-sdk': 0.1.0-alpha.15 - '@typespec/versioning': 0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27)) - ajv: 8.17.1 + '@typespec/compiler': 1.10.0(@types/node@20.19.27) + '@typespec/http': 1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))) + '@typespec/rest': 0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/http@1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27)))) + '@typespec/spec-api': 0.1.0-alpha.13 + '@typespec/spec-coverage-sdk': 0.1.0-alpha.16 + '@typespec/versioning': 0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27)) + ajv: 8.18.0 body-parser: 2.2.2 deep-equal: 2.2.3 express: 5.2.1 @@ -7568,16 +7591,16 @@ snapshots: - '@typespec/streams' - supports-color - '@typespec/sse@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/events@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27)))(@typespec/http@1.9.1(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27)))': + '@typespec/sse@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/events@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27)))(@typespec/http@1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27)))': dependencies: - '@typespec/compiler': 1.9.0(@types/node@20.19.27) - '@typespec/events': 0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27)) - '@typespec/http': 1.9.1(@typespec/compiler@1.9.0(@types/node@20.19.27))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))) - '@typespec/streams': 0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27)) + '@typespec/compiler': 1.10.0(@types/node@20.19.27) + '@typespec/events': 0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27)) + '@typespec/http': 1.10.0(@typespec/compiler@1.10.0(@types/node@20.19.27))(@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))) + '@typespec/streams': 0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27)) - '@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))': + '@typespec/streams@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))': dependencies: - '@typespec/compiler': 1.9.0(@types/node@20.19.27) + '@typespec/compiler': 1.10.0(@types/node@20.19.27) '@typespec/ts-http-runtime@0.2.2': dependencies: @@ -7587,16 +7610,16 @@ snapshots: transitivePeerDependencies: - supports-color - '@typespec/tspd@0.74.0(@types/node@20.19.27)(typescript@5.9.3)': + '@typespec/tspd@0.74.1(@types/node@20.19.27)(typescript@5.9.3)': dependencies: '@alloy-js/core': 0.22.0 '@alloy-js/markdown': 0.22.0 '@alloy-js/typescript': 0.22.0 - '@microsoft/api-extractor': 7.55.2(@types/node@20.19.27) - '@microsoft/api-extractor-model': 7.32.2(@types/node@20.19.27) + '@microsoft/api-extractor': 7.57.7(@types/node@20.19.27) + '@microsoft/api-extractor-model': 7.33.4(@types/node@20.19.27) '@microsoft/tsdoc': 0.16.0 '@microsoft/tsdoc-config': 0.18.0 - '@typespec/compiler': 1.9.0(@types/node@20.19.27) + '@typespec/compiler': 1.10.0(@types/node@20.19.27) picocolors: 1.1.1 prettier: 3.8.1 typedoc: 0.28.5(typescript@5.9.3) @@ -7607,13 +7630,13 @@ snapshots: - '@types/node' - typescript - '@typespec/versioning@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))': + '@typespec/versioning@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))': dependencies: - '@typespec/compiler': 1.9.0(@types/node@20.19.27) + '@typespec/compiler': 1.10.0(@types/node@20.19.27) - '@typespec/xml@0.79.0(@typespec/compiler@1.9.0(@types/node@20.19.27))': + '@typespec/xml@0.80.0(@typespec/compiler@1.10.0(@types/node@20.19.27))': dependencies: - '@typespec/compiler': 1.9.0(@types/node@20.19.27) + '@typespec/compiler': 1.10.0(@types/node@20.19.27) '@ungap/structured-clone@1.3.0': {} @@ -7878,17 +7901,17 @@ snapshots: clean-stack: 4.2.0 indent-string: 5.0.0 - ajv-draft-04@1.0.0(ajv@8.13.0): + ajv-draft-04@1.0.0(ajv@8.18.0): optionalDependencies: - ajv: 8.13.0 + ajv: 8.18.0 ajv-formats@2.1.1(ajv@8.17.1): optionalDependencies: ajv: 8.17.1 - ajv-formats@3.0.1(ajv@8.13.0): + ajv-formats@3.0.1(ajv@8.18.0): optionalDependencies: - ajv: 8.13.0 + ajv: 8.18.0 ajv-keywords@5.1.0(ajv@8.17.1): dependencies: @@ -7909,14 +7932,14 @@ snapshots: require-from-string: 2.0.2 uri-js: 4.4.1 - ajv@8.13.0: + ajv@8.17.1: dependencies: fast-deep-equal: 3.1.3 + fast-uri: 3.0.6 json-schema-traverse: 1.0.0 require-from-string: 2.0.2 - uri-js: 4.4.1 - ajv@8.17.1: + ajv@8.18.0: dependencies: fast-deep-equal: 3.1.3 fast-uri: 3.0.6 @@ -8161,6 +8184,8 @@ snapshots: balanced-match@1.0.2: {} + balanced-match@4.0.4: {} + baseline-browser-mapping@2.9.19: {} basic-auth@2.0.1: @@ -8207,6 +8232,10 @@ snapshots: dependencies: balanced-match: 1.0.2 + brace-expansion@5.0.4: + dependencies: + balanced-match: 4.0.4 + braces@3.0.3: dependencies: fill-range: 7.1.1 @@ -8673,7 +8702,9 @@ snapshots: entities@4.5.0: {} - env-paths@3.0.0: {} + env-paths@4.0.0: + dependencies: + is-safe-filename: 0.1.1 error-ex@1.3.2: dependencies: @@ -9576,6 +9607,8 @@ snapshots: has-tostringtag: 1.0.2 hasown: 2.0.2 + is-safe-filename@0.1.1: {} + is-set@2.0.3: {} is-shared-array-buffer@1.0.4: @@ -9700,7 +9733,7 @@ snapshots: '@jest/expect': 29.7.0 '@jest/test-result': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 25.0.10 + '@types/node': 25.2.3 chalk: 4.1.2 co: 4.6.0 dedent: 1.6.0 @@ -9726,7 +9759,7 @@ snapshots: '@jest/expect': 30.0.3 '@jest/test-result': 30.0.2 '@jest/types': 30.0.1 - '@types/node': 25.0.10 + '@types/node': 25.2.3 chalk: 4.1.2 co: 4.6.0 dedent: 1.6.0 @@ -9814,7 +9847,7 @@ snapshots: - babel-plugin-macros - supports-color - jest-config@29.7.0(@types/node@25.0.10): + jest-config@29.7.0(@types/node@25.2.3): dependencies: '@babel/core': 7.27.1 '@jest/test-sequencer': 29.7.0 @@ -9839,7 +9872,7 @@ snapshots: slash: 3.0.0 strip-json-comments: 3.1.1 optionalDependencies: - '@types/node': 25.0.10 + '@types/node': 25.2.3 transitivePeerDependencies: - babel-plugin-macros - supports-color @@ -9876,7 +9909,7 @@ snapshots: - babel-plugin-macros - supports-color - jest-config@30.0.3(@types/node@25.0.10): + jest-config@30.0.3(@types/node@25.2.3): dependencies: '@babel/core': 7.27.7 '@jest/get-type': 30.0.1 @@ -9903,7 +9936,7 @@ snapshots: slash: 3.0.0 strip-json-comments: 3.1.1 optionalDependencies: - '@types/node': 25.0.10 + '@types/node': 25.2.3 transitivePeerDependencies: - babel-plugin-macros - supports-color @@ -9951,7 +9984,7 @@ snapshots: '@jest/environment': 29.7.0 '@jest/fake-timers': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 25.0.10 + '@types/node': 25.2.3 jest-mock: 29.7.0 jest-util: 29.7.0 @@ -9960,7 +9993,7 @@ snapshots: '@jest/environment': 30.0.2 '@jest/fake-timers': 30.0.2 '@jest/types': 30.0.1 - '@types/node': 25.0.10 + '@types/node': 25.2.3 jest-mock: 30.0.2 jest-util: 30.0.2 jest-validate: 30.0.2 @@ -9971,7 +10004,7 @@ snapshots: dependencies: '@jest/types': 29.6.3 '@types/graceful-fs': 4.1.9 - '@types/node': 25.0.10 + '@types/node': 25.2.3 anymatch: 3.1.3 fb-watchman: 2.0.2 graceful-fs: 4.2.11 @@ -9986,7 +10019,7 @@ snapshots: jest-haste-map@30.0.2: dependencies: '@jest/types': 30.0.1 - '@types/node': 25.0.10 + '@types/node': 25.2.3 anymatch: 3.1.3 fb-watchman: 2.0.2 graceful-fs: 4.2.11 @@ -10043,7 +10076,7 @@ snapshots: jest-message-util@30.0.2: dependencies: - '@babel/code-frame': 7.27.1 + '@babel/code-frame': 7.28.6 '@jest/types': 30.0.1 '@types/stack-utils': 2.0.3 chalk: 4.1.2 @@ -10056,13 +10089,13 @@ snapshots: jest-mock@29.7.0: dependencies: '@jest/types': 29.6.3 - '@types/node': 25.0.10 + '@types/node': 25.2.3 jest-util: 29.7.0 jest-mock@30.0.2: dependencies: '@jest/types': 30.0.1 - '@types/node': 25.0.10 + '@types/node': 25.2.3 jest-util: 30.0.2 jest-pnp-resolver@1.2.3(jest-resolve@29.7.0): @@ -10121,7 +10154,7 @@ snapshots: '@jest/test-result': 29.7.0 '@jest/transform': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 25.0.10 + '@types/node': 25.2.3 chalk: 4.1.2 emittery: 0.13.1 graceful-fs: 4.2.11 @@ -10147,7 +10180,7 @@ snapshots: '@jest/test-result': 30.0.2 '@jest/transform': 30.0.2 '@jest/types': 30.0.1 - '@types/node': 25.0.10 + '@types/node': 25.2.3 chalk: 4.1.2 emittery: 0.13.1 exit-x: 0.2.2 @@ -10176,7 +10209,7 @@ snapshots: '@jest/test-result': 29.7.0 '@jest/transform': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 25.0.10 + '@types/node': 25.2.3 chalk: 4.1.2 cjs-module-lexer: 1.4.3 collect-v8-coverage: 1.0.2 @@ -10203,7 +10236,7 @@ snapshots: '@jest/test-result': 30.0.2 '@jest/transform': 30.0.2 '@jest/types': 30.0.1 - '@types/node': 25.0.10 + '@types/node': 25.2.3 chalk: 4.1.2 cjs-module-lexer: 2.1.0 collect-v8-coverage: 1.0.2 @@ -10284,7 +10317,7 @@ snapshots: jest-util@30.0.2: dependencies: '@jest/types': 30.0.1 - '@types/node': 25.0.10 + '@types/node': 25.2.3 chalk: 4.1.2 ci-info: 4.2.0 graceful-fs: 4.2.11 @@ -10312,7 +10345,7 @@ snapshots: dependencies: '@jest/test-result': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 25.0.10 + '@types/node': 25.2.3 ansi-escapes: 4.3.2 chalk: 4.1.2 emittery: 0.13.1 @@ -10323,7 +10356,7 @@ snapshots: dependencies: '@jest/test-result': 30.0.2 '@jest/types': 30.0.1 - '@types/node': 25.0.10 + '@types/node': 25.2.3 ansi-escapes: 4.3.2 chalk: 4.1.2 emittery: 0.13.1 @@ -10338,14 +10371,14 @@ snapshots: jest-worker@29.7.0: dependencies: - '@types/node': 25.0.10 + '@types/node': 25.2.3 jest-util: 29.7.0 merge-stream: 2.0.0 supports-color: 8.1.1 jest-worker@30.0.2: dependencies: - '@types/node': 25.0.10 + '@types/node': 25.2.3 '@ungap/structured-clone': 1.3.0 jest-util: 30.0.2 merge-stream: 2.0.0 @@ -10658,9 +10691,9 @@ snapshots: mimic-fn@2.1.0: {} - minimatch@10.0.3: + minimatch@10.2.3: dependencies: - '@isaacs/brace-expansion': 5.0.0 + brace-expansion: 5.0.4 minimatch@3.1.2: dependencies: @@ -10890,7 +10923,7 @@ snapshots: parse-json@5.2.0: dependencies: - '@babel/code-frame': 7.27.1 + '@babel/code-frame': 7.28.6 error-ex: 1.3.2 json-parse-even-better-errors: 2.3.1 lines-and-columns: 1.2.4 @@ -11735,6 +11768,8 @@ snapshots: undici-types@7.16.0: {} + undici-types@7.18.2: {} + unicorn-magic@0.4.0: {} universalify@0.2.0: