@@ -122,11 +122,39 @@ func (p *provider) DiffWithContext(
122
122
changes = plugin .DiffSome
123
123
}
124
124
125
+ var pluginDetailedDiff map [string ]plugin.PropertyDiff
126
+ {
127
+ priorProps , err := convert .DecodePropertyMap (ctx , rh .decoder , priorState .state .Value )
128
+ if err != nil {
129
+ return plugin.DiffResult {}, err
130
+ }
131
+
132
+ props , err := convert .DecodePropertyMap (ctx , rh .decoder , plannedStateValue )
133
+ if err != nil {
134
+ return plugin.DiffResult {}, err
135
+ }
136
+
137
+ detailedDiff := tfbridge .MakeDetailedDiffV2 (
138
+ ctx ,
139
+ rh .schemaOnlyShimResource .Schema (),
140
+ rh .pulumiResourceInfo .GetFields (),
141
+ priorProps ,
142
+ props ,
143
+ checkedInputs ,
144
+ )
145
+
146
+ pluginDetailedDiff = make (map [string ]plugin.PropertyDiff , len (detailedDiff ))
147
+ for k , v := range detailedDiff {
148
+ pluginDetailedDiff [k ] = plugin.PropertyDiff {Kind : plugin .DiffKind (v .Kind ), InputDiff : v .InputDiff }
149
+ }
150
+ }
151
+
125
152
diffResult := plugin.DiffResult {
126
153
Changes : changes ,
127
154
ReplaceKeys : replaceKeys ,
128
155
ChangedKeys : changedKeys ,
129
156
DeleteBeforeReplace : deleteBeforeReplace ,
157
+ DetailedDiff : pluginDetailedDiff ,
130
158
}
131
159
132
160
// TODO[pulumi/pulumi-terraform-bridge#824] StableKeys
0 commit comments