@htyf-mp/stylelint-taro-rn 0.0.1 → 0.3.12-alpha.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. package/dist/index.cjs.js +16 -21
  2. package/dist/index.cjs.js.map +1 -1
  3. package/dist/index.esm.js.map +1 -1
  4. package/dist/index.js.map +1 -1
  5. package/dist/rules/css-property-no-unknown/index.js.map +1 -1
  6. package/dist/rules/font-weight-no-ignored-values/index.js.map +1 -1
  7. package/dist/rules/index.js.map +1 -1
  8. package/dist/rules/line-height-no-value-without-unit/index.js.map +1 -1
  9. package/dist/rules/style-property-no-unknown/index.js.map +1 -1
  10. package/dist/{index.d.ts → src/index.d.ts} +1 -1
  11. package/dist/{rules → src/rules}/index.d.ts +4 -4
  12. package/dist/src/utils/isString.d.ts +1 -0
  13. package/dist/utils/endsWith.js.map +1 -1
  14. package/dist/utils/hasInterpolation.js.map +1 -1
  15. package/dist/utils/hasLessInterpolation.js.map +1 -1
  16. package/dist/utils/hasPsvInterpolation.js.map +1 -1
  17. package/dist/utils/hasScssInterpolation.js.map +1 -1
  18. package/dist/utils/isCustomProperty.js.map +1 -1
  19. package/dist/utils/isExportBlock.js.map +1 -1
  20. package/dist/utils/isStandardSyntaxDeclaration.js.map +1 -1
  21. package/dist/utils/isStandardSyntaxProperty.js.map +1 -1
  22. package/dist/utils/isString.js.map +1 -1
  23. package/dist/utils/kebabCase.js.map +1 -1
  24. package/dist/utils/matchesStringOrRegExp.js.map +1 -1
  25. package/dist/utils/namespace.js.map +1 -1
  26. package/dist/utils/optionsMatches.js.map +1 -1
  27. package/package.json +8 -3
  28. package/dist/utils/isString.d.ts +0 -1
  29. /package/dist/{rules → src/rules}/css-property-no-unknown/index.d.ts +0 -0
  30. /package/dist/{rules → src/rules}/font-weight-no-ignored-values/index.d.ts +0 -0
  31. /package/dist/{rules → src/rules}/line-height-no-value-without-unit/index.d.ts +0 -0
  32. /package/dist/{rules → src/rules}/style-property-no-unknown/index.d.ts +0 -0
  33. /package/dist/{utils → src/utils}/endsWith.d.ts +0 -0
  34. /package/dist/{utils → src/utils}/hasInterpolation.d.ts +0 -0
  35. /package/dist/{utils → src/utils}/hasLessInterpolation.d.ts +0 -0
  36. /package/dist/{utils → src/utils}/hasPsvInterpolation.d.ts +0 -0
  37. /package/dist/{utils → src/utils}/hasScssInterpolation.d.ts +0 -0
  38. /package/dist/{utils → src/utils}/index.d.ts +0 -0
  39. /package/dist/{utils → src/utils}/isCustomProperty.d.ts +0 -0
  40. /package/dist/{utils → src/utils}/isExportBlock.d.ts +0 -0
  41. /package/dist/{utils → src/utils}/isStandardSyntaxDeclaration.d.ts +0 -0
  42. /package/dist/{utils → src/utils}/isStandardSyntaxProperty.d.ts +0 -0
  43. /package/dist/{utils → src/utils}/kebabCase.d.ts +0 -0
  44. /package/dist/{utils → src/utils}/matchesStringOrRegExp.d.ts +0 -0
  45. /package/dist/{utils → src/utils}/namespace.d.ts +0 -0
  46. /package/dist/{utils → src/utils}/optionsMatches.d.ts +0 -0
package/dist/index.cjs.js CHANGED
@@ -6,11 +6,6 @@ var stylelint = require('stylelint');
6
6
  var reactNativeKnownStylingProperties = require('react-native-known-styling-properties');
7
7
  var declarationValueIndex = require('stylelint/lib/utils/declarationValueIndex.cjs');
8
8
 
9
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
10
-
11
- var stylelint__default = /*#__PURE__*/_interopDefaultLegacy(stylelint);
12
- var declarationValueIndex__default = /*#__PURE__*/_interopDefaultLegacy(declarationValueIndex);
13
-
14
9
  const endsWith = (str, suffix) => str.indexOf(suffix, str.length - suffix.length) !== -1;
15
10
 
16
11
  /**
@@ -208,13 +203,13 @@ function optionsMatches(options /*: Object */, propertyName /*: string */, input
208
203
  }
209
204
 
210
205
  const ruleName$3 = namespace('css-property-no-unknown');
