Optional
compressOptional
cookieThe name that will be assigned to the cookie that holds the subtree's state. Defaults to the value of the subtree option.
Optional
defaultIf this option is set and no cookie exists for the subtree, the subtree's state will be set to
the provided defaultState
. Similarly, if the subtree's state becomes the provided
defaultState
and a cookie exists for the subtree, the cookie will be deleted.
An example use case for the defaultState
option are authorization cookies that are created
when a client logs in, and removed when the auth-related state is reset on logout.
defaultState
masks the subtree's initial Redux state, i.e., when defaultState
differs
from the initial state, the initial state will always be replaced by defaultState
. Hence,
when you provide a defaultState
, it is recommended that it equals the subtree's initial Redux
state.
Optional
deserializationA function that parses a string created by serializationFunction and returns the
corresponding subtree state. Defaults to JSON.parse
.
Optional
domainSpecifies the value for the Set-Cookie attribute. By default, no domain is set, and most clients will consider the cookie to apply to only the current domain.
Optional
expiresSpecifies the Date
object to be the value for the Set-Cookie
attribute. By default,
no expiration is set, and most clients will consider this a "non-persistent cookie" and will delete
it on a condition like exiting a web browser application.
Note the storage model specification
states that if both expires
and maxAge
are set, then maxAge
takes precedence, but it is
possible not all clients by obey this, so if both are set, they should
point to the same date and time.
Optional
ignoreWhether or not to ignore a subtree's state in a state update from getStaticProps()
(defaults
to true
). If false
, the state from getStaticProps()
will be contained in the HYDRATE
action without any changes, leaving the merging up to the HYDRATE
reducer. If true
, the
received state from getStaticProps()
will be replaced with the current client state before
the HYDRATE
action is dispatched. This prevents the client's state from being reset to the
state from getStaticProps()
.
Optional
maxSpecifies the number (in seconds) to be the value for the Max-Age
Set-Cookie
attribute. The given number will be converted to an integer
by rounding down. By default, no maximum age is set.
Note the storage model specification
states that if both expires
and maxAge
are set, then maxAge
takes precedence, but it is
possible not all clients by obey this, so if both are set, they should
point to the same date and time.
Optional
pathSpecifies the value for the Set-Cookie
attribute.
By default, the path is considered the "default path".
Optional
sameSpecifies the boolean or string to be the value for the Set-Cookie
attribute.
true
will set the SameSite
attribute to Strict
for strict same
site enforcement.false
will not set the SameSite
attribute.'lax'
will set the SameSite
attribute to Lax for lax same site
enforcement.'strict'
will set the SameSite
attribute to Strict for strict same
site enforcement.'none'
will set the SameSite attribute to None for an explicit
cross-site cookie.More information about the different enforcement levels can be found in specification.
note This is an attribute that has not yet been fully standardized, and may change in the future. This also means many clients may ignore this attribute until they understand it.
Optional
secureSpecifies the boolean value for the Set-Cookie
attribute. When truthy, the
Secure
attribute is set, otherwise it is not. By default, the Secure
attribute is not set.
Note be careful when setting this to true
, as compliant clients will
not send the cookie back to the server in the future if the browser does
not have an HTTPS connection.
Optional
serializationA function that serializes subtree state into a string. Defaults to JSON.stringify
.
If you set this, make sure to also set the deserializationFunction option accordingly.
The path of a state subtree that shall be synced with cookies. If, for instance, the state object is of the form
{
my: {
config: {...},
},
otherState: {...},
}
then some possible subtree
values would be my
, my.config
, and otherState
.
Generated using TypeDoc
Whether or not to compress cookie values using lz-string. Defaults to
true
if serializationFunction and deserializationFunction have not been specified, andfalse
otherwise.