: str_replace(): Passing null to parameter #2 ($replace) of type array|string is deprecated in
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
let Container = __webpack_require__(683)
let LazyResult, Processor
class Root extends Container {
if (!this.nodes) this.nodes = []
normalize(child, sample, type) {
let nodes = super.normalize(child)
if (type === 'prepend') {
if (this.nodes.length > 1) {
sample.raws.before = this.nodes[1].raws.before
delete sample.raws.before
} else if (this.first !== sample) {
for (let node of nodes) {
node.raws.before = sample.raws.before
removeChild(child, ignore) {
let index = this.index(child)
if (!ignore && index === 0 && this.nodes.length > 1) {
this.nodes[1].raws.before = this.nodes[index].raws.before
return super.removeChild(child)
let lazy = new LazyResult(new Processor(), this, opts)
Root.registerLazyResult = dependant => {
Root.registerProcessor = dependant => {
Container.registerRoot(Root)
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
let Container = __webpack_require__(683)
let list = __webpack_require__(7374)
class Rule extends Container {
if (!this.nodes) this.nodes = []
return list.comma(this.selector)
let match = this.selector ? this.selector.match(/,\s*/) : null
let sep = match ? match[0] : ',' + this.raw('between', 'beforeOpen')
this.selector = values.join(sep)
Container.registerRule(Rule)
function capitalize(str) {
return str[0].toUpperCase() + str.slice(1)
atrule(node, semicolon) {
let name = '@' + node.name
let params = node.params ? this.rawValue(node, 'params') : ''
if (typeof node.raws.afterName !== 'undefined') {
name += node.raws.afterName
this.block(node, name + params)
let end = (node.raws.between || '') + (semicolon ? ';' : '')
this.builder(name + params + end, node)
beforeAfter(node, detect) {
if (node.type === 'decl') {
value = this.raw(node, null, 'beforeDecl')
} else if (node.type === 'comment') {
value = this.raw(node, null, 'beforeComment')
} else if (detect === 'before') {
value = this.raw(node, null, 'beforeRule')
value = this.raw(node, null, 'beforeClose')
while (buf && buf.type !== 'root') {
if (value.includes('\n')) {
let indent = this.raw(node, null, 'indent')
for (let step = 0; step < depth; step++) value += indent
let between = this.raw(node, 'between', 'beforeOpen')
this.builder(start + between + '{', node, 'start')
if (node.nodes && node.nodes.length) {
after = this.raw(node, 'after')
after = this.raw(node, 'after', 'emptyBody')
if (after) this.builder(after)
this.builder('}', node, 'end')
let last = node.nodes.length - 1
if (node.nodes[last].type !== 'comment') break
let semicolon = this.raw(node, 'semicolon')
for (let i = 0; i < node.nodes.length; i++) {
let child = node.nodes[i]
let before = this.raw(child, 'before')
if (before) this.builder(before)
this.stringify(child, last !== i || semicolon)
let left = this.raw(node, 'left', 'commentLeft')
let right = this.raw(node, 'right', 'commentRight')
this.builder('/*' + left + node.text + right + '*/', node)
let between = this.raw(node, 'between', 'colon')
let string = node.prop + between + this.rawValue(node, 'value')
string += node.raws.important || ' !important'
if (semicolon) string += ';'
this.builder(string, node)
if (!detect) detect = own
if (typeof value !== 'undefined') return value
if (detect === 'before') {
// Hack for first rule in CSS
if (!parent || (parent.type === 'root' && parent.first === node)) {
// `root` nodes in `document` should use only their own raws
if (parent && parent.type === 'document') {
// Floating child without parent
if (!parent) return DEFAULT_RAW[detect]
// Detect style by other nodes
if (!root.rawCache) root.rawCache = {}
if (typeof root.rawCache[detect] !== 'undefined') {
return root.rawCache[detect]
if (detect === 'before' || detect === 'after') {
return this.beforeAfter(node, detect)
let method = 'raw' + capitalize(detect)
value = this[method](root, node)
if (typeof value !== 'undefined') return false
if (typeof value === 'undefined') value = DEFAULT_RAW[detect]
root.rawCache[detect] = value
if (i.nodes && i.nodes.length > 0) {
if (typeof i.raws.after !== 'undefined') {
if (value.includes('\n')) {
value = value.replace(/[^\n]+$/, '')
if (value) value = value.replace(/\S/g, '')
rawBeforeComment(root, node) {
if (typeof i.raws.before !== 'undefined') {
if (value.includes('\n')) {
value = value.replace(/[^\n]+$/, '')
if (typeof value === 'undefined') {
value = this.raw(node, null, 'beforeDecl')
value = value.replace(/\S/g, '')
rawBeforeDecl(root, node) {
if (typeof i.raws.before !== 'undefined') {
if (value.includes('\n')) {
value = value.replace(/[^\n]+$/, '')
if (typeof value === 'undefined') {
value = this.raw(node, null, 'beforeRule')
value = value.replace(/\S/g, '')
if (typeof value !== 'undefined') return false
if (i.nodes && (i.parent !== root || root.first !== i)) {
if (typeof i.raws.before !== 'undefined') {
if (value.includes('\n')) {
value = value.replace(/[^\n]+$/, '')
if (value) value = value.replace(/\S/g, '')
if (typeof i.raws.between !== 'undefined') {
value = i.raws.between.replace(/[^\s:]/g, '')
if (i.nodes && i.nodes.length === 0) {
if (typeof value !== 'undefined') return false
if (root.raws.indent) return root.raws.indent
if (p && p !== root && p.parent && p.parent === root) {
if (typeof i.raws.before !== 'undefined') {
let parts = i.raws.before.split('\n')
value = parts[parts.length - 1]
value = value.replace(/\S/g, '')
if (i.nodes && i.nodes.length && i.last.type === 'decl') {
if (typeof value !== 'undefined') return false
let raw = node.raws[prop]
if (raw && raw.value === value) {
if (node.raws.after) this.builder(node.raws.after)
this.block(node, this.rawValue(node, 'selector'))
if (node.raws.ownSemicolon) {
this.builder(node.raws.ownSemicolon, node, 'end')
stringify(node, semicolon) {
'Unknown AST node type ' +
'Maybe you need to change PostCSS stringifier.'
this[node.type](node, semicolon)
module.exports = Stringifier
Stringifier.default = Stringifier
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
let Stringifier = __webpack_require__(346)
function stringify(node, builder) {
let str = new Stringifier(builder)
module.exports = stringify
stringify.default = stringify
module.exports.isClean = Symbol('isClean')
module.exports.my = Symbol('my')