module Stratosphere.CloudFront.ResponseHeadersPolicy.SecurityHeadersConfigProperty (
        module Exports, SecurityHeadersConfigProperty(..),
        mkSecurityHeadersConfigProperty
    ) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import {-# SOURCE #-} Stratosphere.CloudFront.ResponseHeadersPolicy.ContentSecurityPolicyProperty as Exports
import {-# SOURCE #-} Stratosphere.CloudFront.ResponseHeadersPolicy.ContentTypeOptionsProperty as Exports
import {-# SOURCE #-} Stratosphere.CloudFront.ResponseHeadersPolicy.FrameOptionsProperty as Exports
import {-# SOURCE #-} Stratosphere.CloudFront.ResponseHeadersPolicy.ReferrerPolicyProperty as Exports
import {-# SOURCE #-} Stratosphere.CloudFront.ResponseHeadersPolicy.StrictTransportSecurityProperty as Exports
import {-# SOURCE #-} Stratosphere.CloudFront.ResponseHeadersPolicy.XSSProtectionProperty as Exports
import Stratosphere.ResourceProperties
data SecurityHeadersConfigProperty
  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-securityheadersconfig.html>
    SecurityHeadersConfigProperty {SecurityHeadersConfigProperty -> ()
haddock_workaround_ :: (),
                                   -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-securityheadersconfig.html#cfn-cloudfront-responseheaderspolicy-securityheadersconfig-contentsecuritypolicy>
                                   SecurityHeadersConfigProperty
-> Maybe ContentSecurityPolicyProperty
contentSecurityPolicy :: (Prelude.Maybe ContentSecurityPolicyProperty),
                                   -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-securityheadersconfig.html#cfn-cloudfront-responseheaderspolicy-securityheadersconfig-contenttypeoptions>
                                   SecurityHeadersConfigProperty -> Maybe ContentTypeOptionsProperty
contentTypeOptions :: (Prelude.Maybe ContentTypeOptionsProperty),
                                   -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-securityheadersconfig.html#cfn-cloudfront-responseheaderspolicy-securityheadersconfig-frameoptions>
                                   SecurityHeadersConfigProperty -> Maybe FrameOptionsProperty
frameOptions :: (Prelude.Maybe FrameOptionsProperty),
                                   -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-securityheadersconfig.html#cfn-cloudfront-responseheaderspolicy-securityheadersconfig-referrerpolicy>
                                   SecurityHeadersConfigProperty -> Maybe ReferrerPolicyProperty
referrerPolicy :: (Prelude.Maybe ReferrerPolicyProperty),
                                   -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-securityheadersconfig.html#cfn-cloudfront-responseheaderspolicy-securityheadersconfig-stricttransportsecurity>
                                   SecurityHeadersConfigProperty
-> Maybe StrictTransportSecurityProperty
strictTransportSecurity :: (Prelude.Maybe StrictTransportSecurityProperty),
                                   -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-securityheadersconfig.html#cfn-cloudfront-responseheaderspolicy-securityheadersconfig-xssprotection>
                                   SecurityHeadersConfigProperty -> Maybe XSSProtectionProperty
xSSProtection :: (Prelude.Maybe XSSProtectionProperty)}
  deriving stock (SecurityHeadersConfigProperty
-> SecurityHeadersConfigProperty -> Bool
(SecurityHeadersConfigProperty
 -> SecurityHeadersConfigProperty -> Bool)
-> (SecurityHeadersConfigProperty
    -> SecurityHeadersConfigProperty -> Bool)
-> Eq SecurityHeadersConfigProperty
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: SecurityHeadersConfigProperty
-> SecurityHeadersConfigProperty -> Bool
== :: SecurityHeadersConfigProperty
-> SecurityHeadersConfigProperty -> Bool
$c/= :: SecurityHeadersConfigProperty
-> SecurityHeadersConfigProperty -> Bool
/= :: SecurityHeadersConfigProperty
-> SecurityHeadersConfigProperty -> Bool
Prelude.Eq, Int -> SecurityHeadersConfigProperty -> ShowS
[SecurityHeadersConfigProperty] -> ShowS
SecurityHeadersConfigProperty -> String
(Int -> SecurityHeadersConfigProperty -> ShowS)
-> (SecurityHeadersConfigProperty -> String)
-> ([SecurityHeadersConfigProperty] -> ShowS)
-> Show SecurityHeadersConfigProperty
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> SecurityHeadersConfigProperty -> ShowS
showsPrec :: Int -> SecurityHeadersConfigProperty -> ShowS
$cshow :: SecurityHeadersConfigProperty -> String
show :: SecurityHeadersConfigProperty -> String
$cshowList :: [SecurityHeadersConfigProperty] -> ShowS
showList :: [SecurityHeadersConfigProperty] -> ShowS
Prelude.Show)
mkSecurityHeadersConfigProperty :: SecurityHeadersConfigProperty
mkSecurityHeadersConfigProperty :: SecurityHeadersConfigProperty
mkSecurityHeadersConfigProperty
  = SecurityHeadersConfigProperty
      {haddock_workaround_ :: ()
haddock_workaround_ = (), contentSecurityPolicy :: Maybe ContentSecurityPolicyProperty
contentSecurityPolicy = Maybe ContentSecurityPolicyProperty
forall a. Maybe a
Prelude.Nothing,
       contentTypeOptions :: Maybe ContentTypeOptionsProperty
contentTypeOptions = Maybe ContentTypeOptionsProperty
forall a. Maybe a
Prelude.Nothing,
       frameOptions :: Maybe FrameOptionsProperty
frameOptions = Maybe FrameOptionsProperty
forall a. Maybe a
Prelude.Nothing, referrerPolicy :: Maybe ReferrerPolicyProperty
referrerPolicy = Maybe ReferrerPolicyProperty
forall a. Maybe a
Prelude.Nothing,
       strictTransportSecurity :: Maybe StrictTransportSecurityProperty
strictTransportSecurity = Maybe StrictTransportSecurityProperty
forall a. Maybe a
Prelude.Nothing,
       xSSProtection :: Maybe XSSProtectionProperty
xSSProtection = Maybe XSSProtectionProperty
forall a. Maybe a
Prelude.Nothing}
instance ToResourceProperties SecurityHeadersConfigProperty where
  toResourceProperties :: SecurityHeadersConfigProperty -> ResourceProperties
toResourceProperties SecurityHeadersConfigProperty {Maybe ContentSecurityPolicyProperty
Maybe ContentTypeOptionsProperty
Maybe FrameOptionsProperty
Maybe ReferrerPolicyProperty
Maybe StrictTransportSecurityProperty
Maybe XSSProtectionProperty
()
haddock_workaround_ :: SecurityHeadersConfigProperty -> ()
contentSecurityPolicy :: SecurityHeadersConfigProperty
-> Maybe ContentSecurityPolicyProperty
contentTypeOptions :: SecurityHeadersConfigProperty -> Maybe ContentTypeOptionsProperty
frameOptions :: SecurityHeadersConfigProperty -> Maybe FrameOptionsProperty
referrerPolicy :: SecurityHeadersConfigProperty -> Maybe ReferrerPolicyProperty
strictTransportSecurity :: SecurityHeadersConfigProperty
-> Maybe StrictTransportSecurityProperty
xSSProtection :: SecurityHeadersConfigProperty -> Maybe XSSProtectionProperty
haddock_workaround_ :: ()
contentSecurityPolicy :: Maybe ContentSecurityPolicyProperty
contentTypeOptions :: Maybe ContentTypeOptionsProperty
frameOptions :: Maybe FrameOptionsProperty
referrerPolicy :: Maybe ReferrerPolicyProperty
strictTransportSecurity :: Maybe StrictTransportSecurityProperty
xSSProtection :: Maybe XSSProtectionProperty
..}
    = ResourceProperties
        {awsType :: Text
awsType = Text
"AWS::CloudFront::ResponseHeadersPolicy.SecurityHeadersConfig",
         supportsTags :: Bool
supportsTags = Bool
Prelude.False,
         properties :: Object
properties = [Item Object] -> Object
forall l. IsList l => [Item l] -> l
Prelude.fromList
                        ([Maybe (Key, Value)] -> [(Key, Value)]
forall a. [Maybe a] -> [a]
Prelude.catMaybes
                           [Key -> ContentSecurityPolicyProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"ContentSecurityPolicy"
                              (ContentSecurityPolicyProperty -> (Key, Value))
-> Maybe ContentSecurityPolicyProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe ContentSecurityPolicyProperty
contentSecurityPolicy,
                            Key -> ContentTypeOptionsProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"ContentTypeOptions" (ContentTypeOptionsProperty -> (Key, Value))
-> Maybe ContentTypeOptionsProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe ContentTypeOptionsProperty
contentTypeOptions,
                            Key -> FrameOptionsProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"FrameOptions" (FrameOptionsProperty -> (Key, Value))
-> Maybe FrameOptionsProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe FrameOptionsProperty
frameOptions,
                            Key -> ReferrerPolicyProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"ReferrerPolicy" (ReferrerPolicyProperty -> (Key, Value))
-> Maybe ReferrerPolicyProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe ReferrerPolicyProperty
referrerPolicy,
                            Key -> StrictTransportSecurityProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"StrictTransportSecurity"
                              (StrictTransportSecurityProperty -> (Key, Value))
-> Maybe StrictTransportSecurityProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe StrictTransportSecurityProperty
strictTransportSecurity,
                            Key -> XSSProtectionProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"XSSProtection" (XSSProtectionProperty -> (Key, Value))
-> Maybe XSSProtectionProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe XSSProtectionProperty
xSSProtection])}
instance JSON.ToJSON SecurityHeadersConfigProperty where
  toJSON :: SecurityHeadersConfigProperty -> Value
toJSON SecurityHeadersConfigProperty {Maybe ContentSecurityPolicyProperty
Maybe ContentTypeOptionsProperty
Maybe FrameOptionsProperty
Maybe ReferrerPolicyProperty
Maybe StrictTransportSecurityProperty
Maybe XSSProtectionProperty
()
haddock_workaround_ :: SecurityHeadersConfigProperty -> ()
contentSecurityPolicy :: SecurityHeadersConfigProperty
-> Maybe ContentSecurityPolicyProperty
contentTypeOptions :: SecurityHeadersConfigProperty -> Maybe ContentTypeOptionsProperty
frameOptions :: SecurityHeadersConfigProperty -> Maybe FrameOptionsProperty
referrerPolicy :: SecurityHeadersConfigProperty -> Maybe ReferrerPolicyProperty
strictTransportSecurity :: SecurityHeadersConfigProperty
-> Maybe StrictTransportSecurityProperty
xSSProtection :: SecurityHeadersConfigProperty -> Maybe XSSProtectionProperty
haddock_workaround_ :: ()
contentSecurityPolicy :: Maybe ContentSecurityPolicyProperty
contentTypeOptions :: Maybe ContentTypeOptionsProperty
frameOptions :: Maybe FrameOptionsProperty
referrerPolicy :: Maybe ReferrerPolicyProperty
strictTransportSecurity :: Maybe StrictTransportSecurityProperty
xSSProtection :: Maybe XSSProtectionProperty
..}
    = [(Key, Value)] -> Value
JSON.object
        ([Item [(Key, Value)]] -> [(Key, Value)]
forall l. IsList l => [Item l] -> l
Prelude.fromList
           ([Maybe (Key, Value)] -> [(Key, Value)]
forall a. [Maybe a] -> [a]
Prelude.catMaybes
              [Key -> ContentSecurityPolicyProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"ContentSecurityPolicy"
                 (ContentSecurityPolicyProperty -> (Key, Value))
-> Maybe ContentSecurityPolicyProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe ContentSecurityPolicyProperty
contentSecurityPolicy,
               Key -> ContentTypeOptionsProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"ContentTypeOptions" (ContentTypeOptionsProperty -> (Key, Value))
-> Maybe ContentTypeOptionsProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe ContentTypeOptionsProperty
contentTypeOptions,
               Key -> FrameOptionsProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"FrameOptions" (FrameOptionsProperty -> (Key, Value))
-> Maybe FrameOptionsProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe FrameOptionsProperty
frameOptions,
               Key -> ReferrerPolicyProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"ReferrerPolicy" (ReferrerPolicyProperty -> (Key, Value))
-> Maybe ReferrerPolicyProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe ReferrerPolicyProperty
referrerPolicy,
               Key -> StrictTransportSecurityProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"StrictTransportSecurity"
                 (StrictTransportSecurityProperty -> (Key, Value))
-> Maybe StrictTransportSecurityProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe StrictTransportSecurityProperty
strictTransportSecurity,
               Key -> XSSProtectionProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"XSSProtection" (XSSProtectionProperty -> (Key, Value))
-> Maybe XSSProtectionProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe XSSProtectionProperty
xSSProtection]))
instance Property "ContentSecurityPolicy" SecurityHeadersConfigProperty where
  type PropertyType "ContentSecurityPolicy" SecurityHeadersConfigProperty = ContentSecurityPolicyProperty
  set :: PropertyType "ContentSecurityPolicy" SecurityHeadersConfigProperty
-> SecurityHeadersConfigProperty -> SecurityHeadersConfigProperty
set PropertyType "ContentSecurityPolicy" SecurityHeadersConfigProperty
newValue SecurityHeadersConfigProperty {Maybe ContentSecurityPolicyProperty
Maybe ContentTypeOptionsProperty
Maybe FrameOptionsProperty
Maybe ReferrerPolicyProperty
Maybe StrictTransportSecurityProperty
Maybe XSSProtectionProperty
()
haddock_workaround_ :: SecurityHeadersConfigProperty -> ()
contentSecurityPolicy :: SecurityHeadersConfigProperty
-> Maybe ContentSecurityPolicyProperty
contentTypeOptions :: SecurityHeadersConfigProperty -> Maybe ContentTypeOptionsProperty
frameOptions :: SecurityHeadersConfigProperty -> Maybe FrameOptionsProperty
referrerPolicy :: SecurityHeadersConfigProperty -> Maybe ReferrerPolicyProperty
strictTransportSecurity :: SecurityHeadersConfigProperty
-> Maybe StrictTransportSecurityProperty
xSSProtection :: SecurityHeadersConfigProperty -> Maybe XSSProtectionProperty
haddock_workaround_ :: ()
contentSecurityPolicy :: Maybe ContentSecurityPolicyProperty
contentTypeOptions :: Maybe ContentTypeOptionsProperty
frameOptions :: Maybe FrameOptionsProperty
referrerPolicy :: Maybe ReferrerPolicyProperty
strictTransportSecurity :: Maybe StrictTransportSecurityProperty
xSSProtection :: Maybe XSSProtectionProperty
..}
    = SecurityHeadersConfigProperty
        {contentSecurityPolicy :: Maybe ContentSecurityPolicyProperty
contentSecurityPolicy = ContentSecurityPolicyProperty
-> Maybe ContentSecurityPolicyProperty
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType "ContentSecurityPolicy" SecurityHeadersConfigProperty
ContentSecurityPolicyProperty
newValue, Maybe ContentTypeOptionsProperty
Maybe FrameOptionsProperty
Maybe ReferrerPolicyProperty
Maybe StrictTransportSecurityProperty
Maybe XSSProtectionProperty
()
haddock_workaround_ :: ()
contentTypeOptions :: Maybe ContentTypeOptionsProperty
frameOptions :: Maybe FrameOptionsProperty
referrerPolicy :: Maybe ReferrerPolicyProperty
strictTransportSecurity :: Maybe StrictTransportSecurityProperty
xSSProtection :: Maybe XSSProtectionProperty
haddock_workaround_ :: ()
contentTypeOptions :: Maybe ContentTypeOptionsProperty
frameOptions :: Maybe FrameOptionsProperty
referrerPolicy :: Maybe ReferrerPolicyProperty
strictTransportSecurity :: Maybe StrictTransportSecurityProperty
xSSProtection :: Maybe XSSProtectionProperty
..}
instance Property "ContentTypeOptions" SecurityHeadersConfigProperty where
  type PropertyType "ContentTypeOptions" SecurityHeadersConfigProperty = ContentTypeOptionsProperty
  set :: PropertyType "ContentTypeOptions" SecurityHeadersConfigProperty
-> SecurityHeadersConfigProperty -> SecurityHeadersConfigProperty
set PropertyType "ContentTypeOptions" SecurityHeadersConfigProperty
newValue SecurityHeadersConfigProperty {Maybe ContentSecurityPolicyProperty
Maybe ContentTypeOptionsProperty
Maybe FrameOptionsProperty
Maybe ReferrerPolicyProperty
Maybe StrictTransportSecurityProperty
Maybe XSSProtectionProperty
()
haddock_workaround_ :: SecurityHeadersConfigProperty -> ()
contentSecurityPolicy :: SecurityHeadersConfigProperty
-> Maybe ContentSecurityPolicyProperty
contentTypeOptions :: SecurityHeadersConfigProperty -> Maybe ContentTypeOptionsProperty
frameOptions :: SecurityHeadersConfigProperty -> Maybe FrameOptionsProperty
referrerPolicy :: SecurityHeadersConfigProperty -> Maybe ReferrerPolicyProperty
strictTransportSecurity :: SecurityHeadersConfigProperty
-> Maybe StrictTransportSecurityProperty
xSSProtection :: SecurityHeadersConfigProperty -> Maybe XSSProtectionProperty
haddock_workaround_ :: ()
contentSecurityPolicy :: Maybe ContentSecurityPolicyProperty
contentTypeOptions :: Maybe ContentTypeOptionsProperty
frameOptions :: Maybe FrameOptionsProperty
referrerPolicy :: Maybe ReferrerPolicyProperty
strictTransportSecurity :: Maybe StrictTransportSecurityProperty
xSSProtection :: Maybe XSSProtectionProperty
..}
    = SecurityHeadersConfigProperty
        {contentTypeOptions :: Maybe ContentTypeOptionsProperty
contentTypeOptions = ContentTypeOptionsProperty -> Maybe ContentTypeOptionsProperty
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType "ContentTypeOptions" SecurityHeadersConfigProperty
ContentTypeOptionsProperty
newValue, Maybe ContentSecurityPolicyProperty
Maybe FrameOptionsProperty
Maybe ReferrerPolicyProperty
Maybe StrictTransportSecurityProperty
Maybe XSSProtectionProperty
()
haddock_workaround_ :: ()
contentSecurityPolicy :: Maybe ContentSecurityPolicyProperty
frameOptions :: Maybe FrameOptionsProperty
referrerPolicy :: Maybe ReferrerPolicyProperty
strictTransportSecurity :: Maybe StrictTransportSecurityProperty
xSSProtection :: Maybe XSSProtectionProperty
haddock_workaround_ :: ()
contentSecurityPolicy :: Maybe ContentSecurityPolicyProperty
frameOptions :: Maybe FrameOptionsProperty
referrerPolicy :: Maybe ReferrerPolicyProperty
strictTransportSecurity :: Maybe StrictTransportSecurityProperty
xSSProtection :: Maybe XSSProtectionProperty
..}
instance Property "FrameOptions" SecurityHeadersConfigProperty where
  type PropertyType "FrameOptions" SecurityHeadersConfigProperty = FrameOptionsProperty
  set :: PropertyType "FrameOptions" SecurityHeadersConfigProperty
-> SecurityHeadersConfigProperty -> SecurityHeadersConfigProperty
set PropertyType "FrameOptions" SecurityHeadersConfigProperty
newValue SecurityHeadersConfigProperty {Maybe ContentSecurityPolicyProperty
Maybe ContentTypeOptionsProperty
Maybe FrameOptionsProperty
Maybe ReferrerPolicyProperty
Maybe StrictTransportSecurityProperty
Maybe XSSProtectionProperty
()
haddock_workaround_ :: SecurityHeadersConfigProperty -> ()
contentSecurityPolicy :: SecurityHeadersConfigProperty
-> Maybe ContentSecurityPolicyProperty
contentTypeOptions :: SecurityHeadersConfigProperty -> Maybe ContentTypeOptionsProperty
frameOptions :: SecurityHeadersConfigProperty -> Maybe FrameOptionsProperty
referrerPolicy :: SecurityHeadersConfigProperty -> Maybe ReferrerPolicyProperty
strictTransportSecurity :: SecurityHeadersConfigProperty
-> Maybe StrictTransportSecurityProperty
xSSProtection :: SecurityHeadersConfigProperty -> Maybe XSSProtectionProperty
haddock_workaround_ :: ()
contentSecurityPolicy :: Maybe ContentSecurityPolicyProperty
contentTypeOptions :: Maybe ContentTypeOptionsProperty
frameOptions :: Maybe FrameOptionsProperty
referrerPolicy :: Maybe ReferrerPolicyProperty
strictTransportSecurity :: Maybe StrictTransportSecurityProperty
xSSProtection :: Maybe XSSProtectionProperty
..}
    = SecurityHeadersConfigProperty
        {frameOptions :: Maybe FrameOptionsProperty
frameOptions = FrameOptionsProperty -> Maybe FrameOptionsProperty
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType "FrameOptions" SecurityHeadersConfigProperty
FrameOptionsProperty
newValue, Maybe ContentSecurityPolicyProperty
Maybe ContentTypeOptionsProperty
Maybe ReferrerPolicyProperty
Maybe StrictTransportSecurityProperty
Maybe XSSProtectionProperty
()
haddock_workaround_ :: ()
contentSecurityPolicy :: Maybe ContentSecurityPolicyProperty
contentTypeOptions :: Maybe ContentTypeOptionsProperty
referrerPolicy :: Maybe ReferrerPolicyProperty
strictTransportSecurity :: Maybe StrictTransportSecurityProperty
xSSProtection :: Maybe XSSProtectionProperty
haddock_workaround_ :: ()
contentSecurityPolicy :: Maybe ContentSecurityPolicyProperty
contentTypeOptions :: Maybe ContentTypeOptionsProperty
referrerPolicy :: Maybe ReferrerPolicyProperty
strictTransportSecurity :: Maybe StrictTransportSecurityProperty
xSSProtection :: Maybe XSSProtectionProperty
..}
instance Property "ReferrerPolicy" SecurityHeadersConfigProperty where
  type PropertyType "ReferrerPolicy" SecurityHeadersConfigProperty = ReferrerPolicyProperty
  set :: PropertyType "ReferrerPolicy" SecurityHeadersConfigProperty
-> SecurityHeadersConfigProperty -> SecurityHeadersConfigProperty
set PropertyType "ReferrerPolicy" SecurityHeadersConfigProperty
newValue SecurityHeadersConfigProperty {Maybe ContentSecurityPolicyProperty
Maybe ContentTypeOptionsProperty
Maybe FrameOptionsProperty
Maybe ReferrerPolicyProperty
Maybe StrictTransportSecurityProperty
Maybe XSSProtectionProperty
()
haddock_workaround_ :: SecurityHeadersConfigProperty -> ()
contentSecurityPolicy :: SecurityHeadersConfigProperty
-> Maybe ContentSecurityPolicyProperty
contentTypeOptions :: SecurityHeadersConfigProperty -> Maybe ContentTypeOptionsProperty
frameOptions :: SecurityHeadersConfigProperty -> Maybe FrameOptionsProperty
referrerPolicy :: SecurityHeadersConfigProperty -> Maybe ReferrerPolicyProperty
strictTransportSecurity :: SecurityHeadersConfigProperty
-> Maybe StrictTransportSecurityProperty
xSSProtection :: SecurityHeadersConfigProperty -> Maybe XSSProtectionProperty
haddock_workaround_ :: ()
contentSecurityPolicy :: Maybe ContentSecurityPolicyProperty
contentTypeOptions :: Maybe ContentTypeOptionsProperty
frameOptions :: Maybe FrameOptionsProperty
referrerPolicy :: Maybe ReferrerPolicyProperty
strictTransportSecurity :: Maybe StrictTransportSecurityProperty
xSSProtection :: Maybe XSSProtectionProperty
..}
    = SecurityHeadersConfigProperty
        {referrerPolicy :: Maybe ReferrerPolicyProperty
referrerPolicy = ReferrerPolicyProperty -> Maybe ReferrerPolicyProperty
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType "ReferrerPolicy" SecurityHeadersConfigProperty
ReferrerPolicyProperty
newValue, Maybe ContentSecurityPolicyProperty
Maybe ContentTypeOptionsProperty
Maybe FrameOptionsProperty
Maybe StrictTransportSecurityProperty
Maybe XSSProtectionProperty
()
haddock_workaround_ :: ()
contentSecurityPolicy :: Maybe ContentSecurityPolicyProperty
contentTypeOptions :: Maybe ContentTypeOptionsProperty
frameOptions :: Maybe FrameOptionsProperty
strictTransportSecurity :: Maybe StrictTransportSecurityProperty
xSSProtection :: Maybe XSSProtectionProperty
haddock_workaround_ :: ()
contentSecurityPolicy :: Maybe ContentSecurityPolicyProperty
contentTypeOptions :: Maybe ContentTypeOptionsProperty
frameOptions :: Maybe FrameOptionsProperty
strictTransportSecurity :: Maybe StrictTransportSecurityProperty
xSSProtection :: Maybe XSSProtectionProperty
..}
instance Property "StrictTransportSecurity" SecurityHeadersConfigProperty where
  type PropertyType "StrictTransportSecurity" SecurityHeadersConfigProperty = StrictTransportSecurityProperty
  set :: PropertyType
  "StrictTransportSecurity" SecurityHeadersConfigProperty
-> SecurityHeadersConfigProperty -> SecurityHeadersConfigProperty
set PropertyType
  "StrictTransportSecurity" SecurityHeadersConfigProperty
newValue SecurityHeadersConfigProperty {Maybe ContentSecurityPolicyProperty
Maybe ContentTypeOptionsProperty
Maybe FrameOptionsProperty
Maybe ReferrerPolicyProperty
Maybe StrictTransportSecurityProperty
Maybe XSSProtectionProperty
()
haddock_workaround_ :: SecurityHeadersConfigProperty -> ()
contentSecurityPolicy :: SecurityHeadersConfigProperty
-> Maybe ContentSecurityPolicyProperty
contentTypeOptions :: SecurityHeadersConfigProperty -> Maybe ContentTypeOptionsProperty
frameOptions :: SecurityHeadersConfigProperty -> Maybe FrameOptionsProperty
referrerPolicy :: SecurityHeadersConfigProperty -> Maybe ReferrerPolicyProperty
strictTransportSecurity :: SecurityHeadersConfigProperty
-> Maybe StrictTransportSecurityProperty
xSSProtection :: SecurityHeadersConfigProperty -> Maybe XSSProtectionProperty
haddock_workaround_ :: ()
contentSecurityPolicy :: Maybe ContentSecurityPolicyProperty
contentTypeOptions :: Maybe ContentTypeOptionsProperty
frameOptions :: Maybe FrameOptionsProperty
referrerPolicy :: Maybe ReferrerPolicyProperty
strictTransportSecurity :: Maybe StrictTransportSecurityProperty
xSSProtection :: Maybe XSSProtectionProperty
..}
    = SecurityHeadersConfigProperty
        {strictTransportSecurity :: Maybe StrictTransportSecurityProperty
strictTransportSecurity = StrictTransportSecurityProperty
-> Maybe StrictTransportSecurityProperty
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType
  "StrictTransportSecurity" SecurityHeadersConfigProperty
StrictTransportSecurityProperty
newValue, Maybe ContentSecurityPolicyProperty
Maybe ContentTypeOptionsProperty
Maybe FrameOptionsProperty
Maybe ReferrerPolicyProperty
Maybe XSSProtectionProperty
()
haddock_workaround_ :: ()
contentSecurityPolicy :: Maybe ContentSecurityPolicyProperty
contentTypeOptions :: Maybe ContentTypeOptionsProperty
frameOptions :: Maybe FrameOptionsProperty
referrerPolicy :: Maybe ReferrerPolicyProperty
xSSProtection :: Maybe XSSProtectionProperty
haddock_workaround_ :: ()
contentSecurityPolicy :: Maybe ContentSecurityPolicyProperty
contentTypeOptions :: Maybe ContentTypeOptionsProperty
frameOptions :: Maybe FrameOptionsProperty
referrerPolicy :: Maybe ReferrerPolicyProperty
xSSProtection :: Maybe XSSProtectionProperty
..}
instance Property "XSSProtection" SecurityHeadersConfigProperty where
  type PropertyType "XSSProtection" SecurityHeadersConfigProperty = XSSProtectionProperty
  set :: PropertyType "XSSProtection" SecurityHeadersConfigProperty
-> SecurityHeadersConfigProperty -> SecurityHeadersConfigProperty
set PropertyType "XSSProtection" SecurityHeadersConfigProperty
newValue SecurityHeadersConfigProperty {Maybe ContentSecurityPolicyProperty
Maybe ContentTypeOptionsProperty
Maybe FrameOptionsProperty
Maybe ReferrerPolicyProperty
Maybe StrictTransportSecurityProperty
Maybe XSSProtectionProperty
()
haddock_workaround_ :: SecurityHeadersConfigProperty -> ()
contentSecurityPolicy :: SecurityHeadersConfigProperty
-> Maybe ContentSecurityPolicyProperty
contentTypeOptions :: SecurityHeadersConfigProperty -> Maybe ContentTypeOptionsProperty
frameOptions :: SecurityHeadersConfigProperty -> Maybe FrameOptionsProperty
referrerPolicy :: SecurityHeadersConfigProperty -> Maybe ReferrerPolicyProperty
strictTransportSecurity :: SecurityHeadersConfigProperty
-> Maybe StrictTransportSecurityProperty
xSSProtection :: SecurityHeadersConfigProperty -> Maybe XSSProtectionProperty
haddock_workaround_ :: ()
contentSecurityPolicy :: Maybe ContentSecurityPolicyProperty
contentTypeOptions :: Maybe ContentTypeOptionsProperty
frameOptions :: Maybe FrameOptionsProperty
referrerPolicy :: Maybe ReferrerPolicyProperty
strictTransportSecurity :: Maybe StrictTransportSecurityProperty
xSSProtection :: Maybe XSSProtectionProperty
..}
    = SecurityHeadersConfigProperty
        {xSSProtection :: Maybe XSSProtectionProperty
xSSProtection = XSSProtectionProperty -> Maybe XSSProtectionProperty
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType "XSSProtection" SecurityHeadersConfigProperty
XSSProtectionProperty
newValue, Maybe ContentSecurityPolicyProperty
Maybe ContentTypeOptionsProperty
Maybe FrameOptionsProperty
Maybe ReferrerPolicyProperty
Maybe StrictTransportSecurityProperty
()
haddock_workaround_ :: ()
contentSecurityPolicy :: Maybe ContentSecurityPolicyProperty
contentTypeOptions :: Maybe ContentTypeOptionsProperty
frameOptions :: Maybe FrameOptionsProperty
referrerPolicy :: Maybe ReferrerPolicyProperty
strictTransportSecurity :: Maybe StrictTransportSecurityProperty
haddock_workaround_ :: ()
contentSecurityPolicy :: Maybe ContentSecurityPolicyProperty
contentTypeOptions :: Maybe ContentTypeOptionsProperty
frameOptions :: Maybe FrameOptionsProperty
referrerPolicy :: Maybe ReferrerPolicyProperty
strictTransportSecurity :: Maybe StrictTransportSecurityProperty
..}