211
- const messages$3 = stylelint__default["default"].utils.ruleMessages(ruleName$3, {
206
+ const messages$3 = stylelint.utils.ruleMessages(ruleName$3, {
212
207
  rejected: (property) => `无效的 React Native 样式属性 "${property}"`
213
208
  });
214
209
  const props$1 = reactNativeKnownStylingProperties.allCSS2RNProps.map(kebabCase);
215
210
  function cssPropertyNoUnknown (actual, options) {
216
211
  return function (root, result) {
217
- const validOptions = stylelint__default["default"].utils.validateOptions(result, ruleName$3, {
212
+ const validOptions = stylelint.utils.validateOptions(result, ruleName$3, {
218
213
  actual
219
214
  }, {
220
215
  actual: options,
@@ -246,7 +241,7 @@ function cssPropertyNoUnknown (actual, options) {
246
241
  if (props$1.indexOf(prop.toLowerCase()) !== -1) {
247
242
  return;
248
243
  }
249
- stylelint__default["default"].utils.report({
244
+ stylelint.utils.report({
250
245
  message: messages$3.rejected(prop),
251
246
  node: decl,
252
247
  result,
@@ -257,13 +252,13 @@ function cssPropertyNoUnknown (actual, options) {
257
252
  }
258
253
 
259
254
  const ruleName$2 = namespace('font-weight-no-ignored-values');
260
- const messages$2 = stylelint__default["default"].utils.ruleMessages(ruleName$2, {
255
+ const messages$2 = stylelint.utils.ruleMessages(ruleName$2, {
261
256
  rejected: (weight) => `Unexpected font-weight "${weight}"`
262
257
  });
263
258
  const acceptedWeights = ['400', '700', 'normal', 'bold'];
264
259
  function fontWeightNoIgnoredValues (actual) {
265
260
  return function (root, result) {
266
- const validOptions = stylelint__default["default"].utils.validateOptions(result, ruleName$2, {
261
+ const validOptions = stylelint.utils.validateOptions(result, ruleName$2, {
267
262
  actual
268
263
  });
269
264
  if (!validOptions) {
@@ -274,8 +269,8 @@ function fontWeightNoIgnoredValues (actual) {
274
269
  return;
275
270
  }
276
271
  const weightValueOffset = decl.value.indexOf(decl.value);
277
- const index = declarationValueIndex__default["default"](decl) + weightValueOffset;
278
- stylelint__default["default"].utils.report({
272
+ const index = declarationValueIndex(decl) + weightValueOffset;
273
+ stylelint.utils.report({
279
274
  message: messages$2.rejected(decl.value),
280
275
  node: decl,
281
276
  result,
@@ -287,14 +282,14 @@ function fontWeightNoIgnoredValues (actual) {
287
282
  }
288
283
 
289
284
  const ruleName$1 = namespace('line-height-no-value-without-unit');
290
- const messages$1 = stylelint__default["default"].utils.ruleMessages(ruleName$1, {
285
+ const messages$1 = stylelint.utils.ruleMessages(ruleName$1, {
291
286
  rejected: (height) => `Unexpected line-height "${height}", expect a value with units`
292
287
  });
293
288
  const lengthRe = /^(0$|(?:[+-]?(?:\d*\.)?\d+(?:[Ee][+-]?\d+)?)(?=px|PX|rem$))/;
294
289
  const viewportUnitRe = /^([+-]?[0-9.]+)(vh|vw|vmin|vmax)$/;
295
290
  function lineHeightNoValueWithoutUnit (actual) {
296
291
  return function (root, result) {
297
- const validOptions = stylelint__default["default"].utils.validateOptions(result, ruleName$1, {
292
+ const validOptions = stylelint.utils.validateOptions(result, ruleName$1, {
298
293
  actual
299
294
  });
300
295
  if (!validOptions) {
@@ -305,8 +300,8 @@ function lineHeightNoValueWithoutUnit (actual) {
305
300
  return;
306
301
  }
307
302
  const valueOffset = decl.value.indexOf(decl.value);
308
- const index = declarationValueIndex__default["default"](decl) + valueOffset;
309
- stylelint__default["default"].utils.report({
303
+ const index = declarationValueIndex(decl) + valueOffset;
304
+ stylelint.utils.report({
310
305
  message: messages$1.rejected(decl.value),
311
306
  node: decl,
312
307
  result,
@@ -318,13 +313,13 @@ function lineHeightNoValueWithoutUnit (actual) {
318
313
  }
319
314
 
320
315
  const ruleName = namespace('style-property-no-unknown');
321
- const messages = stylelint__default["default"].utils.ruleMessages(ruleName, {
316
+ const messages = stylelint.utils.ruleMessages(ruleName, {
322
317
  rejected: (property) => `无效的 React Native 样式属性 "${property}"`
323
318
  });
324
319
  const props = reactNativeKnownStylingProperties.allProps.map(kebabCase);
325
320
  function stylePropertyNoUnknown (actual, options) {
326
321
  return function (root, result) {
327
- const validOptions = stylelint__default["default"].utils.validateOptions(result, ruleName, {
322
+ const validOptions = stylelint.utils.validateOptions(result, ruleName, {
328
323
  actual
329
324
  }, {
330
325
  actual: options,
@@ -353,7 +348,7 @@ function stylePropertyNoUnknown (actual, options) {
353
348
  if (props.indexOf(prop.toLowerCase()) !== -1) {
354
349
  return;
355
350
  }
356
- stylelint__default["default"].utils.report({
351
+ stylelint.utils.report({
357
352
  message: messages.rejected(prop),
358
353
  node: decl,
359
354
  result,
@@ -371,8 +366,8 @@ var rules = {
371
366
  };
372
367
 
373
368
  const rulesPlugins = Object.keys(rules).map((ruleName) => {
374
- return stylelint__default["default"].createPlugin(namespace(ruleName), rules[ruleName]);
369
+ return stylelint.createPlugin(namespace(ruleName), rules[ruleName]);
375
370
  });
376
371
 
377
- exports["default"] = rulesPlugins;
372
+ exports.default = rulesPlugins;
378
373
  //# sourceMappingURL=index.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs.js","sources":["../src/utils/endsWith.js","../src/utils/hasLessInterpolation.js","../src/utils/hasPsvInterpolation.js","../src/utils/hasScssInterpolation.js","../src/utils/hasInterpolation.js","../src/utils/isCustomProperty.js","../src/utils/isExportBlock.js","../src/utils/isStandardSyntaxDeclaration.js","../src/utils/isStandardSyntaxProperty.js","../src/utils/isString.js","../src/utils/kebabCase.js","../src/utils/namespace.js","../src/utils/matchesStringOrRegExp.js","../src/utils/optionsMatches.js","../src/rules/css-property-no-unknown/index.js","../src/rules/font-weight-no-ignored-values/index.js","../src/rules/line-height-no-value-without-unit/index.js","../src/rules/style-property-no-unknown/index.js","../src/rules/index.js","../src/index.js"],"sourcesContent":["export const endsWith = (str, suffix) =>\n str.indexOf(suffix, str.length - suffix.length) !== -1\n","/**\n * Check whether a string has less interpolation\n *\n * @param {string} string\n * @return {boolean} If `true`, a string has less interpolation\n */\nexport function hasLessInterpolation (string /*: string */) /*: boolean */ {\n if (/@{.+?}/.test(string)) {\n return true\n }\n\n return false\n}\n","/**\n * Check whether a string has postcss-simple-vars interpolation\n */\nexport function hasPsvInterpolation (string /*: string */) /*: boolean */ {\n if (/\\$\\(.+?\\)/.test(string)) {\n return true\n }\n\n return false\n}\n","/**\n * Check whether a string has scss interpolation\n */\nexport function hasScssInterpolation (string /*: string */) /*: boolean */ {\n if (/#{.+?}/.test(string)) {\n return true\n }\n\n return false\n}\n","import { hasLessInterpolation } from './hasLessInterpolation.js'\nimport { hasPsvInterpolation } from './hasPsvInterpolation.js'\nimport { hasScssInterpolation } from './hasScssInterpolation.js'\n\n/**\n * Check whether a string has interpolation\n *\n * @param {string} string\n * @return {boolean} If `true`, a string has interpolation\n */\nexport function hasInterpolation (string /*: string */) /*: boolean */ {\n // SCSS or Less interpolation\n if (\n hasLessInterpolation(string) ||\n hasScssInterpolation(string) ||\n hasPsvInterpolation(string)\n ) {\n return true\n }\n\n return false\n}\n","/**\n * Check whether a property is a custom one\n */\nexport function isCustomProperty (property /*: string */) /*: boolean */ {\n return property.slice(0, 2) === '--'\n}\n","/**\n * Check whether a node is an :export block\n */\nexport function isExportBlock (node /*: Object */) /*: boolean */ {\n if (node.type === 'rule' && node.selector && node.selector === ':export') {\n return true\n }\n\n return false\n}\n","/**\n * Check whether a declaration is standard\n */\nexport function isStandardSyntaxDeclaration (decl /*: Object */) /*: boolean */ {\n const prop = decl.prop\n const parent = decl.parent\n\n // Declarations belong in a declaration block\n\n if (parent.type === 'root') {\n return false\n }\n\n // Sass var (e.g. $var: x), nested list (e.g. $list: (x)) or nested map (e.g. $map: (key:value))\n if (prop[0] === '$') {\n return false\n }\n\n // Less var (e.g. @var: x), but exclude variable interpolation (e.g. @{var})\n if (prop[0] === '@' && prop[1] !== '{') {\n return false\n }\n\n // Sass nested properties (e.g. border: { style: solid; color: red; })\n if (\n parent.selector &&\n parent.selector[parent.selector.length - 1] === ':' &&\n parent.selector.substring(0, 2) !== '--'\n ) {\n return false\n }\n\n return true\n}\n","import { endsWith } from './endsWith.js'\nimport { hasInterpolation } from './hasInterpolation.js'\n\n/**\n * Check whether a property is standard\n */\nexport function isStandardSyntaxProperty (\n property /*: string */\n) /*: boolean */ {\n // SCSS var (e.g. $var: x), list (e.g. $list: (x)) or map (e.g. $map: (key:value))\n if (property[0] === '$') {\n return false\n }\n\n // Less var (e.g. @var: x)\n if (property[0] === '@') {\n return false\n }\n\n // Less append property value with space (e.g. transform+_: scale(2))\n if (endsWith(property, '+') || endsWith(property, '+_')) {\n return false\n }\n\n // SCSS or Less interpolation\n if (hasInterpolation(property)) {\n return false\n }\n\n return true\n}\n","export const isString = string => typeof string === 'string'\n","export const kebabCase = string =>\n string.replace(/([a-z])([A-Z])/g, '$1-$2').toLowerCase()\n","const prefix = 'taro-rn'\n\nexport function namespace (ruleName) {\n return `${prefix}/${ruleName}`\n}\n","/**\n * Compares a string to a second value that, if it fits a certain convention,\n * is converted to a regular expression before the comparison.\n * If it doesn't fit the convention, then two strings are compared.\n *\n * Any strings starting and ending with `/` are interpreted\n * as regular expressions.\n */\nexport function matchesStringOrRegExp (\n input /*: string | Array<string> */,\n comparison /*: string | Array<string> */\n) /*: false | { match: string, pattern: string } */ {\n if (!Array.isArray(input)) {\n return testAgainstStringOrRegExpOrArray(input, comparison)\n }\n\n for (const inputItem of input) {\n const testResult = testAgainstStringOrRegExpOrArray(inputItem, comparison)\n if (testResult) {\n return testResult\n }\n }\n\n return false\n}\n\nfunction testAgainstStringOrRegExpOrArray (value, comparison) {\n if (!Array.isArray(comparison)) {\n return testAgainstStringOrRegExp(value, comparison)\n }\n\n for (const comparisonItem of comparison) {\n const testResult = testAgainstStringOrRegExp(value, comparisonItem)\n if (testResult) {\n return testResult\n }\n }\n return false\n}\n\nfunction testAgainstStringOrRegExp (value, comparison) {\n // If it's a RegExp, test directly\n if (comparison instanceof RegExp) {\n return comparison.test(value)\n ? { match: value, pattern: comparison }\n : false\n }\n\n // Check if it's RegExp in a string\n const firstComparisonChar = comparison[0]\n const lastComparisonChar = comparison[comparison.length - 1]\n const secondToLastComparisonChar = comparison[comparison.length - 2]\n\n const comparisonIsRegex =\n firstComparisonChar === '/' &&\n (lastComparisonChar === '/' ||\n (secondToLastComparisonChar === '/' && lastComparisonChar === 'i'))\n\n const hasCaseInsensitiveFlag =\n comparisonIsRegex && lastComparisonChar === 'i'\n\n // If so, create a new RegExp from it\n if (comparisonIsRegex) {\n const valueMatches = hasCaseInsensitiveFlag\n ? new RegExp(comparison.slice(1, -2), 'i').test(value)\n : new RegExp(comparison.slice(1, -1)).test(value)\n return valueMatches ? { match: value, pattern: comparison } : false\n }\n\n // Otherwise, it's a string. Do a strict comparison\n return value === comparison ? { match: value, pattern: comparison } : false\n}\n","import { matchesStringOrRegExp } from './matchesStringOrRegExp.js'\n\n/**\n * Check if an options object's propertyName contains a user-defined string or\n * regex that matches the passed in input.\n */\nexport function optionsMatches (\n options /*: Object */,\n propertyName /*: string */,\n input /*: string */\n) /*: boolean */ {\n return !!(\n options &&\n options[propertyName] &&\n typeof input === 'string' &&\n matchesStringOrRegExp(input, options[propertyName])\n )\n}\n","import { allCSS2RNProps } from 'react-native-known-styling-properties'\nimport stylelint from 'stylelint'\n\nimport {\n isCustomProperty,\n isExportBlock,\n isStandardSyntaxDeclaration,\n isStandardSyntaxProperty,\n isString,\n kebabCase,\n namespace,\n optionsMatches\n} from '../../utils/index.js'\n\nexport const ruleName = namespace('css-property-no-unknown')\n\nexport const messages = stylelint.utils.ruleMessages(ruleName, {\n rejected: (property) => `无效的 React Native 样式属性 \"${property}\"`\n})\n\nconst props = allCSS2RNProps.map(kebabCase)\n\nexport default function (actual, options) {\n return function (root, result) {\n const validOptions = stylelint.utils.validateOptions(\n result,\n ruleName,\n {\n actual\n },\n {\n actual: options,\n possible: {\n ignoreProperties: [isString]\n },\n optional: true\n }\n )\n\n if (!validOptions) {\n return\n }\n\n root.walkDecls((decl) => {\n const prop = decl.prop\n\n if (!isStandardSyntaxProperty(prop)) {\n return\n }\n\n if (!isStandardSyntaxDeclaration(decl)) {\n return\n }\n\n if (isCustomProperty(prop)) {\n return\n }\n\n if (isExportBlock(decl.parent)) {\n return\n }\n\n if (optionsMatches(options, 'ignoreProperties', prop)) {\n return\n }\n\n if (props.indexOf(prop.toLowerCase()) !== -1) {\n return\n }\n\n stylelint.utils.report({\n message: messages.rejected(prop),\n node: decl,\n result,\n ruleName\n })\n })\n }\n}\n","import stylelint from 'stylelint'\nimport declarationValueIndex from 'stylelint/lib/utils/declarationValueIndex.cjs'\n\nimport { namespace } from '../../utils/index.js'\n\nexport const ruleName = namespace('font-weight-no-ignored-values')\n\nexport const messages = stylelint.utils.ruleMessages(ruleName, {\n rejected: (weight) => `Unexpected font-weight \"${weight}\"`\n})\n\nconst acceptedWeights = ['400', '700', 'normal', 'bold']\n\nexport default function (actual) {\n return function (root, result) {\n const validOptions = stylelint.utils.validateOptions(result, ruleName, {\n actual\n })\n\n if (!validOptions) {\n return\n }\n\n root.walkDecls(/^font-weight$/i, (decl) => {\n if (acceptedWeights.indexOf(decl.value) > -1) {\n return\n }\n\n const weightValueOffset = decl.value.indexOf(decl.value)\n const index = declarationValueIndex(decl) + weightValueOffset\n\n stylelint.utils.report({\n message: messages.rejected(decl.value),\n node: decl,\n result,\n ruleName,\n index\n })\n })\n }\n}\n","import stylelint from 'stylelint'\nimport declarationValueIndex from 'stylelint/lib/utils/declarationValueIndex.cjs'\n\nimport { namespace } from '../../utils/index.js'\n\nexport const ruleName = namespace('line-height-no-value-without-unit')\n\nexport const messages = stylelint.utils.ruleMessages(ruleName, {\n rejected: (height) =>\n `Unexpected line-height \"${height}\", expect a value with units`\n})\n\nconst lengthRe = /^(0$|(?:[+-]?(?:\\d*\\.)?\\d+(?:[Ee][+-]?\\d+)?)(?=px|PX|rem$))/\nconst viewportUnitRe = /^([+-]?[0-9.]+)(vh|vw|vmin|vmax)$/\n\nexport default function (actual) {\n return function (root, result) {\n const validOptions = stylelint.utils.validateOptions(result, ruleName, {\n actual\n })\n\n if (!validOptions) {\n return\n }\n\n root.walkDecls(/^line-height$/i, (decl) => {\n if (lengthRe.test(decl.value) || viewportUnitRe.test(decl.value)) {\n return\n }\n\n const valueOffset = decl.value.indexOf(decl.value)\n const index = declarationValueIndex(decl) + valueOffset\n\n stylelint.utils.report({\n message: messages.rejected(decl.value),\n node: decl,\n result,\n ruleName,\n index\n })\n })\n }\n}\n","import { allProps } from 'react-native-known-styling-properties'\nimport stylelint from 'stylelint'\n\nimport {\n isCustomProperty,\n isStandardSyntaxDeclaration,\n isStandardSyntaxProperty,\n isString,\n kebabCase,\n namespace,\n optionsMatches\n} from '../../utils/index.js'\n\nexport const ruleName = namespace('style-property-no-unknown')\n\nexport const messages = stylelint.utils.ruleMessages(ruleName, {\n rejected: (property) => `无效的 React Native 样式属性 \"${property}\"`\n})\n\nconst props = allProps.map(kebabCase)\n\nexport default function (actual, options) {\n return function (root, result) {\n const validOptions = stylelint.utils.validateOptions(\n result,\n ruleName,\n {\n actual\n },\n {\n actual: options,\n possible: {\n ignoreProperties: [isString]\n },\n optional: true\n }\n )\n\n if (!validOptions) {\n return\n }\n\n root.walkDecls((decl) => {\n const prop = decl.prop\n\n if (!isStandardSyntaxProperty(prop)) {\n return\n }\n\n if (!isStandardSyntaxDeclaration(decl)) {\n return\n }\n\n if (isCustomProperty(prop)) {\n return\n }\n\n if (optionsMatches(options, 'ignoreProperties', prop)) {\n return\n }\n\n if (props.indexOf(prop.toLowerCase()) !== -1) {\n return\n }\n\n stylelint.utils.report({\n message: messages.rejected(prop),\n node: decl,\n result,\n ruleName\n })\n })\n }\n}\n","import cssPropertyNoUnknown from './css-property-no-unknown/index.js'\nimport fontWeightNoIgnoredValues from './font-weight-no-ignored-values/index.js'\nimport lineHeightNoValueWithoutUnit from './line-height-no-value-without-unit/index.js'\nimport stylePropertyNoUnknown from './style-property-no-unknown/index.js'\n\nexport default {\n 'font-weight-no-ignored-values': fontWeightNoIgnoredValues,\n 'css-property-no-unknown': cssPropertyNoUnknown,\n 'style-property-no-unknown': stylePropertyNoUnknown,\n 'line-height-no-value-without-unit': lineHeightNoValueWithoutUnit\n}\n","import stylelint from 'stylelint'\n\nimport rules from './rules/index.js'\nimport { namespace } from './utils/index.js'\n\nconst rulesPlugins = Object.keys(rules).map((ruleName) => {\n return stylelint.createPlugin(namespace(ruleName), rules[ruleName])\n})\n\nexport default rulesPlugins\n"],"names":["ruleName","messages","stylelint","props","allCSS2RNProps","declarationValueIndex","allProps"],"mappings":"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"}
1
+ {"version":3,"file":"index.cjs.js","sources":["../../src/utils/endsWith.js","../../src/utils/hasLessInterpolation.js","../../src/utils/hasPsvInterpolation.js","../../src/utils/hasScssInterpolation.js","../../src/utils/hasInterpolation.js","../../src/utils/isCustomProperty.js","../../src/utils/isExportBlock.js","../../src/utils/isStandardSyntaxDeclaration.js","../../src/utils/isStandardSyntaxProperty.js","../../src/utils/isString.js","../../src/utils/kebabCase.js","../../src/utils/namespace.js","../../src/utils/matchesStringOrRegExp.js","../../src/utils/optionsMatches.js","../../src/rules/css-property-no-unknown/index.js","../../src/rules/font-weight-no-ignored-values/index.js","../../src/rules/line-height-no-value-without-unit/index.js","../../src/rules/style-property-no-unknown/index.js","../../src/rules/index.js","../../src/index.js"],"sourcesContent":["export const endsWith = (str, suffix) =>\n str.indexOf(suffix, str.length - suffix.length) !== -1\n","/**\n * Check whether a string has less interpolation\n *\n * @param {string} string\n * @return {boolean} If `true`, a string has less interpolation\n */\nexport function hasLessInterpolation (string /*: string */) /*: boolean */ {\n if (/@{.+?}/.test(string)) {\n return true\n }\n\n return false\n}\n","/**\n * Check whether a string has postcss-simple-vars interpolation\n */\nexport function hasPsvInterpolation (string /*: string */) /*: boolean */ {\n if (/\\$\\(.+?\\)/.test(string)) {\n return true\n }\n\n return false\n}\n","/**\n * Check whether a string has scss interpolation\n */\nexport function hasScssInterpolation (string /*: string */) /*: boolean */ {\n if (/#{.+?}/.test(string)) {\n return true\n }\n\n return false\n}\n","import { hasLessInterpolation } from './hasLessInterpolation.js'\nimport { hasPsvInterpolation } from './hasPsvInterpolation.js'\nimport { hasScssInterpolation } from './hasScssInterpolation.js'\n\n/**\n * Check whether a string has interpolation\n *\n * @param {string} string\n * @return {boolean} If `true`, a string has interpolation\n */\nexport function hasInterpolation (string /*: string */) /*: boolean */ {\n // SCSS or Less interpolation\n if (\n hasLessInterpolation(string) ||\n hasScssInterpolation(string) ||\n hasPsvInterpolation(string)\n ) {\n return true\n }\n\n return false\n}\n","/**\n * Check whether a property is a custom one\n */\nexport function isCustomProperty (property /*: string */) /*: boolean */ {\n return property.slice(0, 2) === '--'\n}\n","/**\n * Check whether a node is an :export block\n */\nexport function isExportBlock (node /*: Object */) /*: boolean */ {\n if (node.type === 'rule' && node.selector && node.selector === ':export') {\n return true\n }\n\n return false\n}\n","/**\n * Check whether a declaration is standard\n */\nexport function isStandardSyntaxDeclaration (decl /*: Object */) /*: boolean */ {\n const prop = decl.prop\n const parent = decl.parent\n\n // Declarations belong in a declaration block\n\n if (parent.type === 'root') {\n return false\n }\n\n // Sass var (e.g. $var: x), nested list (e.g. $list: (x)) or nested map (e.g. $map: (key:value))\n if (prop[0] === '$') {\n return false\n }\n\n // Less var (e.g. @var: x), but exclude variable interpolation (e.g. @{var})\n if (prop[0] === '@' && prop[1] !== '{') {\n return false\n }\n\n // Sass nested properties (e.g. border: { style: solid; color: red; })\n if (\n parent.selector &&\n parent.selector[parent.selector.length - 1] === ':' &&\n parent.selector.substring(0, 2) !== '--'\n ) {\n return false\n }\n\n return true\n}\n","import { endsWith } from './endsWith.js'\nimport { hasInterpolation } from './hasInterpolation.js'\n\n/**\n * Check whether a property is standard\n */\nexport function isStandardSyntaxProperty (\n property /*: string */\n) /*: boolean */ {\n // SCSS var (e.g. $var: x), list (e.g. $list: (x)) or map (e.g. $map: (key:value))\n if (property[0] === '$') {\n return false\n }\n\n // Less var (e.g. @var: x)\n if (property[0] === '@') {\n return false\n }\n\n // Less append property value with space (e.g. transform+_: scale(2))\n if (endsWith(property, '+') || endsWith(property, '+_')) {\n return false\n }\n\n // SCSS or Less interpolation\n if (hasInterpolation(property)) {\n return false\n }\n\n return true\n}\n","export const isString = string => typeof string === 'string'\n","export const kebabCase = string =>\n string.replace(/([a-z])([A-Z])/g, '$1-$2').toLowerCase()\n","const prefix = 'taro-rn'\n\nexport function namespace (ruleName) {\n return `${prefix}/${ruleName}`\n}\n","/**\n * Compares a string to a second value that, if it fits a certain convention,\n * is converted to a regular expression before the comparison.\n * If it doesn't fit the convention, then two strings are compared.\n *\n * Any strings starting and ending with `/` are interpreted\n * as regular expressions.\n */\nexport function matchesStringOrRegExp (\n input /*: string | Array<string> */,\n comparison /*: string | Array<string> */\n) /*: false | { match: string, pattern: string } */ {\n if (!Array.isArray(input)) {\n return testAgainstStringOrRegExpOrArray(input, comparison)\n }\n\n for (const inputItem of input) {\n const testResult = testAgainstStringOrRegExpOrArray(inputItem, comparison)\n if (testResult) {\n return testResult\n }\n }\n\n return false\n}\n\nfunction testAgainstStringOrRegExpOrArray (value, comparison) {\n if (!Array.isArray(comparison)) {\n return testAgainstStringOrRegExp(value, comparison)\n }\n\n for (const comparisonItem of comparison) {\n const testResult = testAgainstStringOrRegExp(value, comparisonItem)\n if (testResult) {\n return testResult\n }\n }\n return false\n}\n\nfunction testAgainstStringOrRegExp (value, comparison) {\n // If it's a RegExp, test directly\n if (comparison instanceof RegExp) {\n return comparison.test(value)\n ? { match: value, pattern: comparison }\n : false\n }\n\n // Check if it's RegExp in a string\n const firstComparisonChar = comparison[0]\n const lastComparisonChar = comparison[comparison.length - 1]\n const secondToLastComparisonChar = comparison[comparison.length - 2]\n\n const comparisonIsRegex =\n firstComparisonChar === '/' &&\n (lastComparisonChar === '/' ||\n (secondToLastComparisonChar === '/' && lastComparisonChar === 'i'))\n\n const hasCaseInsensitiveFlag =\n comparisonIsRegex && lastComparisonChar === 'i'\n\n // If so, create a new RegExp from it\n if (comparisonIsRegex) {\n const valueMatches = hasCaseInsensitiveFlag\n ? new RegExp(comparison.slice(1, -2), 'i').test(value)\n : new RegExp(comparison.slice(1, -1)).test(value)\n return valueMatches ? { match: value, pattern: comparison } : false\n }\n\n // Otherwise, it's a string. Do a strict comparison\n return value === comparison ? { match: value, pattern: comparison } : false\n}\n","import { matchesStringOrRegExp } from './matchesStringOrRegExp.js'\n\n/**\n * Check if an options object's propertyName contains a user-defined string or\n * regex that matches the passed in input.\n */\nexport function optionsMatches (\n options /*: Object */,\n propertyName /*: string */,\n input /*: string */\n) /*: boolean */ {\n return !!(\n options &&\n options[propertyName] &&\n typeof input === 'string' &&\n matchesStringOrRegExp(input, options[propertyName])\n )\n}\n","import { allCSS2RNProps } from 'react-native-known-styling-properties'\nimport stylelint from 'stylelint'\n\nimport {\n isCustomProperty,\n isExportBlock,\n isStandardSyntaxDeclaration,\n isStandardSyntaxProperty,\n isString,\n kebabCase,\n namespace,\n optionsMatches\n} from '../../utils/index.js'\n\nexport const ruleName = namespace('css-property-no-unknown')\n\nexport const messages = stylelint.utils.ruleMessages(ruleName, {\n rejected: (property) => `无效的 React Native 样式属性 \"${property}\"`\n})\n\nconst props = allCSS2RNProps.map(kebabCase)\n\nexport default function (actual, options) {\n return function (root, result) {\n const validOptions = stylelint.utils.validateOptions(\n result,\n ruleName,\n {\n actual\n },\n {\n actual: options,\n possible: {\n ignoreProperties: [isString]\n },\n optional: true\n }\n )\n\n if (!validOptions) {\n return\n }\n\n root.walkDecls((decl) => {\n const prop = decl.prop\n\n if (!isStandardSyntaxProperty(prop)) {\n return\n }\n\n if (!isStandardSyntaxDeclaration(decl)) {\n return\n }\n\n if (isCustomProperty(prop)) {\n return\n }\n\n if (isExportBlock(decl.parent)) {\n return\n }\n\n if (optionsMatches(options, 'ignoreProperties', prop)) {\n return\n }\n\n if (props.indexOf(prop.toLowerCase()) !== -1) {\n return\n }\n\n stylelint.utils.report({\n message: messages.rejected(prop),\n node: decl,\n result,\n ruleName\n })\n })\n }\n}\n","import stylelint from 'stylelint'\nimport declarationValueIndex from 'stylelint/lib/utils/declarationValueIndex.cjs'\n\nimport { namespace } from '../../utils/index.js'\n\nexport const ruleName = namespace('font-weight-no-ignored-values')\n\nexport const messages = stylelint.utils.ruleMessages(ruleName, {\n rejected: (weight) => `Unexpected font-weight \"${weight}\"`\n})\n\nconst acceptedWeights = ['400', '700', 'normal', 'bold']\n\nexport default function (actual) {\n return function (root, result) {\n const validOptions = stylelint.utils.validateOptions(result, ruleName, {\n actual\n })\n\n if (!validOptions) {\n return\n }\n\n root.walkDecls(/^font-weight$/i, (decl) => {\n if (acceptedWeights.indexOf(decl.value) > -1) {\n return\n }\n\n const weightValueOffset = decl.value.indexOf(decl.value)\n const index = declarationValueIndex(decl) + weightValueOffset\n\n stylelint.utils.report({\n message: messages.rejected(decl.value),\n node: decl,\n result,\n ruleName,\n index\n })\n })\n }\n}\n","import stylelint from 'stylelint'\nimport declarationValueIndex from 'stylelint/lib/utils/declarationValueIndex.cjs'\n\nimport { namespace } from '../../utils/index.js'\n\nexport const ruleName = namespace('line-height-no-value-without-unit')\n\nexport const messages = stylelint.utils.ruleMessages(ruleName, {\n rejected: (height) =>\n `Unexpected line-height \"${height}\", expect a value with units`\n})\n\nconst lengthRe = /^(0$|(?:[+-]?(?:\\d*\\.)?\\d+(?:[Ee][+-]?\\d+)?)(?=px|PX|rem$))/\nconst viewportUnitRe = /^([+-]?[0-9.]+)(vh|vw|vmin|vmax)$/\n\nexport default function (actual) {\n return function (root, result) {\n const validOptions = stylelint.utils.validateOptions(result, ruleName, {\n actual\n })\n\n if (!validOptions) {\n return\n }\n\n root.walkDecls(/^line-height$/i, (decl) => {\n if (lengthRe.test(decl.value) || viewportUnitRe.test(decl.value)) {\n return\n }\n\n const valueOffset = decl.value.indexOf(decl.value)\n const index = declarationValueIndex(decl) + valueOffset\n\n stylelint.utils.report({\n message: messages.rejected(decl.value),\n node: decl,\n result,\n ruleName,\n index\n })\n })\n }\n}\n","import { allProps } from 'react-native-known-styling-properties'\nimport stylelint from 'stylelint'\n\nimport {\n isCustomProperty,\n isStandardSyntaxDeclaration,\n isStandardSyntaxProperty,\n isString,\n kebabCase,\n namespace,\n optionsMatches\n} from '../../utils/index.js'\n\nexport const ruleName = namespace('style-property-no-unknown')\n\nexport const messages = stylelint.utils.ruleMessages(ruleName, {\n rejected: (property) => `无效的 React Native 样式属性 \"${property}\"`\n})\n\nconst props = allProps.map(kebabCase)\n\nexport default function (actual, options) {\n return function (root, result) {\n const validOptions = stylelint.utils.validateOptions(\n result,\n ruleName,\n {\n actual\n },\n {\n actual: options,\n possible: {\n ignoreProperties: [isString]\n },\n optional: true\n }\n )\n\n if (!validOptions) {\n return\n }\n\n root.walkDecls((decl) => {\n const prop = decl.prop\n\n if (!isStandardSyntaxProperty(prop)) {\n return\n }\n\n if (!isStandardSyntaxDeclaration(decl)) {\n return\n }\n\n if (isCustomProperty(prop)) {\n return\n }\n\n if (optionsMatches(options, 'ignoreProperties', prop)) {\n return\n }\n\n if (props.indexOf(prop.toLowerCase()) !== -1) {\n return\n }\n\n stylelint.utils.report({\n message: messages.rejected(prop),\n node: decl,\n result,\n ruleName\n })\n })\n }\n}\n","import cssPropertyNoUnknown from './css-property-no-unknown/index.js'\nimport fontWeightNoIgnoredValues from './font-weight-no-ignored-values/index.js'\nimport lineHeightNoValueWithoutUnit from './line-height-no-value-without-unit/index.js'\nimport stylePropertyNoUnknown from './style-property-no-unknown/index.js'\n\nexport default {\n 'font-weight-no-ignored-values': fontWeightNoIgnoredValues,\n 'css-property-no-unknown': cssPropertyNoUnknown,\n 'style-property-no-unknown': stylePropertyNoUnknown,\n 'line-height-no-value-without-unit': lineHeightNoValueWithoutUnit\n}\n","import stylelint from 'stylelint'\n\nimport rules from './rules/index.js'\nimport { namespace } from './utils/index.js'\n\nconst rulesPlugins = Object.keys(rules).map((ruleName) => {\n return stylelint.createPlugin(namespace(ruleName), rules[ruleName])\n})\n\nexport default rulesPlugins\n"],"names":["ruleName","messages","props","allCSS2RNProps","allProps"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.esm.js","sources":["../src/utils/endsWith.js","../src/utils/hasLessInterpolation.js","../src/utils/hasPsvInterpolation.js","../src/utils/hasScssInterpolation.js","../src/utils/hasInterpolation.js","../src/utils/isCustomProperty.js","../src/utils/isExportBlock.js","../src/utils/isStandardSyntaxDeclaration.js","../src/utils/isStandardSyntaxProperty.js","../src/utils/isString.js","../src/utils/kebabCase.js","../src/utils/namespace.js","../src/utils/matchesStringOrRegExp.js","../src/utils/optionsMatches.js","../src/rules/css-property-no-unknown/index.js","../src/rules/font-weight-no-ignored-values/index.js","../src/rules/line-height-no-value-without-unit/index.js","../src/rules/style-property-no-unknown/index.js","../src/rules/index.js","../src/index.js"],"sourcesContent":["export const endsWith = (str, suffix) =>\n str.indexOf(suffix, str.length - suffix.length) !== -1\n","/**\n * Check whether a string has less interpolation\n *\n * @param {string} string\n * @return {boolean} If `true`, a string has less interpolation\n */\nexport function hasLessInterpolation (string /*: string */) /*: boolean */ {\n if (/@{.+?}/.test(string)) {\n return true\n }\n\n return false\n}\n","/**\n * Check whether a string has postcss-simple-vars interpolation\n */\nexport function hasPsvInterpolation (string /*: string */) /*: boolean */ {\n if (/\\$\\(.+?\\)/.test(string)) {\n return true\n }\n\n return false\n}\n","/**\n * Check whether a string has scss interpolation\n */\nexport function hasScssInterpolation (string /*: string */) /*: boolean */ {\n if (/#{.+?}/.test(string)) {\n return true\n }\n\n return false\n}\n","import { hasLessInterpolation } from './hasLessInterpolation.js'\nimport { hasPsvInterpolation } from './hasPsvInterpolation.js'\nimport { hasScssInterpolation } from './hasScssInterpolation.js'\n\n/**\n * Check whether a string has interpolation\n *\n * @param {string} string\n * @return {boolean} If `true`, a string has interpolation\n */\nexport function hasInterpolation (string /*: string */) /*: boolean */ {\n // SCSS or Less interpolation\n if (\n hasLessInterpolation(string) ||\n hasScssInterpolation(string) ||\n hasPsvInterpolation(string)\n ) {\n return true\n }\n\n return false\n}\n","/**\n * Check whether a property is a custom one\n */\nexport function isCustomProperty (property /*: string */) /*: boolean */ {\n return property.slice(0, 2) === '--'\n}\n","/**\n * Check whether a node is an :export block\n */\nexport function isExportBlock (node /*: Object */) /*: boolean */ {\n if (node.type === 'rule' && node.selector && node.selector === ':export') {\n return true\n }\n\n return false\n}\n","/**\n * Check whether a declaration is standard\n */\nexport function isStandardSyntaxDeclaration (decl /*: Object */) /*: boolean */ {\n const prop = decl.prop\n const parent = decl.parent\n\n // Declarations belong in a declaration block\n\n if (parent.type === 'root') {\n return false\n }\n\n // Sass var (e.g. $var: x), nested list (e.g. $list: (x)) or nested map (e.g. $map: (key:value))\n if (prop[0] === '$') {\n return false\n }\n\n // Less var (e.g. @var: x), but exclude variable interpolation (e.g. @{var})\n if (prop[0] === '@' && prop[1] !== '{') {\n return false\n }\n\n // Sass nested properties (e.g. border: { style: solid; color: red; })\n if (\n parent.selector &&\n parent.selector[parent.selector.length - 1] === ':' &&\n parent.selector.substring(0, 2) !== '--'\n ) {\n return false\n }\n\n return true\n}\n","import { endsWith } from './endsWith.js'\nimport { hasInterpolation } from './hasInterpolation.js'\n\n/**\n * Check whether a property is standard\n */\nexport function isStandardSyntaxProperty (\n property /*: string */\n) /*: boolean */ {\n // SCSS var (e.g. $var: x), list (e.g. $list: (x)) or map (e.g. $map: (key:value))\n if (property[0] === '$') {\n return false\n }\n\n // Less var (e.g. @var: x)\n if (property[0] === '@') {\n return false\n }\n\n // Less append property value with space (e.g. transform+_: scale(2))\n if (endsWith(property, '+') || endsWith(property, '+_')) {\n return false\n }\n\n // SCSS or Less interpolation\n if (hasInterpolation(property)) {\n return false\n }\n\n return true\n}\n","export const isString = string => typeof string === 'string'\n","export const kebabCase = string =>\n string.replace(/([a-z])([A-Z])/g, '$1-$2').toLowerCase()\n","const prefix = 'taro-rn'\n\nexport function namespace (ruleName) {\n return `${prefix}/${ruleName}`\n}\n","/**\n * Compares a string to a second value that, if it fits a certain convention,\n * is converted to a regular expression before the comparison.\n * If it doesn't fit the convention, then two strings are compared.\n *\n * Any strings starting and ending with `/` are interpreted\n * as regular expressions.\n */\nexport function matchesStringOrRegExp (\n input /*: string | Array<string> */,\n comparison /*: string | Array<string> */\n) /*: false | { match: string, pattern: string } */ {\n if (!Array.isArray(input)) {\n return testAgainstStringOrRegExpOrArray(input, comparison)\n }\n\n for (const inputItem of input) {\n const testResult = testAgainstStringOrRegExpOrArray(inputItem, comparison)\n if (testResult) {\n return testResult\n }\n }\n\n return false\n}\n\nfunction testAgainstStringOrRegExpOrArray (value, comparison) {\n if (!Array.isArray(comparison)) {\n return testAgainstStringOrRegExp(value, comparison)\n }\n\n for (const comparisonItem of comparison) {\n const testResult = testAgainstStringOrRegExp(value, comparisonItem)\n if (testResult) {\n return testResult\n }\n }\n return false\n}\n\nfunction testAgainstStringOrRegExp (value, comparison) {\n // If it's a RegExp, test directly\n if (comparison instanceof RegExp) {\n return comparison.test(value)\n ? { match: value, pattern: comparison }\n : false\n }\n\n // Check if it's RegExp in a string\n const firstComparisonChar = comparison[0]\n const lastComparisonChar = comparison[comparison.length - 1]\n const secondToLastComparisonChar = comparison[comparison.length - 2]\n\n const comparisonIsRegex =\n firstComparisonChar === '/' &&\n (lastComparisonChar === '/' ||\n (secondToLastComparisonChar === '/' && lastComparisonChar === 'i'))\n\n const hasCaseInsensitiveFlag =\n comparisonIsRegex && lastComparisonChar === 'i'\n\n // If so, create a new RegExp from it\n if (comparisonIsRegex) {\n const valueMatches = hasCaseInsensitiveFlag\n ? new RegExp(comparison.slice(1, -2), 'i').test(value)\n : new RegExp(comparison.slice(1, -1)).test(value)\n return valueMatches ? { match: value, pattern: comparison } : false\n }\n\n // Otherwise, it's a string. Do a strict comparison\n return value === comparison ? { match: value, pattern: comparison } : false\n}\n","import { matchesStringOrRegExp } from './matchesStringOrRegExp.js'\n\n/**\n * Check if an options object's propertyName contains a user-defined string or\n * regex that matches the passed in input.\n */\nexport function optionsMatches (\n options /*: Object */,\n propertyName /*: string */,\n input /*: string */\n) /*: boolean */ {\n return !!(\n options &&\n options[propertyName] &&\n typeof input === 'string' &&\n matchesStringOrRegExp(input, options[propertyName])\n )\n}\n","import { allCSS2RNProps } from 'react-native-known-styling-properties'\nimport stylelint from 'stylelint'\n\nimport {\n isCustomProperty,\n isExportBlock,\n isStandardSyntaxDeclaration,\n isStandardSyntaxProperty,\n isString,\n kebabCase,\n namespace,\n optionsMatches\n} from '../../utils/index.js'\n\nexport const ruleName = namespace('css-property-no-unknown')\n\nexport const messages = stylelint.utils.ruleMessages(ruleName, {\n rejected: (property) => `无效的 React Native 样式属性 \"${property}\"`\n})\n\nconst props = allCSS2RNProps.map(kebabCase)\n\nexport default function (actual, options) {\n return function (root, result) {\n const validOptions = stylelint.utils.validateOptions(\n result,\n ruleName,\n {\n actual\n },\n {\n actual: options,\n possible: {\n ignoreProperties: [isString]\n },\n optional: true\n }\n )\n\n if (!validOptions) {\n return\n }\n\n root.walkDecls((decl) => {\n const prop = decl.prop\n\n if (!isStandardSyntaxProperty(prop)) {\n return\n }\n\n if (!isStandardSyntaxDeclaration(decl)) {\n return\n }\n\n if (isCustomProperty(prop)) {\n return\n }\n\n if (isExportBlock(decl.parent)) {\n return\n }\n\n if (optionsMatches(options, 'ignoreProperties', prop)) {\n return\n }\n\n if (props.indexOf(prop.toLowerCase()) !== -1) {\n return\n }\n\n stylelint.utils.report({\n message: messages.rejected(prop),\n node: decl,\n result,\n ruleName\n })\n })\n }\n}\n","import stylelint from 'stylelint'\nimport declarationValueIndex from 'stylelint/lib/utils/declarationValueIndex.cjs'\n\nimport { namespace } from '../../utils/index.js'\n\nexport const ruleName = namespace('font-weight-no-ignored-values')\n\nexport const messages = stylelint.utils.ruleMessages(ruleName, {\n rejected: (weight) => `Unexpected font-weight \"${weight}\"`\n})\n\nconst acceptedWeights = ['400', '700', 'normal', 'bold']\n\nexport default function (actual) {\n return function (root, result) {\n const validOptions = stylelint.utils.validateOptions(result, ruleName, {\n actual\n })\n\n if (!validOptions) {\n return\n }\n\n root.walkDecls(/^font-weight$/i, (decl) => {\n if (acceptedWeights.indexOf(decl.value) > -1) {\n return\n }\n\n const weightValueOffset = decl.value.indexOf(decl.value)\n const index = declarationValueIndex(decl) + weightValueOffset\n\n stylelint.utils.report({\n message: messages.rejected(decl.value),\n node: decl,\n result,\n ruleName,\n index\n })\n })\n }\n}\n","import stylelint from 'stylelint'\nimport declarationValueIndex from 'stylelint/lib/utils/declarationValueIndex.cjs'\n\nimport { namespace } from '../../utils/index.js'\n\nexport const ruleName = namespace('line-height-no-value-without-unit')\n\nexport const messages = stylelint.utils.ruleMessages(ruleName, {\n rejected: (height) =>\n `Unexpected line-height \"${height}\", expect a value with units`\n})\n\nconst lengthRe = /^(0$|(?:[+-]?(?:\\d*\\.)?\\d+(?:[Ee][+-]?\\d+)?)(?=px|PX|rem$))/\nconst viewportUnitRe = /^([+-]?[0-9.]+)(vh|vw|vmin|vmax)$/\n\nexport default function (actual) {\n return function (root, result) {\n const validOptions = stylelint.utils.validateOptions(result, ruleName, {\n actual\n })\n\n if (!validOptions) {\n return\n }\n\n root.walkDecls(/^line-height$/i, (decl) => {\n if (lengthRe.test(decl.value) || viewportUnitRe.test(decl.value)) {\n return\n }\n\n const valueOffset = decl.value.indexOf(decl.value)\n const index = declarationValueIndex(decl) + valueOffset\n\n stylelint.utils.report({\n message: messages.rejected(decl.value),\n node: decl,\n result,\n ruleName,\n index\n })\n })\n }\n}\n","import { allProps } from 'react-native-known-styling-properties'\nimport stylelint from 'stylelint'\n\nimport {\n isCustomProperty,\n isStandardSyntaxDeclaration,\n isStandardSyntaxProperty,\n isString,\n kebabCase,\n namespace,\n optionsMatches\n} from '../../utils/index.js'\n\nexport const ruleName = namespace('style-property-no-unknown')\n\nexport const messages = stylelint.utils.ruleMessages(ruleName, {\n rejected: (property) => `无效的 React Native 样式属性 \"${property}\"`\n})\n\nconst props = allProps.map(kebabCase)\n\nexport default function (actual, options) {\n return function (root, result) {\n const validOptions = stylelint.utils.validateOptions(\n result,\n ruleName,\n {\n actual\n },\n {\n actual: options,\n possible: {\n ignoreProperties: [isString]\n },\n optional: true\n }\n )\n\n if (!validOptions) {\n return\n }\n\n root.walkDecls((decl) => {\n const prop = decl.prop\n\n if (!isStandardSyntaxProperty(prop)) {\n return\n }\n\n if (!isStandardSyntaxDeclaration(decl)) {\n return\n }\n\n if (isCustomProperty(prop)) {\n return\n }\n\n if (optionsMatches(options, 'ignoreProperties', prop)) {\n return\n }\n\n if (props.indexOf(prop.toLowerCase()) !== -1) {\n return\n }\n\n stylelint.utils.report({\n message: messages.rejected(prop),\n node: decl,\n result,\n ruleName\n })\n })\n }\n}\n","import cssPropertyNoUnknown from './css-property-no-unknown/index.js'\nimport fontWeightNoIgnoredValues from './font-weight-no-ignored-values/index.js'\nimport lineHeightNoValueWithoutUnit from './line-height-no-value-without-unit/index.js'\nimport stylePropertyNoUnknown from './style-property-no-unknown/index.js'\n\nexport default {\n 'font-weight-no-ignored-values': fontWeightNoIgnoredValues,\n 'css-property-no-unknown': cssPropertyNoUnknown,\n 'style-property-no-unknown': stylePropertyNoUnknown,\n 'line-height-no-value-without-unit': lineHeightNoValueWithoutUnit\n}\n","import stylelint from 'stylelint'\n\nimport rules from './rules/index.js'\nimport { namespace } from './utils/index.js'\n\nconst rulesPlugins = Object.keys(rules).map((ruleName) => {\n return stylelint.createPlugin(namespace(ruleName), rules[ruleName])\n})\n\nexport default rulesPlugins\n"],"names":["ruleName","messages","props"],"mappings":"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"}
1
+ {"version":3,"file":"index.esm.js","sources":["../../src/utils/endsWith.js","../../src/utils/hasLessInterpolation.js","../../src/utils/hasPsvInterpolation.js","../../src/utils/hasScssInterpolation.js","../../src/utils/hasInterpolation.js","../../src/utils/isCustomProperty.js","../../src/utils/isExportBlock.js","../../src/utils/isStandardSyntaxDeclaration.js","../../src/utils/isStandardSyntaxProperty.js","../../src/utils/isString.js","../../src/utils/kebabCase.js","../../src/utils/namespace.js","../../src/utils/matchesStringOrRegExp.js","../../src/utils/optionsMatches.js","../../src/rules/css-property-no-unknown/index.js","../../src/rules/font-weight-no-ignored-values/index.js","../../src/rules/line-height-no-value-without-unit/index.js","../../src/rules/style-property-no-unknown/index.js","../../src/rules/index.js","../../src/index.js"],"sourcesContent":["export const endsWith = (str, suffix) =>\n str.indexOf(suffix, str.length - suffix.length) !== -1\n","/**\n * Check whether a string has less interpolation\n *\n * @param {string} string\n * @return {boolean} If `true`, a string has less interpolation\n */\nexport function hasLessInterpolation (string /*: string */) /*: boolean */ {\n if (/@{.+?}/.test(string)) {\n return true\n }\n\n return false\n}\n","/**\n * Check whether a string has postcss-simple-vars interpolation\n */\nexport function hasPsvInterpolation (string /*: string */) /*: boolean */ {\n if (/\\$\\(.+?\\)/.test(string)) {\n return true\n }\n\n return false\n}\n","/**\n * Check whether a string has scss interpolation\n */\nexport function hasScssInterpolation (string /*: string */) /*: boolean */ {\n if (/#{.+?}/.test(string)) {\n return true\n }\n\n return false\n}\n","import { hasLessInterpolation } from './hasLessInterpolation.js'\nimport { hasPsvInterpolation } from './hasPsvInterpolation.js'\nimport { hasScssInterpolation } from './hasScssInterpolation.js'\n\n/**\n * Check whether a string has interpolation\n *\n * @param {string} string\n * @return {boolean} If `true`, a string has interpolation\n */\nexport function hasInterpolation (string /*: string */) /*: boolean */ {\n // SCSS or Less interpolation\n if (\n hasLessInterpolation(string) ||\n hasScssInterpolation(string) ||\n hasPsvInterpolation(string)\n ) {\n return true\n }\n\n return false\n}\n","/**\n * Check whether a property is a custom one\n */\nexport function isCustomProperty (property /*: string */) /*: boolean */ {\n return property.slice(0, 2) === '--'\n}\n","/**\n * Check whether a node is an :export block\n */\nexport function isExportBlock (node /*: Object */) /*: boolean */ {\n if (node.type === 'rule' && node.selector && node.selector === ':export') {\n return true\n }\n\n return false\n}\n","/**\n * Check whether a declaration is standard\n */\nexport function isStandardSyntaxDeclaration (decl /*: Object */) /*: boolean */ {\n const prop = decl.prop\n const parent = decl.parent\n\n // Declarations belong in a declaration block\n\n if (parent.type === 'root') {\n return false\n }\n\n // Sass var (e.g. $var: x), nested list (e.g. $list: (x)) or nested map (e.g. $map: (key:value))\n if (prop[0] === '$') {\n return false\n }\n\n // Less var (e.g. @var: x), but exclude variable interpolation (e.g. @{var})\n if (prop[0] === '@' && prop[1] !== '{') {\n return false\n }\n\n // Sass nested properties (e.g. border: { style: solid; color: red; })\n if (\n parent.selector &&\n parent.selector[parent.selector.length - 1] === ':' &&\n parent.selector.substring(0, 2) !== '--'\n ) {\n return false\n }\n\n return true\n}\n","import { endsWith } from './endsWith.js'\nimport { hasInterpolation } from './hasInterpolation.js'\n\n/**\n * Check whether a property is standard\n */\nexport function isStandardSyntaxProperty (\n property /*: string */\n) /*: boolean */ {\n // SCSS var (e.g. $var: x), list (e.g. $list: (x)) or map (e.g. $map: (key:value))\n if (property[0] === '$') {\n return false\n }\n\n // Less var (e.g. @var: x)\n if (property[0] === '@') {\n return false\n }\n\n // Less append property value with space (e.g. transform+_: scale(2))\n if (endsWith(property, '+') || endsWith(property, '+_')) {\n return false\n }\n\n // SCSS or Less interpolation\n if (hasInterpolation(property)) {\n return false\n }\n\n return true\n}\n","export const isString = string => typeof string === 'string'\n","export const kebabCase = string =>\n string.replace(/([a-z])([A-Z])/g, '$1-$2').toLowerCase()\n","const prefix = 'taro-rn'\n\nexport function namespace (ruleName) {\n return `${prefix}/${ruleName}`\n}\n","/**\n * Compares a string to a second value that, if it fits a certain convention,\n * is converted to a regular expression before the comparison.\n * If it doesn't fit the convention, then two strings are compared.\n *\n * Any strings starting and ending with `/` are interpreted\n * as regular expressions.\n */\nexport function matchesStringOrRegExp (\n input /*: string | Array<string> */,\n comparison /*: string | Array<string> */\n) /*: false | { match: string, pattern: string } */ {\n if (!Array.isArray(input)) {\n return testAgainstStringOrRegExpOrArray(input, comparison)\n }\n\n for (const inputItem of input) {\n const testResult = testAgainstStringOrRegExpOrArray(inputItem, comparison)\n if (testResult) {\n return testResult\n }\n }\n\n return false\n}\n\nfunction testAgainstStringOrRegExpOrArray (value, comparison) {\n if (!Array.isArray(comparison)) {\n return testAgainstStringOrRegExp(value, comparison)\n }\n\n for (const comparisonItem of comparison) {\n const testResult = testAgainstStringOrRegExp(value, comparisonItem)\n if (testResult) {\n return testResult\n }\n }\n return false\n}\n\nfunction testAgainstStringOrRegExp (value, comparison) {\n // If it's a RegExp, test directly\n if (comparison instanceof RegExp) {\n return comparison.test(value)\n ? { match: value, pattern: comparison }\n : false\n }\n\n // Check if it's RegExp in a string\n const firstComparisonChar = comparison[0]\n const lastComparisonChar = comparison[comparison.length - 1]\n const secondToLastComparisonChar = comparison[comparison.length - 2]\n\n const comparisonIsRegex =\n firstComparisonChar === '/' &&\n (lastComparisonChar === '/' ||\n (secondToLastComparisonChar === '/' && lastComparisonChar === 'i'))\n\n const hasCaseInsensitiveFlag =\n comparisonIsRegex && lastComparisonChar === 'i'\n\n // If so, create a new RegExp from it\n if (comparisonIsRegex) {\n const valueMatches = hasCaseInsensitiveFlag\n ? new RegExp(comparison.slice(1, -2), 'i').test(value)\n : new RegExp(comparison.slice(1, -1)).test(value)\n return valueMatches ? { match: value, pattern: comparison } : false\n }\n\n // Otherwise, it's a string. Do a strict comparison\n return value === comparison ? { match: value, pattern: comparison } : false\n}\n","import { matchesStringOrRegExp } from './matchesStringOrRegExp.js'\n\n/**\n * Check if an options object's propertyName contains a user-defined string or\n * regex that matches the passed in input.\n */\nexport function optionsMatches (\n options /*: Object */,\n propertyName /*: string */,\n input /*: string */\n) /*: boolean */ {\n return !!(\n options &&\n options[propertyName] &&\n typeof input === 'string' &&\n matchesStringOrRegExp(input, options[propertyName])\n )\n}\n","import { allCSS2RNProps } from 'react-native-known-styling-properties'\nimport stylelint from 'stylelint'\n\nimport {\n isCustomProperty,\n isExportBlock,\n isStandardSyntaxDeclaration,\n isStandardSyntaxProperty,\n isString,\n kebabCase,\n namespace,\n optionsMatches\n} from '../../utils/index.js'\n\nexport const ruleName = namespace('css-property-no-unknown')\n\nexport const messages = stylelint.utils.ruleMessages(ruleName, {\n rejected: (property) => `无效的 React Native 样式属性 \"${property}\"`\n})\n\nconst props = allCSS2RNProps.map(kebabCase)\n\nexport default function (actual, options) {\n return function (root, result) {\n const validOptions = stylelint.utils.validateOptions(\n result,\n ruleName,\n {\n actual\n },\n {\n actual: options,\n possible: {\n ignoreProperties: [isString]\n },\n optional: true\n }\n )\n\n if (!validOptions) {\n return\n }\n\n root.walkDecls((decl) => {\n const prop = decl.prop\n\n if (!isStandardSyntaxProperty(prop)) {\n return\n }\n\n if (!isStandardSyntaxDeclaration(decl)) {\n return\n }\n\n if (isCustomProperty(prop)) {\n return\n }\n\n if (isExportBlock(decl.parent)) {\n return\n }\n\n if (optionsMatches(options, 'ignoreProperties', prop)) {\n return\n }\n\n if (props.indexOf(prop.toLowerCase()) !== -1) {\n return\n }\n\n stylelint.utils.report({\n message: messages.rejected(prop),\n node: decl,\n result,\n ruleName\n })\n })\n }\n}\n","import stylelint from 'stylelint'\nimport declarationValueIndex from 'stylelint/lib/utils/declarationValueIndex.cjs'\n\nimport { namespace } from '../../utils/index.js'\n\nexport const ruleName = namespace('font-weight-no-ignored-values')\n\nexport const messages = stylelint.utils.ruleMessages(ruleName, {\n rejected: (weight) => `Unexpected font-weight \"${weight}\"`\n})\n\nconst acceptedWeights = ['400', '700', 'normal', 'bold']\n\nexport default function (actual) {\n return function (root, result) {\n const validOptions = stylelint.utils.validateOptions(result, ruleName, {\n actual\n })\n\n if (!validOptions) {\n return\n }\n\n root.walkDecls(/^font-weight$/i, (decl) => {\n if (acceptedWeights.indexOf(decl.value) > -1) {\n return\n }\n\n const weightValueOffset = decl.value.indexOf(decl.value)\n const index = declarationValueIndex(decl) + weightValueOffset\n\n stylelint.utils.report({\n message: messages.rejected(decl.value),\n node: decl,\n result,\n ruleName,\n index\n })\n })\n }\n}\n","import stylelint from 'stylelint'\nimport declarationValueIndex from 'stylelint/lib/utils/declarationValueIndex.cjs'\n\nimport { namespace } from '../../utils/index.js'\n\nexport const ruleName = namespace('line-height-no-value-without-unit')\n\nexport const messages = stylelint.utils.ruleMessages(ruleName, {\n rejected: (height) =>\n `Unexpected line-height \"${height}\", expect a value with units`\n})\n\nconst lengthRe = /^(0$|(?:[+-]?(?:\\d*\\.)?\\d+(?:[Ee][+-]?\\d+)?)(?=px|PX|rem$))/\nconst viewportUnitRe = /^([+-]?[0-9.]+)(vh|vw|vmin|vmax)$/\n\nexport default function (actual) {\n return function (root, result) {\n const validOptions = stylelint.utils.validateOptions(result, ruleName, {\n actual\n })\n\n if (!validOptions) {\n return\n }\n\n root.walkDecls(/^line-height$/i, (decl) => {\n if (lengthRe.test(decl.value) || viewportUnitRe.test(decl.value)) {\n return\n }\n\n const valueOffset = decl.value.indexOf(decl.value)\n const index = declarationValueIndex(decl) + valueOffset\n\n stylelint.utils.report({\n message: messages.rejected(decl.value),\n node: decl,\n result,\n ruleName,\n index\n })\n })\n }\n}\n","import { allProps } from 'react-native-known-styling-properties'\nimport stylelint from 'stylelint'\n\nimport {\n isCustomProperty,\n isStandardSyntaxDeclaration,\n isStandardSyntaxProperty,\n isString,\n kebabCase,\n namespace,\n optionsMatches\n} from '../../utils/index.js'\n\nexport const ruleName = namespace('style-property-no-unknown')\n\nexport const messages = stylelint.utils.ruleMessages(ruleName, {\n rejected: (property) => `无效的 React Native 样式属性 \"${property}\"`\n})\n\nconst props = allProps.map(kebabCase)\n\nexport default function (actual, options) {\n return function (root, result) {\n const validOptions = stylelint.utils.validateOptions(\n result,\n ruleName,\n {\n actual\n },\n {\n actual: options,\n possible: {\n ignoreProperties: [isString]\n },\n optional: true\n }\n )\n\n if (!validOptions) {\n return\n }\n\n root.walkDecls((decl) => {\n const prop = decl.prop\n\n if (!isStandardSyntaxProperty(prop)) {\n return\n }\n\n if (!isStandardSyntaxDeclaration(decl)) {\n return\n }\n\n if (isCustomProperty(prop)) {\n return\n }\n\n if (optionsMatches(options, 'ignoreProperties', prop)) {\n return\n }\n\n if (props.indexOf(prop.toLowerCase()) !== -1) {\n return\n }\n\n stylelint.utils.report({\n message: messages.rejected(prop),\n node: decl,\n result,\n ruleName\n })\n })\n }\n}\n","import cssPropertyNoUnknown from './css-property-no-unknown/index.js'\nimport fontWeightNoIgnoredValues from './font-weight-no-ignored-values/index.js'\nimport lineHeightNoValueWithoutUnit from './line-height-no-value-without-unit/index.js'\nimport stylePropertyNoUnknown from './style-property-no-unknown/index.js'\n\nexport default {\n 'font-weight-no-ignored-values': fontWeightNoIgnoredValues,\n 'css-property-no-unknown': cssPropertyNoUnknown,\n 'style-property-no-unknown': stylePropertyNoUnknown,\n 'line-height-no-value-without-unit': lineHeightNoValueWithoutUnit\n}\n","import stylelint from 'stylelint'\n\nimport rules from './rules/index.js'\nimport { namespace } from './utils/index.js'\n\nconst rulesPlugins = Object.keys(rules).map((ruleName) => {\n return stylelint.createPlugin(namespace(ruleName), rules[ruleName])\n})\n\nexport default rulesPlugins\n"],"names":["ruleName","messages","props"],"mappings":"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"}
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../src/index.js"],"sourcesContent":["import stylelint from 'stylelint'\n\nimport rules from './rules/index.js'\nimport { namespace } from './utils/index.js'\n\nconst rulesPlugins = Object.keys(rules).map((ruleName) => {\n return stylelint.createPlugin(namespace(ruleName), rules[ruleName])\n})\n\nexport default rulesPlugins\n"],"names":[],"mappings":";;;;AAKA,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,KAAI;AACvD,IAAA,OAAO,SAAS,CAAC,YAAY,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAA;AACrE,CAAC;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../src/index.js"],"sourcesContent":["import stylelint from 'stylelint'\n\nimport rules from './rules/index.js'\nimport { namespace } from './utils/index.js'\n\nconst rulesPlugins = Object.keys(rules).map((ruleName) => {\n return stylelint.createPlugin(namespace(ruleName), rules[ruleName])\n})\n\nexport default rulesPlugins\n"],"names":[],"mappings":";;;;AAKA,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,KAAI;AACvD,IAAA,OAAO,SAAS,CAAC,YAAY,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;AACrE,CAAC;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/rules/css-property-no-unknown/index.js"],"sourcesContent":["import { allCSS2RNProps } from 'react-native-known-styling-properties'\nimport stylelint from 'stylelint'\n\nimport {\n isCustomProperty,\n isExportBlock,\n isStandardSyntaxDeclaration,\n isStandardSyntaxProperty,\n isString,\n kebabCase,\n namespace,\n optionsMatches\n} from '../../utils/index.js'\n\nexport const ruleName = namespace('css-property-no-unknown')\n\nexport const messages = stylelint.utils.ruleMessages(ruleName, {\n rejected: (property) => `无效的 React Native 样式属性 \"${property}\"`\n})\n\nconst props = allCSS2RNProps.map(kebabCase)\n\nexport default function (actual, options) {\n return function (root, result) {\n const validOptions = stylelint.utils.validateOptions(\n result,\n ruleName,\n {\n actual\n },\n {\n actual: options,\n possible: {\n ignoreProperties: [isString]\n },\n optional: true\n }\n )\n\n if (!validOptions) {\n return\n }\n\n root.walkDecls((decl) => {\n const prop = decl.prop\n\n if (!isStandardSyntaxProperty(prop)) {\n return\n }\n\n if (!isStandardSyntaxDeclaration(decl)) {\n return\n }\n\n if (isCustomProperty(prop)) {\n return\n }\n\n if (isExportBlock(decl.parent)) {\n return\n }\n\n if (optionsMatches(options, 'ignoreProperties', prop)) {\n return\n }\n\n if (props.indexOf(prop.toLowerCase()) !== -1) {\n return\n }\n\n stylelint.utils.report({\n message: messages.rejected(prop),\n node: decl,\n result,\n ruleName\n })\n })\n }\n}\n"],"names":[],"mappings":";;;;;;;;;;;MAca,QAAQ,GAAG,SAAS,CAAC,yBAAyB,EAAC;AAE/C,MAAA,QAAQ,GAAG,SAAS,CAAC,KAAK,CAAC,YAAY,CAAC,QAAQ,EAAE;IAC7D,QAAQ,EAAE,CAAC,QAAQ,KAAK,CAAA,uBAAA,EAA0B,QAAQ,CAAG,CAAA,CAAA;AAC9D,CAAA,EAAC;AAEF,MAAM,KAAK,GAAG,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;AAElB,6BAAA,EAAA,MAAM,EAAE,OAAO,EAAA;IACtC,OAAO,UAAU,IAAI,EAAE,MAAM,EAAA;QAC3B,MAAM,YAAY,GAAG,SAAS,CAAC,KAAK,CAAC,eAAe,CAClD,MAAM,EACN,QAAQ,EACR;YACE,MAAM;SACP,EACD;AACE,YAAA,MAAM,EAAE,OAAO;AACf,YAAA,QAAQ,EAAE;gBACR,gBAAgB,EAAE,CAAC,QAAQ,CAAC;AAC7B,aAAA;AACD,YAAA,QAAQ,EAAE,IAAI;AACf,SAAA,CACF,CAAA;QAED,IAAI,CAAC,YAAY,EAAE;YACjB,OAAM;AACP,SAAA;AAED,QAAA,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,KAAI;AACtB,YAAA,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;AAEtB,YAAA,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,EAAE;gBACnC,OAAM;AACP,aAAA;AAED,YAAA,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,EAAE;gBACtC,OAAM;AACP,aAAA;AAED,YAAA,IAAI,gBAAgB,CAAC,IAAI,CAAC,EAAE;gBAC1B,OAAM;AACP,aAAA;AAED,YAAA,IAAI,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;gBAC9B,OAAM;AACP,aAAA;YAED,IAAI,cAAc,CAAC,OAAO,EAAE,kBAAkB,EAAE,IAAI,CAAC,EAAE;gBACrD,OAAM;AACP,aAAA;AAED,YAAA,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE;gBAC5C,OAAM;AACP,aAAA;AAED,YAAA,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC;AACrB,gBAAA,OAAO,EAAE,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC;AAChC,gBAAA,IAAI,EAAE,IAAI;gBACV,MAAM;gBACN,QAAQ;AACT,aAAA,CAAC,CAAA;AACJ,SAAC,CAAC,CAAA;AACJ,KAAC,CAAA;AACH;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../../src/rules/css-property-no-unknown/index.js"],"sourcesContent":["import { allCSS2RNProps } from 'react-native-known-styling-properties'\nimport stylelint from 'stylelint'\n\nimport {\n isCustomProperty,\n isExportBlock,\n isStandardSyntaxDeclaration,\n isStandardSyntaxProperty,\n isString,\n kebabCase,\n namespace,\n optionsMatches\n} from '../../utils/index.js'\n\nexport const ruleName = namespace('css-property-no-unknown')\n\nexport const messages = stylelint.utils.ruleMessages(ruleName, {\n rejected: (property) => `无效的 React Native 样式属性 \"${property}\"`\n})\n\nconst props = allCSS2RNProps.map(kebabCase)\n\nexport default function (actual, options) {\n return function (root, result) {\n const validOptions = stylelint.utils.validateOptions(\n result,\n ruleName,\n {\n actual\n },\n {\n actual: options,\n possible: {\n ignoreProperties: [isString]\n },\n optional: true\n }\n )\n\n if (!validOptions) {\n return\n }\n\n root.walkDecls((decl) => {\n const prop = decl.prop\n\n if (!isStandardSyntaxProperty(prop)) {\n return\n }\n\n if (!isStandardSyntaxDeclaration(decl)) {\n return\n }\n\n if (isCustomProperty(prop)) {\n return\n }\n\n if (isExportBlock(decl.parent)) {\n return\n }\n\n if (optionsMatches(options, 'ignoreProperties', prop)) {\n return\n }\n\n if (props.indexOf(prop.toLowerCase()) !== -1) {\n return\n }\n\n stylelint.utils.report({\n message: messages.rejected(prop),\n node: decl,\n result,\n ruleName\n })\n })\n }\n}\n"],"names":[],"mappings":";;;;;;;;;;;MAca,QAAQ,GAAG,SAAS,CAAC,yBAAyB;AAEpD,MAAM,QAAQ,GAAG,SAAS,CAAC,KAAK,CAAC,YAAY,CAAC,QAAQ,EAAE;IAC7D,QAAQ,EAAE,CAAC,QAAQ,KAAK,CAAA,uBAAA,EAA0B,QAAQ,CAAA,CAAA;AAC3D,CAAA;AAED,MAAM,KAAK,GAAG,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC;AAE7B,6BAAA,EAAW,MAAM,EAAE,OAAO,EAAA;IACtC,OAAO,UAAU,IAAI,EAAE,MAAM,EAAA;QAC3B,MAAM,YAAY,GAAG,SAAS,CAAC,KAAK,CAAC,eAAe,CAClD,MAAM,EACN,QAAQ,EACR;YACE;SACD,EACD;AACE,YAAA,MAAM,EAAE,OAAO;AACf,YAAA,QAAQ,EAAE;gBACR,gBAAgB,EAAE,CAAC,QAAQ;AAC5B,aAAA;AACD,YAAA,QAAQ,EAAE;AACX,SAAA,CACF;QAED,IAAI,CAAC,YAAY,EAAE;YACjB;QACF;AAEA,QAAA,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,KAAI;AACtB,YAAA,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI;AAEtB,YAAA,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,EAAE;gBACnC;YACF;AAEA,YAAA,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,EAAE;gBACtC;YACF;AAEA,YAAA,IAAI,gBAAgB,CAAC,IAAI,CAAC,EAAE;gBAC1B;YACF;AAEA,YAAA,IAAI,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;gBAC9B;YACF;YAEA,IAAI,cAAc,CAAC,OAAO,EAAE,kBAAkB,EAAE,IAAI,CAAC,EAAE;gBACrD;YACF;AAEA,YAAA,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,KAAK,EAAE,EAAE;gBAC5C;YACF;AAEA,YAAA,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC;AACrB,gBAAA,OAAO,EAAE,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC;AAChC,gBAAA,IAAI,EAAE,IAAI;gBACV,MAAM;gBACN;AACD,aAAA,CAAC;AACJ,QAAA,CAAC,CAAC;AACJ,IAAA,CAAC;AACH;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/rules/font-weight-no-ignored-values/index.js"],"sourcesContent":["import stylelint from 'stylelint'\nimport declarationValueIndex from 'stylelint/lib/utils/declarationValueIndex.cjs'\n\nimport { namespace } from '../../utils/index.js'\n\nexport const ruleName = namespace('font-weight-no-ignored-values')\n\nexport const messages = stylelint.utils.ruleMessages(ruleName, {\n rejected: (weight) => `Unexpected font-weight \"${weight}\"`\n})\n\nconst acceptedWeights = ['400', '700', 'normal', 'bold']\n\nexport default function (actual) {\n return function (root, result) {\n const validOptions = stylelint.utils.validateOptions(result, ruleName, {\n actual\n })\n\n if (!validOptions) {\n return\n }\n\n root.walkDecls(/^font-weight$/i, (decl) => {\n if (acceptedWeights.indexOf(decl.value) > -1) {\n return\n }\n\n const weightValueOffset = decl.value.indexOf(decl.value)\n const index = declarationValueIndex(decl) + weightValueOffset\n\n stylelint.utils.report({\n message: messages.rejected(decl.value),\n node: decl,\n result,\n ruleName,\n index\n })\n })\n }\n}\n"],"names":[],"mappings":";;;;MAKa,QAAQ,GAAG,SAAS,CAAC,+BAA+B,EAAC;AAErD,MAAA,QAAQ,GAAG,SAAS,CAAC,KAAK,CAAC,YAAY,CAAC,QAAQ,EAAE;IAC7D,QAAQ,EAAE,CAAC,MAAM,KAAK,CAAA,wBAAA,EAA2B,MAAM,CAAG,CAAA,CAAA;AAC3D,CAAA,EAAC;AAEF,MAAM,eAAe,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAA;AAE1C,kCAAA,EAAW,MAAM,EAAA;IAC7B,OAAO,UAAU,IAAI,EAAE,MAAM,EAAA;QAC3B,MAAM,YAAY,GAAG,SAAS,CAAC,KAAK,CAAC,eAAe,CAAC,MAAM,EAAE,QAAQ,EAAE;YACrE,MAAM;AACP,SAAA,CAAC,CAAA;QAEF,IAAI,CAAC,YAAY,EAAE;YACjB,OAAM;AACP,SAAA;QAED,IAAI,CAAC,SAAS,CAAC,gBAAgB,EAAE,CAAC,IAAI,KAAI;YACxC,IAAI,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE;gBAC5C,OAAM;AACP,aAAA;AAED,YAAA,MAAM,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YACxD,MAAM,KAAK,GAAG,qBAAqB,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAA;AAE7D,YAAA,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC;gBACrB,OAAO,EAAE,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC;AACtC,gBAAA,IAAI,EAAE,IAAI;gBACV,MAAM;gBACN,QAAQ;gBACR,KAAK;AACN,aAAA,CAAC,CAAA;AACJ,SAAC,CAAC,CAAA;AACJ,KAAC,CAAA;AACH;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../../src/rules/font-weight-no-ignored-values/index.js"],"sourcesContent":["import stylelint from 'stylelint'\nimport declarationValueIndex from 'stylelint/lib/utils/declarationValueIndex.cjs'\n\nimport { namespace } from '../../utils/index.js'\n\nexport const ruleName = namespace('font-weight-no-ignored-values')\n\nexport const messages = stylelint.utils.ruleMessages(ruleName, {\n rejected: (weight) => `Unexpected font-weight \"${weight}\"`\n})\n\nconst acceptedWeights = ['400', '700', 'normal', 'bold']\n\nexport default function (actual) {\n return function (root, result) {\n const validOptions = stylelint.utils.validateOptions(result, ruleName, {\n actual\n })\n\n if (!validOptions) {\n return\n }\n\n root.walkDecls(/^font-weight$/i, (decl) => {\n if (acceptedWeights.indexOf(decl.value) > -1) {\n return\n }\n\n const weightValueOffset = decl.value.indexOf(decl.value)\n const index = declarationValueIndex(decl) + weightValueOffset\n\n stylelint.utils.report({\n message: messages.rejected(decl.value),\n node: decl,\n result,\n ruleName,\n index\n })\n })\n }\n}\n"],"names":[],"mappings":";;;;MAKa,QAAQ,GAAG,SAAS,CAAC,+BAA+B;AAE1D,MAAM,QAAQ,GAAG,SAAS,CAAC,KAAK,CAAC,YAAY,CAAC,QAAQ,EAAE;IAC7D,QAAQ,EAAE,CAAC,MAAM,KAAK,CAAA,wBAAA,EAA2B,MAAM,CAAA,CAAA;AACxD,CAAA;AAED,MAAM,eAAe,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC;AAE1C,kCAAA,EAAW,MAAM,EAAA;IAC7B,OAAO,UAAU,IAAI,EAAE,MAAM,EAAA;QAC3B,MAAM,YAAY,GAAG,SAAS,CAAC,KAAK,CAAC,eAAe,CAAC,MAAM,EAAE,QAAQ,EAAE;YACrE;AACD,SAAA,CAAC;QAEF,IAAI,CAAC,YAAY,EAAE;YACjB;QACF;QAEA,IAAI,CAAC,SAAS,CAAC,gBAAgB,EAAE,CAAC,IAAI,KAAI;AACxC,YAAA,IAAI,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE;gBAC5C;YACF;AAEA,YAAA,MAAM,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;YACxD,MAAM,KAAK,GAAG,qBAAqB,CAAC,IAAI,CAAC,GAAG,iBAAiB;AAE7D,YAAA,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC;gBACrB,OAAO,EAAE,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC;AACtC,gBAAA,IAAI,EAAE,IAAI;gBACV,MAAM;gBACN,QAAQ;gBACR;AACD,aAAA,CAAC;AACJ,QAAA,CAAC,CAAC;AACJ,IAAA,CAAC;AACH;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../src/rules/index.js"],"sourcesContent":["import cssPropertyNoUnknown from './css-property-no-unknown/index.js'\nimport fontWeightNoIgnoredValues from './font-weight-no-ignored-values/index.js'\nimport lineHeightNoValueWithoutUnit from './line-height-no-value-without-unit/index.js'\nimport stylePropertyNoUnknown from './style-property-no-unknown/index.js'\n\nexport default {\n 'font-weight-no-ignored-values': fontWeightNoIgnoredValues,\n 'css-property-no-unknown': cssPropertyNoUnknown,\n 'style-property-no-unknown': stylePropertyNoUnknown,\n 'line-height-no-value-without-unit': lineHeightNoValueWithoutUnit\n}\n"],"names":[],"mappings":";;;;;AAKA,YAAe;AACb,IAAA,+BAA+B,EAAE,yBAAyB;AAC1D,IAAA,yBAAyB,EAAE,oBAAoB;AAC/C,IAAA,2BAA2B,EAAE,sBAAsB;AACnD,IAAA,mCAAmC,EAAE,4BAA4B;CAClE;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../src/rules/index.js"],"sourcesContent":["import cssPropertyNoUnknown from './css-property-no-unknown/index.js'\nimport fontWeightNoIgnoredValues from './font-weight-no-ignored-values/index.js'\nimport lineHeightNoValueWithoutUnit from './line-height-no-value-without-unit/index.js'\nimport stylePropertyNoUnknown from './style-property-no-unknown/index.js'\n\nexport default {\n 'font-weight-no-ignored-values': fontWeightNoIgnoredValues,\n 'css-property-no-unknown': cssPropertyNoUnknown,\n 'style-property-no-unknown': stylePropertyNoUnknown,\n 'line-height-no-value-without-unit': lineHeightNoValueWithoutUnit\n}\n"],"names":[],"mappings":";;;;;AAKA,YAAe;AACb,IAAA,+BAA+B,EAAE,yBAAyB;AAC1D,IAAA,yBAAyB,EAAE,oBAAoB;AAC/C,IAAA,2BAA2B,EAAE,sBAAsB;AACnD,IAAA,mCAAmC,EAAE;CACtC;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/rules/line-height-no-value-without-unit/index.js"],"sourcesContent":["import stylelint from 'stylelint'\nimport declarationValueIndex from 'stylelint/lib/utils/declarationValueIndex.cjs'\n\nimport { namespace } from '../../utils/index.js'\n\nexport const ruleName = namespace('line-height-no-value-without-unit')\n\nexport const messages = stylelint.utils.ruleMessages(ruleName, {\n rejected: (height) =>\n `Unexpected line-height \"${height}\", expect a value with units`\n})\n\nconst lengthRe = /^(0$|(?:[+-]?(?:\\d*\\.)?\\d+(?:[Ee][+-]?\\d+)?)(?=px|PX|rem$))/\nconst viewportUnitRe = /^([+-]?[0-9.]+)(vh|vw|vmin|vmax)$/\n\nexport default function (actual) {\n return function (root, result) {\n const validOptions = stylelint.utils.validateOptions(result, ruleName, {\n actual\n })\n\n if (!validOptions) {\n return\n }\n\n root.walkDecls(/^line-height$/i, (decl) => {\n if (lengthRe.test(decl.value) || viewportUnitRe.test(decl.value)) {\n return\n }\n\n const valueOffset = decl.value.indexOf(decl.value)\n const index = declarationValueIndex(decl) + valueOffset\n\n stylelint.utils.report({\n message: messages.rejected(decl.value),\n node: decl,\n result,\n ruleName,\n index\n })\n })\n }\n}\n"],"names":[],"mappings":";;;;MAKa,QAAQ,GAAG,SAAS,CAAC,mCAAmC,EAAC;AAEzD,MAAA,QAAQ,GAAG,SAAS,CAAC,KAAK,CAAC,YAAY,CAAC,QAAQ,EAAE;IAC7D,QAAQ,EAAE,CAAC,MAAM,KACf,CAAA,wBAAA,EAA2B,MAAM,CAA8B,4BAAA,CAAA;AAClE,CAAA,EAAC;AAEF,MAAM,QAAQ,GAAG,6DAA6D,CAAA;AAC9E,MAAM,cAAc,GAAG,mCAAmC,CAAA;AAE5C,qCAAA,EAAW,MAAM,EAAA;IAC7B,OAAO,UAAU,IAAI,EAAE,MAAM,EAAA;QAC3B,MAAM,YAAY,GAAG,SAAS,CAAC,KAAK,CAAC,eAAe,CAAC,MAAM,EAAE,QAAQ,EAAE;YACrE,MAAM;AACP,SAAA,CAAC,CAAA;QAEF,IAAI,CAAC,YAAY,EAAE;YACjB,OAAM;AACP,SAAA;QAED,IAAI,CAAC,SAAS,CAAC,gBAAgB,EAAE,CAAC,IAAI,KAAI;AACxC,YAAA,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;gBAChE,OAAM;AACP,aAAA;AAED,YAAA,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YAClD,MAAM,KAAK,GAAG,qBAAqB,CAAC,IAAI,CAAC,GAAG,WAAW,CAAA;AAEvD,YAAA,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC;gBACrB,OAAO,EAAE,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC;AACtC,gBAAA,IAAI,EAAE,IAAI;gBACV,MAAM;gBACN,QAAQ;gBACR,KAAK;AACN,aAAA,CAAC,CAAA;AACJ,SAAC,CAAC,CAAA;AACJ,KAAC,CAAA;AACH;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../../src/rules/line-height-no-value-without-unit/index.js"],"sourcesContent":["import stylelint from 'stylelint'\nimport declarationValueIndex from 'stylelint/lib/utils/declarationValueIndex.cjs'\n\nimport { namespace } from '../../utils/index.js'\n\nexport const ruleName = namespace('line-height-no-value-without-unit')\n\nexport const messages = stylelint.utils.ruleMessages(ruleName, {\n rejected: (height) =>\n `Unexpected line-height \"${height}\", expect a value with units`\n})\n\nconst lengthRe = /^(0$|(?:[+-]?(?:\\d*\\.)?\\d+(?:[Ee][+-]?\\d+)?)(?=px|PX|rem$))/\nconst viewportUnitRe = /^([+-]?[0-9.]+)(vh|vw|vmin|vmax)$/\n\nexport default function (actual) {\n return function (root, result) {\n const validOptions = stylelint.utils.validateOptions(result, ruleName, {\n actual\n })\n\n if (!validOptions) {\n return\n }\n\n root.walkDecls(/^line-height$/i, (decl) => {\n if (lengthRe.test(decl.value) || viewportUnitRe.test(decl.value)) {\n return\n }\n\n const valueOffset = decl.value.indexOf(decl.value)\n const index = declarationValueIndex(decl) + valueOffset\n\n stylelint.utils.report({\n message: messages.rejected(decl.value),\n node: decl,\n result,\n ruleName,\n index\n })\n })\n }\n}\n"],"names":[],"mappings":";;;;MAKa,QAAQ,GAAG,SAAS,CAAC,mCAAmC;AAE9D,MAAM,QAAQ,GAAG,SAAS,CAAC,KAAK,CAAC,YAAY,CAAC,QAAQ,EAAE;IAC7D,QAAQ,EAAE,CAAC,MAAM,KACf,CAAA,wBAAA,EAA2B,MAAM,CAAA,4BAAA;AACpC,CAAA;AAED,MAAM,QAAQ,GAAG,6DAA6D;AAC9E,MAAM,cAAc,GAAG,mCAAmC;AAE5C,qCAAA,EAAW,MAAM,EAAA;IAC7B,OAAO,UAAU,IAAI,EAAE,MAAM,EAAA;QAC3B,MAAM,YAAY,GAAG,SAAS,CAAC,KAAK,CAAC,eAAe,CAAC,MAAM,EAAE,QAAQ,EAAE;YACrE;AACD,SAAA,CAAC;QAEF,IAAI,CAAC,YAAY,EAAE;YACjB;QACF;QAEA,IAAI,CAAC,SAAS,CAAC,gBAAgB,EAAE,CAAC,IAAI,KAAI;AACxC,YAAA,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;gBAChE;YACF;AAEA,YAAA,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;YAClD,MAAM,KAAK,GAAG,qBAAqB,CAAC,IAAI,CAAC,GAAG,WAAW;AAEvD,YAAA,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC;gBACrB,OAAO,EAAE,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC;AACtC,gBAAA,IAAI,EAAE,IAAI;gBACV,MAAM;gBACN,QAAQ;gBACR;AACD,aAAA,CAAC;AACJ,QAAA,CAAC,CAAC;AACJ,IAAA,CAAC;AACH;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/rules/style-property-no-unknown/index.js"],"sourcesContent":["import { allProps } from 'react-native-known-styling-properties'\nimport stylelint from 'stylelint'\n\nimport {\n isCustomProperty,\n isStandardSyntaxDeclaration,\n isStandardSyntaxProperty,\n isString,\n kebabCase,\n namespace,\n optionsMatches\n} from '../../utils/index.js'\n\nexport const ruleName = namespace('style-property-no-unknown')\n\nexport const messages = stylelint.utils.ruleMessages(ruleName, {\n rejected: (property) => `无效的 React Native 样式属性 \"${property}\"`\n})\n\nconst props = allProps.map(kebabCase)\n\nexport default function (actual, options) {\n return function (root, result) {\n const validOptions = stylelint.utils.validateOptions(\n result,\n ruleName,\n {\n actual\n },\n {\n actual: options,\n possible: {\n ignoreProperties: [isString]\n },\n optional: true\n }\n )\n\n if (!validOptions) {\n return\n }\n\n root.walkDecls((decl) => {\n const prop = decl.prop\n\n if (!isStandardSyntaxProperty(prop)) {\n return\n }\n\n if (!isStandardSyntaxDeclaration(decl)) {\n return\n }\n\n if (isCustomProperty(prop)) {\n return\n }\n\n if (optionsMatches(options, 'ignoreProperties', prop)) {\n return\n }\n\n if (props.indexOf(prop.toLowerCase()) !== -1) {\n return\n }\n\n stylelint.utils.report({\n message: messages.rejected(prop),\n node: decl,\n result,\n ruleName\n })\n })\n }\n}\n"],"names":[],"mappings":";;;;;;;;;;MAaa,QAAQ,GAAG,SAAS,CAAC,2BAA2B,EAAC;AAEjD,MAAA,QAAQ,GAAG,SAAS,CAAC,KAAK,CAAC,YAAY,CAAC,QAAQ,EAAE;IAC7D,QAAQ,EAAE,CAAC,QAAQ,KAAK,CAAA,uBAAA,EAA0B,QAAQ,CAAG,CAAA,CAAA;AAC9D,CAAA,EAAC;AAEF,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;AAEZ,+BAAA,EAAA,MAAM,EAAE,OAAO,EAAA;IACtC,OAAO,UAAU,IAAI,EAAE,MAAM,EAAA;QAC3B,MAAM,YAAY,GAAG,SAAS,CAAC,KAAK,CAAC,eAAe,CAClD,MAAM,EACN,QAAQ,EACR;YACE,MAAM;SACP,EACD;AACE,YAAA,MAAM,EAAE,OAAO;AACf,YAAA,QAAQ,EAAE;gBACR,gBAAgB,EAAE,CAAC,QAAQ,CAAC;AAC7B,aAAA;AACD,YAAA,QAAQ,EAAE,IAAI;AACf,SAAA,CACF,CAAA;QAED,IAAI,CAAC,YAAY,EAAE;YACjB,OAAM;AACP,SAAA;AAED,QAAA,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,KAAI;AACtB,YAAA,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;AAEtB,YAAA,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,EAAE;gBACnC,OAAM;AACP,aAAA;AAED,YAAA,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,EAAE;gBACtC,OAAM;AACP,aAAA;AAED,YAAA,IAAI,gBAAgB,CAAC,IAAI,CAAC,EAAE;gBAC1B,OAAM;AACP,aAAA;YAED,IAAI,cAAc,CAAC,OAAO,EAAE,kBAAkB,EAAE,IAAI,CAAC,EAAE;gBACrD,OAAM;AACP,aAAA;AAED,YAAA,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE;gBAC5C,OAAM;AACP,aAAA;AAED,YAAA,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC;AACrB,gBAAA,OAAO,EAAE,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC;AAChC,gBAAA,IAAI,EAAE,IAAI;gBACV,MAAM;gBACN,QAAQ;AACT,aAAA,CAAC,CAAA;AACJ,SAAC,CAAC,CAAA;AACJ,KAAC,CAAA;AACH;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../../src/rules/style-property-no-unknown/index.js"],"sourcesContent":["import { allProps } from 'react-native-known-styling-properties'\nimport stylelint from 'stylelint'\n\nimport {\n isCustomProperty,\n isStandardSyntaxDeclaration,\n isStandardSyntaxProperty,\n isString,\n kebabCase,\n namespace,\n optionsMatches\n} from '../../utils/index.js'\n\nexport const ruleName = namespace('style-property-no-unknown')\n\nexport const messages = stylelint.utils.ruleMessages(ruleName, {\n rejected: (property) => `无效的 React Native 样式属性 \"${property}\"`\n})\n\nconst props = allProps.map(kebabCase)\n\nexport default function (actual, options) {\n return function (root, result) {\n const validOptions = stylelint.utils.validateOptions(\n result,\n ruleName,\n {\n actual\n },\n {\n actual: options,\n possible: {\n ignoreProperties: [isString]\n },\n optional: true\n }\n )\n\n if (!validOptions) {\n return\n }\n\n root.walkDecls((decl) => {\n const prop = decl.prop\n\n if (!isStandardSyntaxProperty(prop)) {\n return\n }\n\n if (!isStandardSyntaxDeclaration(decl)) {\n return\n }\n\n if (isCustomProperty(prop)) {\n return\n }\n\n if (optionsMatches(options, 'ignoreProperties', prop)) {\n return\n }\n\n if (props.indexOf(prop.toLowerCase()) !== -1) {\n return\n }\n\n stylelint.utils.report({\n message: messages.rejected(prop),\n node: decl,\n result,\n ruleName\n })\n })\n }\n}\n"],"names":[],"mappings":";;;;;;;;;;MAaa,QAAQ,GAAG,SAAS,CAAC,2BAA2B;AAEtD,MAAM,QAAQ,GAAG,SAAS,CAAC,KAAK,CAAC,YAAY,CAAC,QAAQ,EAAE;IAC7D,QAAQ,EAAE,CAAC,QAAQ,KAAK,CAAA,uBAAA,EAA0B,QAAQ,CAAA,CAAA;AAC3D,CAAA;AAED,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC;AAEvB,+BAAA,EAAW,MAAM,EAAE,OAAO,EAAA;IACtC,OAAO,UAAU,IAAI,EAAE,MAAM,EAAA;QAC3B,MAAM,YAAY,GAAG,SAAS,CAAC,KAAK,CAAC,eAAe,CAClD,MAAM,EACN,QAAQ,EACR;YACE;SACD,EACD;AACE,YAAA,MAAM,EAAE,OAAO;AACf,YAAA,QAAQ,EAAE;gBACR,gBAAgB,EAAE,CAAC,QAAQ;AAC5B,aAAA;AACD,YAAA,QAAQ,EAAE;AACX,SAAA,CACF;QAED,IAAI,CAAC,YAAY,EAAE;YACjB;QACF;AAEA,QAAA,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,KAAI;AACtB,YAAA,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI;AAEtB,YAAA,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,EAAE;gBACnC;YACF;AAEA,YAAA,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,EAAE;gBACtC;YACF;AAEA,YAAA,IAAI,gBAAgB,CAAC,IAAI,CAAC,EAAE;gBAC1B;YACF;YAEA,IAAI,cAAc,CAAC,OAAO,EAAE,kBAAkB,EAAE,IAAI,CAAC,EAAE;gBACrD;YACF;AAEA,YAAA,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,KAAK,EAAE,EAAE;gBAC5C;YACF;AAEA,YAAA,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC;AACrB,gBAAA,OAAO,EAAE,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC;AAChC,gBAAA,IAAI,EAAE,IAAI;gBACV,MAAM;gBACN;AACD,aAAA,CAAC;AACJ,QAAA,CAAC,CAAC;AACJ,IAAA,CAAC;AACH;;;;"}
@@ -1,3 +1,3 @@
1
1
  export default rulesPlugins;
2
2
  declare const rulesPlugins: stylelint.Plugin[];
3
- import stylelint from "stylelint";
3
+ import stylelint from 'stylelint';
@@ -5,7 +5,7 @@ declare const _default: {
5
5
  'line-height-no-value-without-unit': typeof lineHeightNoValueWithoutUnit;
6
6
  };
7
7
  export default _default;
8
- import fontWeightNoIgnoredValues from "./font-weight-no-ignored-values/index.js";
9
- import cssPropertyNoUnknown from "./css-property-no-unknown/index.js";
10
- import stylePropertyNoUnknown from "./style-property-no-unknown/index.js";
11
- import lineHeightNoValueWithoutUnit from "./line-height-no-value-without-unit/index.js";
8
+ import fontWeightNoIgnoredValues from './font-weight-no-ignored-values/index.js';
9
+ import cssPropertyNoUnknown from './css-property-no-unknown/index.js';
10
+ import stylePropertyNoUnknown from './style-property-no-unknown/index.js';
11
+ import lineHeightNoValueWithoutUnit from './line-height-no-value-without-unit/index.js';
@@ -0,0 +1 @@
1
+ export function isString(string: any): string is string;
@@ -1 +1 @@
1
- {"version":3,"file":"endsWith.js","sources":["../../src/utils/endsWith.js"],"sourcesContent":["export const endsWith = (str, suffix) =>\n str.indexOf(suffix, str.length - suffix.length) !== -1\n"],"names":[],"mappings":"AAAO,MAAM,QAAQ,GAAG,CAAC,GAAG,EAAE,MAAM,KAClC,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC;;;;"}
1
+ {"version":3,"file":"endsWith.js","sources":["../../../src/utils/endsWith.js"],"sourcesContent":["export const endsWith = (str, suffix) =>\n str.indexOf(suffix, str.length - suffix.length) !== -1\n"],"names":[],"mappings":"AAAO,MAAM,QAAQ,GAAG,CAAC,GAAG,EAAE,MAAM,KAClC,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"hasInterpolation.js","sources":["../../src/utils/hasInterpolation.js"],"sourcesContent":["import { hasLessInterpolation } from './hasLessInterpolation.js'\nimport { hasPsvInterpolation } from './hasPsvInterpolation.js'\nimport { hasScssInterpolation } from './hasScssInterpolation.js'\n\n/**\n * Check whether a string has interpolation\n *\n * @param {string} string\n * @return {boolean} If `true`, a string has interpolation\n */\nexport function hasInterpolation (string /*: string */) /*: boolean */ {\n // SCSS or Less interpolation\n if (\n hasLessInterpolation(string) ||\n hasScssInterpolation(string) ||\n hasPsvInterpolation(string)\n ) {\n return true\n }\n\n return false\n}\n"],"names":[],"mappings":";;;;AAIA;;;;;AAKG;AACa,SAAA,gBAAgB,CAAE,MAAM,gBAAc;;IAEpD,IACE,oBAAoB,CAAC,MAAM,CAAC;QAC5B,oBAAoB,CAAC,MAAM,CAAC;QAC5B,mBAAmB,CAAC,MAAM,CAAC,EAC3B;AACA,QAAA,OAAO,IAAI,CAAA;AACZ,KAAA;AAED,IAAA,OAAO,KAAK,CAAA;AACd;;;;"}
1
+ {"version":3,"file":"hasInterpolation.js","sources":["../../../src/utils/hasInterpolation.js"],"sourcesContent":["import { hasLessInterpolation } from './hasLessInterpolation.js'\nimport { hasPsvInterpolation } from './hasPsvInterpolation.js'\nimport { hasScssInterpolation } from './hasScssInterpolation.js'\n\n/**\n * Check whether a string has interpolation\n *\n * @param {string} string\n * @return {boolean} If `true`, a string has interpolation\n */\nexport function hasInterpolation (string /*: string */) /*: boolean */ {\n // SCSS or Less interpolation\n if (\n hasLessInterpolation(string) ||\n hasScssInterpolation(string) ||\n hasPsvInterpolation(string)\n ) {\n return true\n }\n\n return false\n}\n"],"names":[],"mappings":";;;;AAIA;;;;;AAKG;AACG,SAAU,gBAAgB,CAAE,MAAM,gBAAc;;IAEpD,IACE,oBAAoB,CAAC,MAAM,CAAC;QAC5B,oBAAoB,CAAC,MAAM,CAAC;AAC5B,QAAA,mBAAmB,CAAC,MAAM,CAAC,EAC3B;AACA,QAAA,OAAO,IAAI;IACb;AAEA,IAAA,OAAO,KAAK;AACd;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"hasLessInterpolation.js","sources":["../../src/utils/hasLessInterpolation.js"],"sourcesContent":["/**\n * Check whether a string has less interpolation\n *\n * @param {string} string\n * @return {boolean} If `true`, a string has less interpolation\n */\nexport function hasLessInterpolation (string /*: string */) /*: boolean */ {\n if (/@{.+?}/.test(string)) {\n return true\n }\n\n return false\n}\n"],"names":[],"mappings":"AAAA;;;;;AAKG;AACa,SAAA,oBAAoB,CAAE,MAAM,gBAAc;AACxD,IAAA,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;AACzB,QAAA,OAAO,IAAI,CAAA;AACZ,KAAA;AAED,IAAA,OAAO,KAAK,CAAA;AACd;;;;"}
1
+ {"version":3,"file":"hasLessInterpolation.js","sources":["../../../src/utils/hasLessInterpolation.js"],"sourcesContent":["/**\n * Check whether a string has less interpolation\n *\n * @param {string} string\n * @return {boolean} If `true`, a string has less interpolation\n */\nexport function hasLessInterpolation (string /*: string */) /*: boolean */ {\n if (/@{.+?}/.test(string)) {\n return true\n }\n\n return false\n}\n"],"names":[],"mappings":"AAAA;;;;;AAKG;AACG,SAAU,oBAAoB,CAAE,MAAM,gBAAc;AACxD,IAAA,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;AACzB,QAAA,OAAO,IAAI;IACb;AAEA,IAAA,OAAO,KAAK;AACd;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"hasPsvInterpolation.js","sources":["../../src/utils/hasPsvInterpolation.js"],"sourcesContent":["/**\n * Check whether a string has postcss-simple-vars interpolation\n */\nexport function hasPsvInterpolation (string /*: string */) /*: boolean */ {\n if (/\\$\\(.+?\\)/.test(string)) {\n return true\n }\n\n return false\n}\n"],"names":[],"mappings":"AAAA;;AAEG;AACa,SAAA,mBAAmB,CAAE,MAAM,gBAAc;AACvD,IAAA,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;AAC5B,QAAA,OAAO,IAAI,CAAA;AACZ,KAAA;AAED,IAAA,OAAO,KAAK,CAAA;AACd;;;;"}
1
+ {"version":3,"file":"hasPsvInterpolation.js","sources":["../../../src/utils/hasPsvInterpolation.js"],"sourcesContent":["/**\n * Check whether a string has postcss-simple-vars interpolation\n */\nexport function hasPsvInterpolation (string /*: string */) /*: boolean */ {\n if (/\\$\\(.+?\\)/.test(string)) {\n return true\n }\n\n return false\n}\n"],"names":[],"mappings":"AAAA;;AAEG;AACG,SAAU,mBAAmB,CAAE,MAAM,gBAAc;AACvD,IAAA,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;AAC5B,QAAA,OAAO,IAAI;IACb;AAEA,IAAA,OAAO,KAAK;AACd;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"hasScssInterpolation.js","sources":["../../src/utils/hasScssInterpolation.js"],"sourcesContent":["/**\n * Check whether a string has scss interpolation\n */\nexport function hasScssInterpolation (string /*: string */) /*: boolean */ {\n if (/#{.+?}/.test(string)) {\n return true\n }\n\n return false\n}\n"],"names":[],"mappings":"AAAA;;AAEG;AACa,SAAA,oBAAoB,CAAE,MAAM,gBAAc;AACxD,IAAA,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;AACzB,QAAA,OAAO,IAAI,CAAA;AACZ,KAAA;AAED,IAAA,OAAO,KAAK,CAAA;AACd;;;;"}
1
+ {"version":3,"file":"hasScssInterpolation.js","sources":["../../../src/utils/hasScssInterpolation.js"],"sourcesContent":["/**\n * Check whether a string has scss interpolation\n */\nexport function hasScssInterpolation (string /*: string */) /*: boolean */ {\n if (/#{.+?}/.test(string)) {\n return true\n }\n\n return false\n}\n"],"names":[],"mappings":"AAAA;;AAEG;AACG,SAAU,oBAAoB,CAAE,MAAM,gBAAc;AACxD,IAAA,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;AACzB,QAAA,OAAO,IAAI;IACb;AAEA,IAAA,OAAO,KAAK;AACd;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"isCustomProperty.js","sources":["../../src/utils/isCustomProperty.js"],"sourcesContent":["/**\n * Check whether a property is a custom one\n */\nexport function isCustomProperty (property /*: string */) /*: boolean */ {\n return property.slice(0, 2) === '--'\n}\n"],"names":[],"mappings":"AAAA;;AAEG;AACa,SAAA,gBAAgB,CAAE,QAAQ,gBAAc;IACtD,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,IAAI,CAAA;AACtC;;;;"}
1
+ {"version":3,"file":"isCustomProperty.js","sources":["../../../src/utils/isCustomProperty.js"],"sourcesContent":["/**\n * Check whether a property is a custom one\n */\nexport function isCustomProperty (property /*: string */) /*: boolean */ {\n return property.slice(0, 2) === '--'\n}\n"],"names":[],"mappings":"AAAA;;AAEG;AACG,SAAU,gBAAgB,CAAE,QAAQ,gBAAc;IACtD,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,IAAI;AACtC;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"isExportBlock.js","sources":["../../src/utils/isExportBlock.js"],"sourcesContent":["/**\n * Check whether a node is an :export block\n */\nexport function isExportBlock (node /*: Object */) /*: boolean */ {\n if (node.type === 'rule' && node.selector && node.selector === ':export') {\n return true\n }\n\n return false\n}\n"],"names":[],"mappings":"AAAA;;AAEG;AACa,SAAA,aAAa,CAAE,IAAI,gBAAc;AAC/C,IAAA,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,EAAE;AACxE,QAAA,OAAO,IAAI,CAAA;AACZ,KAAA;AAED,IAAA,OAAO,KAAK,CAAA;AACd;;;;"}
1
+ {"version":3,"file":"isExportBlock.js","sources":["../../../src/utils/isExportBlock.js"],"sourcesContent":["/**\n * Check whether a node is an :export block\n */\nexport function isExportBlock (node /*: Object */) /*: boolean */ {\n if (node.type === 'rule' && node.selector && node.selector === ':export') {\n return true\n }\n\n return false\n}\n"],"names":[],"mappings":"AAAA;;AAEG;AACG,SAAU,aAAa,CAAE,IAAI,gBAAc;AAC/C,IAAA,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,EAAE;AACxE,QAAA,OAAO,IAAI;IACb;AAEA,IAAA,OAAO,KAAK;AACd;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"isStandardSyntaxDeclaration.js","sources":["../../src/utils/isStandardSyntaxDeclaration.js"],"sourcesContent":["/**\n * Check whether a declaration is standard\n */\nexport function isStandardSyntaxDeclaration (decl /*: Object */) /*: boolean */ {\n const prop = decl.prop\n const parent = decl.parent\n\n // Declarations belong in a declaration block\n\n if (parent.type === 'root') {\n return false\n }\n\n // Sass var (e.g. $var: x), nested list (e.g. $list: (x)) or nested map (e.g. $map: (key:value))\n if (prop[0] === '$') {\n return false\n }\n\n // Less var (e.g. @var: x), but exclude variable interpolation (e.g. @{var})\n if (prop[0] === '@' && prop[1] !== '{') {\n return false\n }\n\n // Sass nested properties (e.g. border: { style: solid; color: red; })\n if (\n parent.selector &&\n parent.selector[parent.selector.length - 1] === ':' &&\n parent.selector.substring(0, 2) !== '--'\n ) {\n return false\n }\n\n return true\n}\n"],"names":[],"mappings":"AAAA;;AAEG;AACa,SAAA,2BAA2B,CAAE,IAAI,gBAAc;AAC7D,IAAA,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;AACtB,IAAA,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAA;;AAI1B,IAAA,IAAI,MAAM,CAAC,IAAI,KAAK,MAAM,EAAE;AAC1B,QAAA,OAAO,KAAK,CAAA;AACb,KAAA;;AAGD,IAAA,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;AACnB,QAAA,OAAO,KAAK,CAAA;AACb,KAAA;;AAGD,IAAA,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;AACtC,QAAA,OAAO,KAAK,CAAA;AACb,KAAA;;IAGD,IACE,MAAM,CAAC,QAAQ;AACf,QAAA,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,GAAG;QACnD,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,IAAI,EACxC;AACA,QAAA,OAAO,KAAK,CAAA;AACb,KAAA;AAED,IAAA,OAAO,IAAI,CAAA;AACb;;;;"}
1
+ {"version":3,"file":"isStandardSyntaxDeclaration.js","sources":["../../../src/utils/isStandardSyntaxDeclaration.js"],"sourcesContent":["/**\n * Check whether a declaration is standard\n */\nexport function isStandardSyntaxDeclaration (decl /*: Object */) /*: boolean */ {\n const prop = decl.prop\n const parent = decl.parent\n\n // Declarations belong in a declaration block\n\n if (parent.type === 'root') {\n return false\n }\n\n // Sass var (e.g. $var: x), nested list (e.g. $list: (x)) or nested map (e.g. $map: (key:value))\n if (prop[0] === '$') {\n return false\n }\n\n // Less var (e.g. @var: x), but exclude variable interpolation (e.g. @{var})\n if (prop[0] === '@' && prop[1] !== '{') {\n return false\n }\n\n // Sass nested properties (e.g. border: { style: solid; color: red; })\n if (\n parent.selector &&\n parent.selector[parent.selector.length - 1] === ':' &&\n parent.selector.substring(0, 2) !== '--'\n ) {\n return false\n }\n\n return true\n}\n"],"names":[],"mappings":"AAAA;;AAEG;AACG,SAAU,2BAA2B,CAAE,IAAI,gBAAc;AAC7D,IAAA,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI;AACtB,IAAA,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM;;AAI1B,IAAA,IAAI,MAAM,CAAC,IAAI,KAAK,MAAM,EAAE;AAC1B,QAAA,OAAO,KAAK;IACd;;AAGA,IAAA,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;AACnB,QAAA,OAAO,KAAK;IACd;;AAGA,IAAA,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;AACtC,QAAA,OAAO,KAAK;IACd;;IAGA,IACE,MAAM,CAAC,QAAQ;AACf,QAAA,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,GAAG;AACnD,QAAA,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,IAAI,EACxC;AACA,QAAA,OAAO,KAAK;IACd;AAEA,IAAA,OAAO,IAAI;AACb;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"isStandardSyntaxProperty.js","sources":["../../src/utils/isStandardSyntaxProperty.js"],"sourcesContent":["import { endsWith } from './endsWith.js'\nimport { hasInterpolation } from './hasInterpolation.js'\n\n/**\n * Check whether a property is standard\n */\nexport function isStandardSyntaxProperty (\n property /*: string */\n) /*: boolean */ {\n // SCSS var (e.g. $var: x), list (e.g. $list: (x)) or map (e.g. $map: (key:value))\n if (property[0] === '$') {\n return false\n }\n\n // Less var (e.g. @var: x)\n if (property[0] === '@') {\n return false\n }\n\n // Less append property value with space (e.g. transform+_: scale(2))\n if (endsWith(property, '+') || endsWith(property, '+_')) {\n return false\n }\n\n // SCSS or Less interpolation\n if (hasInterpolation(property)) {\n return false\n }\n\n return true\n}\n"],"names":[],"mappings":";;;AAGA;;AAEG;AACa,SAAA,wBAAwB,CACtC,QAAQ,gBAAc;;AAGtB,IAAA,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;AACvB,QAAA,OAAO,KAAK,CAAA;AACb,KAAA;;AAGD,IAAA,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;AACvB,QAAA,OAAO,KAAK,CAAA;AACb,KAAA;;AAGD,IAAA,IAAI,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,IAAI,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAE;AACvD,QAAA,OAAO,KAAK,CAAA;AACb,KAAA;;AAGD,IAAA,IAAI,gBAAgB,CAAC,QAAQ,CAAC,EAAE;AAC9B,QAAA,OAAO,KAAK,CAAA;AACb,KAAA;AAED,IAAA,OAAO,IAAI,CAAA;AACb;;;;"}
1
+ {"version":3,"file":"isStandardSyntaxProperty.js","sources":["../../../src/utils/isStandardSyntaxProperty.js"],"sourcesContent":["import { endsWith } from './endsWith.js'\nimport { hasInterpolation } from './hasInterpolation.js'\n\n/**\n * Check whether a property is standard\n */\nexport function isStandardSyntaxProperty (\n property /*: string */\n) /*: boolean */ {\n // SCSS var (e.g. $var: x), list (e.g. $list: (x)) or map (e.g. $map: (key:value))\n if (property[0] === '$') {\n return false\n }\n\n // Less var (e.g. @var: x)\n if (property[0] === '@') {\n return false\n }\n\n // Less append property value with space (e.g. transform+_: scale(2))\n if (endsWith(property, '+') || endsWith(property, '+_')) {\n return false\n }\n\n // SCSS or Less interpolation\n if (hasInterpolation(property)) {\n return false\n }\n\n return true\n}\n"],"names":[],"mappings":";;;AAGA;;AAEG;AACG,SAAU,wBAAwB,CACtC,QAAQ,gBAAc;;AAGtB,IAAA,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;AACvB,QAAA,OAAO,KAAK;IACd;;AAGA,IAAA,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;AACvB,QAAA,OAAO,KAAK;IACd;;AAGA,IAAA,IAAI,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,IAAI,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAE;AACvD,QAAA,OAAO,KAAK;IACd;;AAGA,IAAA,IAAI,gBAAgB,CAAC,QAAQ,CAAC,EAAE;AAC9B,QAAA,OAAO,KAAK;IACd;AAEA,IAAA,OAAO,IAAI;AACb;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"isString.js","sources":["../../src/utils/isString.js"],"sourcesContent":["export const isString = string => typeof string === 'string'\n"],"names":[],"mappings":"AAAO,MAAM,QAAQ,GAAG,MAAM,IAAI,OAAO,MAAM,KAAK;;;;"}
1
+ {"version":3,"file":"isString.js","sources":["../../../src/utils/isString.js"],"sourcesContent":["export const isString = string => typeof string === 'string'\n"],"names":[],"mappings":"AAAO,MAAM,QAAQ,GAAG,MAAM,IAAI,OAAO,MAAM,KAAK;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"kebabCase.js","sources":["../../src/utils/kebabCase.js"],"sourcesContent":["export const kebabCase = string =>\n string.replace(/([a-z])([A-Z])/g, '$1-$2').toLowerCase()\n"],"names":[],"mappings":"AAAa,MAAA,SAAS,GAAG,MAAM,IAC7B,MAAM,CAAC,OAAO,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC,WAAW;;;;"}
1
+ {"version":3,"file":"kebabCase.js","sources":["../../../src/utils/kebabCase.js"],"sourcesContent":["export const kebabCase = string =>\n string.replace(/([a-z])([A-Z])/g, '$1-$2').toLowerCase()\n"],"names":[],"mappings":"AAAO,MAAM,SAAS,GAAG,MAAM,IAC7B,MAAM,CAAC,OAAO,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC,WAAW;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"matchesStringOrRegExp.js","sources":["../../src/utils/matchesStringOrRegExp.js"],"sourcesContent":["/**\n * Compares a string to a second value that, if it fits a certain convention,\n * is converted to a regular expression before the comparison.\n * If it doesn't fit the convention, then two strings are compared.\n *\n * Any strings starting and ending with `/` are interpreted\n * as regular expressions.\n */\nexport function matchesStringOrRegExp (\n input /*: string | Array<string> */,\n comparison /*: string | Array<string> */\n) /*: false | { match: string, pattern: string } */ {\n if (!Array.isArray(input)) {\n return testAgainstStringOrRegExpOrArray(input, comparison)\n }\n\n for (const inputItem of input) {\n const testResult = testAgainstStringOrRegExpOrArray(inputItem, comparison)\n if (testResult) {\n return testResult\n }\n }\n\n return false\n}\n\nfunction testAgainstStringOrRegExpOrArray (value, comparison) {\n if (!Array.isArray(comparison)) {\n return testAgainstStringOrRegExp(value, comparison)\n }\n\n for (const comparisonItem of comparison) {\n const testResult = testAgainstStringOrRegExp(value, comparisonItem)\n if (testResult) {\n return testResult\n }\n }\n return false\n}\n\nfunction testAgainstStringOrRegExp (value, comparison) {\n // If it's a RegExp, test directly\n if (comparison instanceof RegExp) {\n return comparison.test(value)\n ? { match: value, pattern: comparison }\n : false\n }\n\n // Check if it's RegExp in a string\n const firstComparisonChar = comparison[0]\n const lastComparisonChar = comparison[comparison.length - 1]\n const secondToLastComparisonChar = comparison[comparison.length - 2]\n\n const comparisonIsRegex =\n firstComparisonChar === '/' &&\n (lastComparisonChar === '/' ||\n (secondToLastComparisonChar === '/' && lastComparisonChar === 'i'))\n\n const hasCaseInsensitiveFlag =\n comparisonIsRegex && lastComparisonChar === 'i'\n\n // If so, create a new RegExp from it\n if (comparisonIsRegex) {\n const valueMatches = hasCaseInsensitiveFlag\n ? new RegExp(comparison.slice(1, -2), 'i').test(value)\n : new RegExp(comparison.slice(1, -1)).test(value)\n return valueMatches ? { match: value, pattern: comparison } : false\n }\n\n // Otherwise, it's a string. Do a strict comparison\n return value === comparison ? { match: value, pattern: comparison } : false\n}\n"],"names":[],"mappings":"AAAA;;;;;;;AAOG;AACG,SAAU,qBAAqB,CACnC,KAAK,gCACL,UAAU,gCAA8B;AAExC,IAAA,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;AACzB,QAAA,OAAO,gCAAgC,CAAC,KAAK,EAAE,UAAU,CAAC,CAAA;AAC3D,KAAA;AAED,IAAA,KAAK,MAAM,SAAS,IAAI,KAAK,EAAE;QAC7B,MAAM,UAAU,GAAG,gCAAgC,CAAC,SAAS,EAAE,UAAU,CAAC,CAAA;AAC1E,QAAA,IAAI,UAAU,EAAE;AACd,YAAA,OAAO,UAAU,CAAA;AAClB,SAAA;AACF,KAAA;AAED,IAAA,OAAO,KAAK,CAAA;AACd,CAAC;AAED,SAAS,gCAAgC,CAAE,KAAK,EAAE,UAAU,EAAA;AAC1D,IAAA,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;AAC9B,QAAA,OAAO,yBAAyB,CAAC,KAAK,EAAE,UAAU,CAAC,CAAA;AACpD,KAAA;AAED,IAAA,KAAK,MAAM,cAAc,IAAI,UAAU,EAAE;QACvC,MAAM,UAAU,GAAG,yBAAyB,CAAC,KAAK,EAAE,cAAc,CAAC,CAAA;AACnE,QAAA,IAAI,UAAU,EAAE;AACd,YAAA,OAAO,UAAU,CAAA;AAClB,SAAA;AACF,KAAA;AACD,IAAA,OAAO,KAAK,CAAA;AACd,CAAC;AAED,SAAS,yBAAyB,CAAE,KAAK,EAAE,UAAU,EAAA;;IAEnD,IAAI,UAAU,YAAY,MAAM,EAAE;AAChC,QAAA,OAAO,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC;cACzB,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE;cACrC,KAAK,CAAA;AACV,KAAA;;AAGD,IAAA,MAAM,mBAAmB,GAAG,UAAU,CAAC,CAAC,CAAC,CAAA;IACzC,MAAM,kBAAkB,GAAG,UAAU,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;IAC5D,MAAM,0BAA0B,GAAG,UAAU,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;AAEpE,IAAA,MAAM,iBAAiB,GACrB,mBAAmB,KAAK,GAAG;SAC1B,kBAAkB,KAAK,GAAG;aACxB,0BAA0B,KAAK,GAAG,IAAI,kBAAkB,KAAK,GAAG,CAAC,CAAC,CAAA;AAEvE,IAAA,MAAM,sBAAsB,GAC1B,iBAAiB,IAAI,kBAAkB,KAAK,GAAG,CAAA;;AAGjD,IAAA,IAAI,iBAAiB,EAAE;QACrB,MAAM,YAAY,GAAG,sBAAsB;cACvC,IAAI,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;AACtD,cAAE,IAAI,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;AACnD,QAAA,OAAO,YAAY,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,KAAK,CAAA;AACpE,KAAA;;AAGD,IAAA,OAAO,KAAK,KAAK,UAAU,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,KAAK,CAAA;AAC7E;;;;"}
1
+ {"version":3,"file":"matchesStringOrRegExp.js","sources":["../../../src/utils/matchesStringOrRegExp.js"],"sourcesContent":["/**\n * Compares a string to a second value that, if it fits a certain convention,\n * is converted to a regular expression before the comparison.\n * If it doesn't fit the convention, then two strings are compared.\n *\n * Any strings starting and ending with `/` are interpreted\n * as regular expressions.\n */\nexport function matchesStringOrRegExp (\n input /*: string | Array<string> */,\n comparison /*: string | Array<string> */\n) /*: false | { match: string, pattern: string } */ {\n if (!Array.isArray(input)) {\n return testAgainstStringOrRegExpOrArray(input, comparison)\n }\n\n for (const inputItem of input) {\n const testResult = testAgainstStringOrRegExpOrArray(inputItem, comparison)\n if (testResult) {\n return testResult\n }\n }\n\n return false\n}\n\nfunction testAgainstStringOrRegExpOrArray (value, comparison) {\n if (!Array.isArray(comparison)) {\n return testAgainstStringOrRegExp(value, comparison)\n }\n\n for (const comparisonItem of comparison) {\n const testResult = testAgainstStringOrRegExp(value, comparisonItem)\n if (testResult) {\n return testResult\n }\n }\n return false\n}\n\nfunction testAgainstStringOrRegExp (value, comparison) {\n // If it's a RegExp, test directly\n if (comparison instanceof RegExp) {\n return comparison.test(value)\n ? { match: value, pattern: comparison }\n : false\n }\n\n // Check if it's RegExp in a string\n const firstComparisonChar = comparison[0]\n const lastComparisonChar = comparison[comparison.length - 1]\n const secondToLastComparisonChar = comparison[comparison.length - 2]\n\n const comparisonIsRegex =\n firstComparisonChar === '/' &&\n (lastComparisonChar === '/' ||\n (secondToLastComparisonChar === '/' && lastComparisonChar === 'i'))\n\n const hasCaseInsensitiveFlag =\n comparisonIsRegex && lastComparisonChar === 'i'\n\n // If so, create a new RegExp from it\n if (comparisonIsRegex) {\n const valueMatches = hasCaseInsensitiveFlag\n ? new RegExp(comparison.slice(1, -2), 'i').test(value)\n : new RegExp(comparison.slice(1, -1)).test(value)\n return valueMatches ? { match: value, pattern: comparison } : false\n }\n\n // Otherwise, it's a string. Do a strict comparison\n return value === comparison ? { match: value, pattern: comparison } : false\n}\n"],"names":[],"mappings":"AAAA;;;;;;;AAOG;AACG,SAAU,qBAAqB,CACnC,KAAK,gCACL,UAAU,gCAA8B;IAExC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;AACzB,QAAA,OAAO,gCAAgC,CAAC,KAAK,EAAE,UAAU,CAAC;IAC5D;AAEA,IAAA,KAAK,MAAM,SAAS,IAAI,KAAK,EAAE;QAC7B,MAAM,UAAU,GAAG,gCAAgC,CAAC,SAAS,EAAE,UAAU,CAAC;QAC1E,IAAI,UAAU,EAAE;AACd,YAAA,OAAO,UAAU;QACnB;IACF;AAEA,IAAA,OAAO,KAAK;AACd;AAEA,SAAS,gCAAgC,CAAE,KAAK,EAAE,UAAU,EAAA;IAC1D,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;AAC9B,QAAA,OAAO,yBAAyB,CAAC,KAAK,EAAE,UAAU,CAAC;IACrD;AAEA,IAAA,KAAK,MAAM,cAAc,IAAI,UAAU,EAAE;QACvC,MAAM,UAAU,GAAG,yBAAyB,CAAC,KAAK,EAAE,cAAc,CAAC;QACnE,IAAI,UAAU,EAAE;AACd,YAAA,OAAO,UAAU;QACnB;IACF;AACA,IAAA,OAAO,KAAK;AACd;AAEA,SAAS,yBAAyB,CAAE,KAAK,EAAE,UAAU,EAAA;;AAEnD,IAAA,IAAI,UAAU,YAAY,MAAM,EAAE;AAChC,QAAA,OAAO,UAAU,CAAC,IAAI,CAAC,KAAK;cACxB,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU;cACnC,KAAK;IACX;;AAGA,IAAA,MAAM,mBAAmB,GAAG,UAAU,CAAC,CAAC,CAAC;IACzC,MAAM,kBAAkB,GAAG,UAAU,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC;IAC5D,MAAM,0BAA0B,GAAG,UAAU,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC;AAEpE,IAAA,MAAM,iBAAiB,GACrB,mBAAmB,KAAK,GAAG;SAC1B,kBAAkB,KAAK,GAAG;aACxB,0BAA0B,KAAK,GAAG,IAAI,kBAAkB,KAAK,GAAG,CAAC,CAAC;AAEvE,IAAA,MAAM,sBAAsB,GAC1B,iBAAiB,IAAI,kBAAkB,KAAK,GAAG;;IAGjD,IAAI,iBAAiB,EAAE;QACrB,MAAM,YAAY,GAAG;cACjB,IAAI,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK;AACrD,cAAE,IAAI,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;AACnD,QAAA,OAAO,YAAY,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,KAAK;IACrE;;AAGA,IAAA,OAAO,KAAK,KAAK,UAAU,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,KAAK;AAC7E;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"namespace.js","sources":["../../src/utils/namespace.js"],"sourcesContent":["const prefix = 'taro-rn'\n\nexport function namespace (ruleName) {\n return `${prefix}/${ruleName}`\n}\n"],"names":[],"mappings":"AAAA,MAAM,MAAM,GAAG,SAAS,CAAA;AAElB,SAAU,SAAS,CAAE,QAAQ,EAAA;AACjC,IAAA,OAAO,CAAG,EAAA,MAAM,CAAI,CAAA,EAAA,QAAQ,EAAE,CAAA;AAChC;;;;"}
1
+ {"version":3,"file":"namespace.js","sources":["../../../src/utils/namespace.js"],"sourcesContent":["const prefix = 'taro-rn'\n\nexport function namespace (ruleName) {\n return `${prefix}/${ruleName}`\n}\n"],"names":[],"mappings":"AAAA,MAAM,MAAM,GAAG,SAAS;AAElB,SAAU,SAAS,CAAE,QAAQ,EAAA;AACjC,IAAA,OAAO,CAAA,EAAG,MAAM,CAAA,CAAA,EAAI,QAAQ,EAAE;AAChC;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"optionsMatches.js","sources":["../../src/utils/optionsMatches.js"],"sourcesContent":["import { matchesStringOrRegExp } from './matchesStringOrRegExp.js'\n\n/**\n * Check if an options object's propertyName contains a user-defined string or\n * regex that matches the passed in input.\n */\nexport function optionsMatches (\n options /*: Object */,\n propertyName /*: string */,\n input /*: string */\n) /*: boolean */ {\n return !!(\n options &&\n options[propertyName] &&\n typeof input === 'string' &&\n matchesStringOrRegExp(input, options[propertyName])\n )\n}\n"],"names":[],"mappings":";;AAEA;;;AAGG;AACa,SAAA,cAAc,CAC5B,OAAO,gBACP,YAAY,gBACZ,KAAK,gBAAc;IAEnB,OAAO,CAAC,EACN,OAAO;QACP,OAAO,CAAC,YAAY,CAAC;QACrB,OAAO,KAAK,KAAK,QAAQ;QACzB,qBAAqB,CAAC,KAAK,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC,CACpD,CAAA;AACH;;;;"}
1
+ {"version":3,"file":"optionsMatches.js","sources":["../../../src/utils/optionsMatches.js"],"sourcesContent":["import { matchesStringOrRegExp } from './matchesStringOrRegExp.js'\n\n/**\n * Check if an options object's propertyName contains a user-defined string or\n * regex that matches the passed in input.\n */\nexport function optionsMatches (\n options /*: Object */,\n propertyName /*: string */,\n input /*: string */\n) /*: boolean */ {\n return !!(\n options &&\n options[propertyName] &&\n typeof input === 'string' &&\n matchesStringOrRegExp(input, options[propertyName])\n )\n}\n"],"names":[],"mappings":";;AAEA;;;AAGG;AACG,SAAU,cAAc,CAC5B,OAAO,gBACP,YAAY,gBACZ,KAAK,gBAAc;IAEnB,OAAO,CAAC,EACN,OAAO;QACP,OAAO,CAAC,YAAY,CAAC;QACrB,OAAO,KAAK,KAAK,QAAQ;QACzB,qBAAqB,CAAC,KAAK,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC,CACpD;AACH;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@htyf-mp/stylelint-taro-rn",
3
- "version": "0.0.1",
3
+ "version": "0.3.12-alpha.3",
4
4
  "description": "A collection of React Native specific rules for stylelint",
5
5
  "author": "dgz",
6
6
  "license": "MIT",
@@ -42,14 +42,19 @@
42
42
  "node": ">= 18"
43
43
  },
44
44
  "dependencies": {
45
+ "@rollup/plugin-typescript": "^12.3.0",
45
46
  "react-native-known-styling-properties": "^1.3.0"
46
47
  },
47
48
  "devDependencies": {
48
49
  "lodash": "^4.17.21",
49
- "rollup-plugin-node-externals": "^9.0.1",
50
+ "rollup-plugin-node-externals": "^8.1.2",
50
51
  "stylelint": ">=16.4.0 <=16.10.0"
51
52
  },
52
53
  "peerDependencies": {
53
54
  "stylelint": "^16"
54
- }
55
+ },
56
+ "publishConfig": {
57
+ "access": "public"
58
+ },
59
+ "gitHead": "0aea055356ebcf463b5f6ada61bbebb02d697bf0"
55
60
  }
@@ -1 +0,0 @@
1
- export function isString(string: any): boolean;
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes