@@ -59,7 +59,7 @@ func (v KeyWebSettingsIntegrationTypeEnum) Validate() error {
5959 // Empty enum is okay.
6060 return nil
6161 }
62- for _ , s := range []string {"SCORE" , "CHECKBOX" , "INVISIBLE" } {
62+ for _ , s := range []string {"SCORE" , "CHECKBOX" , "INVISIBLE" , "POLICY_BASED_CHALLENGE" } {
6363 if string (v ) == s {
6464 return nil
6565 }
@@ -186,6 +186,7 @@ type KeyWebSettings struct {
186186 AllowAmpTraffic * bool `json:"allowAmpTraffic"`
187187 IntegrationType * KeyWebSettingsIntegrationTypeEnum `json:"integrationType"`
188188 ChallengeSecurityPreference * KeyWebSettingsChallengeSecurityPreferenceEnum `json:"challengeSecurityPreference"`
189+ ChallengeSettings * KeyWebSettingsChallengeSettings `json:"challengeSettings"`
189190}
190191
191192type jsonKeyWebSettings KeyWebSettings
@@ -213,6 +214,8 @@ func (r *KeyWebSettings) UnmarshalJSON(data []byte) error {
213214
214215 r .ChallengeSecurityPreference = res .ChallengeSecurityPreference
215216
217+ r .ChallengeSettings = res .ChallengeSettings
218+
216219 }
217220 return nil
218221}
@@ -237,6 +240,125 @@ func (r *KeyWebSettings) HashCode() string {
237240 return fmt .Sprintf ("%x" , hash )
238241}
239242
243+ type KeyWebSettingsChallengeSettings struct {
244+ empty bool `json:"-"`
245+ DefaultSettings * KeyWebSettingsChallengeSettingsDefaultSettings `json:"defaultSettings"`
246+ ActionSettings map [string ]KeyWebSettingsChallengeSettingsActionSettings `json:"actionSettings"`
247+ }
248+
249+ type jsonKeyWebSettingsChallengeSettings KeyWebSettingsChallengeSettings
250+
251+ func (r * KeyWebSettingsChallengeSettings ) UnmarshalJSON (data []byte ) error {
252+ var res jsonKeyWebSettingsChallengeSettings
253+ if err := json .Unmarshal (data , & res ); err != nil {
254+ return err
255+ }
256+
257+ var m map [string ]interface {}
258+ json .Unmarshal (data , & m )
259+
260+ if len (m ) == 0 {
261+ * r = * EmptyKeyWebSettingsChallengeSettings
262+ } else {
263+ r .DefaultSettings = res .DefaultSettings
264+ r .ActionSettings = res .ActionSettings
265+ }
266+ return nil
267+ }
268+
269+ var EmptyKeyWebSettingsChallengeSettings * KeyWebSettingsChallengeSettings = & KeyWebSettingsChallengeSettings {empty : true }
270+
271+ func (r * KeyWebSettingsChallengeSettings ) Empty () bool {
272+ return r .empty
273+ }
274+
275+ func (r * KeyWebSettingsChallengeSettings ) String () string {
276+ return dcl .SprintResource (r )
277+ }
278+
279+ func (r * KeyWebSettingsChallengeSettings ) HashCode () string {
280+ hash := sha256 .Sum256 ([]byte (r .String ()))
281+ return fmt .Sprintf ("%x" , hash )
282+ }
283+
284+ type KeyWebSettingsChallengeSettingsDefaultSettings struct {
285+ empty bool `json:"-"`
286+ ScoreThreshold * float64 `json:"scoreThreshold"`
287+ }
288+
289+ type jsonKeyWebSettingsChallengeSettingsDefaultSettings KeyWebSettingsChallengeSettingsDefaultSettings
290+
291+ func (r * KeyWebSettingsChallengeSettingsDefaultSettings ) UnmarshalJSON (data []byte ) error {
292+ var res jsonKeyWebSettingsChallengeSettingsDefaultSettings
293+ if err := json .Unmarshal (data , & res ); err != nil {
294+ return err
295+ }
296+
297+ var m map [string ]interface {}
298+ json .Unmarshal (data , & m )
299+
300+ if len (m ) == 0 {
301+ * r = * EmptyKeyWebSettingsChallengeSettingsDefaultSettings
302+ } else {
303+ r .ScoreThreshold = res .ScoreThreshold
304+ }
305+ return nil
306+ }
307+
308+ var EmptyKeyWebSettingsChallengeSettingsDefaultSettings * KeyWebSettingsChallengeSettingsDefaultSettings = & KeyWebSettingsChallengeSettingsDefaultSettings {empty : true }
309+
310+ func (r * KeyWebSettingsChallengeSettingsDefaultSettings ) Empty () bool {
311+ return r .empty
312+ }
313+
314+ func (r * KeyWebSettingsChallengeSettingsDefaultSettings ) String () string {
315+ return dcl .SprintResource (r )
316+ }
317+
318+ func (r * KeyWebSettingsChallengeSettingsDefaultSettings ) HashCode () string {
319+ hash := sha256 .Sum256 ([]byte (r .String ()))
320+ return fmt .Sprintf ("%x" , hash )
321+ }
322+
323+ type KeyWebSettingsChallengeSettingsActionSettings struct {
324+ empty bool `json:"-"`
325+ ScoreThreshold * float64 `json:"scoreThreshold"`
326+ }
327+
328+ type jsonKeyWebSettingsChallengeSettingsActionSettings KeyWebSettingsChallengeSettingsActionSettings
329+
330+ func (r * KeyWebSettingsChallengeSettingsActionSettings ) UnmarshalJSON (data []byte ) error {
331+ var res jsonKeyWebSettingsChallengeSettingsActionSettings
332+ if err := json .Unmarshal (data , & res ); err != nil {
333+ return err
334+ }
335+
336+ var m map [string ]interface {}
337+ json .Unmarshal (data , & m )
338+
339+ if len (m ) == 0 {
340+ * r = * EmptyKeyWebSettingsChallengeSettingsActionSettings
341+ } else {
342+ r .ScoreThreshold = res .ScoreThreshold
343+ }
344+ return nil
345+ }
346+
347+ var EmptyKeyWebSettingsChallengeSettingsActionSettings * KeyWebSettingsChallengeSettingsActionSettings = & KeyWebSettingsChallengeSettingsActionSettings {empty : true }
348+
349+ func (r * KeyWebSettingsChallengeSettingsActionSettings ) Empty () bool {
350+ return r .empty
351+ }
352+
353+ func (r * KeyWebSettingsChallengeSettingsActionSettings ) String () string {
354+ return dcl .SprintResource (r )
355+ }
356+
357+ func (r * KeyWebSettingsChallengeSettingsActionSettings ) HashCode () string {
358+ hash := sha256 .Sum256 ([]byte (r .String ()))
359+ return fmt .Sprintf ("%x" , hash )
360+ }
361+
240362type KeyAndroidSettings struct {
241363 empty bool `json:"-"`
242364 AllowAllPackageNames * bool `json:"allowAllPackageNames"`
0 commit comments