tfplan2cai/converters/google/resources/services/dialogflowcx/dialogflowcx_flow.go (1,165 lines of code) (raw):

// ---------------------------------------------------------------------------- // // *** AUTO GENERATED CODE *** Type: MMv1 *** // // ---------------------------------------------------------------------------- // // This code is generated by Magic Modules using the following: // // Configuration: https://github.com/GoogleCloudPlatform/magic-modules/tree/main/mmv1/products/dialogflowcx/Flow.yaml // Template: https://github.com/GoogleCloudPlatform/magic-modules/tree/main/mmv1/templates/tgc/resource_converter.go.tmpl // // DO NOT EDIT this file directly. Any changes made to this file will be // overwritten during the next generation cycle. // // ---------------------------------------------------------------------------- package dialogflowcx import ( "encoding/json" "reflect" "github.com/GoogleCloudPlatform/terraform-google-conversion/v6/tfplan2cai/converters/google/resources/cai" "github.com/hashicorp/terraform-provider-google-beta/google-beta/tpgresource" transport_tpg "github.com/hashicorp/terraform-provider-google-beta/google-beta/transport" ) const DialogflowCXFlowAssetType string = "{{location}}-dialogflow.googleapis.com/Flow" func ResourceConverterDialogflowCXFlow() cai.ResourceConverter { return cai.ResourceConverter{ AssetType: DialogflowCXFlowAssetType, Convert: GetDialogflowCXFlowCaiObject, } } func GetDialogflowCXFlowCaiObject(d tpgresource.TerraformResourceData, config *transport_tpg.Config) ([]cai.Asset, error) { name, err := cai.AssetName(d, config, "//{{location}}-dialogflow.googleapis.com/{{parent}}/flows/{{name}}") if err != nil { return []cai.Asset{}, err } if obj, err := GetDialogflowCXFlowApiObject(d, config); err == nil { return []cai.Asset{{ Name: name, Type: DialogflowCXFlowAssetType, Resource: &cai.AssetResource{ Version: "v3", DiscoveryDocumentURI: "https://www.googleapis.com/discovery/v1/apis/{{location}}-dialogflow/v3/rest", DiscoveryName: "Flow", Data: obj, }, }}, nil } else { return []cai.Asset{}, err } } func GetDialogflowCXFlowApiObject(d tpgresource.TerraformResourceData, config *transport_tpg.Config) (map[string]interface{}, error) { obj := make(map[string]interface{}) displayNameProp, err := expandDialogflowCXFlowDisplayName(d.Get("display_name"), d, config) if err != nil { return nil, err } else if v, ok := d.GetOkExists("display_name"); !tpgresource.IsEmptyValue(reflect.ValueOf(displayNameProp)) && (ok || !reflect.DeepEqual(v, displayNameProp)) { obj["displayName"] = displayNameProp } descriptionProp, err := expandDialogflowCXFlowDescription(d.Get("description"), d, config) if err != nil { return nil, err } else if v, ok := d.GetOkExists("description"); !tpgresource.IsEmptyValue(reflect.ValueOf(descriptionProp)) && (ok || !reflect.DeepEqual(v, descriptionProp)) { obj["description"] = descriptionProp } transitionRoutesProp, err := expandDialogflowCXFlowTransitionRoutes(d.Get("transition_routes"), d, config) if err != nil { return nil, err } else if v, ok := d.GetOkExists("transition_routes"); !tpgresource.IsEmptyValue(reflect.ValueOf(transitionRoutesProp)) && (ok || !reflect.DeepEqual(v, transitionRoutesProp)) { obj["transitionRoutes"] = transitionRoutesProp } eventHandlersProp, err := expandDialogflowCXFlowEventHandlers(d.Get("event_handlers"), d, config) if err != nil { return nil, err } else if v, ok := d.GetOkExists("event_handlers"); !tpgresource.IsEmptyValue(reflect.ValueOf(eventHandlersProp)) && (ok || !reflect.DeepEqual(v, eventHandlersProp)) { obj["eventHandlers"] = eventHandlersProp } transitionRouteGroupsProp, err := expandDialogflowCXFlowTransitionRouteGroups(d.Get("transition_route_groups"), d, config) if err != nil { return nil, err } else if v, ok := d.GetOkExists("transition_route_groups"); !tpgresource.IsEmptyValue(reflect.ValueOf(transitionRouteGroupsProp)) && (ok || !reflect.DeepEqual(v, transitionRouteGroupsProp)) { obj["transitionRouteGroups"] = transitionRouteGroupsProp } nluSettingsProp, err := expandDialogflowCXFlowNluSettings(d.Get("nlu_settings"), d, config) if err != nil { return nil, err } else if v, ok := d.GetOkExists("nlu_settings"); !tpgresource.IsEmptyValue(reflect.ValueOf(nluSettingsProp)) && (ok || !reflect.DeepEqual(v, nluSettingsProp)) { obj["nluSettings"] = nluSettingsProp } advancedSettingsProp, err := expandDialogflowCXFlowAdvancedSettings(d.Get("advanced_settings"), d, config) if err != nil { return nil, err } else if v, ok := d.GetOkExists("advanced_settings"); !tpgresource.IsEmptyValue(reflect.ValueOf(advancedSettingsProp)) && (ok || !reflect.DeepEqual(v, advancedSettingsProp)) { obj["advancedSettings"] = advancedSettingsProp } languageCodeProp, err := expandDialogflowCXFlowLanguageCode(d.Get("language_code"), d, config) if err != nil { return nil, err } else if v, ok := d.GetOkExists("language_code"); !tpgresource.IsEmptyValue(reflect.ValueOf(languageCodeProp)) && (ok || !reflect.DeepEqual(v, languageCodeProp)) { obj["languageCode"] = languageCodeProp } return obj, nil } func expandDialogflowCXFlowDisplayName(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { return v, nil } func expandDialogflowCXFlowDescription(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { return v, nil } func expandDialogflowCXFlowTransitionRoutes(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { l := v.([]interface{}) req := make([]interface{}, 0, len(l)) for _, raw := range l { if raw == nil { continue } original := raw.(map[string]interface{}) transformed := make(map[string]interface{}) transformedName, err := expandDialogflowCXFlowTransitionRoutesName(original["name"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedName); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["name"] = transformedName } transformedIntent, err := expandDialogflowCXFlowTransitionRoutesIntent(original["intent"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedIntent); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["intent"] = transformedIntent } transformedCondition, err := expandDialogflowCXFlowTransitionRoutesCondition(original["condition"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedCondition); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["condition"] = transformedCondition } transformedTriggerFulfillment, err := expandDialogflowCXFlowTransitionRoutesTriggerFulfillment(original["trigger_fulfillment"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedTriggerFulfillment); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["triggerFulfillment"] = transformedTriggerFulfillment } transformedTargetPage, err := expandDialogflowCXFlowTransitionRoutesTargetPage(original["target_page"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedTargetPage); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["targetPage"] = transformedTargetPage } transformedTargetFlow, err := expandDialogflowCXFlowTransitionRoutesTargetFlow(original["target_flow"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedTargetFlow); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["targetFlow"] = transformedTargetFlow } req = append(req, transformed) } return req, nil } func expandDialogflowCXFlowTransitionRoutesName(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { return v, nil } func expandDialogflowCXFlowTransitionRoutesIntent(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { return v, nil } func expandDialogflowCXFlowTransitionRoutesCondition(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { return v, nil } func expandDialogflowCXFlowTransitionRoutesTriggerFulfillment(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { l := v.([]interface{}) if len(l) == 0 || l[0] == nil { return nil, nil } raw := l[0] original := raw.(map[string]interface{}) transformed := make(map[string]interface{}) transformedMessages, err := expandDialogflowCXFlowTransitionRoutesTriggerFulfillmentMessages(original["messages"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedMessages); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["messages"] = transformedMessages } transformedWebhook, err := expandDialogflowCXFlowTransitionRoutesTriggerFulfillmentWebhook(original["webhook"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedWebhook); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["webhook"] = transformedWebhook } transformedReturnPartialResponses, err := expandDialogflowCXFlowTransitionRoutesTriggerFulfillmentReturnPartialResponses(original["return_partial_responses"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedReturnPartialResponses); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["returnPartialResponses"] = transformedReturnPartialResponses } transformedTag, err := expandDialogflowCXFlowTransitionRoutesTriggerFulfillmentTag(original["tag"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedTag); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["tag"] = transformedTag } transformedSetParameterActions, err := expandDialogflowCXFlowTransitionRoutesTriggerFulfillmentSetParameterActions(original["set_parameter_actions"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedSetParameterActions); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["setParameterActions"] = transformedSetParameterActions } transformedConditionalCases, err := expandDialogflowCXFlowTransitionRoutesTriggerFulfillmentConditionalCases(original["conditional_cases"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedConditionalCases); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["conditionalCases"] = transformedConditionalCases } return transformed, nil } func expandDialogflowCXFlowTransitionRoutesTriggerFulfillmentMessages(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { l := v.([]interface{}) req := make([]interface{}, 0, len(l)) for _, raw := range l { if raw == nil { continue } original := raw.(map[string]interface{}) transformed := make(map[string]interface{}) transformedChannel, err := expandDialogflowCXFlowTransitionRoutesTriggerFulfillmentMessagesChannel(original["channel"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedChannel); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["channel"] = transformedChannel } transformedText, err := expandDialogflowCXFlowTransitionRoutesTriggerFulfillmentMessagesText(original["text"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedText); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["text"] = transformedText } transformedPayload, err := expandDialogflowCXFlowTransitionRoutesTriggerFulfillmentMessagesPayload(original["payload"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedPayload); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["payload"] = transformedPayload } transformedConversationSuccess, err := expandDialogflowCXFlowTransitionRoutesTriggerFulfillmentMessagesConversationSuccess(original["conversation_success"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedConversationSuccess); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["conversationSuccess"] = transformedConversationSuccess } transformedOutputAudioText, err := expandDialogflowCXFlowTransitionRoutesTriggerFulfillmentMessagesOutputAudioText(original["output_audio_text"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedOutputAudioText); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["outputAudioText"] = transformedOutputAudioText } transformedLiveAgentHandoff, err := expandDialogflowCXFlowTransitionRoutesTriggerFulfillmentMessagesLiveAgentHandoff(original["live_agent_handoff"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedLiveAgentHandoff); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["liveAgentHandoff"] = transformedLiveAgentHandoff } transformedPlayAudio, err := expandDialogflowCXFlowTransitionRoutesTriggerFulfillmentMessagesPlayAudio(original["play_audio"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedPlayAudio); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["playAudio"] = transformedPlayAudio } transformedTelephonyTransferCall, err := expandDialogflowCXFlowTransitionRoutesTriggerFulfillmentMessagesTelephonyTransferCall(original["telephony_transfer_call"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedTelephonyTransferCall); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["telephonyTransferCall"] = transformedTelephonyTransferCall } req = append(req, transformed) } return req, nil } func expandDialogflowCXFlowTransitionRoutesTriggerFulfillmentMessagesChannel(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { return v, nil } func expandDialogflowCXFlowTransitionRoutesTriggerFulfillmentMessagesText(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { l := v.([]interface{}) if len(l) == 0 || l[0] == nil { return nil, nil } raw := l[0] original := raw.(map[string]interface{}) transformed := make(map[string]interface{}) transformedText, err := expandDialogflowCXFlowTransitionRoutesTriggerFulfillmentMessagesTextText(original["text"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedText); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["text"] = transformedText } transformedAllowPlaybackInterruption, err := expandDialogflowCXFlowTransitionRoutesTriggerFulfillmentMessagesTextAllowPlaybackInterruption(original["allow_playback_interruption"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedAllowPlaybackInterruption); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["allowPlaybackInterruption"] = transformedAllowPlaybackInterruption } return transformed, nil } func expandDialogflowCXFlowTransitionRoutesTriggerFulfillmentMessagesTextText(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { return v, nil } func expandDialogflowCXFlowTransitionRoutesTriggerFulfillmentMessagesTextAllowPlaybackInterruption(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { return v, nil } func expandDialogflowCXFlowTransitionRoutesTriggerFulfillmentMessagesPayload(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { b := []byte(v.(string)) if len(b) == 0 { return nil, nil } m := make(map[string]interface{}) if err := json.Unmarshal(b, &m); err != nil { return nil, err } return m, nil } func expandDialogflowCXFlowTransitionRoutesTriggerFulfillmentMessagesConversationSuccess(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { l := v.([]interface{}) if len(l) == 0 || l[0] == nil { return nil, nil } raw := l[0] original := raw.(map[string]interface{}) transformed := make(map[string]interface{}) transformedMetadata, err := expandDialogflowCXFlowTransitionRoutesTriggerFulfillmentMessagesConversationSuccessMetadata(original["metadata"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedMetadata); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["metadata"] = transformedMetadata } return transformed, nil } func expandDialogflowCXFlowTransitionRoutesTriggerFulfillmentMessagesConversationSuccessMetadata(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { b := []byte(v.(string)) if len(b) == 0 { return nil, nil } m := make(map[string]interface{}) if err := json.Unmarshal(b, &m); err != nil { return nil, err } return m, nil } func expandDialogflowCXFlowTransitionRoutesTriggerFulfillmentMessagesOutputAudioText(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { l := v.([]interface{}) if len(l) == 0 || l[0] == nil { return nil, nil } raw := l[0] original := raw.(map[string]interface{}) transformed := make(map[string]interface{}) transformedAllowPlaybackInterruption, err := expandDialogflowCXFlowTransitionRoutesTriggerFulfillmentMessagesOutputAudioTextAllowPlaybackInterruption(original["allow_playback_interruption"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedAllowPlaybackInterruption); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["allowPlaybackInterruption"] = transformedAllowPlaybackInterruption } transformedText, err := expandDialogflowCXFlowTransitionRoutesTriggerFulfillmentMessagesOutputAudioTextText(original["text"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedText); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["text"] = transformedText } transformedSsml, err := expandDialogflowCXFlowTransitionRoutesTriggerFulfillmentMessagesOutputAudioTextSsml(original["ssml"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedSsml); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["ssml"] = transformedSsml } return transformed, nil } func expandDialogflowCXFlowTransitionRoutesTriggerFulfillmentMessagesOutputAudioTextAllowPlaybackInterruption(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { return v, nil } func expandDialogflowCXFlowTransitionRoutesTriggerFulfillmentMessagesOutputAudioTextText(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { return v, nil } func expandDialogflowCXFlowTransitionRoutesTriggerFulfillmentMessagesOutputAudioTextSsml(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { return v, nil } func expandDialogflowCXFlowTransitionRoutesTriggerFulfillmentMessagesLiveAgentHandoff(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { l := v.([]interface{}) if len(l) == 0 || l[0] == nil { return nil, nil } raw := l[0] original := raw.(map[string]interface{}) transformed := make(map[string]interface{}) transformedMetadata, err := expandDialogflowCXFlowTransitionRoutesTriggerFulfillmentMessagesLiveAgentHandoffMetadata(original["metadata"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedMetadata); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["metadata"] = transformedMetadata } return transformed, nil } func expandDialogflowCXFlowTransitionRoutesTriggerFulfillmentMessagesLiveAgentHandoffMetadata(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { b := []byte(v.(string)) if len(b) == 0 { return nil, nil } m := make(map[string]interface{}) if err := json.Unmarshal(b, &m); err != nil { return nil, err } return m, nil } func expandDialogflowCXFlowTransitionRoutesTriggerFulfillmentMessagesPlayAudio(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { l := v.([]interface{}) if len(l) == 0 || l[0] == nil { return nil, nil } raw := l[0] original := raw.(map[string]interface{}) transformed := make(map[string]interface{}) transformedAudioUri, err := expandDialogflowCXFlowTransitionRoutesTriggerFulfillmentMessagesPlayAudioAudioUri(original["audio_uri"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedAudioUri); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["audioUri"] = transformedAudioUri } transformedAllowPlaybackInterruption, err := expandDialogflowCXFlowTransitionRoutesTriggerFulfillmentMessagesPlayAudioAllowPlaybackInterruption(original["allow_playback_interruption"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedAllowPlaybackInterruption); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["allowPlaybackInterruption"] = transformedAllowPlaybackInterruption } return transformed, nil } func expandDialogflowCXFlowTransitionRoutesTriggerFulfillmentMessagesPlayAudioAudioUri(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { return v, nil } func expandDialogflowCXFlowTransitionRoutesTriggerFulfillmentMessagesPlayAudioAllowPlaybackInterruption(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { return v, nil } func expandDialogflowCXFlowTransitionRoutesTriggerFulfillmentMessagesTelephonyTransferCall(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { l := v.([]interface{}) if len(l) == 0 || l[0] == nil { return nil, nil } raw := l[0] original := raw.(map[string]interface{}) transformed := make(map[string]interface{}) transformedPhoneNumber, err := expandDialogflowCXFlowTransitionRoutesTriggerFulfillmentMessagesTelephonyTransferCallPhoneNumber(original["phone_number"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedPhoneNumber); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["phoneNumber"] = transformedPhoneNumber } return transformed, nil } func expandDialogflowCXFlowTransitionRoutesTriggerFulfillmentMessagesTelephonyTransferCallPhoneNumber(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { return v, nil } func expandDialogflowCXFlowTransitionRoutesTriggerFulfillmentWebhook(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { return v, nil } func expandDialogflowCXFlowTransitionRoutesTriggerFulfillmentReturnPartialResponses(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { return v, nil } func expandDialogflowCXFlowTransitionRoutesTriggerFulfillmentTag(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { return v, nil } func expandDialogflowCXFlowTransitionRoutesTriggerFulfillmentSetParameterActions(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { l := v.([]interface{}) req := make([]interface{}, 0, len(l)) for _, raw := range l { if raw == nil { continue } original := raw.(map[string]interface{}) transformed := make(map[string]interface{}) transformedParameter, err := expandDialogflowCXFlowTransitionRoutesTriggerFulfillmentSetParameterActionsParameter(original["parameter"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedParameter); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["parameter"] = transformedParameter } transformedValue, err := expandDialogflowCXFlowTransitionRoutesTriggerFulfillmentSetParameterActionsValue(original["value"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedValue); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["value"] = transformedValue } req = append(req, transformed) } return req, nil } func expandDialogflowCXFlowTransitionRoutesTriggerFulfillmentSetParameterActionsParameter(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { return v, nil } func expandDialogflowCXFlowTransitionRoutesTriggerFulfillmentSetParameterActionsValue(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { b := []byte(v.(string)) if len(b) == 0 { return nil, nil } var j interface{} if err := json.Unmarshal(b, &j); err != nil { return nil, err } return j, nil } func expandDialogflowCXFlowTransitionRoutesTriggerFulfillmentConditionalCases(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { l := v.([]interface{}) req := make([]interface{}, 0, len(l)) for _, raw := range l { if raw == nil { continue } original := raw.(map[string]interface{}) transformed := make(map[string]interface{}) transformedCases, err := expandDialogflowCXFlowTransitionRoutesTriggerFulfillmentConditionalCasesCases(original["cases"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedCases); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["cases"] = transformedCases } req = append(req, transformed) } return req, nil } func expandDialogflowCXFlowTransitionRoutesTriggerFulfillmentConditionalCasesCases(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { b := []byte(v.(string)) if len(b) == 0 { return nil, nil } var j interface{} if err := json.Unmarshal(b, &j); err != nil { return nil, err } return j, nil } func expandDialogflowCXFlowTransitionRoutesTargetPage(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { return v, nil } func expandDialogflowCXFlowTransitionRoutesTargetFlow(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { return v, nil } func expandDialogflowCXFlowEventHandlers(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { l := v.([]interface{}) req := make([]interface{}, 0, len(l)) for _, raw := range l { if raw == nil { continue } original := raw.(map[string]interface{}) transformed := make(map[string]interface{}) transformedName, err := expandDialogflowCXFlowEventHandlersName(original["name"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedName); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["name"] = transformedName } transformedEvent, err := expandDialogflowCXFlowEventHandlersEvent(original["event"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedEvent); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["event"] = transformedEvent } transformedTriggerFulfillment, err := expandDialogflowCXFlowEventHandlersTriggerFulfillment(original["trigger_fulfillment"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedTriggerFulfillment); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["triggerFulfillment"] = transformedTriggerFulfillment } transformedTargetPage, err := expandDialogflowCXFlowEventHandlersTargetPage(original["target_page"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedTargetPage); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["targetPage"] = transformedTargetPage } transformedTargetFlow, err := expandDialogflowCXFlowEventHandlersTargetFlow(original["target_flow"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedTargetFlow); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["targetFlow"] = transformedTargetFlow } req = append(req, transformed) } return req, nil } func expandDialogflowCXFlowEventHandlersName(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { return v, nil } func expandDialogflowCXFlowEventHandlersEvent(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { return v, nil } func expandDialogflowCXFlowEventHandlersTriggerFulfillment(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { l := v.([]interface{}) if len(l) == 0 || l[0] == nil { return nil, nil } raw := l[0] original := raw.(map[string]interface{}) transformed := make(map[string]interface{}) transformedMessages, err := expandDialogflowCXFlowEventHandlersTriggerFulfillmentMessages(original["messages"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedMessages); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["messages"] = transformedMessages } transformedWebhook, err := expandDialogflowCXFlowEventHandlersTriggerFulfillmentWebhook(original["webhook"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedWebhook); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["webhook"] = transformedWebhook } transformedReturnPartialResponses, err := expandDialogflowCXFlowEventHandlersTriggerFulfillmentReturnPartialResponses(original["return_partial_responses"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedReturnPartialResponses); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["returnPartialResponses"] = transformedReturnPartialResponses } transformedTag, err := expandDialogflowCXFlowEventHandlersTriggerFulfillmentTag(original["tag"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedTag); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["tag"] = transformedTag } transformedSetParameterActions, err := expandDialogflowCXFlowEventHandlersTriggerFulfillmentSetParameterActions(original["set_parameter_actions"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedSetParameterActions); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["setParameterActions"] = transformedSetParameterActions } transformedConditionalCases, err := expandDialogflowCXFlowEventHandlersTriggerFulfillmentConditionalCases(original["conditional_cases"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedConditionalCases); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["conditionalCases"] = transformedConditionalCases } return transformed, nil } func expandDialogflowCXFlowEventHandlersTriggerFulfillmentMessages(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { l := v.([]interface{}) req := make([]interface{}, 0, len(l)) for _, raw := range l { if raw == nil { continue } original := raw.(map[string]interface{}) transformed := make(map[string]interface{}) transformedChannel, err := expandDialogflowCXFlowEventHandlersTriggerFulfillmentMessagesChannel(original["channel"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedChannel); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["channel"] = transformedChannel } transformedText, err := expandDialogflowCXFlowEventHandlersTriggerFulfillmentMessagesText(original["text"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedText); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["text"] = transformedText } transformedPayload, err := expandDialogflowCXFlowEventHandlersTriggerFulfillmentMessagesPayload(original["payload"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedPayload); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["payload"] = transformedPayload } transformedConversationSuccess, err := expandDialogflowCXFlowEventHandlersTriggerFulfillmentMessagesConversationSuccess(original["conversation_success"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedConversationSuccess); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["conversationSuccess"] = transformedConversationSuccess } transformedOutputAudioText, err := expandDialogflowCXFlowEventHandlersTriggerFulfillmentMessagesOutputAudioText(original["output_audio_text"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedOutputAudioText); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["outputAudioText"] = transformedOutputAudioText } transformedLiveAgentHandoff, err := expandDialogflowCXFlowEventHandlersTriggerFulfillmentMessagesLiveAgentHandoff(original["live_agent_handoff"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedLiveAgentHandoff); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["liveAgentHandoff"] = transformedLiveAgentHandoff } transformedPlayAudio, err := expandDialogflowCXFlowEventHandlersTriggerFulfillmentMessagesPlayAudio(original["play_audio"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedPlayAudio); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["playAudio"] = transformedPlayAudio } transformedTelephonyTransferCall, err := expandDialogflowCXFlowEventHandlersTriggerFulfillmentMessagesTelephonyTransferCall(original["telephony_transfer_call"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedTelephonyTransferCall); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["telephonyTransferCall"] = transformedTelephonyTransferCall } req = append(req, transformed) } return req, nil } func expandDialogflowCXFlowEventHandlersTriggerFulfillmentMessagesChannel(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { return v, nil } func expandDialogflowCXFlowEventHandlersTriggerFulfillmentMessagesText(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { l := v.([]interface{}) if len(l) == 0 || l[0] == nil { return nil, nil } raw := l[0] original := raw.(map[string]interface{}) transformed := make(map[string]interface{}) transformedText, err := expandDialogflowCXFlowEventHandlersTriggerFulfillmentMessagesTextText(original["text"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedText); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["text"] = transformedText } transformedAllowPlaybackInterruption, err := expandDialogflowCXFlowEventHandlersTriggerFulfillmentMessagesTextAllowPlaybackInterruption(original["allow_playback_interruption"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedAllowPlaybackInterruption); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["allowPlaybackInterruption"] = transformedAllowPlaybackInterruption } return transformed, nil } func expandDialogflowCXFlowEventHandlersTriggerFulfillmentMessagesTextText(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { return v, nil } func expandDialogflowCXFlowEventHandlersTriggerFulfillmentMessagesTextAllowPlaybackInterruption(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { return v, nil } func expandDialogflowCXFlowEventHandlersTriggerFulfillmentMessagesPayload(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { b := []byte(v.(string)) if len(b) == 0 { return nil, nil } m := make(map[string]interface{}) if err := json.Unmarshal(b, &m); err != nil { return nil, err } return m, nil } func expandDialogflowCXFlowEventHandlersTriggerFulfillmentMessagesConversationSuccess(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { l := v.([]interface{}) if len(l) == 0 || l[0] == nil { return nil, nil } raw := l[0] original := raw.(map[string]interface{}) transformed := make(map[string]interface{}) transformedMetadata, err := expandDialogflowCXFlowEventHandlersTriggerFulfillmentMessagesConversationSuccessMetadata(original["metadata"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedMetadata); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["metadata"] = transformedMetadata } return transformed, nil } func expandDialogflowCXFlowEventHandlersTriggerFulfillmentMessagesConversationSuccessMetadata(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { b := []byte(v.(string)) if len(b) == 0 { return nil, nil } m := make(map[string]interface{}) if err := json.Unmarshal(b, &m); err != nil { return nil, err } return m, nil } func expandDialogflowCXFlowEventHandlersTriggerFulfillmentMessagesOutputAudioText(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { l := v.([]interface{}) if len(l) == 0 || l[0] == nil { return nil, nil } raw := l[0] original := raw.(map[string]interface{}) transformed := make(map[string]interface{}) transformedAllowPlaybackInterruption, err := expandDialogflowCXFlowEventHandlersTriggerFulfillmentMessagesOutputAudioTextAllowPlaybackInterruption(original["allow_playback_interruption"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedAllowPlaybackInterruption); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["allowPlaybackInterruption"] = transformedAllowPlaybackInterruption } transformedText, err := expandDialogflowCXFlowEventHandlersTriggerFulfillmentMessagesOutputAudioTextText(original["text"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedText); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["text"] = transformedText } transformedSsml, err := expandDialogflowCXFlowEventHandlersTriggerFulfillmentMessagesOutputAudioTextSsml(original["ssml"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedSsml); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["ssml"] = transformedSsml } return transformed, nil } func expandDialogflowCXFlowEventHandlersTriggerFulfillmentMessagesOutputAudioTextAllowPlaybackInterruption(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { return v, nil } func expandDialogflowCXFlowEventHandlersTriggerFulfillmentMessagesOutputAudioTextText(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { return v, nil } func expandDialogflowCXFlowEventHandlersTriggerFulfillmentMessagesOutputAudioTextSsml(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { return v, nil } func expandDialogflowCXFlowEventHandlersTriggerFulfillmentMessagesLiveAgentHandoff(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { l := v.([]interface{}) if len(l) == 0 || l[0] == nil { return nil, nil } raw := l[0] original := raw.(map[string]interface{}) transformed := make(map[string]interface{}) transformedMetadata, err := expandDialogflowCXFlowEventHandlersTriggerFulfillmentMessagesLiveAgentHandoffMetadata(original["metadata"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedMetadata); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["metadata"] = transformedMetadata } return transformed, nil } func expandDialogflowCXFlowEventHandlersTriggerFulfillmentMessagesLiveAgentHandoffMetadata(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { b := []byte(v.(string)) if len(b) == 0 { return nil, nil } m := make(map[string]interface{}) if err := json.Unmarshal(b, &m); err != nil { return nil, err } return m, nil } func expandDialogflowCXFlowEventHandlersTriggerFulfillmentMessagesPlayAudio(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { l := v.([]interface{}) if len(l) == 0 || l[0] == nil { return nil, nil } raw := l[0] original := raw.(map[string]interface{}) transformed := make(map[string]interface{}) transformedAudioUri, err := expandDialogflowCXFlowEventHandlersTriggerFulfillmentMessagesPlayAudioAudioUri(original["audio_uri"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedAudioUri); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["audioUri"] = transformedAudioUri } transformedAllowPlaybackInterruption, err := expandDialogflowCXFlowEventHandlersTriggerFulfillmentMessagesPlayAudioAllowPlaybackInterruption(original["allow_playback_interruption"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedAllowPlaybackInterruption); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["allowPlaybackInterruption"] = transformedAllowPlaybackInterruption } return transformed, nil } func expandDialogflowCXFlowEventHandlersTriggerFulfillmentMessagesPlayAudioAudioUri(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { return v, nil } func expandDialogflowCXFlowEventHandlersTriggerFulfillmentMessagesPlayAudioAllowPlaybackInterruption(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { return v, nil } func expandDialogflowCXFlowEventHandlersTriggerFulfillmentMessagesTelephonyTransferCall(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { l := v.([]interface{}) if len(l) == 0 || l[0] == nil { return nil, nil } raw := l[0] original := raw.(map[string]interface{}) transformed := make(map[string]interface{}) transformedPhoneNumber, err := expandDialogflowCXFlowEventHandlersTriggerFulfillmentMessagesTelephonyTransferCallPhoneNumber(original["phone_number"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedPhoneNumber); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["phoneNumber"] = transformedPhoneNumber } return transformed, nil } func expandDialogflowCXFlowEventHandlersTriggerFulfillmentMessagesTelephonyTransferCallPhoneNumber(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { return v, nil } func expandDialogflowCXFlowEventHandlersTriggerFulfillmentWebhook(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { return v, nil } func expandDialogflowCXFlowEventHandlersTriggerFulfillmentReturnPartialResponses(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { return v, nil } func expandDialogflowCXFlowEventHandlersTriggerFulfillmentTag(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { return v, nil } func expandDialogflowCXFlowEventHandlersTriggerFulfillmentSetParameterActions(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { l := v.([]interface{}) req := make([]interface{}, 0, len(l)) for _, raw := range l { if raw == nil { continue } original := raw.(map[string]interface{}) transformed := make(map[string]interface{}) transformedParameter, err := expandDialogflowCXFlowEventHandlersTriggerFulfillmentSetParameterActionsParameter(original["parameter"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedParameter); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["parameter"] = transformedParameter } transformedValue, err := expandDialogflowCXFlowEventHandlersTriggerFulfillmentSetParameterActionsValue(original["value"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedValue); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["value"] = transformedValue } req = append(req, transformed) } return req, nil } func expandDialogflowCXFlowEventHandlersTriggerFulfillmentSetParameterActionsParameter(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { return v, nil } func expandDialogflowCXFlowEventHandlersTriggerFulfillmentSetParameterActionsValue(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { b := []byte(v.(string)) if len(b) == 0 { return nil, nil } var j interface{} if err := json.Unmarshal(b, &j); err != nil { return nil, err } return j, nil } func expandDialogflowCXFlowEventHandlersTriggerFulfillmentConditionalCases(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { l := v.([]interface{}) req := make([]interface{}, 0, len(l)) for _, raw := range l { if raw == nil { continue } original := raw.(map[string]interface{}) transformed := make(map[string]interface{}) transformedCases, err := expandDialogflowCXFlowEventHandlersTriggerFulfillmentConditionalCasesCases(original["cases"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedCases); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["cases"] = transformedCases } req = append(req, transformed) } return req, nil } func expandDialogflowCXFlowEventHandlersTriggerFulfillmentConditionalCasesCases(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { b := []byte(v.(string)) if len(b) == 0 { return nil, nil } var j interface{} if err := json.Unmarshal(b, &j); err != nil { return nil, err } return j, nil } func expandDialogflowCXFlowEventHandlersTargetPage(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { return v, nil } func expandDialogflowCXFlowEventHandlersTargetFlow(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { return v, nil } func expandDialogflowCXFlowTransitionRouteGroups(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { return v, nil } func expandDialogflowCXFlowNluSettings(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { l := v.([]interface{}) if len(l) == 0 || l[0] == nil { return nil, nil } raw := l[0] original := raw.(map[string]interface{}) transformed := make(map[string]interface{}) transformedModelType, err := expandDialogflowCXFlowNluSettingsModelType(original["model_type"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedModelType); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["modelType"] = transformedModelType } transformedClassificationThreshold, err := expandDialogflowCXFlowNluSettingsClassificationThreshold(original["classification_threshold"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedClassificationThreshold); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["classificationThreshold"] = transformedClassificationThreshold } transformedModelTrainingMode, err := expandDialogflowCXFlowNluSettingsModelTrainingMode(original["model_training_mode"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedModelTrainingMode); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["modelTrainingMode"] = transformedModelTrainingMode } return transformed, nil } func expandDialogflowCXFlowNluSettingsModelType(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { return v, nil } func expandDialogflowCXFlowNluSettingsClassificationThreshold(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { return v, nil } func expandDialogflowCXFlowNluSettingsModelTrainingMode(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { return v, nil } func expandDialogflowCXFlowAdvancedSettings(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { l := v.([]interface{}) if len(l) == 0 || l[0] == nil { return nil, nil } raw := l[0] original := raw.(map[string]interface{}) transformed := make(map[string]interface{}) transformedAudioExportGcsDestination, err := expandDialogflowCXFlowAdvancedSettingsAudioExportGcsDestination(original["audio_export_gcs_destination"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedAudioExportGcsDestination); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["audioExportGcsDestination"] = transformedAudioExportGcsDestination } transformedSpeechSettings, err := expandDialogflowCXFlowAdvancedSettingsSpeechSettings(original["speech_settings"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedSpeechSettings); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["speechSettings"] = transformedSpeechSettings } transformedDtmfSettings, err := expandDialogflowCXFlowAdvancedSettingsDtmfSettings(original["dtmf_settings"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedDtmfSettings); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["dtmfSettings"] = transformedDtmfSettings } transformedLoggingSettings, err := expandDialogflowCXFlowAdvancedSettingsLoggingSettings(original["logging_settings"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedLoggingSettings); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["loggingSettings"] = transformedLoggingSettings } return transformed, nil } func expandDialogflowCXFlowAdvancedSettingsAudioExportGcsDestination(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { l := v.([]interface{}) if len(l) == 0 || l[0] == nil { return nil, nil } raw := l[0] original := raw.(map[string]interface{}) transformed := make(map[string]interface{}) transformedUri, err := expandDialogflowCXFlowAdvancedSettingsAudioExportGcsDestinationUri(original["uri"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedUri); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["uri"] = transformedUri } return transformed, nil } func expandDialogflowCXFlowAdvancedSettingsAudioExportGcsDestinationUri(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { return v, nil } func expandDialogflowCXFlowAdvancedSettingsSpeechSettings(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { l := v.([]interface{}) if len(l) == 0 || l[0] == nil { return nil, nil } raw := l[0] original := raw.(map[string]interface{}) transformed := make(map[string]interface{}) transformedEndpointerSensitivity, err := expandDialogflowCXFlowAdvancedSettingsSpeechSettingsEndpointerSensitivity(original["endpointer_sensitivity"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedEndpointerSensitivity); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["endpointerSensitivity"] = transformedEndpointerSensitivity } transformedNoSpeechTimeout, err := expandDialogflowCXFlowAdvancedSettingsSpeechSettingsNoSpeechTimeout(original["no_speech_timeout"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedNoSpeechTimeout); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["noSpeechTimeout"] = transformedNoSpeechTimeout } transformedUseTimeoutBasedEndpointing, err := expandDialogflowCXFlowAdvancedSettingsSpeechSettingsUseTimeoutBasedEndpointing(original["use_timeout_based_endpointing"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedUseTimeoutBasedEndpointing); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["useTimeoutBasedEndpointing"] = transformedUseTimeoutBasedEndpointing } transformedModels, err := expandDialogflowCXFlowAdvancedSettingsSpeechSettingsModels(original["models"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedModels); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["models"] = transformedModels } return transformed, nil } func expandDialogflowCXFlowAdvancedSettingsSpeechSettingsEndpointerSensitivity(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { return v, nil } func expandDialogflowCXFlowAdvancedSettingsSpeechSettingsNoSpeechTimeout(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { return v, nil } func expandDialogflowCXFlowAdvancedSettingsSpeechSettingsUseTimeoutBasedEndpointing(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { return v, nil } func expandDialogflowCXFlowAdvancedSettingsSpeechSettingsModels(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (map[string]string, error) { if v == nil { return map[string]string{}, nil } m := make(map[string]string) for k, val := range v.(map[string]interface{}) { m[k] = val.(string) } return m, nil } func expandDialogflowCXFlowAdvancedSettingsDtmfSettings(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { l := v.([]interface{}) if len(l) == 0 || l[0] == nil { return nil, nil } raw := l[0] original := raw.(map[string]interface{}) transformed := make(map[string]interface{}) transformedEnabled, err := expandDialogflowCXFlowAdvancedSettingsDtmfSettingsEnabled(original["enabled"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedEnabled); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["enabled"] = transformedEnabled } transformedMaxDigits, err := expandDialogflowCXFlowAdvancedSettingsDtmfSettingsMaxDigits(original["max_digits"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedMaxDigits); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["maxDigits"] = transformedMaxDigits } transformedFinishDigit, err := expandDialogflowCXFlowAdvancedSettingsDtmfSettingsFinishDigit(original["finish_digit"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedFinishDigit); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["finishDigit"] = transformedFinishDigit } return transformed, nil } func expandDialogflowCXFlowAdvancedSettingsDtmfSettingsEnabled(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { return v, nil } func expandDialogflowCXFlowAdvancedSettingsDtmfSettingsMaxDigits(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { return v, nil } func expandDialogflowCXFlowAdvancedSettingsDtmfSettingsFinishDigit(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { return v, nil } func expandDialogflowCXFlowAdvancedSettingsLoggingSettings(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { l := v.([]interface{}) if len(l) == 0 || l[0] == nil { return nil, nil } raw := l[0] original := raw.(map[string]interface{}) transformed := make(map[string]interface{}) transformedEnableStackdriverLogging, err := expandDialogflowCXFlowAdvancedSettingsLoggingSettingsEnableStackdriverLogging(original["enable_stackdriver_logging"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedEnableStackdriverLogging); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["enableStackdriverLogging"] = transformedEnableStackdriverLogging } transformedEnableInteractionLogging, err := expandDialogflowCXFlowAdvancedSettingsLoggingSettingsEnableInteractionLogging(original["enable_interaction_logging"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedEnableInteractionLogging); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["enableInteractionLogging"] = transformedEnableInteractionLogging } transformedEnableConsentBasedRedaction, err := expandDialogflowCXFlowAdvancedSettingsLoggingSettingsEnableConsentBasedRedaction(original["enable_consent_based_redaction"], d, config) if err != nil { return nil, err } else if val := reflect.ValueOf(transformedEnableConsentBasedRedaction); val.IsValid() && !tpgresource.IsEmptyValue(val) { transformed["enableConsentBasedRedaction"] = transformedEnableConsentBasedRedaction } return transformed, nil } func expandDialogflowCXFlowAdvancedSettingsLoggingSettingsEnableStackdriverLogging(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { return v, nil } func expandDialogflowCXFlowAdvancedSettingsLoggingSettingsEnableInteractionLogging(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { return v, nil } func expandDialogflowCXFlowAdvancedSettingsLoggingSettingsEnableConsentBasedRedaction(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { return v, nil } func expandDialogflowCXFlowLanguageCode(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { return v, nil }