- From: James Nash via GitHub <sysbot+gh@w3.org>
- Date: Tue, 14 Sep 2021 20:29:14 +0000
- To: public-design-tokens-log@w3.org
I'm definitely in favour of allowing both `description` and `type` on groups as well as tokens. Furthermore, if/when we add any other properties in future we should always consider if they are applicable to tokens, groups or both.
Note, that with `type`, I think its meaning when applied to a group should be subtly different to when it's applied to a token:
* `type` on a token is explicitly stating what type that token is.
* `type` on a group is setting a default type for all tokens within that group (and any nested groups) which applies unless the tokens have their own `type` property, which then takes precedence.
Example:
```jsonc
{
"group 1": {
"type": "color",
"token A": {
// This token has the type color because it inherits it from group 1
"value": "#00ff00"
},
"token B": {
// This token has the type dimension, because its own type property
// takes precedence the inherited color type
"type": "dimension",
"value": "12rem"
},
"group 1.1": {
"token B": {
// This token also has type color because it inherits it from group 1
// since that is the nearest group with a type property
"value": "#ff0000"
}
},
"group 1.2": {
"type": "duration",
"token C": {
// This token has type duration because it inherits it from group 1.2
// (group 1.2's type takes precedence over its parent group's type)
"value": "150ms"
}
},
"token X": {
// This token is not within a group with a type, so it does not inherit a type.
// It also does not have its own type property. Therefore, tools must fall back
// to the JSON type of its value, which is "string".
// This token therefore has type "string" (don't be fooled by its value which
// *looks* like a color!)
"value": "#abcdef"
}
}
```
--
GitHub Notification of comment by c1rrus
Please view or discuss this issue at https://github.com/design-tokens/community-group/issues/72#issuecomment-919489744 using your GitHub account
--
Sent via github-notify-ml as configured in https://github.com/w3c/github-notify-ml-config
Received on Tuesday, 14 September 2021 20:29:16 UTC