"use strict"

const isStandardSyntaxAtRule = require("../utils/isStandardSyntaxAtRule")
const report = require("../utils/report")

module.exports = function (options) {
  options.root.walkAtRules(atRule => {
    if (!isStandardSyntaxAtRule(atRule)) {
      return
    }

    checkColon(`@${atRule.name}${(atRule.raws.afterName || "")}${atRule.params}`, atRule.name.length, atRule)
  })

  function checkColon(source, index, node) {
    options.locationChecker({
      source,
      index,
      err: m => report({
        message: m,
        node,
        index,
        result: options.result,
        ruleName: options.checkedRuleName,
      }),
      errTarget: `@${node.name}`,
    })
  }
}