Software zum Installieren eines Smart-Mirror Frameworks , zum Nutzen von hochschulrelevanten Informationen, auf einem Raspberry-Pi.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

index.js 1.7KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. // @ts-nocheck
  2. 'use strict';
  3. const _ = require('lodash');
  4. const isStandardSyntaxAtRule = require('../../utils/isStandardSyntaxAtRule');
  5. const report = require('../../utils/report');
  6. const ruleMessages = require('../../utils/ruleMessages');
  7. const validateOptions = require('../../utils/validateOptions');
  8. const ruleName = 'at-rule-property-requirelist';
  9. const messages = ruleMessages(ruleName, {
  10. expected: (property, atRule) => `Expected property "${property}" for at-rule "${atRule}"`,
  11. });
  12. function rule(list) {
  13. return (root, result) => {
  14. const validOptions = validateOptions(result, ruleName, {
  15. actual: list,
  16. possible: [_.isObject],
  17. });
  18. if (!validOptions) {
  19. return;
  20. }
  21. result.warn(
  22. `'${ruleName}' has been deprecated. Instead use 'at-rule-property-required-list'.`,
  23. {
  24. stylelintType: 'deprecation',
  25. stylelintReference: `https://github.com/stylelint/stylelint/blob/13.7.0/lib/rules/${ruleName}/README.md`,
  26. },
  27. );
  28. root.walkAtRules((atRule) => {
  29. if (!isStandardSyntaxAtRule(atRule)) {
  30. return;
  31. }
  32. const { name, nodes } = atRule;
  33. const atRuleName = name.toLowerCase();
  34. if (!list[atRuleName]) {
  35. return;
  36. }
  37. list[atRuleName].forEach((property) => {
  38. const propertyName = property.toLowerCase();
  39. const hasProperty = nodes.find(
  40. ({ type, prop }) => type === 'decl' && prop.toLowerCase() === propertyName,
  41. );
  42. if (hasProperty) {
  43. return;
  44. }
  45. return report({
  46. message: messages.expected(propertyName, atRuleName),
  47. node: atRule,
  48. result,
  49. ruleName,
  50. });
  51. });
  52. });
  53. };
  54. }
  55. rule.ruleName = ruleName;
  56. rule.messages = messages;
  57. rule.meta = { deprecated: true };
  58. module.exports = rule;