@atlaskit/eslint-plugin-design-system 14.0.0 → 14.2.0
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.
- package/CHANGELOG.md +14 -0
- package/README.md +1 -0
- package/dist/cjs/presets/all-flat.codegen.js +2 -1
- package/dist/cjs/presets/all.codegen.js +2 -1
- package/dist/cjs/presets/recommended-flat.codegen.js +2 -1
- package/dist/cjs/presets/recommended.codegen.js +2 -1
- package/dist/cjs/rules/consistent-css-prop-usage/index.js +5 -5
- package/dist/cjs/rules/ensure-design-token-usage/border-width-value-to-token.js +12 -0
- package/dist/cjs/rules/ensure-design-token-usage/clean-comments.js +13 -0
- package/dist/cjs/rules/ensure-design-token-usage/color.js +13 -11
- package/dist/cjs/rules/ensure-design-token-usage/convert-hyphenated-name-to-camel-case.js +12 -0
- package/dist/cjs/rules/ensure-design-token-usage/find-parent-node-for-line.js +21 -0
- package/dist/cjs/rules/ensure-design-token-usage/get-elevation-token-example.js +9 -0
- package/dist/cjs/rules/ensure-design-token-usage/get-raw-expression.js +22 -0
- package/dist/cjs/rules/ensure-design-token-usage/includes-token-string.js +9 -0
- package/dist/cjs/rules/ensure-design-token-usage/index.js +21 -11
- package/dist/cjs/rules/ensure-design-token-usage/insert-tokens-import.js +10 -0
- package/dist/cjs/rules/ensure-design-token-usage/is-auto.js +14 -0
- package/dist/cjs/rules/ensure-design-token-usage/is-border-radius.js +10 -0
- package/dist/cjs/rules/ensure-design-token-usage/is-token-value-string.js +13 -0
- package/dist/cjs/rules/ensure-design-token-usage/is-zero.js +19 -0
- package/dist/cjs/rules/ensure-design-token-usage/normalise-value.js +29 -0
- package/dist/cjs/rules/ensure-design-token-usage/radius-value-to-token.js +14 -0
- package/dist/cjs/rules/ensure-design-token-usage/shape.js +0 -20
- package/dist/cjs/rules/ensure-design-token-usage/spacing.js +12 -7
- package/dist/cjs/rules/ensure-design-token-usage/split-css-properties.js +31 -0
- package/dist/cjs/rules/ensure-design-token-usage/split-shorthand-values.js +20 -0
- package/dist/cjs/rules/ensure-design-token-usage/utils.js +20 -164
- package/dist/cjs/rules/icon-label/index.js +4 -4
- package/dist/cjs/rules/index.codegen.js +3 -1
- package/dist/cjs/rules/no-direct-use-of-web-platform-drag-and-drop/checks/is-blocked-add-event-listener.js +2 -2
- package/dist/cjs/rules/no-direct-use-of-web-platform-drag-and-drop/checks/is-blocked-bind-all.js +2 -2
- package/dist/cjs/rules/no-direct-use-of-web-platform-drag-and-drop/checks/is-blocked-bind.js +2 -2
- package/dist/cjs/rules/no-direct-use-of-web-platform-drag-and-drop/checks/is-blocked-jsx-attribute.js +4 -4
- package/dist/cjs/rules/no-direct-use-of-web-platform-drag-and-drop/shared/blocked-event-name-lookup.js +7 -0
- package/dist/cjs/rules/no-direct-use-of-web-platform-drag-and-drop/shared/blocked-jsx-attribute-lookup.js +7 -0
- package/dist/cjs/rules/no-direct-use-of-web-platform-drag-and-drop/shared/is-blocked-event-binding.js +2 -2
- package/dist/cjs/rules/no-html-anchor/index.js +4 -3
- package/dist/cjs/rules/no-html-anchor/node-types/jsx-element/index.js +2 -4
- package/dist/cjs/rules/no-html-anchor/node-types/supported.js +3 -5
- package/dist/cjs/rules/no-html-button/index.js +4 -3
- package/dist/cjs/rules/no-html-button/node-types/jsx-element/index.js +2 -4
- package/dist/cjs/rules/no-html-button/node-types/supported.js +3 -5
- package/dist/cjs/rules/no-html-checkbox/index.js +2 -2
- package/dist/cjs/rules/no-html-checkbox/node-types/jsx-element/index.js +2 -4
- package/dist/cjs/rules/no-html-checkbox/node-types/supported.js +3 -5
- package/dist/cjs/rules/no-html-code/index.js +4 -3
- package/dist/cjs/rules/no-html-code/node-types/jsx-element/index.js +2 -4
- package/dist/cjs/rules/no-html-code/node-types/supported.js +3 -5
- package/dist/cjs/rules/no-html-heading/index.js +4 -3
- package/dist/cjs/rules/no-html-heading/node-types/jsx-element/index.js +2 -4
- package/dist/cjs/rules/no-html-heading/node-types/supported.js +3 -5
- package/dist/cjs/rules/no-html-image/index.js +4 -3
- package/dist/cjs/rules/no-html-image/node-types/jsx-element/index.js +2 -4
- package/dist/cjs/rules/no-html-image/node-types/supported.js +3 -5
- package/dist/cjs/rules/no-html-radio/index.js +2 -2
- package/dist/cjs/rules/no-html-radio/node-types/jsx-element/index.js +2 -4
- package/dist/cjs/rules/no-html-radio/node-types/supported.js +3 -5
- package/dist/cjs/rules/no-html-range/index.js +2 -2
- package/dist/cjs/rules/no-html-range/node-types/jsx-element/index.js +2 -4
- package/dist/cjs/rules/no-html-range/node-types/supported.js +3 -5
- package/dist/cjs/rules/no-html-select/index.js +4 -3
- package/dist/cjs/rules/no-html-select/node-types/jsx-element/index.js +2 -4
- package/dist/cjs/rules/no-html-select/node-types/supported.js +3 -5
- package/dist/cjs/rules/no-html-text-input/index.js +2 -2
- package/dist/cjs/rules/no-html-text-input/node-types/jsx-element/index.js +2 -4
- package/dist/cjs/rules/no-html-text-input/node-types/supported.js +3 -5
- package/dist/cjs/rules/no-html-textarea/index.js +4 -3
- package/dist/cjs/rules/no-html-textarea/node-types/jsx-element/index.js +2 -4
- package/dist/cjs/rules/no-html-textarea/node-types/supported.js +3 -5
- package/dist/cjs/rules/no-icon-spacing-prop/get-css-map-key.js +13 -0
- package/dist/cjs/rules/no-icon-spacing-prop/get-icon-size.js +23 -0
- package/dist/cjs/rules/no-icon-spacing-prop/get-spacing-attribute.js +18 -0
- package/dist/cjs/rules/no-icon-spacing-prop/get-static-attribute-value.js +15 -0
- package/dist/cjs/rules/no-icon-spacing-prop/has-spread-props.js +14 -0
- package/dist/cjs/rules/no-icon-spacing-prop/index.js +24 -14
- package/dist/cjs/rules/no-icon-spacing-prop/spacing-to-padding.js +20 -0
- package/dist/cjs/rules/no-icon-spacing-prop/upsert-css-map-import.js +52 -0
- package/dist/cjs/rules/no-icon-spacing-prop/upsert-css-map-variable.js +58 -0
- package/dist/cjs/rules/no-icon-spacing-prop/upsert-flex-import.js +59 -0
- package/dist/cjs/rules/no-icon-spacing-prop/upsert-token-import.js +41 -0
- package/dist/cjs/rules/no-invalid-css-map/get-css-map-object.js +18 -0
- package/dist/cjs/rules/no-invalid-css-map/index.js +2 -1
- package/dist/cjs/rules/no-invalid-css-map/utils.js +1 -13
- package/dist/cjs/rules/no-physical-properties/index.js +5 -5
- package/dist/cjs/rules/no-physical-properties/logical-physical-map.js +1 -35
- package/dist/cjs/rules/no-physical-properties/physical-logical-map.js +40 -0
- package/dist/cjs/rules/no-placeholder/index.js +2 -4
- package/dist/cjs/rules/no-readonly-or-disabled-inputs/index.js +146 -0
- package/dist/cjs/rules/no-unsafe-design-token-usage/index.js +2 -1
- package/dist/cjs/rules/no-unsafe-style-overrides/index.js +3 -3
- package/dist/cjs/rules/prefer-primitives/utils.js +3 -3
- package/dist/cjs/rules/prefer-primitives/valid-primitive-elements.js +7 -0
- package/dist/cjs/rules/use-heading/index.js +2 -2
- package/dist/cjs/rules/use-heading/transformers/allowed-attrs.js +7 -0
- package/dist/cjs/rules/use-heading/transformers/common.js +1 -14
- package/dist/cjs/rules/use-heading/transformers/native-elements.js +12 -12
- package/dist/cjs/rules/use-heading/transformers/update-test-id-attribute-fix.js +15 -0
- package/dist/cjs/rules/use-href-in-link-item/get-unique-button-item-name.js +28 -0
- package/dist/cjs/rules/use-href-in-link-item/has-import-of-name.js +17 -0
- package/dist/cjs/rules/use-href-in-link-item/index.js +9 -5
- package/dist/cjs/rules/use-href-in-link-item/insert-button-item-default-import.js +9 -0
- package/dist/cjs/rules/use-href-in-link-item/insert-button-item-import.js +10 -0
- package/dist/cjs/rules/use-href-in-link-item/utils.js +1 -40
- package/dist/cjs/rules/use-latest-xcss-syntax/index.js +2 -2
- package/dist/cjs/rules/use-latest-xcss-syntax/transformers/style-property/index.js +8 -8
- package/dist/cjs/rules/use-latest-xcss-syntax-typography/index.js +9 -7
- package/dist/cjs/rules/use-primitives/index.js +4 -3
- package/dist/cjs/rules/use-primitives/transformers/compiled-styled/{supported.js → attributes.js} +1 -2
- package/dist/cjs/rules/use-primitives/transformers/compiled-styled/convert-jsx-call-site.js +2 -4
- package/dist/cjs/rules/use-primitives/transformers/compiled-styled/elements.js +7 -0
- package/dist/cjs/rules/use-primitives/transformers/compiled-styled/find-valid-styled-component-call.js +2 -4
- package/dist/cjs/rules/use-primitives/transformers/compiled-styled/index.js +7 -8
- package/dist/cjs/rules/use-primitives/transformers/css-to-xcss.js +35 -43
- package/dist/cjs/rules/use-primitives/transformers/dimensions-map.js +9 -0
- package/dist/cjs/rules/use-primitives/transformers/emotion-css/{supported.js → attributes.js} +1 -2
- package/dist/cjs/rules/use-primitives/transformers/emotion-css/elements.js +7 -0
- package/dist/cjs/rules/use-primitives/transformers/emotion-css/index.js +23 -19
- package/dist/cjs/rules/use-primitives/transformers/space-token-map.js +8 -0
- package/dist/cjs/rules/use-primitives/transformers/space-token-positive-map.js +8 -0
- package/dist/cjs/rules/use-primitives/transformers/supported-dimension-attributes-map.js +15 -0
- package/dist/cjs/rules/use-primitives/utils/convert-ast-object-expression-to-js-object.js +3 -3
- package/dist/cjs/rules/use-primitives/utils/is-valid-css-properties-to-transform.js +5 -6
- package/dist/cjs/rules/use-primitives/utils/spread-syntax.js +7 -0
- package/dist/cjs/rules/use-primitives/utils/validate-styles.js +15 -14
- package/dist/cjs/rules/use-primitives-text/index.js +8 -5
- package/dist/cjs/rules/use-primitives-text/transformers/add-color-inherit-attribute-fix.js +14 -0
- package/dist/cjs/rules/use-primitives-text/transformers/allowed-attrs.js +7 -0
- package/dist/cjs/rules/use-primitives-text/transformers/common.js +1 -47
- package/dist/cjs/rules/use-primitives-text/transformers/emphasis-elements.js +13 -12
- package/dist/cjs/rules/use-primitives-text/transformers/has-text-children-only.js +29 -0
- package/dist/cjs/rules/use-primitives-text/transformers/paragraph-elements.js +21 -20
- package/dist/cjs/rules/use-primitives-text/transformers/span-elements.js +14 -12
- package/dist/cjs/rules/use-primitives-text/transformers/strong-elements.js +13 -12
- package/dist/cjs/rules/use-primitives-text/transformers/update-test-id-attribute-fix.js +15 -0
- package/dist/cjs/rules/use-should-render-to-parent/index.js +32 -9
- package/dist/cjs/rules/use-spotlight-package/index.js +2 -2
- package/dist/cjs/rules/use-tokens-shape/transformers/index.js +8 -9
- package/dist/cjs/rules/use-tokens-space/index.js +6 -6
- package/dist/cjs/rules/use-tokens-space/transformers/style-property/index.js +8 -9
- package/dist/cjs/rules/use-tokens-typography/convert-property-node-to-stringable-node.js +13 -0
- package/dist/cjs/rules/use-tokens-typography/find-font-family-token-for-value.js +17 -0
- package/dist/cjs/rules/use-tokens-typography/get-literal-property.js +13 -0
- package/dist/cjs/rules/use-tokens-typography/insert-tokens-import.js +13 -0
- package/dist/cjs/rules/use-tokens-typography/is-code-font-family.js +10 -0
- package/dist/cjs/rules/use-tokens-typography/is-font-family.js +10 -0
- package/dist/cjs/rules/use-tokens-typography/is-font-size-small.js +10 -0
- package/dist/cjs/rules/use-tokens-typography/is-font-size.js +10 -0
- package/dist/cjs/rules/use-tokens-typography/is-typography-property.js +10 -0
- package/dist/cjs/rules/use-tokens-typography/is-valid-property-node.js +13 -0
- package/dist/cjs/rules/use-tokens-typography/is-valid-typography-token.js +16 -0
- package/dist/cjs/rules/use-tokens-typography/not-undefined.js +9 -0
- package/dist/cjs/rules/use-tokens-typography/transformers/banned-properties.js +2 -1
- package/dist/cjs/rules/use-tokens-typography/transformers/font-family.js +8 -6
- package/dist/cjs/rules/use-tokens-typography/transformers/font-weight.js +6 -4
- package/dist/cjs/rules/use-tokens-typography/transformers/style-object.js +33 -22
- package/dist/cjs/rules/use-tokens-typography/transformers/untokenized-properties.js +2 -1
- package/dist/cjs/rules/use-tokens-typography/typography-properties.js +7 -0
- package/dist/cjs/rules/use-tokens-typography/utils.js +8 -73
- package/dist/cjs/rules/use-visually-hidden/fix-jsx.js +4 -4
- package/dist/cjs/rules/use-visually-hidden/fix-vanilla.js +4 -4
- package/dist/cjs/rules/use-visually-hidden/get-first-import.js +14 -0
- package/dist/cjs/rules/use-visually-hidden/index.js +4 -2
- package/dist/cjs/rules/use-visually-hidden/make-template-literal-into-entries.js +18 -0
- package/dist/cjs/rules/use-visually-hidden/utils.js +1 -23
- package/dist/cjs/rules/utils/find-prop.js +12 -0
- package/dist/cjs/rules/utils/get-imported-node-by-source.js +18 -0
- package/dist/cjs/rules/utils/{get-import-node-by-source.js → get-module-of-identifier.js} +1 -14
- package/dist/cjs/rules/utils/is-child-of-type.js +10 -0
- package/dist/cjs/rules/utils/is-color.js +1 -5
- package/dist/cjs/rules/utils/is-css-in-js-template-node.js +9 -0
- package/dist/cjs/rules/utils/is-current-surface-custom-property-name.js +10 -0
- package/dist/cjs/rules/utils/is-decendant-of-global-token.js +16 -0
- package/dist/cjs/rules/utils/is-decendant-of-primitive.js +25 -0
- package/dist/cjs/rules/utils/is-decendant-of-style-jsx-attribute.js +16 -0
- package/dist/cjs/rules/utils/is-decendant-of-svg-element.js +19 -0
- package/dist/cjs/rules/utils/is-decendant-of-type.js +16 -0
- package/dist/cjs/rules/utils/is-decendant-of-xcss-block.js +17 -0
- package/dist/cjs/rules/utils/is-node.js +9 -84
- package/dist/cjs/rules/utils/is-property-key.js +15 -0
- package/dist/cjs/rules/utils/jsx.js +0 -7
- package/dist/es2019/presets/all-flat.codegen.js +2 -1
- package/dist/es2019/presets/all.codegen.js +2 -1
- package/dist/es2019/presets/recommended-flat.codegen.js +2 -1
- package/dist/es2019/presets/recommended.codegen.js +2 -1
- package/dist/es2019/rules/consistent-css-prop-usage/index.js +2 -2
- package/dist/es2019/rules/ensure-design-token-usage/border-width-value-to-token.js +2 -0
- package/dist/es2019/rules/ensure-design-token-usage/clean-comments.js +7 -0
- package/dist/es2019/rules/ensure-design-token-usage/color.js +6 -9
- package/dist/es2019/rules/ensure-design-token-usage/convert-hyphenated-name-to-camel-case.js +4 -0
- package/dist/es2019/rules/ensure-design-token-usage/find-parent-node-for-line.js +15 -0
- package/dist/es2019/rules/ensure-design-token-usage/get-elevation-token-example.js +8 -0
- package/dist/es2019/rules/ensure-design-token-usage/get-raw-expression.js +12 -0
- package/dist/es2019/rules/ensure-design-token-usage/includes-token-string.js +3 -0
- package/dist/es2019/rules/ensure-design-token-usage/index.js +12 -2
- package/dist/es2019/rules/ensure-design-token-usage/insert-tokens-import.js +4 -0
- package/dist/es2019/rules/ensure-design-token-usage/is-auto.js +8 -0
- package/dist/es2019/rules/ensure-design-token-usage/is-border-radius.js +4 -0
- package/dist/es2019/rules/ensure-design-token-usage/is-token-value-string.js +7 -0
- package/dist/es2019/rules/ensure-design-token-usage/is-zero.js +13 -0
- package/dist/es2019/rules/ensure-design-token-usage/normalise-value.js +23 -0
- package/dist/es2019/rules/ensure-design-token-usage/radius-value-to-token.js +6 -0
- package/dist/es2019/rules/ensure-design-token-usage/shape.js +0 -11
- package/dist/es2019/rules/ensure-design-token-usage/spacing.js +6 -1
- package/dist/es2019/rules/ensure-design-token-usage/split-css-properties.js +15 -0
- package/dist/es2019/rules/ensure-design-token-usage/split-shorthand-values.js +14 -0
- package/dist/es2019/rules/ensure-design-token-usage/utils.js +13 -133
- package/dist/es2019/rules/icon-label/index.js +1 -1
- package/dist/es2019/rules/index.codegen.js +3 -1
- package/dist/es2019/rules/no-direct-use-of-web-platform-drag-and-drop/checks/is-blocked-add-event-listener.js +1 -1
- package/dist/es2019/rules/no-direct-use-of-web-platform-drag-and-drop/checks/is-blocked-bind-all.js +1 -1
- package/dist/es2019/rules/no-direct-use-of-web-platform-drag-and-drop/checks/is-blocked-bind.js +1 -1
- package/dist/es2019/rules/no-direct-use-of-web-platform-drag-and-drop/checks/is-blocked-jsx-attribute.js +2 -2
- package/dist/es2019/rules/no-direct-use-of-web-platform-drag-and-drop/shared/blocked-event-name-lookup.js +1 -0
- package/dist/es2019/rules/no-direct-use-of-web-platform-drag-and-drop/shared/blocked-jsx-attribute-lookup.js +1 -0
- package/dist/es2019/rules/no-direct-use-of-web-platform-drag-and-drop/shared/is-blocked-event-binding.js +1 -1
- package/dist/es2019/rules/no-html-anchor/index.js +2 -1
- package/dist/es2019/rules/no-html-anchor/node-types/jsx-element/index.js +2 -2
- package/dist/es2019/rules/no-html-anchor/node-types/supported.js +3 -3
- package/dist/es2019/rules/no-html-button/index.js +2 -1
- package/dist/es2019/rules/no-html-button/node-types/jsx-element/index.js +2 -2
- package/dist/es2019/rules/no-html-button/node-types/supported.js +3 -3
- package/dist/es2019/rules/no-html-checkbox/index.js +1 -1
- package/dist/es2019/rules/no-html-checkbox/node-types/jsx-element/index.js +2 -2
- package/dist/es2019/rules/no-html-checkbox/node-types/supported.js +3 -3
- package/dist/es2019/rules/no-html-code/index.js +2 -1
- package/dist/es2019/rules/no-html-code/node-types/jsx-element/index.js +2 -2
- package/dist/es2019/rules/no-html-code/node-types/supported.js +3 -3
- package/dist/es2019/rules/no-html-heading/index.js +2 -1
- package/dist/es2019/rules/no-html-heading/node-types/jsx-element/index.js +2 -2
- package/dist/es2019/rules/no-html-heading/node-types/supported.js +3 -3
- package/dist/es2019/rules/no-html-image/index.js +2 -1
- package/dist/es2019/rules/no-html-image/node-types/jsx-element/index.js +2 -2
- package/dist/es2019/rules/no-html-image/node-types/supported.js +3 -3
- package/dist/es2019/rules/no-html-radio/index.js +1 -1
- package/dist/es2019/rules/no-html-radio/node-types/jsx-element/index.js +2 -2
- package/dist/es2019/rules/no-html-radio/node-types/supported.js +3 -3
- package/dist/es2019/rules/no-html-range/index.js +1 -1
- package/dist/es2019/rules/no-html-range/node-types/jsx-element/index.js +2 -2
- package/dist/es2019/rules/no-html-range/node-types/supported.js +3 -3
- package/dist/es2019/rules/no-html-select/index.js +2 -1
- package/dist/es2019/rules/no-html-select/node-types/jsx-element/index.js +2 -2
- package/dist/es2019/rules/no-html-select/node-types/supported.js +3 -3
- package/dist/es2019/rules/no-html-text-input/index.js +1 -1
- package/dist/es2019/rules/no-html-text-input/node-types/jsx-element/index.js +2 -2
- package/dist/es2019/rules/no-html-text-input/node-types/supported.js +3 -3
- package/dist/es2019/rules/no-html-textarea/index.js +2 -1
- package/dist/es2019/rules/no-html-textarea/node-types/jsx-element/index.js +2 -2
- package/dist/es2019/rules/no-html-textarea/node-types/supported.js +3 -3
- package/dist/es2019/rules/no-icon-spacing-prop/get-css-map-key.js +7 -0
- package/dist/es2019/rules/no-icon-spacing-prop/get-icon-size.js +16 -0
- package/dist/es2019/rules/no-icon-spacing-prop/get-spacing-attribute.js +11 -0
- package/dist/es2019/rules/no-icon-spacing-prop/get-static-attribute-value.js +9 -0
- package/dist/es2019/rules/no-icon-spacing-prop/has-spread-props.js +6 -0
- package/dist/es2019/rules/no-icon-spacing-prop/index.js +11 -1
- package/dist/es2019/rules/no-icon-spacing-prop/spacing-to-padding.js +14 -0
- package/dist/es2019/rules/no-icon-spacing-prop/upsert-css-map-import.js +36 -0
- package/dist/es2019/rules/no-icon-spacing-prop/upsert-css-map-variable.js +48 -0
- package/dist/es2019/rules/no-icon-spacing-prop/upsert-flex-import.js +41 -0
- package/dist/es2019/rules/no-icon-spacing-prop/upsert-token-import.js +29 -0
- package/dist/es2019/rules/no-invalid-css-map/get-css-map-object.js +12 -0
- package/dist/es2019/rules/no-invalid-css-map/index.js +2 -1
- package/dist/es2019/rules/no-invalid-css-map/utils.js +0 -12
- package/dist/es2019/rules/no-physical-properties/index.js +1 -1
- package/dist/es2019/rules/no-physical-properties/logical-physical-map.js +0 -34
- package/dist/es2019/rules/no-physical-properties/physical-logical-map.js +34 -0
- package/dist/es2019/rules/no-placeholder/index.js +2 -2
- package/dist/es2019/rules/no-readonly-or-disabled-inputs/index.js +124 -0
- package/dist/es2019/rules/no-unsafe-design-token-usage/index.js +2 -1
- package/dist/es2019/rules/no-unsafe-style-overrides/index.js +1 -1
- package/dist/es2019/rules/prefer-primitives/utils.js +1 -1
- package/dist/es2019/rules/prefer-primitives/valid-primitive-elements.js +1 -0
- package/dist/es2019/rules/use-heading/index.js +1 -1
- package/dist/es2019/rules/use-heading/transformers/allowed-attrs.js +1 -0
- package/dist/es2019/rules/use-heading/transformers/common.js +1 -9
- package/dist/es2019/rules/use-heading/transformers/native-elements.js +11 -9
- package/dist/es2019/rules/use-heading/transformers/update-test-id-attribute-fix.js +10 -0
- package/dist/es2019/rules/use-href-in-link-item/get-unique-button-item-name.js +16 -0
- package/dist/es2019/rules/use-href-in-link-item/has-import-of-name.js +11 -0
- package/dist/es2019/rules/use-href-in-link-item/index.js +5 -1
- package/dist/es2019/rules/use-href-in-link-item/insert-button-item-default-import.js +1 -0
- package/dist/es2019/rules/use-href-in-link-item/insert-button-item-import.js +4 -0
- package/dist/es2019/rules/use-href-in-link-item/utils.js +0 -31
- package/dist/es2019/rules/use-latest-xcss-syntax/index.js +1 -1
- package/dist/es2019/rules/use-latest-xcss-syntax/transformers/style-property/index.js +7 -5
- package/dist/es2019/rules/use-latest-xcss-syntax-typography/index.js +3 -1
- package/dist/es2019/rules/use-primitives/index.js +2 -1
- package/dist/es2019/rules/use-primitives/transformers/compiled-styled/{supported.js → attributes.js} +0 -1
- package/dist/es2019/rules/use-primitives/transformers/compiled-styled/convert-jsx-call-site.js +2 -2
- package/dist/es2019/rules/use-primitives/transformers/compiled-styled/elements.js +1 -0
- package/dist/es2019/rules/use-primitives/transformers/compiled-styled/find-valid-styled-component-call.js +2 -2
- package/dist/es2019/rules/use-primitives/transformers/compiled-styled/index.js +6 -5
- package/dist/es2019/rules/use-primitives/transformers/css-to-xcss.js +7 -15
- package/dist/es2019/rules/use-primitives/transformers/dimensions-map.js +3 -0
- package/dist/es2019/rules/use-primitives/transformers/emotion-css/{supported.js → attributes.js} +0 -1
- package/dist/es2019/rules/use-primitives/transformers/emotion-css/elements.js +1 -0
- package/dist/es2019/rules/use-primitives/transformers/emotion-css/index.js +20 -14
- package/dist/es2019/rules/use-primitives/transformers/space-token-map.js +2 -0
- package/dist/es2019/rules/use-primitives/transformers/space-token-positive-map.js +2 -0
- package/dist/es2019/rules/use-primitives/transformers/supported-dimension-attributes-map.js +9 -0
- package/dist/es2019/rules/use-primitives/utils/convert-ast-object-expression-to-js-object.js +1 -1
- package/dist/es2019/rules/use-primitives/utils/is-valid-css-properties-to-transform.js +5 -4
- package/dist/es2019/rules/use-primitives/utils/spread-syntax.js +1 -0
- package/dist/es2019/rules/use-primitives/utils/validate-styles.js +12 -9
- package/dist/es2019/rules/use-primitives-text/index.js +4 -1
- package/dist/es2019/rules/use-primitives-text/transformers/add-color-inherit-attribute-fix.js +8 -0
- package/dist/es2019/rules/use-primitives-text/transformers/allowed-attrs.js +1 -0
- package/dist/es2019/rules/use-primitives-text/transformers/common.js +1 -40
- package/dist/es2019/rules/use-primitives-text/transformers/emphasis-elements.js +11 -8
- package/dist/es2019/rules/use-primitives-text/transformers/has-text-children-only.js +24 -0
- package/dist/es2019/rules/use-primitives-text/transformers/paragraph-elements.js +17 -14
- package/dist/es2019/rules/use-primitives-text/transformers/span-elements.js +11 -7
- package/dist/es2019/rules/use-primitives-text/transformers/strong-elements.js +11 -8
- package/dist/es2019/rules/use-primitives-text/transformers/update-test-id-attribute-fix.js +10 -0
- package/dist/es2019/rules/use-should-render-to-parent/index.js +32 -9
- package/dist/es2019/rules/use-spotlight-package/index.js +1 -1
- package/dist/es2019/rules/use-tokens-shape/transformers/index.js +6 -5
- package/dist/es2019/rules/use-tokens-space/index.js +1 -1
- package/dist/es2019/rules/use-tokens-space/transformers/style-property/index.js +6 -5
- package/dist/es2019/rules/use-tokens-typography/convert-property-node-to-stringable-node.js +7 -0
- package/dist/es2019/rules/use-tokens-typography/find-font-family-token-for-value.js +11 -0
- package/dist/es2019/rules/use-tokens-typography/get-literal-property.js +7 -0
- package/dist/es2019/rules/use-tokens-typography/insert-tokens-import.js +7 -0
- package/dist/es2019/rules/use-tokens-typography/is-code-font-family.js +2 -0
- package/dist/es2019/rules/use-tokens-typography/is-font-family.js +2 -0
- package/dist/es2019/rules/use-tokens-typography/is-font-size-small.js +2 -0
- package/dist/es2019/rules/use-tokens-typography/is-font-size.js +2 -0
- package/dist/es2019/rules/use-tokens-typography/is-typography-property.js +4 -0
- package/dist/es2019/rules/use-tokens-typography/is-valid-property-node.js +7 -0
- package/dist/es2019/rules/use-tokens-typography/is-valid-typography-token.js +4 -0
- package/dist/es2019/rules/use-tokens-typography/not-undefined.js +3 -0
- package/dist/es2019/rules/use-tokens-typography/transformers/banned-properties.js +2 -1
- package/dist/es2019/rules/use-tokens-typography/transformers/font-family.js +5 -3
- package/dist/es2019/rules/use-tokens-typography/transformers/font-weight.js +5 -3
- package/dist/es2019/rules/use-tokens-typography/transformers/style-object.js +15 -4
- package/dist/es2019/rules/use-tokens-typography/transformers/untokenized-properties.js +2 -1
- package/dist/es2019/rules/use-tokens-typography/typography-properties.js +1 -0
- package/dist/es2019/rules/use-tokens-typography/utils.js +2 -51
- package/dist/es2019/rules/use-visually-hidden/fix-jsx.js +2 -2
- package/dist/es2019/rules/use-visually-hidden/fix-vanilla.js +2 -2
- package/dist/es2019/rules/use-visually-hidden/get-first-import.js +6 -0
- package/dist/es2019/rules/use-visually-hidden/index.js +4 -2
- package/dist/es2019/rules/use-visually-hidden/make-template-literal-into-entries.js +6 -0
- package/dist/es2019/rules/use-visually-hidden/utils.js +0 -14
- package/dist/es2019/rules/utils/find-prop.js +4 -0
- package/dist/es2019/rules/utils/get-imported-node-by-source.js +8 -0
- package/dist/es2019/rules/utils/{get-import-node-by-source.js → get-module-of-identifier.js} +0 -9
- package/dist/es2019/rules/utils/is-child-of-type.js +2 -0
- package/dist/es2019/rules/utils/is-color.js +1 -3
- package/dist/es2019/rules/utils/is-css-in-js-template-node.js +1 -0
- package/dist/es2019/rules/utils/is-current-surface-custom-property-name.js +2 -0
- package/dist/es2019/rules/utils/is-decendant-of-global-token.js +10 -0
- package/dist/es2019/rules/utils/is-decendant-of-primitive.js +19 -0
- package/dist/es2019/rules/utils/is-decendant-of-style-jsx-attribute.js +10 -0
- package/dist/es2019/rules/utils/is-decendant-of-svg-element.js +13 -0
- package/dist/es2019/rules/utils/is-decendant-of-type.js +9 -0
- package/dist/es2019/rules/utils/is-decendant-of-xcss-block.js +11 -0
- package/dist/es2019/rules/utils/is-node.js +2 -78
- package/dist/es2019/rules/utils/is-property-key.js +9 -0
- package/dist/es2019/rules/utils/jsx.js +0 -4
- package/dist/esm/presets/all-flat.codegen.js +2 -1
- package/dist/esm/presets/all.codegen.js +2 -1
- package/dist/esm/presets/recommended-flat.codegen.js +2 -1
- package/dist/esm/presets/recommended.codegen.js +2 -1
- package/dist/esm/rules/consistent-css-prop-usage/index.js +2 -2
- package/dist/esm/rules/ensure-design-token-usage/border-width-value-to-token.js +6 -0
- package/dist/esm/rules/ensure-design-token-usage/clean-comments.js +7 -0
- package/dist/esm/rules/ensure-design-token-usage/color.js +6 -4
- package/dist/esm/rules/ensure-design-token-usage/convert-hyphenated-name-to-camel-case.js +6 -0
- package/dist/esm/rules/ensure-design-token-usage/find-parent-node-for-line.js +16 -0
- package/dist/esm/rules/ensure-design-token-usage/get-elevation-token-example.js +3 -0
- package/dist/esm/rules/ensure-design-token-usage/get-raw-expression.js +15 -0
- package/dist/esm/rules/ensure-design-token-usage/includes-token-string.js +3 -0
- package/dist/esm/rules/ensure-design-token-usage/index.js +12 -2
- package/dist/esm/rules/ensure-design-token-usage/insert-tokens-import.js +4 -0
- package/dist/esm/rules/ensure-design-token-usage/is-auto.js +8 -0
- package/dist/esm/rules/ensure-design-token-usage/is-border-radius.js +4 -0
- package/dist/esm/rules/ensure-design-token-usage/is-token-value-string.js +7 -0
- package/dist/esm/rules/ensure-design-token-usage/is-zero.js +13 -0
- package/dist/esm/rules/ensure-design-token-usage/normalise-value.js +23 -0
- package/dist/esm/rules/ensure-design-token-usage/radius-value-to-token.js +8 -0
- package/dist/esm/rules/ensure-design-token-usage/shape.js +0 -17
- package/dist/esm/rules/ensure-design-token-usage/spacing.js +6 -1
- package/dist/esm/rules/ensure-design-token-usage/split-css-properties.js +25 -0
- package/dist/esm/rules/ensure-design-token-usage/split-shorthand-values.js +14 -0
- package/dist/esm/rules/ensure-design-token-usage/utils.js +13 -148
- package/dist/esm/rules/icon-label/index.js +1 -1
- package/dist/esm/rules/index.codegen.js +3 -1
- package/dist/esm/rules/no-direct-use-of-web-platform-drag-and-drop/checks/is-blocked-add-event-listener.js +1 -1
- package/dist/esm/rules/no-direct-use-of-web-platform-drag-and-drop/checks/is-blocked-bind-all.js +1 -1
- package/dist/esm/rules/no-direct-use-of-web-platform-drag-and-drop/checks/is-blocked-bind.js +1 -1
- package/dist/esm/rules/no-direct-use-of-web-platform-drag-and-drop/checks/is-blocked-jsx-attribute.js +2 -2
- package/dist/esm/rules/no-direct-use-of-web-platform-drag-and-drop/shared/blocked-event-name-lookup.js +1 -0
- package/dist/esm/rules/no-direct-use-of-web-platform-drag-and-drop/shared/blocked-jsx-attribute-lookup.js +1 -0
- package/dist/esm/rules/no-direct-use-of-web-platform-drag-and-drop/shared/is-blocked-event-binding.js +1 -1
- package/dist/esm/rules/no-html-anchor/index.js +2 -1
- package/dist/esm/rules/no-html-anchor/node-types/jsx-element/index.js +2 -2
- package/dist/esm/rules/no-html-anchor/node-types/supported.js +3 -3
- package/dist/esm/rules/no-html-button/index.js +2 -1
- package/dist/esm/rules/no-html-button/node-types/jsx-element/index.js +2 -2
- package/dist/esm/rules/no-html-button/node-types/supported.js +3 -3
- package/dist/esm/rules/no-html-checkbox/index.js +1 -1
- package/dist/esm/rules/no-html-checkbox/node-types/jsx-element/index.js +2 -2
- package/dist/esm/rules/no-html-checkbox/node-types/supported.js +3 -3
- package/dist/esm/rules/no-html-code/index.js +2 -1
- package/dist/esm/rules/no-html-code/node-types/jsx-element/index.js +2 -2
- package/dist/esm/rules/no-html-code/node-types/supported.js +3 -3
- package/dist/esm/rules/no-html-heading/index.js +2 -1
- package/dist/esm/rules/no-html-heading/node-types/jsx-element/index.js +2 -2
- package/dist/esm/rules/no-html-heading/node-types/supported.js +3 -3
- package/dist/esm/rules/no-html-image/index.js +2 -1
- package/dist/esm/rules/no-html-image/node-types/jsx-element/index.js +2 -2
- package/dist/esm/rules/no-html-image/node-types/supported.js +3 -3
- package/dist/esm/rules/no-html-radio/index.js +1 -1
- package/dist/esm/rules/no-html-radio/node-types/jsx-element/index.js +2 -2
- package/dist/esm/rules/no-html-radio/node-types/supported.js +3 -3
- package/dist/esm/rules/no-html-range/index.js +1 -1
- package/dist/esm/rules/no-html-range/node-types/jsx-element/index.js +2 -2
- package/dist/esm/rules/no-html-range/node-types/supported.js +3 -3
- package/dist/esm/rules/no-html-select/index.js +2 -1
- package/dist/esm/rules/no-html-select/node-types/jsx-element/index.js +2 -2
- package/dist/esm/rules/no-html-select/node-types/supported.js +3 -3
- package/dist/esm/rules/no-html-text-input/index.js +1 -1
- package/dist/esm/rules/no-html-text-input/node-types/jsx-element/index.js +2 -2
- package/dist/esm/rules/no-html-text-input/node-types/supported.js +3 -3
- package/dist/esm/rules/no-html-textarea/index.js +2 -1
- package/dist/esm/rules/no-html-textarea/node-types/jsx-element/index.js +2 -2
- package/dist/esm/rules/no-html-textarea/node-types/supported.js +3 -3
- package/dist/esm/rules/no-icon-spacing-prop/get-css-map-key.js +7 -0
- package/dist/esm/rules/no-icon-spacing-prop/get-icon-size.js +18 -0
- package/dist/esm/rules/no-icon-spacing-prop/get-spacing-attribute.js +13 -0
- package/dist/esm/rules/no-icon-spacing-prop/get-static-attribute-value.js +9 -0
- package/dist/esm/rules/no-icon-spacing-prop/has-spread-props.js +8 -0
- package/dist/esm/rules/no-icon-spacing-prop/index.js +11 -1
- package/dist/esm/rules/no-icon-spacing-prop/spacing-to-padding.js +14 -0
- package/dist/esm/rules/no-icon-spacing-prop/upsert-css-map-import.js +46 -0
- package/dist/esm/rules/no-icon-spacing-prop/upsert-css-map-variable.js +51 -0
- package/dist/esm/rules/no-icon-spacing-prop/upsert-flex-import.js +53 -0
- package/dist/esm/rules/no-icon-spacing-prop/upsert-token-import.js +35 -0
- package/dist/esm/rules/no-invalid-css-map/get-css-map-object.js +12 -0
- package/dist/esm/rules/no-invalid-css-map/index.js +2 -1
- package/dist/esm/rules/no-invalid-css-map/utils.js +0 -12
- package/dist/esm/rules/no-physical-properties/index.js +1 -1
- package/dist/esm/rules/no-physical-properties/logical-physical-map.js +0 -34
- package/dist/esm/rules/no-physical-properties/physical-logical-map.js +34 -0
- package/dist/esm/rules/no-placeholder/index.js +2 -2
- package/dist/esm/rules/no-readonly-or-disabled-inputs/index.js +139 -0
- package/dist/esm/rules/no-unsafe-design-token-usage/index.js +2 -1
- package/dist/esm/rules/no-unsafe-style-overrides/index.js +1 -1
- package/dist/esm/rules/prefer-primitives/utils.js +1 -1
- package/dist/esm/rules/prefer-primitives/valid-primitive-elements.js +1 -0
- package/dist/esm/rules/use-heading/index.js +1 -1
- package/dist/esm/rules/use-heading/transformers/allowed-attrs.js +1 -0
- package/dist/esm/rules/use-heading/transformers/common.js +1 -9
- package/dist/esm/rules/use-heading/transformers/native-elements.js +11 -9
- package/dist/esm/rules/use-heading/transformers/update-test-id-attribute-fix.js +10 -0
- package/dist/esm/rules/use-href-in-link-item/get-unique-button-item-name.js +22 -0
- package/dist/esm/rules/use-href-in-link-item/has-import-of-name.js +11 -0
- package/dist/esm/rules/use-href-in-link-item/index.js +5 -1
- package/dist/esm/rules/use-href-in-link-item/insert-button-item-default-import.js +3 -0
- package/dist/esm/rules/use-href-in-link-item/insert-button-item-import.js +4 -0
- package/dist/esm/rules/use-href-in-link-item/utils.js +0 -39
- package/dist/esm/rules/use-latest-xcss-syntax/index.js +1 -1
- package/dist/esm/rules/use-latest-xcss-syntax/transformers/style-property/index.js +8 -6
- package/dist/esm/rules/use-latest-xcss-syntax-typography/index.js +3 -1
- package/dist/esm/rules/use-primitives/index.js +2 -1
- package/dist/esm/rules/use-primitives/transformers/compiled-styled/{supported.js → attributes.js} +0 -1
- package/dist/esm/rules/use-primitives/transformers/compiled-styled/convert-jsx-call-site.js +2 -2
- package/dist/esm/rules/use-primitives/transformers/compiled-styled/elements.js +1 -0
- package/dist/esm/rules/use-primitives/transformers/compiled-styled/find-valid-styled-component-call.js +2 -2
- package/dist/esm/rules/use-primitives/transformers/compiled-styled/index.js +6 -5
- package/dist/esm/rules/use-primitives/transformers/css-to-xcss.js +7 -15
- package/dist/esm/rules/use-primitives/transformers/dimensions-map.js +3 -0
- package/dist/esm/rules/use-primitives/transformers/emotion-css/{supported.js → attributes.js} +0 -1
- package/dist/esm/rules/use-primitives/transformers/emotion-css/elements.js +1 -0
- package/dist/esm/rules/use-primitives/transformers/emotion-css/index.js +20 -14
- package/dist/esm/rules/use-primitives/transformers/space-token-map.js +2 -0
- package/dist/esm/rules/use-primitives/transformers/space-token-positive-map.js +2 -0
- package/dist/esm/rules/use-primitives/transformers/supported-dimension-attributes-map.js +9 -0
- package/dist/esm/rules/use-primitives/utils/convert-ast-object-expression-to-js-object.js +1 -1
- package/dist/esm/rules/use-primitives/utils/is-valid-css-properties-to-transform.js +5 -4
- package/dist/esm/rules/use-primitives/utils/spread-syntax.js +1 -0
- package/dist/esm/rules/use-primitives/utils/validate-styles.js +12 -9
- package/dist/esm/rules/use-primitives-text/index.js +4 -1
- package/dist/esm/rules/use-primitives-text/transformers/add-color-inherit-attribute-fix.js +8 -0
- package/dist/esm/rules/use-primitives-text/transformers/allowed-attrs.js +1 -0
- package/dist/esm/rules/use-primitives-text/transformers/common.js +1 -40
- package/dist/esm/rules/use-primitives-text/transformers/emphasis-elements.js +11 -8
- package/dist/esm/rules/use-primitives-text/transformers/has-text-children-only.js +24 -0
- package/dist/esm/rules/use-primitives-text/transformers/paragraph-elements.js +17 -14
- package/dist/esm/rules/use-primitives-text/transformers/span-elements.js +11 -7
- package/dist/esm/rules/use-primitives-text/transformers/strong-elements.js +11 -8
- package/dist/esm/rules/use-primitives-text/transformers/update-test-id-attribute-fix.js +10 -0
- package/dist/esm/rules/use-should-render-to-parent/index.js +32 -9
- package/dist/esm/rules/use-spotlight-package/index.js +1 -1
- package/dist/esm/rules/use-tokens-shape/transformers/index.js +7 -6
- package/dist/esm/rules/use-tokens-space/index.js +1 -1
- package/dist/esm/rules/use-tokens-space/transformers/style-property/index.js +7 -6
- package/dist/esm/rules/use-tokens-typography/convert-property-node-to-stringable-node.js +7 -0
- package/dist/esm/rules/use-tokens-typography/find-font-family-token-for-value.js +11 -0
- package/dist/esm/rules/use-tokens-typography/get-literal-property.js +7 -0
- package/dist/esm/rules/use-tokens-typography/insert-tokens-import.js +7 -0
- package/dist/esm/rules/use-tokens-typography/is-code-font-family.js +4 -0
- package/dist/esm/rules/use-tokens-typography/is-font-family.js +4 -0
- package/dist/esm/rules/use-tokens-typography/is-font-size-small.js +4 -0
- package/dist/esm/rules/use-tokens-typography/is-font-size.js +4 -0
- package/dist/esm/rules/use-tokens-typography/is-typography-property.js +4 -0
- package/dist/esm/rules/use-tokens-typography/is-valid-property-node.js +7 -0
- package/dist/esm/rules/use-tokens-typography/is-valid-typography-token.js +10 -0
- package/dist/esm/rules/use-tokens-typography/not-undefined.js +3 -0
- package/dist/esm/rules/use-tokens-typography/transformers/banned-properties.js +2 -1
- package/dist/esm/rules/use-tokens-typography/transformers/font-family.js +5 -3
- package/dist/esm/rules/use-tokens-typography/transformers/font-weight.js +5 -3
- package/dist/esm/rules/use-tokens-typography/transformers/style-object.js +15 -4
- package/dist/esm/rules/use-tokens-typography/transformers/untokenized-properties.js +2 -1
- package/dist/esm/rules/use-tokens-typography/typography-properties.js +1 -0
- package/dist/esm/rules/use-tokens-typography/utils.js +2 -65
- package/dist/esm/rules/use-visually-hidden/fix-jsx.js +2 -2
- package/dist/esm/rules/use-visually-hidden/fix-vanilla.js +2 -2
- package/dist/esm/rules/use-visually-hidden/get-first-import.js +8 -0
- package/dist/esm/rules/use-visually-hidden/index.js +4 -2
- package/dist/esm/rules/use-visually-hidden/make-template-literal-into-entries.js +12 -0
- package/dist/esm/rules/use-visually-hidden/utils.js +0 -22
- package/dist/esm/rules/utils/find-prop.js +6 -0
- package/dist/esm/rules/utils/get-imported-node-by-source.js +12 -0
- package/dist/esm/rules/utils/{get-import-node-by-source.js → get-module-of-identifier.js} +0 -13
- package/dist/esm/rules/utils/is-child-of-type.js +4 -0
- package/dist/esm/rules/utils/is-color.js +0 -4
- package/dist/esm/rules/utils/is-css-in-js-template-node.js +3 -0
- package/dist/esm/rules/utils/is-current-surface-custom-property-name.js +4 -0
- package/dist/esm/rules/utils/is-decendant-of-global-token.js +11 -0
- package/dist/esm/rules/utils/is-decendant-of-primitive.js +20 -0
- package/dist/esm/rules/utils/is-decendant-of-style-jsx-attribute.js +11 -0
- package/dist/esm/rules/utils/is-decendant-of-svg-element.js +14 -0
- package/dist/esm/rules/utils/is-decendant-of-type.js +11 -0
- package/dist/esm/rules/utils/is-decendant-of-xcss-block.js +12 -0
- package/dist/esm/rules/utils/is-node.js +2 -89
- package/dist/esm/rules/utils/is-property-key.js +9 -0
- package/dist/esm/rules/utils/jsx.js +0 -6
- package/dist/types/presets/all-flat.codegen.d.ts +1 -1
- package/dist/types/presets/all.codegen.d.ts +1 -1
- package/dist/types/presets/recommended-flat.codegen.d.ts +1 -1
- package/dist/types/presets/recommended.codegen.d.ts +1 -1
- package/dist/types/rules/ensure-design-token-usage/border-width-value-to-token.d.ts +1 -0
- package/dist/types/rules/ensure-design-token-usage/clean-comments.d.ts +5 -0
- package/dist/types/rules/ensure-design-token-usage/color.d.ts +0 -2
- package/dist/types/rules/ensure-design-token-usage/convert-hyphenated-name-to-camel-case.d.ts +1 -0
- package/dist/types/rules/ensure-design-token-usage/find-parent-node-for-line.d.ts +6 -0
- package/dist/types/rules/ensure-design-token-usage/get-elevation-token-example.d.ts +2 -0
- package/dist/types/rules/ensure-design-token-usage/get-raw-expression.d.ts +3 -0
- package/dist/types/rules/ensure-design-token-usage/includes-token-string.d.ts +1 -0
- package/dist/types/rules/ensure-design-token-usage/insert-tokens-import.d.ts +2 -0
- package/dist/types/rules/ensure-design-token-usage/is-auto.d.ts +1 -0
- package/dist/types/rules/ensure-design-token-usage/is-border-radius.d.ts +2 -0
- package/dist/types/rules/ensure-design-token-usage/is-token-value-string.d.ts +5 -0
- package/dist/types/rules/ensure-design-token-usage/is-zero.d.ts +1 -0
- package/dist/types/rules/ensure-design-token-usage/normalise-value.d.ts +10 -0
- package/dist/types/rules/ensure-design-token-usage/radius-value-to-token.d.ts +1 -0
- package/dist/types/rules/ensure-design-token-usage/shape.d.ts +0 -4
- package/dist/types/rules/ensure-design-token-usage/split-css-properties.d.ts +6 -0
- package/dist/types/rules/ensure-design-token-usage/split-shorthand-values.d.ts +12 -0
- package/dist/types/rules/ensure-design-token-usage/utils.d.ts +0 -49
- package/dist/types/rules/index.codegen.d.ts +1 -1
- package/dist/types/rules/no-direct-use-of-web-platform-drag-and-drop/shared/blocked-event-name-lookup.d.ts +1 -0
- package/dist/types/rules/no-direct-use-of-web-platform-drag-and-drop/shared/{blocked.d.ts → blocked-jsx-attribute-lookup.d.ts} +0 -1
- package/dist/types/rules/no-icon-spacing-prop/get-css-map-key.d.ts +5 -0
- package/dist/types/rules/no-icon-spacing-prop/get-icon-size.d.ts +5 -0
- package/dist/types/rules/no-icon-spacing-prop/get-spacing-attribute.d.ts +5 -0
- package/dist/types/rules/no-icon-spacing-prop/get-static-attribute-value.d.ts +5 -0
- package/dist/types/rules/no-icon-spacing-prop/has-spread-props.d.ts +5 -0
- package/dist/types/rules/no-icon-spacing-prop/spacing-to-padding.d.ts +5 -0
- package/dist/types/rules/no-icon-spacing-prop/upsert-css-map-import.d.ts +8 -0
- package/dist/types/rules/no-icon-spacing-prop/upsert-css-map-variable.d.ts +9 -0
- package/dist/types/rules/no-icon-spacing-prop/upsert-flex-import.d.ts +8 -0
- package/dist/types/rules/no-icon-spacing-prop/upsert-token-import.d.ts +8 -0
- package/dist/types/rules/no-invalid-css-map/get-css-map-object.d.ts +2 -0
- package/dist/types/rules/no-invalid-css-map/utils.d.ts +1 -2
- package/dist/types/rules/no-physical-properties/logical-physical-map.d.ts +0 -34
- package/dist/types/rules/no-physical-properties/physical-logical-map.d.ts +34 -0
- package/dist/types/rules/no-readonly-or-disabled-inputs/index.d.ts +6 -0
- package/dist/types/rules/prefer-primitives/utils.d.ts +0 -1
- package/dist/types/rules/prefer-primitives/valid-primitive-elements.d.ts +1 -0
- package/dist/types/rules/use-heading/transformers/allowed-attrs.d.ts +1 -0
- package/dist/types/rules/use-heading/transformers/common.d.ts +0 -3
- package/dist/types/rules/use-heading/transformers/native-elements.d.ts +1 -1
- package/dist/types/rules/use-heading/transformers/update-test-id-attribute-fix.d.ts +3 -0
- package/dist/types/rules/use-href-in-link-item/get-unique-button-item-name.d.ts +2 -0
- package/dist/types/rules/use-href-in-link-item/has-import-of-name.d.ts +2 -0
- package/dist/types/rules/use-href-in-link-item/insert-button-item-default-import.d.ts +3 -0
- package/dist/types/rules/use-href-in-link-item/insert-button-item-import.d.ts +3 -0
- package/dist/types/rules/use-href-in-link-item/utils.d.ts +2 -6
- package/dist/types/rules/use-primitives/transformers/compiled-styled/{supported.d.ts → attributes.d.ts} +0 -1
- package/dist/types/rules/use-primitives/transformers/compiled-styled/elements.d.ts +1 -0
- package/dist/types/rules/use-primitives/transformers/css-to-xcss.d.ts +1 -12
- package/dist/types/rules/use-primitives/transformers/dimensions-map.d.ts +3 -0
- package/dist/types/rules/use-primitives/transformers/emotion-css/{supported.d.ts → attributes.d.ts} +0 -1
- package/dist/types/rules/use-primitives/transformers/emotion-css/elements.d.ts +1 -0
- package/dist/types/rules/use-primitives/transformers/space-token-map.d.ts +3 -0
- package/dist/types/rules/use-primitives/transformers/space-token-positive-map.d.ts +3 -0
- package/dist/types/rules/use-primitives/transformers/supported-dimension-attributes-map.d.ts +4 -0
- package/dist/types/rules/use-primitives/utils/convert-ast-object-expression-to-js-object.d.ts +1 -1
- package/dist/types/rules/use-primitives/utils/spread-syntax.d.ts +1 -0
- package/dist/types/rules/use-primitives-text/transformers/add-color-inherit-attribute-fix.d.ts +4 -0
- package/dist/types/rules/use-primitives-text/transformers/allowed-attrs.d.ts +1 -0
- package/dist/types/rules/use-primitives-text/transformers/common.d.ts +0 -5
- package/dist/types/rules/use-primitives-text/transformers/emphasis-elements.d.ts +1 -1
- package/dist/types/rules/use-primitives-text/transformers/has-text-children-only.d.ts +2 -0
- package/dist/types/rules/use-primitives-text/transformers/paragraph-elements.d.ts +1 -1
- package/dist/types/rules/use-primitives-text/transformers/span-elements.d.ts +1 -1
- package/dist/types/rules/use-primitives-text/transformers/strong-elements.d.ts +1 -1
- package/dist/types/rules/use-primitives-text/transformers/update-test-id-attribute-fix.d.ts +3 -0
- package/dist/types/rules/use-tokens-typography/convert-property-node-to-stringable-node.d.ts +2 -0
- package/dist/types/rules/use-tokens-typography/find-font-family-token-for-value.d.ts +1 -0
- package/dist/types/rules/use-tokens-typography/get-literal-property.d.ts +2 -0
- package/dist/types/rules/use-tokens-typography/insert-tokens-import.d.ts +3 -0
- package/dist/types/rules/use-tokens-typography/is-code-font-family.d.ts +2 -0
- package/dist/types/rules/use-tokens-typography/is-font-family.d.ts +2 -0
- package/dist/types/rules/use-tokens-typography/is-font-size-small.d.ts +2 -0
- package/dist/types/rules/use-tokens-typography/is-font-size.d.ts +2 -0
- package/dist/types/rules/use-tokens-typography/is-typography-property.d.ts +1 -0
- package/dist/types/rules/use-tokens-typography/is-valid-property-node.d.ts +2 -0
- package/dist/types/rules/use-tokens-typography/is-valid-typography-token.d.ts +36 -0
- package/dist/types/rules/use-tokens-typography/not-undefined.d.ts +1 -0
- package/dist/types/rules/use-tokens-typography/typography-properties.d.ts +1 -0
- package/dist/types/rules/use-tokens-typography/utils.d.ts +2 -50
- package/dist/types/rules/use-visually-hidden/get-first-import.d.ts +5 -0
- package/dist/types/rules/use-visually-hidden/make-template-literal-into-entries.d.ts +4 -0
- package/dist/types/rules/use-visually-hidden/utils.d.ts +0 -9
- package/dist/types/rules/utils/find-prop.d.ts +2 -0
- package/dist/types/rules/utils/{get-import-node-by-source.d.ts → get-imported-node-by-source.d.ts} +0 -9
- package/dist/types/rules/utils/get-module-of-identifier.d.ts +10 -0
- package/dist/types/rules/utils/is-child-of-type.d.ts +2 -0
- package/dist/types/rules/utils/is-color.d.ts +0 -1
- package/dist/types/rules/utils/is-css-in-js-template-node.d.ts +2 -0
- package/dist/types/rules/utils/is-current-surface-custom-property-name.d.ts +1 -0
- package/dist/types/rules/utils/is-decendant-of-global-token.d.ts +2 -0
- package/dist/types/rules/utils/is-decendant-of-primitive.d.ts +2 -0
- package/dist/types/rules/utils/is-decendant-of-style-jsx-attribute.d.ts +2 -0
- package/dist/types/rules/utils/is-decendant-of-svg-element.d.ts +2 -0
- package/dist/types/rules/utils/is-decendant-of-type.d.ts +2 -0
- package/dist/types/rules/utils/is-decendant-of-xcss-block.d.ts +2 -0
- package/dist/types/rules/utils/is-node.d.ts +3 -11
- package/dist/types/rules/utils/is-property-key.d.ts +2 -0
- package/dist/types/rules/utils/jsx.d.ts +1 -2
- package/dist/types-ts4.5/presets/all-flat.codegen.d.ts +1 -1
- package/dist/types-ts4.5/presets/all.codegen.d.ts +1 -1
- package/dist/types-ts4.5/presets/recommended-flat.codegen.d.ts +1 -1
- package/dist/types-ts4.5/presets/recommended.codegen.d.ts +1 -1
- package/dist/types-ts4.5/rules/ensure-design-token-usage/border-width-value-to-token.d.ts +1 -0
- package/dist/types-ts4.5/rules/ensure-design-token-usage/clean-comments.d.ts +5 -0
- package/dist/types-ts4.5/rules/ensure-design-token-usage/color.d.ts +0 -2
- package/dist/types-ts4.5/rules/ensure-design-token-usage/convert-hyphenated-name-to-camel-case.d.ts +1 -0
- package/dist/types-ts4.5/rules/ensure-design-token-usage/find-parent-node-for-line.d.ts +6 -0
- package/dist/types-ts4.5/rules/ensure-design-token-usage/get-elevation-token-example.d.ts +2 -0
- package/dist/types-ts4.5/rules/ensure-design-token-usage/get-raw-expression.d.ts +3 -0
- package/dist/types-ts4.5/rules/ensure-design-token-usage/includes-token-string.d.ts +1 -0
- package/dist/types-ts4.5/rules/ensure-design-token-usage/insert-tokens-import.d.ts +2 -0
- package/dist/types-ts4.5/rules/ensure-design-token-usage/is-auto.d.ts +1 -0
- package/dist/types-ts4.5/rules/ensure-design-token-usage/is-border-radius.d.ts +2 -0
- package/dist/types-ts4.5/rules/ensure-design-token-usage/is-token-value-string.d.ts +5 -0
- package/dist/types-ts4.5/rules/ensure-design-token-usage/is-zero.d.ts +1 -0
- package/dist/types-ts4.5/rules/ensure-design-token-usage/normalise-value.d.ts +10 -0
- package/dist/types-ts4.5/rules/ensure-design-token-usage/radius-value-to-token.d.ts +1 -0
- package/dist/types-ts4.5/rules/ensure-design-token-usage/shape.d.ts +0 -4
- package/dist/types-ts4.5/rules/ensure-design-token-usage/split-css-properties.d.ts +6 -0
- package/dist/types-ts4.5/rules/ensure-design-token-usage/split-shorthand-values.d.ts +12 -0
- package/dist/types-ts4.5/rules/ensure-design-token-usage/utils.d.ts +0 -49
- package/dist/types-ts4.5/rules/index.codegen.d.ts +1 -1
- package/dist/types-ts4.5/rules/no-direct-use-of-web-platform-drag-and-drop/shared/blocked-event-name-lookup.d.ts +1 -0
- package/dist/types-ts4.5/rules/no-direct-use-of-web-platform-drag-and-drop/shared/{blocked.d.ts → blocked-jsx-attribute-lookup.d.ts} +0 -1
- package/dist/types-ts4.5/rules/no-icon-spacing-prop/get-css-map-key.d.ts +5 -0
- package/dist/types-ts4.5/rules/no-icon-spacing-prop/get-icon-size.d.ts +5 -0
- package/dist/types-ts4.5/rules/no-icon-spacing-prop/get-spacing-attribute.d.ts +5 -0
- package/dist/types-ts4.5/rules/no-icon-spacing-prop/get-static-attribute-value.d.ts +5 -0
- package/dist/types-ts4.5/rules/no-icon-spacing-prop/has-spread-props.d.ts +5 -0
- package/dist/types-ts4.5/rules/no-icon-spacing-prop/spacing-to-padding.d.ts +5 -0
- package/dist/types-ts4.5/rules/no-icon-spacing-prop/upsert-css-map-import.d.ts +8 -0
- package/dist/types-ts4.5/rules/no-icon-spacing-prop/upsert-css-map-variable.d.ts +9 -0
- package/dist/types-ts4.5/rules/no-icon-spacing-prop/upsert-flex-import.d.ts +8 -0
- package/dist/types-ts4.5/rules/no-icon-spacing-prop/upsert-token-import.d.ts +8 -0
- package/dist/types-ts4.5/rules/no-invalid-css-map/get-css-map-object.d.ts +2 -0
- package/dist/types-ts4.5/rules/no-invalid-css-map/utils.d.ts +1 -2
- package/dist/types-ts4.5/rules/no-physical-properties/logical-physical-map.d.ts +0 -34
- package/dist/types-ts4.5/rules/no-physical-properties/physical-logical-map.d.ts +34 -0
- package/dist/types-ts4.5/rules/no-readonly-or-disabled-inputs/index.d.ts +12 -0
- package/dist/types-ts4.5/rules/prefer-primitives/utils.d.ts +0 -1
- package/dist/types-ts4.5/rules/prefer-primitives/valid-primitive-elements.d.ts +1 -0
- package/dist/types-ts4.5/rules/use-heading/transformers/allowed-attrs.d.ts +1 -0
- package/dist/types-ts4.5/rules/use-heading/transformers/common.d.ts +0 -3
- package/dist/types-ts4.5/rules/use-heading/transformers/native-elements.d.ts +1 -1
- package/dist/types-ts4.5/rules/use-heading/transformers/update-test-id-attribute-fix.d.ts +3 -0
- package/dist/types-ts4.5/rules/use-href-in-link-item/get-unique-button-item-name.d.ts +2 -0
- package/dist/types-ts4.5/rules/use-href-in-link-item/has-import-of-name.d.ts +2 -0
- package/dist/types-ts4.5/rules/use-href-in-link-item/insert-button-item-default-import.d.ts +3 -0
- package/dist/types-ts4.5/rules/use-href-in-link-item/insert-button-item-import.d.ts +3 -0
- package/dist/types-ts4.5/rules/use-href-in-link-item/utils.d.ts +2 -6
- package/dist/types-ts4.5/rules/use-primitives/transformers/compiled-styled/{supported.d.ts → attributes.d.ts} +0 -1
- package/dist/types-ts4.5/rules/use-primitives/transformers/compiled-styled/elements.d.ts +1 -0
- package/dist/types-ts4.5/rules/use-primitives/transformers/css-to-xcss.d.ts +1 -12
- package/dist/types-ts4.5/rules/use-primitives/transformers/dimensions-map.d.ts +3 -0
- package/dist/types-ts4.5/rules/use-primitives/transformers/emotion-css/{supported.d.ts → attributes.d.ts} +0 -1
- package/dist/types-ts4.5/rules/use-primitives/transformers/emotion-css/elements.d.ts +1 -0
- package/dist/types-ts4.5/rules/use-primitives/transformers/space-token-map.d.ts +3 -0
- package/dist/types-ts4.5/rules/use-primitives/transformers/space-token-positive-map.d.ts +3 -0
- package/dist/types-ts4.5/rules/use-primitives/transformers/supported-dimension-attributes-map.d.ts +4 -0
- package/dist/types-ts4.5/rules/use-primitives/utils/convert-ast-object-expression-to-js-object.d.ts +1 -1
- package/dist/types-ts4.5/rules/use-primitives/utils/spread-syntax.d.ts +1 -0
- package/dist/types-ts4.5/rules/use-primitives-text/transformers/add-color-inherit-attribute-fix.d.ts +4 -0
- package/dist/types-ts4.5/rules/use-primitives-text/transformers/allowed-attrs.d.ts +1 -0
- package/dist/types-ts4.5/rules/use-primitives-text/transformers/common.d.ts +0 -5
- package/dist/types-ts4.5/rules/use-primitives-text/transformers/emphasis-elements.d.ts +1 -1
- package/dist/types-ts4.5/rules/use-primitives-text/transformers/has-text-children-only.d.ts +2 -0
- package/dist/types-ts4.5/rules/use-primitives-text/transformers/paragraph-elements.d.ts +1 -1
- package/dist/types-ts4.5/rules/use-primitives-text/transformers/span-elements.d.ts +1 -1
- package/dist/types-ts4.5/rules/use-primitives-text/transformers/strong-elements.d.ts +1 -1
- package/dist/types-ts4.5/rules/use-primitives-text/transformers/update-test-id-attribute-fix.d.ts +3 -0
- package/dist/types-ts4.5/rules/use-tokens-typography/convert-property-node-to-stringable-node.d.ts +2 -0
- package/dist/types-ts4.5/rules/use-tokens-typography/find-font-family-token-for-value.d.ts +1 -0
- package/dist/types-ts4.5/rules/use-tokens-typography/get-literal-property.d.ts +2 -0
- package/dist/types-ts4.5/rules/use-tokens-typography/insert-tokens-import.d.ts +3 -0
- package/dist/types-ts4.5/rules/use-tokens-typography/is-code-font-family.d.ts +2 -0
- package/dist/types-ts4.5/rules/use-tokens-typography/is-font-family.d.ts +2 -0
- package/dist/types-ts4.5/rules/use-tokens-typography/is-font-size-small.d.ts +2 -0
- package/dist/types-ts4.5/rules/use-tokens-typography/is-font-size.d.ts +2 -0
- package/dist/types-ts4.5/rules/use-tokens-typography/is-typography-property.d.ts +1 -0
- package/dist/types-ts4.5/rules/use-tokens-typography/is-valid-property-node.d.ts +2 -0
- package/dist/types-ts4.5/rules/use-tokens-typography/is-valid-typography-token.d.ts +36 -0
- package/dist/types-ts4.5/rules/use-tokens-typography/not-undefined.d.ts +1 -0
- package/dist/types-ts4.5/rules/use-tokens-typography/typography-properties.d.ts +1 -0
- package/dist/types-ts4.5/rules/use-tokens-typography/utils.d.ts +2 -50
- package/dist/types-ts4.5/rules/use-visually-hidden/get-first-import.d.ts +5 -0
- package/dist/types-ts4.5/rules/use-visually-hidden/make-template-literal-into-entries.d.ts +4 -0
- package/dist/types-ts4.5/rules/use-visually-hidden/utils.d.ts +0 -9
- package/dist/types-ts4.5/rules/utils/find-prop.d.ts +2 -0
- package/dist/types-ts4.5/rules/utils/{get-import-node-by-source.d.ts → get-imported-node-by-source.d.ts} +0 -9
- package/dist/types-ts4.5/rules/utils/get-module-of-identifier.d.ts +10 -0
- package/dist/types-ts4.5/rules/utils/is-child-of-type.d.ts +2 -0
- package/dist/types-ts4.5/rules/utils/is-color.d.ts +0 -1
- package/dist/types-ts4.5/rules/utils/is-css-in-js-template-node.d.ts +2 -0
- package/dist/types-ts4.5/rules/utils/is-current-surface-custom-property-name.d.ts +1 -0
- package/dist/types-ts4.5/rules/utils/is-decendant-of-global-token.d.ts +2 -0
- package/dist/types-ts4.5/rules/utils/is-decendant-of-primitive.d.ts +2 -0
- package/dist/types-ts4.5/rules/utils/is-decendant-of-style-jsx-attribute.d.ts +2 -0
- package/dist/types-ts4.5/rules/utils/is-decendant-of-svg-element.d.ts +2 -0
- package/dist/types-ts4.5/rules/utils/is-decendant-of-type.d.ts +2 -0
- package/dist/types-ts4.5/rules/utils/is-decendant-of-xcss-block.d.ts +2 -0
- package/dist/types-ts4.5/rules/utils/is-node.d.ts +3 -11
- package/dist/types-ts4.5/rules/utils/is-property-key.d.ts +2 -0
- package/dist/types-ts4.5/rules/utils/jsx.d.ts +1 -2
- package/package.json +5 -5
- package/dist/cjs/ast-nodes/index.js +0 -54
- package/dist/cjs/rules/no-direct-use-of-web-platform-drag-and-drop/shared/blocked.js +0 -8
- package/dist/cjs/rules/no-html-anchor/node-types/index.js +0 -19
- package/dist/cjs/rules/no-html-button/node-types/index.js +0 -19
- package/dist/cjs/rules/no-html-checkbox/node-types/index.js +0 -12
- package/dist/cjs/rules/no-html-code/node-types/index.js +0 -19
- package/dist/cjs/rules/no-html-heading/node-types/index.js +0 -19
- package/dist/cjs/rules/no-html-image/node-types/index.js +0 -19
- package/dist/cjs/rules/no-html-radio/node-types/index.js +0 -12
- package/dist/cjs/rules/no-html-range/node-types/index.js +0 -12
- package/dist/cjs/rules/no-html-select/node-types/index.js +0 -19
- package/dist/cjs/rules/no-html-text-input/node-types/index.js +0 -12
- package/dist/cjs/rules/no-html-textarea/node-types/index.js +0 -19
- package/dist/cjs/rules/no-icon-spacing-prop/helpers.js +0 -266
- package/dist/cjs/rules/use-heading/transformers/index.js +0 -12
- package/dist/cjs/rules/use-latest-xcss-syntax/transformers/index.js +0 -12
- package/dist/cjs/rules/use-latest-xcss-syntax/utils/index.js +0 -12
- package/dist/cjs/rules/use-latest-xcss-syntax-typography/linters/index.js +0 -26
- package/dist/cjs/rules/use-primitives/transformers/index.js +0 -38
- package/dist/cjs/rules/use-primitives/utils/index.js +0 -68
- package/dist/cjs/rules/use-primitives-text/transformers/index.js +0 -33
- package/dist/cjs/rules/use-spotlight-package/linters/index.js +0 -12
- package/dist/cjs/rules/use-tokens-space/transformers/index.js +0 -12
- package/dist/cjs/rules/use-tokens-space/utils/index.js +0 -12
- package/dist/es2019/ast-nodes/index.js +0 -7
- package/dist/es2019/rules/no-direct-use-of-web-platform-drag-and-drop/shared/blocked.js +0 -2
- package/dist/es2019/rules/no-html-anchor/node-types/index.js +0 -2
- package/dist/es2019/rules/no-html-button/node-types/index.js +0 -2
- package/dist/es2019/rules/no-html-checkbox/node-types/index.js +0 -1
- package/dist/es2019/rules/no-html-code/node-types/index.js +0 -2
- package/dist/es2019/rules/no-html-heading/node-types/index.js +0 -2
- package/dist/es2019/rules/no-html-image/node-types/index.js +0 -2
- package/dist/es2019/rules/no-html-radio/node-types/index.js +0 -1
- package/dist/es2019/rules/no-html-range/node-types/index.js +0 -1
- package/dist/es2019/rules/no-html-select/node-types/index.js +0 -2
- package/dist/es2019/rules/no-html-text-input/node-types/index.js +0 -1
- package/dist/es2019/rules/no-html-textarea/node-types/index.js +0 -2
- package/dist/es2019/rules/no-icon-spacing-prop/helpers.js +0 -211
- package/dist/es2019/rules/use-heading/transformers/index.js +0 -1
- package/dist/es2019/rules/use-latest-xcss-syntax/transformers/index.js +0 -1
- package/dist/es2019/rules/use-latest-xcss-syntax/utils/index.js +0 -1
- package/dist/es2019/rules/use-latest-xcss-syntax-typography/linters/index.js +0 -3
- package/dist/es2019/rules/use-primitives/transformers/index.js +0 -3
- package/dist/es2019/rules/use-primitives/utils/index.js +0 -9
- package/dist/es2019/rules/use-primitives-text/transformers/index.js +0 -4
- package/dist/es2019/rules/use-spotlight-package/linters/index.js +0 -1
- package/dist/es2019/rules/use-tokens-space/transformers/index.js +0 -1
- package/dist/es2019/rules/use-tokens-space/utils/index.js +0 -1
- package/dist/esm/ast-nodes/index.js +0 -7
- package/dist/esm/rules/no-direct-use-of-web-platform-drag-and-drop/shared/blocked.js +0 -2
- package/dist/esm/rules/no-html-anchor/node-types/index.js +0 -2
- package/dist/esm/rules/no-html-button/node-types/index.js +0 -2
- package/dist/esm/rules/no-html-checkbox/node-types/index.js +0 -1
- package/dist/esm/rules/no-html-code/node-types/index.js +0 -2
- package/dist/esm/rules/no-html-heading/node-types/index.js +0 -2
- package/dist/esm/rules/no-html-image/node-types/index.js +0 -2
- package/dist/esm/rules/no-html-radio/node-types/index.js +0 -1
- package/dist/esm/rules/no-html-range/node-types/index.js +0 -1
- package/dist/esm/rules/no-html-select/node-types/index.js +0 -2
- package/dist/esm/rules/no-html-text-input/node-types/index.js +0 -1
- package/dist/esm/rules/no-html-textarea/node-types/index.js +0 -2
- package/dist/esm/rules/no-icon-spacing-prop/helpers.js +0 -248
- package/dist/esm/rules/use-heading/transformers/index.js +0 -1
- package/dist/esm/rules/use-latest-xcss-syntax/transformers/index.js +0 -1
- package/dist/esm/rules/use-latest-xcss-syntax/utils/index.js +0 -1
- package/dist/esm/rules/use-latest-xcss-syntax-typography/linters/index.js +0 -3
- package/dist/esm/rules/use-primitives/transformers/index.js +0 -3
- package/dist/esm/rules/use-primitives/utils/index.js +0 -9
- package/dist/esm/rules/use-primitives-text/transformers/index.js +0 -4
- package/dist/esm/rules/use-spotlight-package/linters/index.js +0 -1
- package/dist/esm/rules/use-tokens-space/transformers/index.js +0 -1
- package/dist/esm/rules/use-tokens-space/utils/index.js +0 -1
- package/dist/types/ast-nodes/index.d.ts +0 -7
- package/dist/types/rules/no-html-anchor/node-types/index.d.ts +0 -2
- package/dist/types/rules/no-html-button/node-types/index.d.ts +0 -2
- package/dist/types/rules/no-html-checkbox/node-types/index.d.ts +0 -1
- package/dist/types/rules/no-html-code/node-types/index.d.ts +0 -2
- package/dist/types/rules/no-html-heading/node-types/index.d.ts +0 -2
- package/dist/types/rules/no-html-image/node-types/index.d.ts +0 -2
- package/dist/types/rules/no-html-radio/node-types/index.d.ts +0 -1
- package/dist/types/rules/no-html-range/node-types/index.d.ts +0 -1
- package/dist/types/rules/no-html-select/node-types/index.d.ts +0 -2
- package/dist/types/rules/no-html-text-input/node-types/index.d.ts +0 -1
- package/dist/types/rules/no-html-textarea/node-types/index.d.ts +0 -2
- package/dist/types/rules/no-icon-spacing-prop/helpers.d.ts +0 -62
- package/dist/types/rules/use-heading/transformers/index.d.ts +0 -1
- package/dist/types/rules/use-latest-xcss-syntax/transformers/index.d.ts +0 -1
- package/dist/types/rules/use-latest-xcss-syntax/utils/index.d.ts +0 -1
- package/dist/types/rules/use-latest-xcss-syntax-typography/linters/index.d.ts +0 -3
- package/dist/types/rules/use-primitives/transformers/index.d.ts +0 -3
- package/dist/types/rules/use-primitives/utils/index.d.ts +0 -9
- package/dist/types/rules/use-primitives-text/transformers/index.d.ts +0 -4
- package/dist/types/rules/use-spotlight-package/linters/index.d.ts +0 -1
- package/dist/types/rules/use-tokens-space/transformers/index.d.ts +0 -1
- package/dist/types/rules/use-tokens-space/utils/index.d.ts +0 -1
- package/dist/types-ts4.5/ast-nodes/index.d.ts +0 -7
- package/dist/types-ts4.5/rules/no-html-anchor/node-types/index.d.ts +0 -2
- package/dist/types-ts4.5/rules/no-html-button/node-types/index.d.ts +0 -2
- package/dist/types-ts4.5/rules/no-html-checkbox/node-types/index.d.ts +0 -1
- package/dist/types-ts4.5/rules/no-html-code/node-types/index.d.ts +0 -2
- package/dist/types-ts4.5/rules/no-html-heading/node-types/index.d.ts +0 -2
- package/dist/types-ts4.5/rules/no-html-image/node-types/index.d.ts +0 -2
- package/dist/types-ts4.5/rules/no-html-radio/node-types/index.d.ts +0 -1
- package/dist/types-ts4.5/rules/no-html-range/node-types/index.d.ts +0 -1
- package/dist/types-ts4.5/rules/no-html-select/node-types/index.d.ts +0 -2
- package/dist/types-ts4.5/rules/no-html-text-input/node-types/index.d.ts +0 -1
- package/dist/types-ts4.5/rules/no-html-textarea/node-types/index.d.ts +0 -2
- package/dist/types-ts4.5/rules/no-icon-spacing-prop/helpers.d.ts +0 -62
- package/dist/types-ts4.5/rules/use-heading/transformers/index.d.ts +0 -1
- package/dist/types-ts4.5/rules/use-latest-xcss-syntax/transformers/index.d.ts +0 -1
- package/dist/types-ts4.5/rules/use-latest-xcss-syntax/utils/index.d.ts +0 -1
- package/dist/types-ts4.5/rules/use-latest-xcss-syntax-typography/linters/index.d.ts +0 -3
- package/dist/types-ts4.5/rules/use-primitives/transformers/index.d.ts +0 -3
- package/dist/types-ts4.5/rules/use-primitives/utils/index.d.ts +0 -9
- package/dist/types-ts4.5/rules/use-primitives-text/transformers/index.d.ts +0 -4
- package/dist/types-ts4.5/rules/use-spotlight-package/linters/index.d.ts +0 -1
- package/dist/types-ts4.5/rules/use-tokens-space/transformers/index.d.ts +0 -1
- package/dist/types-ts4.5/rules/use-tokens-space/utils/index.d.ts +0 -1
|
@@ -3,11 +3,17 @@ import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
|
|
|
3
3
|
|
|
4
4
|
import { getIdentifierInParentScope, isNodeOfType } from 'eslint-codemod-utils';
|
|
5
5
|
import { getScope, getSourceCode } from '@atlaskit/eslint-utils/context-compat';
|
|
6
|
-
import
|
|
7
|
-
import {
|
|
6
|
+
import { FunctionCall } from '../../../../ast-nodes/function-call';
|
|
7
|
+
import { JSXAttribute as JSXAttributeHelper } from '../../../../ast-nodes/jsx-attribute';
|
|
8
|
+
import { JSXElement as JSXElementHelper } from '../../../../ast-nodes/jsx-element';
|
|
9
|
+
import { Root } from '../../../../ast-nodes/root';
|
|
10
|
+
import { getVariableDefinitionValue } from '../../utils/get-variable-definition-value';
|
|
11
|
+
import { getVariableUsagesCount } from '../../utils/get-variable-usage-count';
|
|
12
|
+
import { isValidCssPropertiesToTransform } from '../../utils/is-valid-css-properties-to-transform';
|
|
8
13
|
import { validateStyles } from '../../utils/validate-styles';
|
|
9
14
|
import { cssToXcssTransformer } from '../css-to-xcss';
|
|
10
|
-
import
|
|
15
|
+
import { attributes } from './attributes';
|
|
16
|
+
import { elements } from './elements';
|
|
11
17
|
export var EmotionCSS = {
|
|
12
18
|
lint: function lint(node, _ref) {
|
|
13
19
|
var context = _ref.context,
|
|
@@ -43,29 +49,29 @@ export var EmotionCSS = {
|
|
|
43
49
|
if (!isNodeOfType(node, 'JSXElement')) {
|
|
44
50
|
return false;
|
|
45
51
|
}
|
|
46
|
-
var elementName =
|
|
52
|
+
var elementName = JSXElementHelper.getName(node);
|
|
47
53
|
if (!elementName) {
|
|
48
54
|
return false;
|
|
49
55
|
}
|
|
50
56
|
|
|
51
57
|
// Currently we only support `div`. This may change in future.
|
|
52
|
-
if (!
|
|
58
|
+
if (!elements.includes(elementName)) {
|
|
53
59
|
return false;
|
|
54
60
|
}
|
|
55
61
|
|
|
56
62
|
// Ignore elements that contain dangerous attributes like `id`.
|
|
57
|
-
if (!
|
|
63
|
+
if (!JSXElementHelper.hasAllowedAttrsOnly(node, attributes)) {
|
|
58
64
|
return false;
|
|
59
65
|
}
|
|
60
66
|
|
|
61
67
|
// Currently we don't transform anything to `Box` unless it defines styles
|
|
62
|
-
var cssAttr =
|
|
68
|
+
var cssAttr = JSXElementHelper.getAttributeByName(node, 'css');
|
|
63
69
|
if (!cssAttr) {
|
|
64
70
|
return false;
|
|
65
71
|
}
|
|
66
72
|
|
|
67
73
|
// Get `myStyles` in `css={myStyles}` as a string so we can search for the `const myStyles` VariableDefinition
|
|
68
|
-
var cssAttrValue =
|
|
74
|
+
var cssAttrValue = JSXAttributeHelper.getValue(cssAttr);
|
|
69
75
|
if ((cssAttrValue === null || cssAttrValue === void 0 ? void 0 : cssAttrValue.type) !== 'ExpressionStatement') {
|
|
70
76
|
return false;
|
|
71
77
|
}
|
|
@@ -81,13 +87,13 @@ export var EmotionCSS = {
|
|
|
81
87
|
var cssVariableDefinition = getIdentifierInParentScope(getScope(context, node), cssAttrValue.value);
|
|
82
88
|
var cssVariableValue = getVariableDefinitionValue(cssVariableDefinition);
|
|
83
89
|
// Check if `cssVariableValue` is a function called `css()`
|
|
84
|
-
if (
|
|
90
|
+
if (FunctionCall.getName(cssVariableValue === null || cssVariableValue === void 0 ? void 0 : cssVariableValue.node.init) !== 'css') {
|
|
85
91
|
return false;
|
|
86
92
|
}
|
|
87
93
|
if (!(config.patterns.includes('string-style-property-fix') ? validateStyles(cssVariableValue === null || cssVariableValue === void 0 ? void 0 : cssVariableValue.node.init, config) : isValidCssPropertiesToTransform(cssVariableValue === null || cssVariableValue === void 0 ? void 0 : cssVariableValue.node.init, config))) {
|
|
88
94
|
return false;
|
|
89
95
|
}
|
|
90
|
-
var importDeclaration =
|
|
96
|
+
var importDeclaration = Root.findImportsByModule(getSourceCode(context).ast.body, '@atlaskit/primitives');
|
|
91
97
|
|
|
92
98
|
// If there is more than one `@atlaskit/primitives` import, then it becomes difficult to determine which import to transform
|
|
93
99
|
if (importDeclaration.length > 1) {
|
|
@@ -98,13 +104,13 @@ export var EmotionCSS = {
|
|
|
98
104
|
_fix: function _fix(node, _ref3) {
|
|
99
105
|
var context = _ref3.context;
|
|
100
106
|
return function (fixer) {
|
|
101
|
-
var importFix =
|
|
107
|
+
var importFix = Root.upsertNamedImportDeclaration({
|
|
102
108
|
module: '@atlaskit/primitives',
|
|
103
109
|
specifiers: ['Box', 'xcss']
|
|
104
110
|
}, context, fixer);
|
|
105
|
-
var cssAttr =
|
|
106
|
-
var attributeFix =
|
|
107
|
-
var elementNameFixes =
|
|
111
|
+
var cssAttr = JSXElementHelper.getAttributeByName(node, 'css'); // Can strongly assert the type here, because we validated it exists in `check()`.
|
|
112
|
+
var attributeFix = JSXAttributeHelper.updateName(cssAttr, 'xcss', fixer);
|
|
113
|
+
var elementNameFixes = JSXElementHelper.updateName(node, 'Box', fixer);
|
|
108
114
|
var cssToXcssTransform = cssToXcssTransformer(node, context, fixer);
|
|
109
115
|
return [importFix, attributeFix].concat(_toConsumableArray(elementNameFixes), _toConsumableArray(cssToXcssTransform)).filter(function (fix) {
|
|
110
116
|
return Boolean(fix);
|
|
@@ -2,8 +2,9 @@ import _typeof from "@babel/runtime/helpers/typeof";
|
|
|
2
2
|
import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
|
|
3
3
|
var _excluded = ["unsupported"];
|
|
4
4
|
import { isNodeOfType } from 'eslint-codemod-utils';
|
|
5
|
-
import
|
|
6
|
-
import {
|
|
5
|
+
import { Object as ObjectHelper } from '../../../ast-nodes/object';
|
|
6
|
+
import { supportedStylesMap } from '../transformers/css-to-xcss';
|
|
7
|
+
import { supportedDimensionAttributesMap } from '../transformers/supported-dimension-attributes-map';
|
|
7
8
|
import { convertASTObjectExpressionToJSObject } from './convert-ast-object-expression-to-js-object';
|
|
8
9
|
export var isValidCssPropertiesToTransform = function isValidCssPropertiesToTransform(node, config) {
|
|
9
10
|
if (!node) {
|
|
@@ -14,12 +15,12 @@ export var isValidCssPropertiesToTransform = function isValidCssPropertiesToTran
|
|
|
14
15
|
if (!cssObjectExpression || !isNodeOfType(cssObjectExpression, 'ObjectExpression')) {
|
|
15
16
|
return false;
|
|
16
17
|
}
|
|
17
|
-
if (!
|
|
18
|
+
if (!ObjectHelper.isFlat(cssObjectExpression)) {
|
|
18
19
|
return false;
|
|
19
20
|
}
|
|
20
21
|
|
|
21
22
|
// `use-primitives` should not report on empty style objects. See: https://product-fabric.atlassian.net/browse/DSP-16520
|
|
22
|
-
if (
|
|
23
|
+
if (ObjectHelper.getEntries(cssObjectExpression).length === 0) {
|
|
23
24
|
return false;
|
|
24
25
|
}
|
|
25
26
|
var _convertASTObjectExpr = convertASTObjectExpressionToJSObject(cssObjectExpression),
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export var SPREAD_SYNTAX = Symbol('SPREAD_SYNTAX');
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import { isNodeOfType } from 'eslint-codemod-utils';
|
|
2
|
-
import
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
2
|
+
import { FunctionCall } from '../../../ast-nodes/function-call';
|
|
3
|
+
import { Object as ObjectHelper } from '../../../ast-nodes/object';
|
|
4
|
+
import { ObjectEntry } from '../../../ast-nodes/object-entry';
|
|
5
|
+
import { supportedStylesMap } from '../transformers/css-to-xcss';
|
|
6
|
+
import { spaceTokenMap } from '../transformers/space-token-map';
|
|
7
|
+
import { supportedDimensionAttributesMap } from '../transformers/supported-dimension-attributes-map';
|
|
5
8
|
export var validateStyles = function validateStyles(node, config) {
|
|
6
9
|
if (!node) {
|
|
7
10
|
return false;
|
|
@@ -11,10 +14,10 @@ export var validateStyles = function validateStyles(node, config) {
|
|
|
11
14
|
if (!isNodeOfType(cssObjectExpression, 'ObjectExpression')) {
|
|
12
15
|
return false;
|
|
13
16
|
}
|
|
14
|
-
if (!
|
|
17
|
+
if (!ObjectHelper.isFlat(cssObjectExpression)) {
|
|
15
18
|
return false;
|
|
16
19
|
}
|
|
17
|
-
var entries =
|
|
20
|
+
var entries = ObjectHelper.getEntries(cssObjectExpression);
|
|
18
21
|
if (entries.length === 0) {
|
|
19
22
|
return false;
|
|
20
23
|
}
|
|
@@ -33,7 +36,7 @@ export var validateStyles = function validateStyles(node, config) {
|
|
|
33
36
|
if (!isNodeOfType(key, 'Identifier')) {
|
|
34
37
|
return false;
|
|
35
38
|
}
|
|
36
|
-
var property =
|
|
39
|
+
var property = ObjectEntry.getPropertyName(entry);
|
|
37
40
|
if (!property) {
|
|
38
41
|
return false;
|
|
39
42
|
}
|
|
@@ -87,10 +90,10 @@ var isTokenCall = function isTokenCall(node) {
|
|
|
87
90
|
}
|
|
88
91
|
|
|
89
92
|
// Is the function called 'token'?
|
|
90
|
-
if (
|
|
93
|
+
if (FunctionCall.getName(node) !== 'token') {
|
|
91
94
|
return false;
|
|
92
95
|
}
|
|
93
|
-
var token =
|
|
96
|
+
var token = FunctionCall.getArgumentAtPos(node, 0);
|
|
94
97
|
if (!token || token.type !== 'Literal') {
|
|
95
98
|
return false;
|
|
96
99
|
}
|
|
@@ -102,7 +105,7 @@ var isTokenCall = function isTokenCall(node) {
|
|
|
102
105
|
|
|
103
106
|
// Not all `token()` calls have a fall back. This is fine, but if there is a fallback, make sure it's the same as the fallback xcss will use
|
|
104
107
|
if (node.arguments.length === 2) {
|
|
105
|
-
var fallback =
|
|
108
|
+
var fallback = FunctionCall.getArgumentAtPos(node, 1);
|
|
106
109
|
|
|
107
110
|
// `getArgumentAtPos` is only able to understand `Literal` and `ObjectExpression` statements
|
|
108
111
|
// If there are 2 args, but `fallback` is undefined, then the fallback is something wild, like `token('space.100, `${gridSize * rem(3)`})`
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import { createLintRule } from '../utils/create-rule';
|
|
2
2
|
import { errorBoundary } from '../utils/error-boundary';
|
|
3
3
|
import { getConfig, PATTERNS } from './config';
|
|
4
|
-
import { EmphasisElements
|
|
4
|
+
import { EmphasisElements } from './transformers/emphasis-elements';
|
|
5
|
+
import { ParagraphElements } from './transformers/paragraph-elements';
|
|
6
|
+
import { SpanElements } from './transformers/span-elements';
|
|
7
|
+
import { StrongElements } from './transformers/strong-elements';
|
|
5
8
|
var textDocsUrl = 'https://atlassian.design/components/primitives/text';
|
|
6
9
|
var rule = createLintRule({
|
|
7
10
|
meta: {
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { JSXElement as JSXElementHelper } from '../../../ast-nodes/jsx-element';
|
|
2
|
+
// Add color="inherit" prop depending on config
|
|
3
|
+
export function addColorInheritAttributeFix(node, config, fixer) {
|
|
4
|
+
if (!config.inheritColor) {
|
|
5
|
+
return;
|
|
6
|
+
}
|
|
7
|
+
return JSXElementHelper.addAttribute(node, 'color', 'inherit', fixer);
|
|
8
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export var allowedAttrs = ['id', 'data-testid', 'key'];
|
|
@@ -1,40 +1 @@
|
|
|
1
|
-
|
|
2
|
-
import * as ast from '../../../ast-nodes';
|
|
3
|
-
// Rename data-testid prop to testId if present
|
|
4
|
-
export function updateTestIdAttributeFix(node, fixer) {
|
|
5
|
-
var testIdAttr = ast.JSXElement.getAttributeByName(node, 'data-testid');
|
|
6
|
-
if (testIdAttr) {
|
|
7
|
-
return ast.JSXAttribute.updateName(testIdAttr, 'testId', fixer);
|
|
8
|
-
}
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
// Add color="inherit" prop depending on config
|
|
12
|
-
export function addColorInheritAttributeFix(node, config, fixer) {
|
|
13
|
-
if (!config.inheritColor) {
|
|
14
|
-
return;
|
|
15
|
-
}
|
|
16
|
-
return ast.JSXElement.addAttribute(node, 'color', 'inherit', fixer);
|
|
17
|
-
}
|
|
18
|
-
export var allowedAttrs = ['id', 'data-testid', 'key'];
|
|
19
|
-
|
|
20
|
-
// Only allow elements with strings as children
|
|
21
|
-
// The use of `<FormattedMessage ... />` component and `{formatMessage(...)}` are allowed as these are used for i18n
|
|
22
|
-
export function hasTextChildrenOnly(node) {
|
|
23
|
-
var _node$children;
|
|
24
|
-
return (_node$children = node.children) === null || _node$children === void 0 ? void 0 : _node$children.every(function (child) {
|
|
25
|
-
if (isNodeOfType(child, 'JSXText')) {
|
|
26
|
-
return true;
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
// JSX child element <span><FormattedMessage /></span>
|
|
30
|
-
if (isNodeOfType(child, 'JSXElement') && ast.JSXElement.getName(child) === 'FormattedMessage') {
|
|
31
|
-
return true;
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
// JSX expression <span>{formatMessage(...)}</span>
|
|
35
|
-
if (isNodeOfType(child, 'JSXExpressionContainer') && isNodeOfType(child.expression, 'CallExpression')) {
|
|
36
|
-
return ast.FunctionCall.getName(child.expression) === 'formatMessage';
|
|
37
|
-
}
|
|
38
|
-
return false;
|
|
39
|
-
});
|
|
40
|
-
}
|
|
1
|
+
export {};
|
|
@@ -6,8 +6,11 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
|
|
|
6
6
|
|
|
7
7
|
import { isNodeOfType } from 'eslint-codemod-utils';
|
|
8
8
|
import { getSourceCode } from '@atlaskit/eslint-utils/context-compat';
|
|
9
|
-
import
|
|
10
|
-
import {
|
|
9
|
+
import { JSXElement as JSXElementHelper } from '../../../ast-nodes/jsx-element';
|
|
10
|
+
import { Root } from '../../../ast-nodes/root';
|
|
11
|
+
import { addColorInheritAttributeFix } from './add-color-inherit-attribute-fix';
|
|
12
|
+
import { allowedAttrs } from './allowed-attrs';
|
|
13
|
+
import { updateTestIdAttributeFix } from './update-test-id-attribute-fix';
|
|
11
14
|
export var EmphasisElements = {
|
|
12
15
|
lint: function lint(node, _ref) {
|
|
13
16
|
var context = _ref.context,
|
|
@@ -54,7 +57,7 @@ export var EmphasisElements = {
|
|
|
54
57
|
success: false
|
|
55
58
|
};
|
|
56
59
|
}
|
|
57
|
-
var elementName =
|
|
60
|
+
var elementName = JSXElementHelper.getName(node);
|
|
58
61
|
if (elementName !== 'em') {
|
|
59
62
|
return {
|
|
60
63
|
success: false
|
|
@@ -67,7 +70,7 @@ export var EmphasisElements = {
|
|
|
67
70
|
}
|
|
68
71
|
|
|
69
72
|
// Element has no unallowed props
|
|
70
|
-
if (!
|
|
73
|
+
if (!JSXElementHelper.hasAllowedAttrsOnly(node, allowedAttrs)) {
|
|
71
74
|
return {
|
|
72
75
|
success: true,
|
|
73
76
|
autoFixable: false
|
|
@@ -75,7 +78,7 @@ export var EmphasisElements = {
|
|
|
75
78
|
}
|
|
76
79
|
|
|
77
80
|
// If there is more than one `@atlaskit/primitives` import, then it becomes difficult to determine which import to transform
|
|
78
|
-
var importDeclaration =
|
|
81
|
+
var importDeclaration = Root.findImportsByModule(getSourceCode(context).ast.body, '@atlaskit/primitives');
|
|
79
82
|
if (importDeclaration.length > 1) {
|
|
80
83
|
return {
|
|
81
84
|
success: true,
|
|
@@ -91,12 +94,12 @@ export var EmphasisElements = {
|
|
|
91
94
|
var context = _ref3.context,
|
|
92
95
|
config = _ref3.config;
|
|
93
96
|
return function (fixer) {
|
|
94
|
-
var importFix =
|
|
97
|
+
var importFix = Root.upsertNamedImportDeclaration({
|
|
95
98
|
module: '@atlaskit/primitives',
|
|
96
99
|
specifiers: ['Text']
|
|
97
100
|
}, context, fixer);
|
|
98
|
-
var elementNameFixes =
|
|
99
|
-
var asAttributeFix =
|
|
101
|
+
var elementNameFixes = JSXElementHelper.updateName(node, 'Text', fixer);
|
|
102
|
+
var asAttributeFix = JSXElementHelper.addAttribute(node, 'as', 'em', fixer);
|
|
100
103
|
var colorAttributeFix = addColorInheritAttributeFix(node, config, fixer);
|
|
101
104
|
var testAttributeFix = updateTestIdAttributeFix(node, fixer);
|
|
102
105
|
return [importFix].concat(_toConsumableArray(elementNameFixes), [asAttributeFix, colorAttributeFix, testAttributeFix]).filter(function (fix) {
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { isNodeOfType } from 'eslint-codemod-utils';
|
|
2
|
+
import { FunctionCall } from '../../../ast-nodes/function-call';
|
|
3
|
+
import { JSXElement as JSXElementHelper } from '../../../ast-nodes/jsx-element';
|
|
4
|
+
|
|
5
|
+
// The use of `<FormattedMessage ... />` component and `{formatMessage(...)}` are allowed as these are used for i18n
|
|
6
|
+
export function hasTextChildrenOnly(node) {
|
|
7
|
+
var _node$children;
|
|
8
|
+
return (_node$children = node.children) === null || _node$children === void 0 ? void 0 : _node$children.every(function (child) {
|
|
9
|
+
if (isNodeOfType(child, 'JSXText')) {
|
|
10
|
+
return true;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
// JSX child element <span><FormattedMessage /></span>
|
|
14
|
+
if (isNodeOfType(child, 'JSXElement') && JSXElementHelper.getName(child) === 'FormattedMessage') {
|
|
15
|
+
return true;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
// JSX expression <span>{formatMessage(...)}</span>
|
|
19
|
+
if (isNodeOfType(child, 'JSXExpressionContainer') && isNodeOfType(child.expression, 'CallExpression')) {
|
|
20
|
+
return FunctionCall.getName(child.expression) === 'formatMessage';
|
|
21
|
+
}
|
|
22
|
+
return false;
|
|
23
|
+
});
|
|
24
|
+
}
|
|
@@ -6,8 +6,11 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
|
|
|
6
6
|
|
|
7
7
|
import { isNodeOfType } from 'eslint-codemod-utils';
|
|
8
8
|
import { getSourceCode } from '@atlaskit/eslint-utils/context-compat';
|
|
9
|
-
import
|
|
10
|
-
import {
|
|
9
|
+
import { JSXElement as JSXElementHelper } from '../../../ast-nodes/jsx-element';
|
|
10
|
+
import { Root } from '../../../ast-nodes/root';
|
|
11
|
+
import { addColorInheritAttributeFix } from './add-color-inherit-attribute-fix';
|
|
12
|
+
import { allowedAttrs } from './allowed-attrs';
|
|
13
|
+
import { updateTestIdAttributeFix } from './update-test-id-attribute-fix';
|
|
11
14
|
export var ParagraphElements = {
|
|
12
15
|
lint: function lint(node, _ref) {
|
|
13
16
|
var context = _ref.context,
|
|
@@ -89,7 +92,7 @@ export var ParagraphElements = {
|
|
|
89
92
|
}
|
|
90
93
|
};
|
|
91
94
|
}
|
|
92
|
-
var elementName =
|
|
95
|
+
var elementName = JSXElementHelper.getName(node);
|
|
93
96
|
if (elementName !== 'p') {
|
|
94
97
|
return {
|
|
95
98
|
success: false,
|
|
@@ -117,7 +120,7 @@ export var ParagraphElements = {
|
|
|
117
120
|
}
|
|
118
121
|
};
|
|
119
122
|
}
|
|
120
|
-
var siblings =
|
|
123
|
+
var siblings = JSXElementHelper.getChildren(node.parent);
|
|
121
124
|
if (siblings.length > 1) {
|
|
122
125
|
var _siblings$0$range, _node$range, _siblings$0$range2, _node$range2;
|
|
123
126
|
// Only report for the first p element by comparing node location
|
|
@@ -135,10 +138,10 @@ export var ParagraphElements = {
|
|
|
135
138
|
if (!isNodeOfType(child, 'JSXElement')) {
|
|
136
139
|
return false;
|
|
137
140
|
}
|
|
138
|
-
if (
|
|
141
|
+
if (JSXElementHelper.getName(child) !== 'p') {
|
|
139
142
|
return false;
|
|
140
143
|
}
|
|
141
|
-
return
|
|
144
|
+
return JSXElementHelper.hasAllowedAttrsOnly(child, allowedAttrs);
|
|
142
145
|
});
|
|
143
146
|
if (!siblingsMatch) {
|
|
144
147
|
return {
|
|
@@ -149,7 +152,7 @@ export var ParagraphElements = {
|
|
|
149
152
|
}
|
|
150
153
|
};
|
|
151
154
|
}
|
|
152
|
-
} else if (!
|
|
155
|
+
} else if (!JSXElementHelper.hasAllowedAttrsOnly(node, allowedAttrs)) {
|
|
153
156
|
return {
|
|
154
157
|
success: true,
|
|
155
158
|
autoFixable: false,
|
|
@@ -158,7 +161,7 @@ export var ParagraphElements = {
|
|
|
158
161
|
}
|
|
159
162
|
};
|
|
160
163
|
}
|
|
161
|
-
var importDeclaration =
|
|
164
|
+
var importDeclaration = Root.findImportsByModule(getSourceCode(context).ast.body, '@atlaskit/primitives');
|
|
162
165
|
|
|
163
166
|
// If there is more than one `@atlaskit/primitives` import, then it becomes difficult to determine which import to transform
|
|
164
167
|
if (importDeclaration.length > 1) {
|
|
@@ -182,12 +185,12 @@ export var ParagraphElements = {
|
|
|
182
185
|
var context = _ref3.context,
|
|
183
186
|
config = _ref3.config;
|
|
184
187
|
return function (fixer) {
|
|
185
|
-
var importFix =
|
|
188
|
+
var importFix = Root.upsertNamedImportDeclaration({
|
|
186
189
|
module: '@atlaskit/primitives',
|
|
187
190
|
specifiers: ['Text']
|
|
188
191
|
}, context, fixer);
|
|
189
|
-
var elementNameFixes =
|
|
190
|
-
var asAttributeFix =
|
|
192
|
+
var elementNameFixes = JSXElementHelper.updateName(node, 'Text', fixer);
|
|
193
|
+
var asAttributeFix = JSXElementHelper.addAttribute(node, 'as', 'p', fixer);
|
|
191
194
|
var colorAttributeFix = addColorInheritAttributeFix(node, config, fixer);
|
|
192
195
|
var testAttributeFix = updateTestIdAttributeFix(node, fixer);
|
|
193
196
|
return [importFix].concat(_toConsumableArray(elementNameFixes), [asAttributeFix, colorAttributeFix, testAttributeFix]).filter(function (fix) {
|
|
@@ -203,7 +206,7 @@ export var ParagraphElements = {
|
|
|
203
206
|
if (!isNodeOfType(node.parent, 'JSXElement') || !node.parent.closingElement) {
|
|
204
207
|
return [];
|
|
205
208
|
}
|
|
206
|
-
var importFix =
|
|
209
|
+
var importFix = Root.upsertNamedImportDeclaration({
|
|
207
210
|
module: '@atlaskit/primitives',
|
|
208
211
|
specifiers: ['Text', 'Stack']
|
|
209
212
|
}, context, fixer);
|
|
@@ -211,8 +214,8 @@ export var ParagraphElements = {
|
|
|
211
214
|
// Update all siblings elements and their attributes
|
|
212
215
|
var siblingFixes = refs.siblings.map(function (sibling) {
|
|
213
216
|
if (isNodeOfType(sibling, 'JSXElement')) {
|
|
214
|
-
var elementNameFixes =
|
|
215
|
-
var asAttributeFix =
|
|
217
|
+
var elementNameFixes = JSXElementHelper.updateName(sibling, 'Text', fixer);
|
|
218
|
+
var asAttributeFix = JSXElementHelper.addAttribute(sibling, 'as', 'p', fixer);
|
|
216
219
|
var colorAttributeFix = addColorInheritAttributeFix(sibling, config, fixer);
|
|
217
220
|
var testAttributeFix = updateTestIdAttributeFix(sibling, fixer);
|
|
218
221
|
return [].concat(_toConsumableArray(elementNameFixes), [asAttributeFix, colorAttributeFix, testAttributeFix]);
|
|
@@ -6,8 +6,12 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
|
|
|
6
6
|
|
|
7
7
|
import { isNodeOfType } from 'eslint-codemod-utils';
|
|
8
8
|
import { getSourceCode } from '@atlaskit/eslint-utils/context-compat';
|
|
9
|
-
import
|
|
10
|
-
import {
|
|
9
|
+
import { JSXElement as JSXElementHelper } from '../../../ast-nodes/jsx-element';
|
|
10
|
+
import { Root } from '../../../ast-nodes/root';
|
|
11
|
+
import { addColorInheritAttributeFix } from './add-color-inherit-attribute-fix';
|
|
12
|
+
import { allowedAttrs } from './allowed-attrs';
|
|
13
|
+
import { hasTextChildrenOnly } from './has-text-children-only';
|
|
14
|
+
import { updateTestIdAttributeFix } from './update-test-id-attribute-fix';
|
|
11
15
|
export var SpanElements = {
|
|
12
16
|
lint: function lint(node, _ref) {
|
|
13
17
|
var context = _ref.context,
|
|
@@ -54,7 +58,7 @@ export var SpanElements = {
|
|
|
54
58
|
success: false
|
|
55
59
|
};
|
|
56
60
|
}
|
|
57
|
-
var elementName =
|
|
61
|
+
var elementName = JSXElementHelper.getName(node);
|
|
58
62
|
if (elementName !== 'span') {
|
|
59
63
|
return {
|
|
60
64
|
success: false
|
|
@@ -74,7 +78,7 @@ export var SpanElements = {
|
|
|
74
78
|
}
|
|
75
79
|
|
|
76
80
|
// Element has no unallowed props
|
|
77
|
-
if (!
|
|
81
|
+
if (!JSXElementHelper.hasAllowedAttrsOnly(node, allowedAttrs)) {
|
|
78
82
|
return {
|
|
79
83
|
success: true,
|
|
80
84
|
autoFixable: false
|
|
@@ -82,7 +86,7 @@ export var SpanElements = {
|
|
|
82
86
|
}
|
|
83
87
|
|
|
84
88
|
// If there is more than one `@atlaskit/primitives` import, then it becomes difficult to determine which import to transform
|
|
85
|
-
var importDeclaration =
|
|
89
|
+
var importDeclaration = Root.findImportsByModule(getSourceCode(context).ast.body, '@atlaskit/primitives');
|
|
86
90
|
if (importDeclaration.length > 1) {
|
|
87
91
|
return {
|
|
88
92
|
success: true,
|
|
@@ -98,11 +102,11 @@ export var SpanElements = {
|
|
|
98
102
|
var context = _ref3.context,
|
|
99
103
|
config = _ref3.config;
|
|
100
104
|
return function (fixer) {
|
|
101
|
-
var importFix =
|
|
105
|
+
var importFix = Root.upsertNamedImportDeclaration({
|
|
102
106
|
module: '@atlaskit/primitives',
|
|
103
107
|
specifiers: ['Text']
|
|
104
108
|
}, context, fixer);
|
|
105
|
-
var elementNameFixes =
|
|
109
|
+
var elementNameFixes = JSXElementHelper.updateName(node, 'Text', fixer);
|
|
106
110
|
var colorAttributeFix = addColorInheritAttributeFix(node, config, fixer);
|
|
107
111
|
var testAttributeFix = updateTestIdAttributeFix(node, fixer);
|
|
108
112
|
return [importFix].concat(_toConsumableArray(elementNameFixes), [colorAttributeFix, testAttributeFix]).filter(function (fix) {
|
|
@@ -6,8 +6,11 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
|
|
|
6
6
|
|
|
7
7
|
import { isNodeOfType } from 'eslint-codemod-utils';
|
|
8
8
|
import { getSourceCode } from '@atlaskit/eslint-utils/context-compat';
|
|
9
|
-
import
|
|
10
|
-
import {
|
|
9
|
+
import { JSXElement as JSXElementHelper } from '../../../ast-nodes/jsx-element';
|
|
10
|
+
import { Root } from '../../../ast-nodes/root';
|
|
11
|
+
import { addColorInheritAttributeFix } from './add-color-inherit-attribute-fix';
|
|
12
|
+
import { allowedAttrs } from './allowed-attrs';
|
|
13
|
+
import { updateTestIdAttributeFix } from './update-test-id-attribute-fix';
|
|
11
14
|
export var StrongElements = {
|
|
12
15
|
lint: function lint(node, _ref) {
|
|
13
16
|
var context = _ref.context,
|
|
@@ -54,7 +57,7 @@ export var StrongElements = {
|
|
|
54
57
|
success: false
|
|
55
58
|
};
|
|
56
59
|
}
|
|
57
|
-
var elementName =
|
|
60
|
+
var elementName = JSXElementHelper.getName(node);
|
|
58
61
|
if (elementName !== 'strong') {
|
|
59
62
|
return {
|
|
60
63
|
success: false
|
|
@@ -67,7 +70,7 @@ export var StrongElements = {
|
|
|
67
70
|
}
|
|
68
71
|
|
|
69
72
|
// Element has no unallowed props
|
|
70
|
-
if (!
|
|
73
|
+
if (!JSXElementHelper.hasAllowedAttrsOnly(node, allowedAttrs)) {
|
|
71
74
|
return {
|
|
72
75
|
success: true,
|
|
73
76
|
autoFixable: false
|
|
@@ -75,7 +78,7 @@ export var StrongElements = {
|
|
|
75
78
|
}
|
|
76
79
|
|
|
77
80
|
// If there is more than one `@atlaskit/primitives` import, then it becomes difficult to determine which import to transform
|
|
78
|
-
var importDeclaration =
|
|
81
|
+
var importDeclaration = Root.findImportsByModule(getSourceCode(context).ast.body, '@atlaskit/primitives');
|
|
79
82
|
if (importDeclaration.length > 1) {
|
|
80
83
|
return {
|
|
81
84
|
success: true,
|
|
@@ -91,12 +94,12 @@ export var StrongElements = {
|
|
|
91
94
|
var context = _ref3.context,
|
|
92
95
|
config = _ref3.config;
|
|
93
96
|
return function (fixer) {
|
|
94
|
-
var importFix =
|
|
97
|
+
var importFix = Root.upsertNamedImportDeclaration({
|
|
95
98
|
module: '@atlaskit/primitives',
|
|
96
99
|
specifiers: ['Text']
|
|
97
100
|
}, context, fixer);
|
|
98
|
-
var elementNameFixes =
|
|
99
|
-
var asAttributeFix =
|
|
101
|
+
var elementNameFixes = JSXElementHelper.updateName(node, 'Text', fixer);
|
|
102
|
+
var asAttributeFix = JSXElementHelper.addAttribute(node, 'as', 'strong', fixer);
|
|
100
103
|
var colorAttributeFix = addColorInheritAttributeFix(node, config, fixer);
|
|
101
104
|
var testAttributeFix = updateTestIdAttributeFix(node, fixer);
|
|
102
105
|
return [importFix].concat(_toConsumableArray(elementNameFixes), [asAttributeFix, colorAttributeFix, testAttributeFix]).filter(function (fix) {
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { JSXAttribute } from '../../../ast-nodes/jsx-attribute';
|
|
2
|
+
import { JSXElement as JSXElementHelper } from '../../../ast-nodes/jsx-element';
|
|
3
|
+
|
|
4
|
+
// Rename data-testid prop to testId if present
|
|
5
|
+
export function updateTestIdAttributeFix(node, fixer) {
|
|
6
|
+
var testIdAttr = JSXElementHelper.getAttributeByName(node, 'data-testid');
|
|
7
|
+
if (testIdAttr) {
|
|
8
|
+
return JSXAttribute.updateName(testIdAttr, 'testId', fixer);
|
|
9
|
+
}
|
|
10
|
+
}
|