DOCS: [DEFAULTS] General improvements (#1968)

Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
This commit is contained in:
Jeffrey Cafferata 2023-01-21 23:26:35 +01:00 committed by GitHub
parent aed4197984
commit d53260703e
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -6,18 +6,37 @@ parameter_types:
"modifiers...": RecordModifier[]
---
`DEFAULTS` allows you to declare a set of default arguments to apply to all subsequent domains. Subsequent calls to [D](D.md) will have these
`DEFAULTS` allows you to declare a set of default arguments to apply to all subsequent domains. Subsequent calls to [`D`](D.md) will have these
arguments passed as if they were the first modifiers in the argument list.
## Example
We want to create backup zone files for all domains, but not actually register them. Also create a [`DefaultTTL`](../domain/DefaultTTL.md).
The domain `example.com` will have the defaults set.
```javascript
var COMMON = NewDnsProvider("foo");
// we want to create backup zone files for all domains, but not actually register them.
// also create a default TTL
DEFAULTS( DnsProvider(COMMON,0), DefaultTTL(1000));
DEFAULTS(
DnsProvider(COMMON, 0),
DefaultTTL('1d')
);
D("example.com", REGISTRAR, DnsProvider("R53"), A("@","1.2.3.4")); // this domain will have the defaults set.
// clear defaults
DEFAULTS();
D("example2.com", REGISTRAR, DnsProvider("R53"), A("@","1.2.3.4")); // this domain will not have the previous defaults.
D("example.com",
REGISTRAR,
DnsProvider("R53"),
A("@","1.2.3.4")
);
```
If you want to clear the defaults, you can do the following.
The domain `example2.com` will **not** have the defaults set.
```javascript
DEFAULTS();
D("example2.com",
REGISTRAR,
DnsProvider("R53"),
A("@","1.2.3.4")
);
```