| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 | 
							- let OldValue = require('../old-value')
 
- let Value = require('../value')
 
- function regexp(name) {
 
-   return new RegExp(`(^|[\\s,(])(${name}($|[\\s),]))`, 'gi')
 
- }
 
- class Intrinsic extends Value {
 
-   add(decl, prefix) {
 
-     if (decl.prop.includes('grid') && prefix !== '-webkit-') {
 
-       return undefined
 
-     }
 
-     return super.add(decl, prefix)
 
-   }
 
-   isStretch() {
 
-     return (
 
-       this.name === 'stretch' ||
 
-       this.name === 'fill' ||
 
-       this.name === 'fill-available'
 
-     )
 
-   }
 
-   old(prefix) {
 
-     let prefixed = prefix + this.name
 
-     if (this.isStretch()) {
 
-       if (prefix === '-moz-') {
 
-         prefixed = '-moz-available'
 
-       } else if (prefix === '-webkit-') {
 
-         prefixed = '-webkit-fill-available'
 
-       }
 
-     }
 
-     return new OldValue(this.name, prefixed, prefixed, regexp(prefixed))
 
-   }
 
-   regexp() {
 
-     if (!this.regexpCache) this.regexpCache = regexp(this.name)
 
-     return this.regexpCache
 
-   }
 
-   replace(string, prefix) {
 
-     if (prefix === '-moz-' && this.isStretch()) {
 
-       return string.replace(this.regexp(), '$1-moz-available$3')
 
-     }
 
-     if (prefix === '-webkit-' && this.isStretch()) {
 
-       return string.replace(this.regexp(), '$1-webkit-fill-available$3')
 
-     }
 
-     return super.replace(string, prefix)
 
-   }
 
- }
 
- Intrinsic.names = [
 
-   'max-content',
 
-   'min-content',
 
-   'fit-content',
 
-   'fill',
 
-   'fill-available',
 
-   'stretch'
 
- ]
 
- module.exports = Intrinsic
 
 
  |