@atlaskit/eslint-plugin-design-system 14.1.0 → 14.3.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 +15 -0
- package/README.md +79 -79
- package/configs/deprecated.json +9 -0
- package/dist/cjs/ast-nodes/jsx-element-helper.js +90 -0
- package/dist/cjs/common/token-maps.partial.js +2 -1
- package/dist/cjs/rules/consistent-css-prop-usage/index.js +2 -2
- package/dist/cjs/rules/enforce-inline-styles-in-select/index.js +2 -2
- package/dist/cjs/rules/ensure-avatar-tag-avatar-props/index.js +2 -2
- package/dist/cjs/rules/ensure-design-token-usage/em-to-pixels.js +21 -0
- package/dist/cjs/rules/ensure-design-token-usage/find-token-name-by-property-value.js +23 -0
- package/dist/cjs/rules/ensure-design-token-usage/get-domains-for-property.js +34 -0
- package/dist/cjs/rules/ensure-design-token-usage/get-font-size-value-in-scope.js +31 -0
- package/dist/cjs/rules/ensure-design-token-usage/get-property-node-from-parent.js +19 -0
- package/dist/cjs/rules/ensure-design-token-usage/get-token-node-for-value.js +34 -0
- package/dist/cjs/rules/ensure-design-token-usage/get-token-replacement.js +23 -0
- package/dist/cjs/rules/ensure-design-token-usage/get-token-suggestion.js +27 -0
- package/dist/cjs/rules/ensure-design-token-usage/get-value-for-property-node.js +13 -0
- package/dist/cjs/rules/ensure-design-token-usage/get-value-from-shorthand.js +19 -0
- package/dist/cjs/rules/ensure-design-token-usage/get-value-from-template-literal-raw.js +35 -0
- package/dist/cjs/rules/ensure-design-token-usage/get-value.js +141 -0
- package/dist/cjs/rules/ensure-design-token-usage/index.js +41 -27
- package/dist/cjs/rules/ensure-design-token-usage/is-border-size-property.js +10 -0
- package/dist/cjs/rules/ensure-design-token-usage/is-calc.js +15 -0
- package/dist/cjs/rules/ensure-design-token-usage/is-radius-property.js +10 -0
- package/dist/cjs/rules/ensure-design-token-usage/is-shape-property.js +11 -0
- package/dist/cjs/rules/ensure-design-token-usage/is-spacing-property.js +10 -0
- package/dist/cjs/rules/ensure-design-token-usage/is-valid-spacing-value.js +26 -0
- package/dist/cjs/rules/ensure-design-token-usage/lint-jsx-identifier-for-color.js +29 -0
- package/dist/cjs/rules/ensure-design-token-usage/lint-jsx-literal-for-color.js +152 -0
- package/dist/cjs/rules/ensure-design-token-usage/lint-jsx-member-for-color.js +28 -0
- package/dist/cjs/rules/ensure-design-token-usage/lint-object-for-color.js +94 -0
- package/dist/cjs/rules/ensure-design-token-usage/lint-template-identifier-for-color.js +53 -0
- package/dist/cjs/rules/ensure-design-token-usage/process-css-node.js +39 -0
- package/dist/cjs/rules/ensure-design-token-usage/remove-pixel-suffix.js +14 -0
- package/dist/cjs/rules/ensure-design-token-usage/spacing.js +19 -13
- package/dist/cjs/rules/ensure-design-token-usage-preview/index.js +2 -2
- package/dist/cjs/rules/ensure-icon-color/index.js +2 -2
- package/dist/cjs/rules/ensure-proper-xcss-usage/index.js +2 -2
- package/dist/cjs/rules/icon-label/index.js +2 -2
- package/dist/cjs/rules/lozenge-badge-tag-labelling-system-migration/index.js +2 -2
- package/dist/cjs/rules/no-banned-imports/index.js +2 -2
- package/dist/cjs/rules/no-boolean-autofocus-on-modal-dialog/index.js +4 -4
- package/dist/cjs/rules/no-css-tagged-template-expression/index.js +5 -4
- package/dist/cjs/rules/no-dark-theme-vr-tests/index.js +2 -2
- package/dist/cjs/rules/no-deprecated-apis/index.js +4 -4
- package/dist/cjs/rules/no-deprecated-design-token-usage/index.js +2 -2
- package/dist/cjs/rules/no-deprecated-imports/checks.js +2 -2
- package/dist/cjs/rules/no-deprecated-imports/index.js +2 -2
- package/dist/cjs/rules/no-direct-use-of-web-platform-drag-and-drop/index.js +2 -2
- package/dist/cjs/rules/no-emotion-primitives/index.js +2 -2
- package/dist/cjs/rules/no-empty-styled-expression/index.js +2 -2
- package/dist/cjs/rules/no-exported-css/index.js +2 -2
- package/dist/cjs/rules/no-exported-keyframes/index.js +2 -2
- package/dist/cjs/rules/no-html-anchor/index.js +2 -2
- package/dist/cjs/rules/no-html-anchor/node-types/jsx-element/index.js +2 -2
- package/dist/cjs/rules/no-html-anchor/node-types/supported.js +3 -3
- package/dist/cjs/rules/no-html-button/index.js +2 -2
- package/dist/cjs/rules/no-html-button/node-types/jsx-element/index.js +2 -2
- package/dist/cjs/rules/no-html-button/node-types/supported.js +3 -3
- 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 -2
- package/dist/cjs/rules/no-html-checkbox/node-types/supported.js +3 -3
- package/dist/cjs/rules/no-html-code/index.js +2 -2
- package/dist/cjs/rules/no-html-code/node-types/jsx-element/index.js +2 -2
- package/dist/cjs/rules/no-html-code/node-types/supported.js +3 -3
- package/dist/cjs/rules/no-html-heading/index.js +2 -2
- package/dist/cjs/rules/no-html-heading/node-types/jsx-element/index.js +2 -2
- package/dist/cjs/rules/no-html-heading/node-types/supported.js +3 -3
- package/dist/cjs/rules/no-html-image/index.js +2 -2
- package/dist/cjs/rules/no-html-image/node-types/jsx-element/index.js +2 -2
- package/dist/cjs/rules/no-html-image/node-types/supported.js +3 -3
- 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 -2
- package/dist/cjs/rules/no-html-radio/node-types/supported.js +3 -3
- 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 -2
- package/dist/cjs/rules/no-html-range/node-types/supported.js +3 -3
- package/dist/cjs/rules/no-html-select/index.js +2 -2
- package/dist/cjs/rules/no-html-select/node-types/jsx-element/index.js +2 -2
- package/dist/cjs/rules/no-html-select/node-types/supported.js +3 -3
- 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 -2
- package/dist/cjs/rules/no-html-text-input/node-types/supported.js +3 -3
- package/dist/cjs/rules/no-html-textarea/index.js +2 -2
- package/dist/cjs/rules/no-html-textarea/node-types/jsx-element/index.js +2 -2
- package/dist/cjs/rules/no-html-textarea/node-types/supported.js +3 -3
- package/dist/cjs/rules/no-icon-spacing-prop/index.js +2 -2
- package/dist/cjs/rules/no-invalid-css-map/index.js +2 -2
- package/dist/cjs/rules/no-keyframes-tagged-template-expression/index.js +5 -4
- package/dist/cjs/rules/no-margin/index.js +2 -2
- package/dist/cjs/rules/no-nested-styles/index.js +2 -2
- package/dist/cjs/rules/no-physical-properties/index.js +2 -2
- package/dist/cjs/rules/no-placeholder/affected-atlaskit-packages.js +12 -0
- package/dist/cjs/rules/no-placeholder/affected-html-elements.js +7 -0
- package/dist/cjs/rules/no-placeholder/index.js +12 -17
- package/dist/cjs/rules/no-readonly-or-disabled-inputs/affected-atlaskit-packages.js +10 -0
- package/dist/cjs/rules/no-readonly-or-disabled-inputs/affected-html-elements.js +7 -0
- package/dist/cjs/rules/no-readonly-or-disabled-inputs/index.js +41 -28
- package/dist/cjs/rules/no-readonly-or-disabled-inputs/unwanted-atlaskit-attributes.js +7 -0
- package/dist/cjs/rules/no-readonly-or-disabled-inputs/unwanted-html-attributes.js +7 -0
- package/dist/cjs/rules/no-separator-with-list-elements/index.js +2 -2
- package/dist/cjs/rules/no-styled-tagged-template-expression/index.js +5 -4
- package/dist/cjs/rules/no-to-match-snapshot/index.js +2 -2
- package/dist/cjs/rules/no-unsafe-design-token-usage/index.js +4 -4
- package/dist/cjs/rules/no-unsafe-inline-snapshot/index.js +2 -2
- package/dist/cjs/rules/no-unsafe-style-overrides/index.js +2 -2
- package/dist/cjs/rules/no-unsupported-drag-and-drop-libraries/index.js +2 -2
- package/dist/cjs/rules/no-unused-css-map/get-css-map-object.js +18 -0
- package/dist/cjs/rules/no-unused-css-map/index.js +6 -5
- package/dist/cjs/rules/no-unused-css-map/unused-css-map-checker.js +150 -0
- package/dist/cjs/rules/prefer-primitives/index.js +2 -2
- package/dist/cjs/rules/use-button-group-label/index.js +2 -2
- package/dist/cjs/rules/use-character-counter-field/index.js +7 -5
- package/dist/cjs/rules/use-correct-field/index.js +2 -2
- package/dist/cjs/rules/use-cx-function-in-xcss/index.js +2 -2
- package/dist/cjs/rules/use-datetime-picker-calendar-button/index.js +5 -5
- package/dist/cjs/rules/use-drawer-label/index.js +2 -2
- package/dist/cjs/rules/use-field-message-wrapper/index.js +2 -2
- package/dist/cjs/rules/use-heading/index.js +2 -2
- package/dist/cjs/rules/use-heading/transformers/native-elements.js +7 -7
- package/dist/cjs/rules/use-heading/transformers/update-test-id-attribute-fix.js +2 -2
- package/dist/cjs/rules/use-heading-level-in-spotlight-card/index.js +2 -2
- package/dist/cjs/rules/use-href-in-link-item/index.js +2 -2
- package/dist/cjs/rules/use-latest-xcss-syntax/index.js +2 -2
- package/dist/cjs/rules/use-latest-xcss-syntax-typography/config/get-config.js +16 -0
- package/dist/cjs/rules/use-latest-xcss-syntax-typography/config/patterns.js +7 -0
- package/dist/cjs/rules/use-latest-xcss-syntax-typography/config/types.js +5 -0
- package/dist/cjs/rules/use-latest-xcss-syntax-typography/index.js +7 -6
- package/dist/cjs/rules/use-menu-section-title/index.js +2 -2
- package/dist/cjs/rules/use-modal-dialog-close-button/index.js +4 -4
- package/dist/cjs/rules/use-onboarding-spotlight-label/index.js +2 -2
- package/dist/cjs/rules/use-popup-label/index.js +2 -2
- package/dist/cjs/rules/{use-latest-xcss-syntax-typography/config/index.js → use-primitives/config/get-config.js} +2 -4
- package/dist/cjs/rules/use-primitives/config/types.js +5 -0
- package/dist/cjs/rules/use-primitives/config/valid-patterns.js +46 -0
- package/dist/cjs/rules/use-primitives/index.js +7 -6
- package/dist/cjs/rules/use-primitives/transformers/compiled-styled/convert-jsx-call-site.js +2 -2
- package/dist/cjs/rules/use-primitives/transformers/compiled-styled/convert-styled-component-call-to-jsx.js +2 -2
- package/dist/cjs/rules/use-primitives/transformers/compiled-styled/index.js +2 -2
- package/dist/cjs/rules/use-primitives/transformers/css-to-xcss-transformer.js +45 -0
- package/dist/cjs/rules/use-primitives/transformers/emotion-css/index.js +8 -8
- package/dist/cjs/rules/use-primitives/transformers/styled-object-to-xcss-tokens.js +39 -0
- package/dist/cjs/rules/use-primitives/transformers/supported-styles-map.js +37 -0
- package/dist/cjs/rules/use-primitives/utils/is-valid-css-properties-to-transform.js +4 -4
- package/dist/cjs/rules/use-primitives/utils/validate-styles.js +2 -2
- package/dist/cjs/rules/use-primitives-text/config/{index.js → get-config.js} +1 -10
- package/dist/cjs/rules/use-primitives-text/config/patterns.js +15 -0
- package/dist/cjs/rules/use-primitives-text/config/types.js +5 -0
- package/dist/cjs/rules/use-primitives-text/index.js +7 -6
- package/dist/cjs/rules/use-primitives-text/transformers/add-color-inherit-attribute-fix.js +2 -2
- package/dist/cjs/rules/use-primitives-text/transformers/emphasis-elements.js +5 -5
- package/dist/cjs/rules/use-primitives-text/transformers/has-text-children-only.js +2 -2
- package/dist/cjs/rules/use-primitives-text/transformers/paragraph-elements.js +10 -10
- package/dist/cjs/rules/use-primitives-text/transformers/span-elements.js +4 -4
- package/dist/cjs/rules/use-primitives-text/transformers/strong-elements.js +5 -5
- package/dist/cjs/rules/use-primitives-text/transformers/update-test-id-attribute-fix.js +2 -2
- package/dist/cjs/rules/use-should-render-to-parent/add-prop.js +9 -0
- package/dist/cjs/rules/use-should-render-to-parent/index.js +52 -16
- package/dist/cjs/rules/use-should-render-to-parent/set-prop-to-true.js +9 -0
- package/dist/cjs/rules/use-simple-field/index.js +2 -2
- package/dist/cjs/rules/use-simple-form/index.js +11 -5
- package/dist/cjs/rules/use-simple-form/top-level-attribute-names.js +7 -0
- package/dist/cjs/rules/use-spotlight-package/index.js +2 -2
- package/dist/cjs/rules/use-tag-group-label/index.js +2 -2
- package/dist/cjs/rules/use-textfield-autocomplete/index.js +7 -7
- package/dist/cjs/rules/use-tokens-shape/index.js +2 -2
- package/dist/cjs/rules/use-tokens-space/index.js +2 -2
- package/dist/cjs/rules/use-tokens-typography/config/get-config.js +16 -0
- package/dist/cjs/rules/use-tokens-typography/config/{index.js → rule-schema.js} +1 -9
- package/dist/cjs/rules/use-tokens-typography/config/types.js +1 -0
- package/dist/cjs/rules/use-tokens-typography/default-font-weight.js +8 -0
- package/dist/cjs/rules/use-tokens-typography/find-font-weight-token-for-value.js +21 -0
- package/dist/cjs/rules/use-tokens-typography/find-typography-token-for-values.js +21 -0
- package/dist/cjs/rules/use-tokens-typography/font-weight-map.js +12 -0
- package/dist/cjs/rules/use-tokens-typography/font-weight-tokens.js +18 -0
- package/dist/cjs/rules/use-tokens-typography/get-token-property.js +41 -0
- package/dist/cjs/rules/use-tokens-typography/index.js +6 -5
- package/dist/cjs/rules/use-tokens-typography/transformers/banned-properties.js +2 -2
- package/dist/cjs/rules/use-tokens-typography/transformers/font-family.js +2 -2
- package/dist/cjs/rules/use-tokens-typography/transformers/font-weight.js +4 -4
- package/dist/cjs/rules/use-tokens-typography/transformers/style-object.js +23 -19
- package/dist/cjs/rules/use-tokens-typography/transformers/untokenized-properties.js +2 -2
- package/dist/cjs/rules/use-tokens-typography/types.js +1 -0
- package/dist/cjs/rules/use-tokens-typography/typography-value-to-token.js +43 -0
- package/dist/cjs/rules/use-visually-hidden/count-matching-key-values.js +27 -0
- package/dist/cjs/rules/use-visually-hidden/get-object-likeness.js +33 -0
- package/dist/cjs/rules/use-visually-hidden/index.js +10 -9
- package/dist/cjs/rules/use-visually-hidden/reference-object.js +16 -0
- package/dist/cjs/rules/utils/create-lint-rule.js +14 -0
- package/dist/cjs/rules/utils/create-no-tagged-template-expression-rule/create-no-tagged-template-expression-rule.js +137 -0
- package/dist/cjs/rules/utils/create-no-tagged-template-expression-rule/no-tagged-template-expression-rule-schema.js +20 -0
- package/dist/cjs/rules/utils/create-rule.js +4 -15
- package/dist/cjs/rules/utils/get-rule-url.js +11 -0
- package/dist/cjs/rules/utils/includes-hard-coded-color.js +23 -0
- package/dist/cjs/rules/utils/is-color-css-property-name.js +15 -0
- package/dist/cjs/rules/utils/is-css-in-js-call-node.js +10 -0
- package/dist/cjs/rules/utils/is-css-in-js-object-node.js +10 -0
- package/dist/cjs/rules/utils/is-decendant-of-style-block.js +48 -0
- package/dist/cjs/rules/utils/is-deprecated-import-config.js +9 -0
- package/dist/cjs/rules/utils/is-deprecated-jsx-attribute-config.js +9 -0
- package/dist/cjs/rules/utils/is-hard-coded-color.js +27 -0
- package/dist/cjs/rules/utils/is-legacy-color.js +12 -0
- package/dist/cjs/rules/utils/is-legacy-named-color.js +10 -0
- package/dist/cjs/rules/utils/named-colors.js +7 -0
- package/dist/cjs/rules/utils/types.js +1 -17
- package/dist/configs/deprecated.json +9 -0
- package/dist/es2019/ast-nodes/jsx-element-helper.js +84 -0
- package/dist/es2019/common/token-maps.partial.js +2 -1
- package/dist/es2019/rules/consistent-css-prop-usage/index.js +1 -1
- package/dist/es2019/rules/enforce-inline-styles-in-select/index.js +1 -1
- package/dist/es2019/rules/ensure-avatar-tag-avatar-props/index.js +1 -1
- package/dist/es2019/rules/ensure-design-token-usage/em-to-pixels.js +15 -0
- package/dist/es2019/rules/ensure-design-token-usage/find-token-name-by-property-value.js +15 -0
- package/dist/es2019/rules/ensure-design-token-usage/get-domains-for-property.js +28 -0
- package/dist/es2019/rules/ensure-design-token-usage/get-font-size-value-in-scope.js +15 -0
- package/dist/es2019/rules/ensure-design-token-usage/get-property-node-from-parent.js +13 -0
- package/dist/es2019/rules/ensure-design-token-usage/get-token-node-for-value.js +29 -0
- package/dist/es2019/rules/ensure-design-token-usage/get-token-replacement.js +18 -0
- package/dist/es2019/rules/ensure-design-token-usage/get-token-suggestion.js +14 -0
- package/dist/es2019/rules/ensure-design-token-usage/get-value-for-property-node.js +7 -0
- package/dist/es2019/rules/ensure-design-token-usage/get-value-from-shorthand.js +13 -0
- package/dist/es2019/rules/ensure-design-token-usage/get-value-from-template-literal-raw.js +30 -0
- package/dist/es2019/rules/ensure-design-token-usage/get-value.js +129 -0
- package/dist/es2019/rules/ensure-design-token-usage/index.js +21 -8
- package/dist/es2019/rules/ensure-design-token-usage/is-border-size-property.js +4 -0
- package/dist/es2019/rules/ensure-design-token-usage/is-calc.js +9 -0
- package/dist/es2019/rules/ensure-design-token-usage/is-radius-property.js +4 -0
- package/dist/es2019/rules/ensure-design-token-usage/is-shape-property.js +5 -0
- package/dist/es2019/rules/ensure-design-token-usage/is-spacing-property.js +4 -0
- package/dist/es2019/rules/ensure-design-token-usage/is-valid-spacing-value.js +20 -0
- package/dist/es2019/rules/ensure-design-token-usage/lint-jsx-identifier-for-color.js +23 -0
- package/dist/es2019/rules/ensure-design-token-usage/lint-jsx-literal-for-color.js +123 -0
- package/dist/es2019/rules/ensure-design-token-usage/lint-jsx-member-for-color.js +22 -0
- package/dist/es2019/rules/ensure-design-token-usage/lint-object-for-color.js +88 -0
- package/dist/es2019/rules/ensure-design-token-usage/lint-template-identifier-for-color.js +46 -0
- package/dist/es2019/rules/ensure-design-token-usage/process-css-node.js +31 -0
- package/dist/es2019/rules/ensure-design-token-usage/remove-pixel-suffix.js +8 -0
- package/dist/es2019/rules/ensure-design-token-usage/spacing.js +7 -1
- package/dist/es2019/rules/ensure-design-token-usage-preview/index.js +1 -1
- package/dist/es2019/rules/ensure-icon-color/index.js +1 -1
- package/dist/es2019/rules/ensure-proper-xcss-usage/index.js +1 -1
- package/dist/es2019/rules/icon-label/index.js +1 -1
- package/dist/es2019/rules/lozenge-badge-tag-labelling-system-migration/index.js +1 -1
- package/dist/es2019/rules/no-banned-imports/index.js +1 -1
- package/dist/es2019/rules/no-boolean-autofocus-on-modal-dialog/index.js +2 -2
- package/dist/es2019/rules/no-css-tagged-template-expression/index.js +3 -2
- package/dist/es2019/rules/no-dark-theme-vr-tests/index.js +1 -1
- package/dist/es2019/rules/no-deprecated-apis/index.js +2 -2
- package/dist/es2019/rules/no-deprecated-design-token-usage/index.js +1 -1
- package/dist/es2019/rules/no-deprecated-imports/checks.js +1 -1
- package/dist/es2019/rules/no-deprecated-imports/index.js +1 -1
- package/dist/es2019/rules/no-direct-use-of-web-platform-drag-and-drop/index.js +1 -1
- package/dist/es2019/rules/no-emotion-primitives/index.js +1 -1
- package/dist/es2019/rules/no-empty-styled-expression/index.js +1 -1
- package/dist/es2019/rules/no-exported-css/index.js +1 -1
- package/dist/es2019/rules/no-exported-keyframes/index.js +1 -1
- package/dist/es2019/rules/no-html-anchor/index.js +1 -1
- package/dist/es2019/rules/no-html-anchor/node-types/jsx-element/index.js +1 -1
- package/dist/es2019/rules/no-html-anchor/node-types/supported.js +1 -1
- package/dist/es2019/rules/no-html-button/index.js +1 -1
- package/dist/es2019/rules/no-html-button/node-types/jsx-element/index.js +1 -1
- package/dist/es2019/rules/no-html-button/node-types/supported.js +1 -1
- package/dist/es2019/rules/no-html-checkbox/index.js +1 -1
- package/dist/es2019/rules/no-html-checkbox/node-types/jsx-element/index.js +1 -1
- package/dist/es2019/rules/no-html-checkbox/node-types/supported.js +1 -1
- package/dist/es2019/rules/no-html-code/index.js +1 -1
- package/dist/es2019/rules/no-html-code/node-types/jsx-element/index.js +1 -1
- package/dist/es2019/rules/no-html-code/node-types/supported.js +1 -1
- package/dist/es2019/rules/no-html-heading/index.js +1 -1
- package/dist/es2019/rules/no-html-heading/node-types/jsx-element/index.js +1 -1
- package/dist/es2019/rules/no-html-heading/node-types/supported.js +1 -1
- package/dist/es2019/rules/no-html-image/index.js +1 -1
- package/dist/es2019/rules/no-html-image/node-types/jsx-element/index.js +1 -1
- package/dist/es2019/rules/no-html-image/node-types/supported.js +1 -1
- package/dist/es2019/rules/no-html-radio/index.js +1 -1
- package/dist/es2019/rules/no-html-radio/node-types/jsx-element/index.js +1 -1
- package/dist/es2019/rules/no-html-radio/node-types/supported.js +1 -1
- package/dist/es2019/rules/no-html-range/index.js +1 -1
- package/dist/es2019/rules/no-html-range/node-types/jsx-element/index.js +1 -1
- package/dist/es2019/rules/no-html-range/node-types/supported.js +1 -1
- package/dist/es2019/rules/no-html-select/index.js +1 -1
- package/dist/es2019/rules/no-html-select/node-types/jsx-element/index.js +1 -1
- package/dist/es2019/rules/no-html-select/node-types/supported.js +1 -1
- 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 +1 -1
- package/dist/es2019/rules/no-html-text-input/node-types/supported.js +1 -1
- package/dist/es2019/rules/no-html-textarea/index.js +1 -1
- package/dist/es2019/rules/no-html-textarea/node-types/jsx-element/index.js +1 -1
- package/dist/es2019/rules/no-html-textarea/node-types/supported.js +1 -1
- package/dist/es2019/rules/no-icon-spacing-prop/index.js +1 -1
- package/dist/es2019/rules/no-invalid-css-map/index.js +1 -1
- package/dist/es2019/rules/no-keyframes-tagged-template-expression/index.js +3 -2
- package/dist/es2019/rules/no-margin/index.js +1 -1
- package/dist/es2019/rules/no-nested-styles/index.js +1 -1
- package/dist/es2019/rules/no-physical-properties/index.js +1 -1
- package/dist/es2019/rules/no-placeholder/affected-atlaskit-packages.js +6 -0
- package/dist/es2019/rules/no-placeholder/affected-html-elements.js +1 -0
- package/dist/es2019/rules/no-placeholder/index.js +6 -11
- package/dist/es2019/rules/no-readonly-or-disabled-inputs/affected-atlaskit-packages.js +4 -0
- package/dist/es2019/rules/no-readonly-or-disabled-inputs/affected-html-elements.js +1 -0
- package/dist/es2019/rules/no-readonly-or-disabled-inputs/index.js +30 -21
- package/dist/es2019/rules/no-readonly-or-disabled-inputs/unwanted-atlaskit-attributes.js +1 -0
- package/dist/es2019/rules/no-readonly-or-disabled-inputs/unwanted-html-attributes.js +1 -0
- package/dist/es2019/rules/no-separator-with-list-elements/index.js +1 -1
- package/dist/es2019/rules/no-styled-tagged-template-expression/index.js +3 -2
- package/dist/es2019/rules/no-to-match-snapshot/index.js +1 -1
- package/dist/es2019/rules/no-unsafe-design-token-usage/index.js +2 -2
- package/dist/es2019/rules/no-unsafe-inline-snapshot/index.js +1 -1
- package/dist/es2019/rules/no-unsafe-style-overrides/index.js +1 -1
- package/dist/es2019/rules/no-unsupported-drag-and-drop-libraries/index.js +1 -1
- package/dist/es2019/rules/no-unused-css-map/get-css-map-object.js +12 -0
- package/dist/es2019/rules/no-unused-css-map/index.js +3 -2
- package/dist/es2019/rules/no-unused-css-map/unused-css-map-checker.js +89 -0
- package/dist/es2019/rules/prefer-primitives/index.js +1 -1
- package/dist/es2019/rules/use-button-group-label/index.js +1 -1
- package/dist/es2019/rules/use-character-counter-field/index.js +4 -2
- package/dist/es2019/rules/use-correct-field/index.js +1 -1
- package/dist/es2019/rules/use-cx-function-in-xcss/index.js +1 -1
- package/dist/es2019/rules/use-datetime-picker-calendar-button/index.js +2 -2
- package/dist/es2019/rules/use-drawer-label/index.js +1 -1
- package/dist/es2019/rules/use-field-message-wrapper/index.js +1 -1
- package/dist/es2019/rules/use-heading/index.js +1 -1
- package/dist/es2019/rules/use-heading/transformers/native-elements.js +1 -1
- package/dist/es2019/rules/use-heading/transformers/update-test-id-attribute-fix.js +1 -1
- package/dist/es2019/rules/use-heading-level-in-spotlight-card/index.js +1 -1
- package/dist/es2019/rules/use-href-in-link-item/index.js +1 -1
- package/dist/es2019/rules/use-latest-xcss-syntax/index.js +1 -1
- package/dist/es2019/rules/use-latest-xcss-syntax-typography/config/{index.js → get-config.js} +1 -1
- package/dist/es2019/rules/use-latest-xcss-syntax-typography/config/patterns.js +1 -0
- package/dist/es2019/rules/use-latest-xcss-syntax-typography/config/types.js +1 -0
- package/dist/es2019/rules/use-latest-xcss-syntax-typography/index.js +3 -2
- package/dist/es2019/rules/use-menu-section-title/index.js +1 -1
- package/dist/es2019/rules/use-modal-dialog-close-button/index.js +2 -2
- package/dist/es2019/rules/use-onboarding-spotlight-label/index.js +1 -1
- package/dist/es2019/rules/use-popup-label/index.js +1 -1
- package/dist/es2019/rules/use-primitives/config/get-config.js +6 -0
- package/dist/es2019/rules/use-primitives/config/types.js +1 -0
- package/dist/es2019/rules/use-primitives/config/valid-patterns.js +40 -0
- package/dist/es2019/rules/use-primitives/index.js +3 -2
- package/dist/es2019/rules/use-primitives/transformers/compiled-styled/convert-jsx-call-site.js +1 -1
- package/dist/es2019/rules/use-primitives/transformers/compiled-styled/convert-styled-component-call-to-jsx.js +1 -1
- package/dist/es2019/rules/use-primitives/transformers/compiled-styled/index.js +1 -1
- package/dist/es2019/rules/use-primitives/transformers/css-to-xcss-transformer.js +37 -0
- package/dist/es2019/rules/use-primitives/transformers/emotion-css/index.js +2 -2
- package/dist/es2019/rules/use-primitives/transformers/styled-object-to-xcss-tokens.js +34 -0
- package/dist/es2019/rules/use-primitives/transformers/supported-styles-map.js +28 -0
- package/dist/es2019/rules/use-primitives/utils/is-valid-css-properties-to-transform.js +1 -1
- package/dist/es2019/rules/use-primitives/utils/validate-styles.js +1 -1
- package/dist/es2019/rules/use-primitives-text/config/{index.js → get-config.js} +0 -9
- package/dist/es2019/rules/use-primitives-text/config/patterns.js +9 -0
- package/dist/es2019/rules/use-primitives-text/config/types.js +1 -0
- package/dist/es2019/rules/use-primitives-text/index.js +3 -2
- package/dist/es2019/rules/use-primitives-text/transformers/add-color-inherit-attribute-fix.js +1 -1
- package/dist/es2019/rules/use-primitives-text/transformers/emphasis-elements.js +1 -1
- package/dist/es2019/rules/use-primitives-text/transformers/has-text-children-only.js +1 -1
- package/dist/es2019/rules/use-primitives-text/transformers/paragraph-elements.js +1 -1
- package/dist/es2019/rules/use-primitives-text/transformers/span-elements.js +1 -1
- package/dist/es2019/rules/use-primitives-text/transformers/strong-elements.js +1 -1
- package/dist/es2019/rules/use-primitives-text/transformers/update-test-id-attribute-fix.js +1 -1
- package/dist/es2019/rules/use-should-render-to-parent/add-prop.js +3 -0
- package/dist/es2019/rules/use-should-render-to-parent/index.js +38 -13
- package/dist/es2019/rules/use-should-render-to-parent/set-prop-to-true.js +3 -0
- package/dist/es2019/rules/use-simple-field/index.js +1 -1
- package/dist/es2019/rules/use-simple-form/index.js +4 -3
- package/dist/es2019/rules/use-simple-form/top-level-attribute-names.js +1 -0
- package/dist/es2019/rules/use-spotlight-package/index.js +1 -1
- package/dist/es2019/rules/use-tag-group-label/index.js +1 -1
- package/dist/es2019/rules/use-textfield-autocomplete/index.js +2 -2
- package/dist/es2019/rules/use-tokens-shape/index.js +1 -1
- package/dist/es2019/rules/use-tokens-space/index.js +1 -1
- package/dist/es2019/rules/use-tokens-typography/config/get-config.js +10 -0
- package/dist/es2019/rules/use-tokens-typography/config/{index.js → rule-schema.js} +0 -8
- package/dist/es2019/rules/use-tokens-typography/config/types.js +0 -0
- package/dist/es2019/rules/use-tokens-typography/default-font-weight.js +2 -0
- package/dist/es2019/rules/use-tokens-typography/find-font-weight-token-for-value.js +12 -0
- package/dist/es2019/rules/use-tokens-typography/find-typography-token-for-values.js +11 -0
- package/dist/es2019/rules/use-tokens-typography/font-weight-map.js +6 -0
- package/dist/es2019/rules/use-tokens-typography/font-weight-tokens.js +10 -0
- package/dist/es2019/rules/use-tokens-typography/get-token-property.js +33 -0
- package/dist/es2019/rules/use-tokens-typography/index.js +3 -2
- package/dist/es2019/rules/use-tokens-typography/transformers/banned-properties.js +1 -1
- package/dist/es2019/rules/use-tokens-typography/transformers/font-family.js +1 -1
- package/dist/es2019/rules/use-tokens-typography/transformers/font-weight.js +2 -2
- package/dist/es2019/rules/use-tokens-typography/transformers/style-object.js +7 -3
- package/dist/es2019/rules/use-tokens-typography/transformers/untokenized-properties.js +1 -1
- package/dist/es2019/rules/use-tokens-typography/types.js +0 -0
- package/dist/es2019/rules/use-tokens-typography/typography-value-to-token.js +25 -0
- package/dist/es2019/rules/use-visually-hidden/count-matching-key-values.js +19 -0
- package/dist/es2019/rules/use-visually-hidden/get-object-likeness.js +24 -0
- package/dist/es2019/rules/use-visually-hidden/index.js +4 -3
- package/dist/es2019/rules/use-visually-hidden/reference-object.js +10 -0
- package/dist/es2019/rules/utils/create-lint-rule.js +9 -0
- package/dist/es2019/rules/utils/create-no-tagged-template-expression-rule/create-no-tagged-template-expression-rule.js +145 -0
- package/dist/es2019/rules/utils/create-no-tagged-template-expression-rule/no-tagged-template-expression-rule-schema.js +14 -0
- package/dist/es2019/rules/utils/create-rule.js +2 -13
- package/dist/es2019/rules/utils/get-rule-url.js +5 -0
- package/dist/es2019/rules/utils/includes-hard-coded-color.js +15 -0
- package/dist/es2019/rules/utils/is-color-css-property-name.js +3 -0
- package/dist/es2019/rules/utils/is-css-in-js-call-node.js +2 -0
- package/dist/es2019/rules/utils/is-css-in-js-object-node.js +2 -0
- package/dist/es2019/rules/utils/is-decendant-of-style-block.js +38 -0
- package/dist/es2019/rules/utils/is-deprecated-import-config.js +3 -0
- package/dist/es2019/rules/utils/is-deprecated-jsx-attribute-config.js +3 -0
- package/dist/es2019/rules/utils/is-hard-coded-color.js +19 -0
- package/dist/es2019/rules/utils/is-legacy-color.js +4 -0
- package/dist/es2019/rules/utils/is-legacy-named-color.js +2 -0
- package/dist/es2019/rules/utils/named-colors.js +1 -0
- package/dist/es2019/rules/utils/types.js +0 -11
- package/dist/esm/ast-nodes/jsx-element-helper.js +84 -0
- package/dist/esm/common/token-maps.partial.js +2 -1
- package/dist/esm/rules/consistent-css-prop-usage/index.js +1 -1
- package/dist/esm/rules/enforce-inline-styles-in-select/index.js +1 -1
- package/dist/esm/rules/ensure-avatar-tag-avatar-props/index.js +1 -1
- package/dist/esm/rules/ensure-design-token-usage/em-to-pixels.js +15 -0
- package/dist/esm/rules/ensure-design-token-usage/find-token-name-by-property-value.js +17 -0
- package/dist/esm/rules/ensure-design-token-usage/get-domains-for-property.js +28 -0
- package/dist/esm/rules/ensure-design-token-usage/get-font-size-value-in-scope.js +24 -0
- package/dist/esm/rules/ensure-design-token-usage/get-property-node-from-parent.js +13 -0
- package/dist/esm/rules/ensure-design-token-usage/get-token-node-for-value.js +29 -0
- package/dist/esm/rules/ensure-design-token-usage/get-token-replacement.js +18 -0
- package/dist/esm/rules/ensure-design-token-usage/get-token-suggestion.js +21 -0
- package/dist/esm/rules/ensure-design-token-usage/get-value-for-property-node.js +7 -0
- package/dist/esm/rules/ensure-design-token-usage/get-value-from-shorthand.js +13 -0
- package/dist/esm/rules/ensure-design-token-usage/get-value-from-template-literal-raw.js +30 -0
- package/dist/esm/rules/ensure-design-token-usage/get-value.js +135 -0
- package/dist/esm/rules/ensure-design-token-usage/index.js +21 -8
- package/dist/esm/rules/ensure-design-token-usage/is-border-size-property.js +4 -0
- package/dist/esm/rules/ensure-design-token-usage/is-calc.js +9 -0
- package/dist/esm/rules/ensure-design-token-usage/is-radius-property.js +4 -0
- package/dist/esm/rules/ensure-design-token-usage/is-shape-property.js +5 -0
- package/dist/esm/rules/ensure-design-token-usage/is-spacing-property.js +4 -0
- package/dist/esm/rules/ensure-design-token-usage/is-valid-spacing-value.js +20 -0
- package/dist/esm/rules/ensure-design-token-usage/lint-jsx-identifier-for-color.js +23 -0
- package/dist/esm/rules/ensure-design-token-usage/lint-jsx-literal-for-color.js +146 -0
- package/dist/esm/rules/ensure-design-token-usage/lint-jsx-member-for-color.js +22 -0
- package/dist/esm/rules/ensure-design-token-usage/lint-object-for-color.js +88 -0
- package/dist/esm/rules/ensure-design-token-usage/lint-template-identifier-for-color.js +47 -0
- package/dist/esm/rules/ensure-design-token-usage/process-css-node.js +33 -0
- package/dist/esm/rules/ensure-design-token-usage/remove-pixel-suffix.js +8 -0
- package/dist/esm/rules/ensure-design-token-usage/spacing.js +7 -1
- package/dist/esm/rules/ensure-design-token-usage-preview/index.js +1 -1
- package/dist/esm/rules/ensure-icon-color/index.js +1 -1
- package/dist/esm/rules/ensure-proper-xcss-usage/index.js +1 -1
- package/dist/esm/rules/icon-label/index.js +1 -1
- package/dist/esm/rules/lozenge-badge-tag-labelling-system-migration/index.js +1 -1
- package/dist/esm/rules/no-banned-imports/index.js +1 -1
- package/dist/esm/rules/no-boolean-autofocus-on-modal-dialog/index.js +2 -2
- package/dist/esm/rules/no-css-tagged-template-expression/index.js +3 -2
- package/dist/esm/rules/no-dark-theme-vr-tests/index.js +1 -1
- package/dist/esm/rules/no-deprecated-apis/index.js +2 -2
- package/dist/esm/rules/no-deprecated-design-token-usage/index.js +1 -1
- package/dist/esm/rules/no-deprecated-imports/checks.js +1 -1
- package/dist/esm/rules/no-deprecated-imports/index.js +1 -1
- package/dist/esm/rules/no-direct-use-of-web-platform-drag-and-drop/index.js +1 -1
- package/dist/esm/rules/no-emotion-primitives/index.js +1 -1
- package/dist/esm/rules/no-empty-styled-expression/index.js +1 -1
- package/dist/esm/rules/no-exported-css/index.js +1 -1
- package/dist/esm/rules/no-exported-keyframes/index.js +1 -1
- package/dist/esm/rules/no-html-anchor/index.js +1 -1
- package/dist/esm/rules/no-html-anchor/node-types/jsx-element/index.js +1 -1
- package/dist/esm/rules/no-html-anchor/node-types/supported.js +1 -1
- package/dist/esm/rules/no-html-button/index.js +1 -1
- package/dist/esm/rules/no-html-button/node-types/jsx-element/index.js +1 -1
- package/dist/esm/rules/no-html-button/node-types/supported.js +1 -1
- package/dist/esm/rules/no-html-checkbox/index.js +1 -1
- package/dist/esm/rules/no-html-checkbox/node-types/jsx-element/index.js +1 -1
- package/dist/esm/rules/no-html-checkbox/node-types/supported.js +1 -1
- package/dist/esm/rules/no-html-code/index.js +1 -1
- package/dist/esm/rules/no-html-code/node-types/jsx-element/index.js +1 -1
- package/dist/esm/rules/no-html-code/node-types/supported.js +1 -1
- package/dist/esm/rules/no-html-heading/index.js +1 -1
- package/dist/esm/rules/no-html-heading/node-types/jsx-element/index.js +1 -1
- package/dist/esm/rules/no-html-heading/node-types/supported.js +1 -1
- package/dist/esm/rules/no-html-image/index.js +1 -1
- package/dist/esm/rules/no-html-image/node-types/jsx-element/index.js +1 -1
- package/dist/esm/rules/no-html-image/node-types/supported.js +1 -1
- package/dist/esm/rules/no-html-radio/index.js +1 -1
- package/dist/esm/rules/no-html-radio/node-types/jsx-element/index.js +1 -1
- package/dist/esm/rules/no-html-radio/node-types/supported.js +1 -1
- package/dist/esm/rules/no-html-range/index.js +1 -1
- package/dist/esm/rules/no-html-range/node-types/jsx-element/index.js +1 -1
- package/dist/esm/rules/no-html-range/node-types/supported.js +1 -1
- package/dist/esm/rules/no-html-select/index.js +1 -1
- package/dist/esm/rules/no-html-select/node-types/jsx-element/index.js +1 -1
- package/dist/esm/rules/no-html-select/node-types/supported.js +1 -1
- 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 +1 -1
- package/dist/esm/rules/no-html-text-input/node-types/supported.js +1 -1
- package/dist/esm/rules/no-html-textarea/index.js +1 -1
- package/dist/esm/rules/no-html-textarea/node-types/jsx-element/index.js +1 -1
- package/dist/esm/rules/no-html-textarea/node-types/supported.js +1 -1
- package/dist/esm/rules/no-icon-spacing-prop/index.js +1 -1
- package/dist/esm/rules/no-invalid-css-map/index.js +1 -1
- package/dist/esm/rules/no-keyframes-tagged-template-expression/index.js +3 -2
- package/dist/esm/rules/no-margin/index.js +1 -1
- package/dist/esm/rules/no-nested-styles/index.js +1 -1
- package/dist/esm/rules/no-physical-properties/index.js +1 -1
- package/dist/esm/rules/no-placeholder/affected-atlaskit-packages.js +6 -0
- package/dist/esm/rules/no-placeholder/affected-html-elements.js +1 -0
- package/dist/esm/rules/no-placeholder/index.js +6 -11
- package/dist/esm/rules/no-readonly-or-disabled-inputs/affected-atlaskit-packages.js +4 -0
- package/dist/esm/rules/no-readonly-or-disabled-inputs/affected-html-elements.js +1 -0
- package/dist/esm/rules/no-readonly-or-disabled-inputs/index.js +34 -22
- package/dist/esm/rules/no-readonly-or-disabled-inputs/unwanted-atlaskit-attributes.js +1 -0
- package/dist/esm/rules/no-readonly-or-disabled-inputs/unwanted-html-attributes.js +1 -0
- package/dist/esm/rules/no-separator-with-list-elements/index.js +1 -1
- package/dist/esm/rules/no-styled-tagged-template-expression/index.js +3 -2
- package/dist/esm/rules/no-to-match-snapshot/index.js +1 -1
- package/dist/esm/rules/no-unsafe-design-token-usage/index.js +2 -2
- package/dist/esm/rules/no-unsafe-inline-snapshot/index.js +1 -1
- package/dist/esm/rules/no-unsafe-style-overrides/index.js +1 -1
- package/dist/esm/rules/no-unsupported-drag-and-drop-libraries/index.js +1 -1
- package/dist/esm/rules/no-unused-css-map/get-css-map-object.js +12 -0
- package/dist/esm/rules/no-unused-css-map/index.js +3 -2
- package/dist/esm/rules/no-unused-css-map/unused-css-map-checker.js +143 -0
- package/dist/esm/rules/prefer-primitives/index.js +1 -1
- package/dist/esm/rules/use-button-group-label/index.js +1 -1
- package/dist/esm/rules/use-character-counter-field/index.js +4 -2
- package/dist/esm/rules/use-correct-field/index.js +1 -1
- package/dist/esm/rules/use-cx-function-in-xcss/index.js +1 -1
- package/dist/esm/rules/use-datetime-picker-calendar-button/index.js +2 -2
- package/dist/esm/rules/use-drawer-label/index.js +1 -1
- package/dist/esm/rules/use-field-message-wrapper/index.js +1 -1
- package/dist/esm/rules/use-heading/index.js +1 -1
- package/dist/esm/rules/use-heading/transformers/native-elements.js +1 -1
- package/dist/esm/rules/use-heading/transformers/update-test-id-attribute-fix.js +1 -1
- package/dist/esm/rules/use-heading-level-in-spotlight-card/index.js +1 -1
- package/dist/esm/rules/use-href-in-link-item/index.js +1 -1
- package/dist/esm/rules/use-latest-xcss-syntax/index.js +1 -1
- package/dist/esm/rules/use-latest-xcss-syntax-typography/config/get-config.js +9 -0
- package/dist/esm/rules/use-latest-xcss-syntax-typography/config/patterns.js +1 -0
- package/dist/esm/rules/use-latest-xcss-syntax-typography/config/types.js +1 -0
- package/dist/esm/rules/use-latest-xcss-syntax-typography/index.js +3 -2
- package/dist/esm/rules/use-menu-section-title/index.js +1 -1
- package/dist/esm/rules/use-modal-dialog-close-button/index.js +2 -2
- package/dist/esm/rules/use-onboarding-spotlight-label/index.js +1 -1
- package/dist/esm/rules/use-popup-label/index.js +1 -1
- package/dist/esm/rules/use-primitives/config/get-config.js +6 -0
- package/dist/esm/rules/use-primitives/config/types.js +1 -0
- package/dist/esm/rules/use-primitives/config/valid-patterns.js +40 -0
- package/dist/esm/rules/use-primitives/index.js +3 -2
- package/dist/esm/rules/use-primitives/transformers/compiled-styled/convert-jsx-call-site.js +1 -1
- package/dist/esm/rules/use-primitives/transformers/compiled-styled/convert-styled-component-call-to-jsx.js +1 -1
- package/dist/esm/rules/use-primitives/transformers/compiled-styled/index.js +1 -1
- package/dist/esm/rules/use-primitives/transformers/css-to-xcss-transformer.js +38 -0
- package/dist/esm/rules/use-primitives/transformers/emotion-css/index.js +2 -2
- package/dist/esm/rules/use-primitives/transformers/styled-object-to-xcss-tokens.js +34 -0
- package/dist/esm/rules/use-primitives/transformers/supported-styles-map.js +30 -0
- package/dist/esm/rules/use-primitives/utils/is-valid-css-properties-to-transform.js +1 -1
- package/dist/esm/rules/use-primitives/utils/validate-styles.js +1 -1
- package/dist/esm/rules/use-primitives-text/config/{index.js → get-config.js} +0 -9
- package/dist/esm/rules/use-primitives-text/config/patterns.js +9 -0
- package/dist/esm/rules/use-primitives-text/config/types.js +1 -0
- package/dist/esm/rules/use-primitives-text/index.js +3 -2
- package/dist/esm/rules/use-primitives-text/transformers/add-color-inherit-attribute-fix.js +1 -1
- package/dist/esm/rules/use-primitives-text/transformers/emphasis-elements.js +1 -1
- package/dist/esm/rules/use-primitives-text/transformers/has-text-children-only.js +1 -1
- package/dist/esm/rules/use-primitives-text/transformers/paragraph-elements.js +1 -1
- package/dist/esm/rules/use-primitives-text/transformers/span-elements.js +1 -1
- package/dist/esm/rules/use-primitives-text/transformers/strong-elements.js +1 -1
- package/dist/esm/rules/use-primitives-text/transformers/update-test-id-attribute-fix.js +1 -1
- package/dist/esm/rules/use-should-render-to-parent/add-prop.js +3 -0
- package/dist/esm/rules/use-should-render-to-parent/index.js +38 -13
- package/dist/esm/rules/use-should-render-to-parent/set-prop-to-true.js +3 -0
- package/dist/esm/rules/use-simple-field/index.js +1 -1
- package/dist/esm/rules/use-simple-form/index.js +4 -3
- package/dist/esm/rules/use-simple-form/top-level-attribute-names.js +1 -0
- package/dist/esm/rules/use-spotlight-package/index.js +1 -1
- package/dist/esm/rules/use-tag-group-label/index.js +1 -1
- package/dist/esm/rules/use-textfield-autocomplete/index.js +2 -2
- package/dist/esm/rules/use-tokens-shape/index.js +1 -1
- package/dist/esm/rules/use-tokens-space/index.js +1 -1
- package/dist/esm/rules/use-tokens-typography/config/get-config.js +10 -0
- package/dist/esm/rules/use-tokens-typography/config/{index.js → rule-schema.js} +0 -8
- package/dist/esm/rules/use-tokens-typography/config/types.js +0 -0
- package/dist/esm/rules/use-tokens-typography/default-font-weight.js +2 -0
- package/dist/esm/rules/use-tokens-typography/find-font-weight-token-for-value.js +15 -0
- package/dist/esm/rules/use-tokens-typography/find-typography-token-for-values.js +15 -0
- package/dist/esm/rules/use-tokens-typography/font-weight-map.js +6 -0
- package/dist/esm/rules/use-tokens-typography/font-weight-tokens.js +12 -0
- package/dist/esm/rules/use-tokens-typography/get-token-property.js +35 -0
- package/dist/esm/rules/use-tokens-typography/index.js +3 -2
- package/dist/esm/rules/use-tokens-typography/transformers/banned-properties.js +1 -1
- package/dist/esm/rules/use-tokens-typography/transformers/font-family.js +1 -1
- package/dist/esm/rules/use-tokens-typography/transformers/font-weight.js +2 -2
- package/dist/esm/rules/use-tokens-typography/transformers/style-object.js +7 -3
- package/dist/esm/rules/use-tokens-typography/transformers/untokenized-properties.js +1 -1
- package/dist/esm/rules/use-tokens-typography/types.js +0 -0
- package/dist/esm/rules/use-tokens-typography/typography-value-to-token.js +37 -0
- package/dist/esm/rules/use-visually-hidden/count-matching-key-values.js +21 -0
- package/dist/esm/rules/use-visually-hidden/get-object-likeness.js +27 -0
- package/dist/esm/rules/use-visually-hidden/index.js +4 -3
- package/dist/esm/rules/use-visually-hidden/reference-object.js +10 -0
- package/dist/esm/rules/utils/create-lint-rule.js +9 -0
- package/dist/esm/rules/utils/create-no-tagged-template-expression-rule/create-no-tagged-template-expression-rule.js +130 -0
- package/dist/esm/rules/utils/create-no-tagged-template-expression-rule/no-tagged-template-expression-rule-schema.js +14 -0
- package/dist/esm/rules/utils/create-rule.js +2 -13
- package/dist/esm/rules/utils/get-rule-url.js +5 -0
- package/dist/esm/rules/utils/includes-hard-coded-color.js +17 -0
- package/dist/esm/rules/utils/is-color-css-property-name.js +9 -0
- package/dist/esm/rules/utils/is-css-in-js-call-node.js +4 -0
- package/dist/esm/rules/utils/is-css-in-js-object-node.js +4 -0
- package/dist/esm/rules/utils/is-decendant-of-style-block.js +43 -0
- package/dist/esm/rules/utils/is-deprecated-import-config.js +3 -0
- package/dist/esm/rules/utils/is-deprecated-jsx-attribute-config.js +3 -0
- package/dist/esm/rules/utils/is-hard-coded-color.js +21 -0
- package/dist/esm/rules/utils/is-legacy-color.js +6 -0
- package/dist/esm/rules/utils/is-legacy-named-color.js +4 -0
- package/dist/esm/rules/utils/named-colors.js +1 -0
- package/dist/esm/rules/utils/types.js +0 -11
- package/dist/types/ast-nodes/jsx-element-helper.d.ts +23 -0
- package/dist/types/common/token-maps.partial.d.ts +1 -1
- package/dist/types/rules/ensure-design-token-usage/em-to-pixels.d.ts +1 -0
- package/dist/types/rules/ensure-design-token-usage/find-token-name-by-property-value.d.ts +1 -0
- package/dist/types/rules/ensure-design-token-usage/get-domains-for-property.d.ts +13 -0
- package/dist/types/rules/ensure-design-token-usage/get-font-size-value-in-scope.d.ts +2 -0
- package/dist/types/rules/ensure-design-token-usage/get-property-node-from-parent.d.ts +3 -0
- package/dist/types/rules/ensure-design-token-usage/get-token-node-for-value.d.ts +12 -0
- package/dist/types/rules/ensure-design-token-usage/get-token-replacement.d.ts +8 -0
- package/dist/types/rules/ensure-design-token-usage/get-token-suggestion.d.ts +7 -0
- package/dist/types/rules/ensure-design-token-usage/get-value-for-property-node.d.ts +3 -0
- package/dist/types/rules/ensure-design-token-usage/get-value-from-shorthand.d.ts +1 -0
- package/dist/types/rules/ensure-design-token-usage/get-value-from-template-literal-raw.d.ts +17 -0
- package/dist/types/rules/ensure-design-token-usage/get-value.d.ts +3 -0
- package/dist/types/rules/ensure-design-token-usage/index.d.ts +1 -2
- package/dist/types/rules/ensure-design-token-usage/is-border-size-property.d.ts +1 -0
- package/dist/types/rules/ensure-design-token-usage/is-calc.d.ts +1 -0
- package/dist/types/rules/ensure-design-token-usage/is-radius-property.d.ts +1 -0
- package/dist/types/rules/ensure-design-token-usage/is-shape-property.d.ts +1 -0
- package/dist/types/rules/ensure-design-token-usage/is-spacing-property.d.ts +1 -0
- package/dist/types/rules/ensure-design-token-usage/is-valid-spacing-value.d.ts +1 -0
- package/dist/types/rules/ensure-design-token-usage/lint-jsx-identifier-for-color.d.ts +3 -0
- package/dist/types/rules/ensure-design-token-usage/lint-jsx-literal-for-color.d.ts +3 -0
- package/dist/types/rules/ensure-design-token-usage/lint-jsx-member-for-color.d.ts +3 -0
- package/dist/types/rules/ensure-design-token-usage/lint-object-for-color.d.ts +4 -0
- package/dist/types/rules/ensure-design-token-usage/lint-template-identifier-for-color.d.ts +3 -0
- package/dist/types/rules/ensure-design-token-usage/process-css-node.d.ts +16 -0
- package/dist/types/rules/ensure-design-token-usage/remove-pixel-suffix.d.ts +1 -0
- package/dist/types/rules/ensure-design-token-usage/types.d.ts +1 -0
- package/dist/types/rules/no-deprecated-apis/helpers/validate-deprecated-apis-config.d.ts +1 -1
- package/dist/types/rules/no-placeholder/affected-atlaskit-packages.d.ts +1 -0
- package/dist/types/rules/no-placeholder/affected-html-elements.d.ts +1 -0
- package/dist/types/rules/no-placeholder/index.d.ts +0 -4
- package/dist/types/rules/no-readonly-or-disabled-inputs/affected-atlaskit-packages.d.ts +1 -0
- package/dist/types/rules/no-readonly-or-disabled-inputs/affected-html-elements.d.ts +1 -0
- package/dist/types/rules/no-readonly-or-disabled-inputs/index.d.ts +0 -4
- package/dist/types/rules/no-readonly-or-disabled-inputs/unwanted-atlaskit-attributes.d.ts +1 -0
- package/dist/types/rules/no-readonly-or-disabled-inputs/unwanted-html-attributes.d.ts +1 -0
- package/dist/types/rules/no-unused-css-map/get-css-map-object.d.ts +5 -0
- package/dist/types/rules/no-unused-css-map/unused-css-map-checker.d.ts +14 -0
- package/dist/types/rules/use-latest-xcss-syntax-typography/config/get-config.d.ts +2 -0
- package/dist/types/rules/use-latest-xcss-syntax-typography/config/patterns.d.ts +2 -0
- package/dist/types/rules/use-latest-xcss-syntax-typography/config/types.d.ts +5 -0
- package/dist/types/rules/use-latest-xcss-syntax-typography/linters/common.d.ts +1 -1
- package/dist/types/rules/use-primitives/config/get-config.d.ts +2 -0
- package/dist/types/rules/use-primitives/config/types.d.ts +4 -0
- package/dist/types/rules/use-primitives/config/valid-patterns.d.ts +2 -0
- package/dist/types/rules/use-primitives/transformers/compiled-styled/index.d.ts +1 -1
- package/dist/types/rules/use-primitives/transformers/css-to-xcss-transformer.d.ts +3 -0
- package/dist/types/rules/use-primitives/transformers/emotion-css/index.d.ts +1 -1
- package/dist/types/rules/use-primitives/transformers/styled-object-to-xcss-tokens.d.ts +3 -0
- package/dist/types/rules/use-primitives/transformers/supported-styles-map.d.ts +4 -0
- package/dist/types/rules/use-primitives/utils/is-valid-css-properties-to-transform.d.ts +1 -1
- package/dist/types/rules/use-primitives/utils/validate-styles.d.ts +1 -1
- package/dist/types/rules/use-primitives-text/config/get-config.d.ts +2 -0
- package/dist/types/rules/use-primitives-text/config/patterns.d.ts +2 -0
- package/dist/types/rules/use-primitives-text/config/{index.d.ts → types.d.ts} +1 -4
- package/dist/types/rules/use-primitives-text/transformers/add-color-inherit-attribute-fix.d.ts +1 -1
- package/dist/types/rules/use-primitives-text/transformers/common.d.ts +1 -1
- package/dist/types/rules/use-should-render-to-parent/add-prop.d.ts +1 -0
- package/dist/types/rules/use-should-render-to-parent/index.d.ts +2 -2
- package/dist/types/rules/use-should-render-to-parent/set-prop-to-true.d.ts +1 -0
- package/dist/types/rules/use-simple-form/index.d.ts +1 -1
- package/dist/types/rules/use-simple-form/top-level-attribute-names.d.ts +1 -0
- package/dist/types/rules/use-tokens-typography/config/get-config.d.ts +2 -0
- package/dist/types/rules/use-tokens-typography/config/rule-schema.d.ts +2 -0
- package/dist/{types-ts4.5/rules/use-tokens-typography/config/index.d.ts → types/rules/use-tokens-typography/config/types.d.ts} +0 -3
- package/dist/types/rules/use-tokens-typography/default-font-weight.d.ts +1 -0
- package/dist/types/rules/use-tokens-typography/find-font-weight-token-for-value.d.ts +2 -0
- package/dist/types/rules/use-tokens-typography/find-typography-token-for-values.d.ts +2 -0
- package/dist/types/rules/use-tokens-typography/font-weight-map.d.ts +2 -0
- package/dist/types/rules/use-tokens-typography/font-weight-tokens.d.ts +2 -0
- package/dist/types/rules/use-tokens-typography/get-token-property.d.ts +2 -0
- package/dist/types/rules/use-tokens-typography/transformers/banned-properties.d.ts +1 -1
- package/dist/types/rules/use-tokens-typography/transformers/font-family.d.ts +1 -1
- package/dist/types/rules/use-tokens-typography/transformers/font-weight.d.ts +1 -1
- package/dist/types/rules/use-tokens-typography/transformers/restricted-capitalisation.d.ts +1 -1
- package/dist/types/rules/use-tokens-typography/transformers/style-object.d.ts +2 -2
- package/dist/types/rules/use-tokens-typography/transformers/untokenized-properties.d.ts +1 -1
- package/dist/types/rules/use-tokens-typography/types.d.ts +15 -0
- package/dist/types/rules/use-tokens-typography/typography-value-to-token.d.ts +2 -0
- package/dist/types/rules/use-visually-hidden/count-matching-key-values.d.ts +6 -0
- package/dist/types/rules/use-visually-hidden/get-object-likeness.d.ts +9 -0
- package/dist/types/rules/use-visually-hidden/reference-object.d.ts +11 -0
- package/dist/types/rules/utils/create-lint-rule.d.ts +8 -0
- package/dist/types/rules/utils/create-no-tagged-template-expression-rule/create-no-tagged-template-expression-rule.d.ts +5 -0
- package/dist/types/rules/utils/create-no-tagged-template-expression-rule/no-tagged-template-expression-rule-schema.d.ts +2 -0
- package/dist/types/rules/utils/create-rule.d.ts +0 -8
- package/dist/types/rules/utils/get-rule-url.d.ts +1 -0
- package/dist/types/rules/utils/includes-hard-coded-color.d.ts +1 -0
- package/dist/types/rules/utils/is-color-css-property-name.d.ts +1 -0
- package/dist/types/rules/utils/is-css-in-js-call-node.d.ts +2 -0
- package/dist/types/rules/utils/is-css-in-js-object-node.d.ts +2 -0
- package/dist/types/rules/utils/is-decendant-of-style-block.d.ts +2 -0
- package/dist/types/rules/utils/is-deprecated-import-config.d.ts +2 -0
- package/dist/types/rules/utils/is-deprecated-jsx-attribute-config.d.ts +2 -0
- package/dist/types/rules/utils/is-hard-coded-color.d.ts +1 -0
- package/dist/types/rules/utils/is-legacy-color.d.ts +1 -0
- package/dist/types/rules/utils/is-legacy-named-color.d.ts +1 -0
- package/dist/types/rules/utils/named-colors.d.ts +1 -0
- package/dist/types/rules/utils/types.d.ts +0 -2
- package/dist/types-ts4.5/ast-nodes/jsx-element-helper.d.ts +23 -0
- package/dist/types-ts4.5/common/token-maps.partial.d.ts +1 -1
- package/dist/types-ts4.5/rules/ensure-design-token-usage/em-to-pixels.d.ts +1 -0
- package/dist/types-ts4.5/rules/ensure-design-token-usage/find-token-name-by-property-value.d.ts +1 -0
- package/dist/types-ts4.5/rules/ensure-design-token-usage/get-domains-for-property.d.ts +13 -0
- package/dist/types-ts4.5/rules/ensure-design-token-usage/get-font-size-value-in-scope.d.ts +2 -0
- package/dist/types-ts4.5/rules/ensure-design-token-usage/get-property-node-from-parent.d.ts +3 -0
- package/dist/types-ts4.5/rules/ensure-design-token-usage/get-token-node-for-value.d.ts +12 -0
- package/dist/types-ts4.5/rules/ensure-design-token-usage/get-token-replacement.d.ts +8 -0
- package/dist/types-ts4.5/rules/ensure-design-token-usage/get-token-suggestion.d.ts +7 -0
- package/dist/types-ts4.5/rules/ensure-design-token-usage/get-value-for-property-node.d.ts +3 -0
- package/dist/types-ts4.5/rules/ensure-design-token-usage/get-value-from-shorthand.d.ts +1 -0
- package/dist/types-ts4.5/rules/ensure-design-token-usage/get-value-from-template-literal-raw.d.ts +17 -0
- package/dist/types-ts4.5/rules/ensure-design-token-usage/get-value.d.ts +3 -0
- package/dist/types-ts4.5/rules/ensure-design-token-usage/index.d.ts +1 -2
- package/dist/types-ts4.5/rules/ensure-design-token-usage/is-border-size-property.d.ts +1 -0
- package/dist/types-ts4.5/rules/ensure-design-token-usage/is-calc.d.ts +1 -0
- package/dist/types-ts4.5/rules/ensure-design-token-usage/is-radius-property.d.ts +1 -0
- package/dist/types-ts4.5/rules/ensure-design-token-usage/is-shape-property.d.ts +1 -0
- package/dist/types-ts4.5/rules/ensure-design-token-usage/is-spacing-property.d.ts +1 -0
- package/dist/types-ts4.5/rules/ensure-design-token-usage/is-valid-spacing-value.d.ts +1 -0
- package/dist/types-ts4.5/rules/ensure-design-token-usage/lint-jsx-identifier-for-color.d.ts +3 -0
- package/dist/types-ts4.5/rules/ensure-design-token-usage/lint-jsx-literal-for-color.d.ts +3 -0
- package/dist/types-ts4.5/rules/ensure-design-token-usage/lint-jsx-member-for-color.d.ts +3 -0
- package/dist/types-ts4.5/rules/ensure-design-token-usage/lint-object-for-color.d.ts +4 -0
- package/dist/types-ts4.5/rules/ensure-design-token-usage/lint-template-identifier-for-color.d.ts +3 -0
- package/dist/types-ts4.5/rules/ensure-design-token-usage/process-css-node.d.ts +16 -0
- package/dist/types-ts4.5/rules/ensure-design-token-usage/remove-pixel-suffix.d.ts +1 -0
- package/dist/types-ts4.5/rules/ensure-design-token-usage/types.d.ts +4 -0
- package/dist/types-ts4.5/rules/no-deprecated-apis/helpers/validate-deprecated-apis-config.d.ts +1 -1
- package/dist/types-ts4.5/rules/no-placeholder/affected-atlaskit-packages.d.ts +1 -0
- package/dist/types-ts4.5/rules/no-placeholder/affected-html-elements.d.ts +1 -0
- package/dist/types-ts4.5/rules/no-placeholder/index.d.ts +0 -4
- package/dist/types-ts4.5/rules/no-readonly-or-disabled-inputs/affected-atlaskit-packages.d.ts +1 -0
- package/dist/types-ts4.5/rules/no-readonly-or-disabled-inputs/affected-html-elements.d.ts +1 -0
- package/dist/types-ts4.5/rules/no-readonly-or-disabled-inputs/index.d.ts +0 -4
- package/dist/types-ts4.5/rules/no-readonly-or-disabled-inputs/unwanted-atlaskit-attributes.d.ts +4 -0
- package/dist/types-ts4.5/rules/no-readonly-or-disabled-inputs/unwanted-html-attributes.d.ts +4 -0
- package/dist/types-ts4.5/rules/no-unused-css-map/get-css-map-object.d.ts +5 -0
- package/dist/types-ts4.5/rules/no-unused-css-map/unused-css-map-checker.d.ts +14 -0
- package/dist/types-ts4.5/rules/use-latest-xcss-syntax-typography/config/get-config.d.ts +2 -0
- package/dist/types-ts4.5/rules/use-latest-xcss-syntax-typography/config/patterns.d.ts +6 -0
- package/dist/types-ts4.5/rules/use-latest-xcss-syntax-typography/config/types.d.ts +5 -0
- package/dist/types-ts4.5/rules/use-latest-xcss-syntax-typography/linters/common.d.ts +1 -1
- package/dist/types-ts4.5/rules/use-primitives/config/get-config.d.ts +2 -0
- package/dist/types-ts4.5/rules/use-primitives/config/types.d.ts +4 -0
- package/dist/types-ts4.5/rules/use-primitives/config/valid-patterns.d.ts +2 -0
- package/dist/types-ts4.5/rules/use-primitives/transformers/compiled-styled/index.d.ts +1 -1
- package/dist/types-ts4.5/rules/use-primitives/transformers/css-to-xcss-transformer.d.ts +3 -0
- package/dist/types-ts4.5/rules/use-primitives/transformers/emotion-css/index.d.ts +1 -1
- package/dist/types-ts4.5/rules/use-primitives/transformers/styled-object-to-xcss-tokens.d.ts +3 -0
- package/dist/types-ts4.5/rules/use-primitives/transformers/supported-styles-map.d.ts +4 -0
- package/dist/types-ts4.5/rules/use-primitives/utils/is-valid-css-properties-to-transform.d.ts +1 -1
- package/dist/types-ts4.5/rules/use-primitives/utils/validate-styles.d.ts +1 -1
- package/dist/types-ts4.5/rules/use-primitives-text/config/get-config.d.ts +2 -0
- package/dist/types-ts4.5/rules/use-primitives-text/config/patterns.d.ts +2 -0
- package/dist/types-ts4.5/rules/use-primitives-text/config/{index.d.ts → types.d.ts} +1 -4
- package/dist/types-ts4.5/rules/use-primitives-text/transformers/add-color-inherit-attribute-fix.d.ts +1 -1
- package/dist/types-ts4.5/rules/use-primitives-text/transformers/common.d.ts +1 -1
- package/dist/types-ts4.5/rules/use-should-render-to-parent/add-prop.d.ts +1 -0
- package/dist/types-ts4.5/rules/use-should-render-to-parent/index.d.ts +2 -2
- package/dist/types-ts4.5/rules/use-should-render-to-parent/set-prop-to-true.d.ts +1 -0
- package/dist/types-ts4.5/rules/use-simple-form/index.d.ts +1 -1
- package/dist/types-ts4.5/rules/use-simple-form/top-level-attribute-names.d.ts +1 -0
- package/dist/types-ts4.5/rules/use-tokens-typography/config/get-config.d.ts +2 -0
- package/dist/types-ts4.5/rules/use-tokens-typography/config/rule-schema.d.ts +2 -0
- package/dist/{types/rules/use-tokens-typography/config/index.d.ts → types-ts4.5/rules/use-tokens-typography/config/types.d.ts} +0 -3
- package/dist/types-ts4.5/rules/use-tokens-typography/default-font-weight.d.ts +1 -0
- package/dist/types-ts4.5/rules/use-tokens-typography/find-font-weight-token-for-value.d.ts +2 -0
- package/dist/types-ts4.5/rules/use-tokens-typography/find-typography-token-for-values.d.ts +2 -0
- package/dist/types-ts4.5/rules/use-tokens-typography/font-weight-map.d.ts +2 -0
- package/dist/types-ts4.5/rules/use-tokens-typography/font-weight-tokens.d.ts +2 -0
- package/dist/types-ts4.5/rules/use-tokens-typography/get-token-property.d.ts +2 -0
- package/dist/types-ts4.5/rules/use-tokens-typography/transformers/banned-properties.d.ts +1 -1
- package/dist/types-ts4.5/rules/use-tokens-typography/transformers/font-family.d.ts +1 -1
- package/dist/types-ts4.5/rules/use-tokens-typography/transformers/font-weight.d.ts +1 -1
- package/dist/types-ts4.5/rules/use-tokens-typography/transformers/restricted-capitalisation.d.ts +1 -1
- package/dist/types-ts4.5/rules/use-tokens-typography/transformers/style-object.d.ts +2 -2
- package/dist/types-ts4.5/rules/use-tokens-typography/transformers/untokenized-properties.d.ts +1 -1
- package/dist/types-ts4.5/rules/use-tokens-typography/types.d.ts +15 -0
- package/dist/types-ts4.5/rules/use-tokens-typography/typography-value-to-token.d.ts +2 -0
- package/dist/types-ts4.5/rules/use-visually-hidden/count-matching-key-values.d.ts +6 -0
- package/dist/types-ts4.5/rules/use-visually-hidden/get-object-likeness.d.ts +9 -0
- package/dist/types-ts4.5/rules/use-visually-hidden/reference-object.d.ts +11 -0
- package/dist/types-ts4.5/rules/utils/create-lint-rule.d.ts +8 -0
- package/dist/types-ts4.5/rules/utils/create-no-tagged-template-expression-rule/create-no-tagged-template-expression-rule.d.ts +5 -0
- package/dist/types-ts4.5/rules/utils/create-no-tagged-template-expression-rule/no-tagged-template-expression-rule-schema.d.ts +2 -0
- package/dist/types-ts4.5/rules/utils/create-rule.d.ts +0 -8
- package/dist/types-ts4.5/rules/utils/get-rule-url.d.ts +1 -0
- package/dist/types-ts4.5/rules/utils/includes-hard-coded-color.d.ts +1 -0
- package/dist/types-ts4.5/rules/utils/is-color-css-property-name.d.ts +1 -0
- package/dist/types-ts4.5/rules/utils/is-css-in-js-call-node.d.ts +2 -0
- package/dist/types-ts4.5/rules/utils/is-css-in-js-object-node.d.ts +2 -0
- package/dist/types-ts4.5/rules/utils/is-decendant-of-style-block.d.ts +2 -0
- package/dist/types-ts4.5/rules/utils/is-deprecated-import-config.d.ts +2 -0
- package/dist/types-ts4.5/rules/utils/is-deprecated-jsx-attribute-config.d.ts +2 -0
- package/dist/types-ts4.5/rules/utils/is-hard-coded-color.d.ts +1 -0
- package/dist/types-ts4.5/rules/utils/is-legacy-color.d.ts +1 -0
- package/dist/types-ts4.5/rules/utils/is-legacy-named-color.d.ts +1 -0
- package/dist/types-ts4.5/rules/utils/named-colors.d.ts +1 -0
- package/dist/types-ts4.5/rules/utils/types.d.ts +0 -2
- package/package.json +3 -3
- package/dist/cjs/rules/ensure-design-token-usage/color.js +0 -333
- package/dist/cjs/rules/ensure-design-token-usage/shape.js +0 -19
- package/dist/cjs/rules/ensure-design-token-usage/utils.js +0 -404
- package/dist/cjs/rules/use-primitives/transformers/css-to-xcss.js +0 -108
- package/dist/cjs/rules/use-tokens-typography/utils.js +0 -136
- package/dist/cjs/rules/utils/is-color.js +0 -56
- package/dist/es2019/rules/ensure-design-token-usage/color.js +0 -296
- package/dist/es2019/rules/ensure-design-token-usage/shape.js +0 -11
- package/dist/es2019/rules/ensure-design-token-usage/utils.js +0 -366
- package/dist/es2019/rules/use-primitives/transformers/css-to-xcss.js +0 -98
- package/dist/es2019/rules/use-tokens-typography/utils.js +0 -96
- package/dist/es2019/rules/utils/is-color.js +0 -38
- package/dist/esm/rules/ensure-design-token-usage/color.js +0 -327
- package/dist/esm/rules/ensure-design-token-usage/shape.js +0 -11
- package/dist/esm/rules/ensure-design-token-usage/utils.js +0 -385
- package/dist/esm/rules/use-latest-xcss-syntax-typography/config/index.js +0 -8
- package/dist/esm/rules/use-primitives/transformers/css-to-xcss.js +0 -101
- package/dist/esm/rules/use-tokens-typography/utils.js +0 -119
- package/dist/esm/rules/utils/is-color.js +0 -50
- package/dist/types/rules/ensure-design-token-usage/color.d.ts +0 -13
- package/dist/types/rules/ensure-design-token-usage/shape.d.ts +0 -3
- package/dist/types/rules/ensure-design-token-usage/utils.d.ts +0 -73
- package/dist/types/rules/use-latest-xcss-syntax-typography/config/index.d.ts +0 -8
- package/dist/types/rules/use-primitives/transformers/css-to-xcss.d.ts +0 -8
- package/dist/types/rules/use-tokens-typography/utils.d.ts +0 -24
- package/dist/types/rules/utils/is-color.d.ts +0 -5
- package/dist/types-ts4.5/rules/ensure-design-token-usage/color.d.ts +0 -13
- package/dist/types-ts4.5/rules/ensure-design-token-usage/shape.d.ts +0 -3
- package/dist/types-ts4.5/rules/ensure-design-token-usage/utils.d.ts +0 -76
- package/dist/types-ts4.5/rules/use-latest-xcss-syntax-typography/config/index.d.ts +0 -12
- package/dist/types-ts4.5/rules/use-primitives/transformers/css-to-xcss.d.ts +0 -8
- package/dist/types-ts4.5/rules/use-tokens-typography/utils.d.ts +0 -24
- package/dist/types-ts4.5/rules/utils/is-color.d.ts +0 -5
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.createNoTaggedTemplateExpressionRule = void 0;
|
|
8
|
+
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
9
|
+
var _esquery = _interopRequireDefault(require("esquery"));
|
|
10
|
+
var _contextCompat = require("@atlaskit/eslint-utils/context-compat");
|
|
11
|
+
var _isSupportedImport = require("@atlaskit/eslint-utils/is-supported-import");
|
|
12
|
+
var _generate = require("./generate");
|
|
13
|
+
var _getTaggedTemplateExpressionOffset = require("./get-tagged-template-expression-offset");
|
|
14
|
+
var _toArguments = require("./to-arguments");
|
|
15
|
+
// Original source from Compiled https://github.com/atlassian-labs/compiled/blob/master/packages/eslint-plugin/src/utils/create-no-tagged-template-expression-rule/index.ts
|
|
16
|
+
|
|
17
|
+
var shouldSkipMultilineComments = false;
|
|
18
|
+
function hasNestedSelectorWithMultipleArguments(arg) {
|
|
19
|
+
if (arg.type === 'literal' || arg.type === 'expression' || arg.type === 'declaration') {
|
|
20
|
+
return false;
|
|
21
|
+
}
|
|
22
|
+
if (arg.type === 'rule' && arg.declarations.length > 1) {
|
|
23
|
+
return true;
|
|
24
|
+
}
|
|
25
|
+
if (arg.type === 'block') {
|
|
26
|
+
return arg.blocks.some(hasNestedSelectorWithMultipleArguments);
|
|
27
|
+
}
|
|
28
|
+
if (arg.type === 'rule') {
|
|
29
|
+
return arg.declarations.some(hasNestedSelectorWithMultipleArguments);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
var createNoTaggedTemplateExpressionRule = exports.createNoTaggedTemplateExpressionRule = function createNoTaggedTemplateExpressionRule(isUsage, messageId) {
|
|
33
|
+
return function (context) {
|
|
34
|
+
var importSources = (0, _isSupportedImport.getImportSources)(context);
|
|
35
|
+
return {
|
|
36
|
+
TaggedTemplateExpression: function TaggedTemplateExpression(node) {
|
|
37
|
+
var _getScope = (0, _contextCompat.getScope)(context, node),
|
|
38
|
+
references = _getScope.references;
|
|
39
|
+
if (!isUsage(node.tag, references, importSources)) {
|
|
40
|
+
return;
|
|
41
|
+
}
|
|
42
|
+
context.report({
|
|
43
|
+
messageId: messageId,
|
|
44
|
+
node: node,
|
|
45
|
+
fix: /*#__PURE__*/_regenerator.default.mark(function fix(fixer) {
|
|
46
|
+
var quasi, source, matches, args, oldCode, withoutQuasi, newCode, usesEmotion;
|
|
47
|
+
return _regenerator.default.wrap(function fix$(_context) {
|
|
48
|
+
while (1) switch (_context.prev = _context.next) {
|
|
49
|
+
case 0:
|
|
50
|
+
quasi = node.quasi;
|
|
51
|
+
source = (0, _contextCompat.getSourceCode)(context); // TODO Eventually handle comments instead of skipping them
|
|
52
|
+
// Skip auto-fixing comments
|
|
53
|
+
if (!(shouldSkipMultilineComments && quasi.quasis.map(function (q) {
|
|
54
|
+
return q.value.raw;
|
|
55
|
+
}).join('').match(/\/\*[\s\S]*\*\//g))) {
|
|
56
|
+
_context.next = 4;
|
|
57
|
+
break;
|
|
58
|
+
}
|
|
59
|
+
return _context.abrupt("return");
|
|
60
|
+
case 4:
|
|
61
|
+
matches = (0, _esquery.default)(node, 'ArrowFunctionExpression > BlockStatement');
|
|
62
|
+
if (!matches.length) {
|
|
63
|
+
_context.next = 7;
|
|
64
|
+
break;
|
|
65
|
+
}
|
|
66
|
+
return _context.abrupt("return");
|
|
67
|
+
case 7:
|
|
68
|
+
if (!(!quasi.expressions.length && quasi.quasis.length === 1 && !quasi.quasis[0].value.raw.trim())) {
|
|
69
|
+
_context.next = 11;
|
|
70
|
+
break;
|
|
71
|
+
}
|
|
72
|
+
_context.next = 10;
|
|
73
|
+
return fixer.replaceText(quasi, '({})');
|
|
74
|
+
case 10:
|
|
75
|
+
return _context.abrupt("return");
|
|
76
|
+
case 11:
|
|
77
|
+
args = (0, _toArguments.toArguments)(source, quasi);
|
|
78
|
+
if (!args.some(hasNestedSelectorWithMultipleArguments)) {
|
|
79
|
+
_context.next = 14;
|
|
80
|
+
break;
|
|
81
|
+
}
|
|
82
|
+
return _context.abrupt("return");
|
|
83
|
+
case 14:
|
|
84
|
+
if (!(args.length < 1)) {
|
|
85
|
+
_context.next = 16;
|
|
86
|
+
break;
|
|
87
|
+
}
|
|
88
|
+
return _context.abrupt("return");
|
|
89
|
+
case 16:
|
|
90
|
+
oldCode = source.getText(node); // Remove quasi:
|
|
91
|
+
// styled.div<Props>`
|
|
92
|
+
// color: red;
|
|
93
|
+
// `
|
|
94
|
+
// becomes
|
|
95
|
+
// styled.div<Props>
|
|
96
|
+
withoutQuasi = oldCode.replace(source.getText(quasi), '');
|
|
97
|
+
newCode = withoutQuasi +
|
|
98
|
+
// Indent the arguments after the tagged template expression range
|
|
99
|
+
(0, _generate.generate)(args, (0, _getTaggedTemplateExpressionOffset.getTaggedTemplateExpressionOffset)(node));
|
|
100
|
+
if (!(oldCode === newCode)) {
|
|
101
|
+
_context.next = 21;
|
|
102
|
+
break;
|
|
103
|
+
}
|
|
104
|
+
return _context.abrupt("return");
|
|
105
|
+
case 21:
|
|
106
|
+
// For styles like `position: initial !important`,
|
|
107
|
+
// Emotion can give typechecking errors when using object syntax
|
|
108
|
+
// due to csstype being overly strict
|
|
109
|
+
usesEmotion = (0, _isSupportedImport.isEmotion)(node.tag, references, importSources);
|
|
110
|
+
if (!(usesEmotion && !!newCode.match(/!\s*important/gm))) {
|
|
111
|
+
_context.next = 24;
|
|
112
|
+
break;
|
|
113
|
+
}
|
|
114
|
+
return _context.abrupt("return");
|
|
115
|
+
case 24:
|
|
116
|
+
if (!/\$\{.*:/.test(newCode)) {
|
|
117
|
+
_context.next = 26;
|
|
118
|
+
break;
|
|
119
|
+
}
|
|
120
|
+
return _context.abrupt("return");
|
|
121
|
+
case 26:
|
|
122
|
+
_context.next = 28;
|
|
123
|
+
return fixer.insertTextBefore(node, newCode);
|
|
124
|
+
case 28:
|
|
125
|
+
_context.next = 30;
|
|
126
|
+
return fixer.remove(node);
|
|
127
|
+
case 30:
|
|
128
|
+
case "end":
|
|
129
|
+
return _context.stop();
|
|
130
|
+
}
|
|
131
|
+
}, fix);
|
|
132
|
+
})
|
|
133
|
+
});
|
|
134
|
+
}
|
|
135
|
+
};
|
|
136
|
+
};
|
|
137
|
+
};
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.noTaggedTemplateExpressionRuleSchema = void 0;
|
|
7
|
+
// Original source from Compiled https://github.com/atlassian-labs/compiled/blob/master/packages/eslint-plugin/src/utils/create-no-tagged-template-expression-rule/index.ts
|
|
8
|
+
|
|
9
|
+
var noTaggedTemplateExpressionRuleSchema = exports.noTaggedTemplateExpressionRuleSchema = [{
|
|
10
|
+
type: 'object',
|
|
11
|
+
properties: {
|
|
12
|
+
importSources: {
|
|
13
|
+
type: 'array',
|
|
14
|
+
items: {
|
|
15
|
+
type: 'string'
|
|
16
|
+
},
|
|
17
|
+
uniqueItems: true
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
}];
|
|
@@ -3,9 +3,9 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.createRule =
|
|
6
|
+
exports.createRule = void 0;
|
|
7
7
|
var _utils = require("@typescript-eslint/utils");
|
|
8
|
-
var
|
|
8
|
+
var _getRuleUrl = require("./get-rule-url");
|
|
9
9
|
/**
|
|
10
10
|
* We are moving to our own small abstraction to create a lint rule that we have the power
|
|
11
11
|
* to change and mold to our own needs.
|
|
@@ -16,16 +16,5 @@ var _createRule = require("@atlaskit/eslint-utils/create-rule");
|
|
|
16
16
|
* @deprecated
|
|
17
17
|
*/
|
|
18
18
|
var createRule = exports.createRule = _utils.ESLintUtils.RuleCreator(function (name) {
|
|
19
|
-
return getRuleUrl(name);
|
|
20
|
-
});
|
|
21
|
-
|
|
22
|
-
/**
|
|
23
|
-
* Tiny wrapped over the ESLint rule module type that ensures
|
|
24
|
-
* there is a docs link to our ESLint plugin documentation page,
|
|
25
|
-
* as well as improving type support.
|
|
26
|
-
*/
|
|
27
|
-
var createLintRule = exports.createLintRule = (0, _createRule.getCreateLintRule)(getRuleUrl);
|
|
28
|
-
function getRuleUrl(ruleName) {
|
|
29
|
-
var name = (0, _createRule.getPathSafeName)(ruleName);
|
|
30
|
-
return "https://atlassian.design/components/eslint-plugin-design-system/".concat(name, "/usage");
|
|
31
|
-
}
|
|
19
|
+
return (0, _getRuleUrl.getRuleUrl)(name);
|
|
20
|
+
});
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.getRuleUrl = getRuleUrl;
|
|
7
|
+
var _createRule = require("@atlaskit/eslint-utils/create-rule");
|
|
8
|
+
function getRuleUrl(ruleName) {
|
|
9
|
+
var name = (0, _createRule.getPathSafeName)(ruleName);
|
|
10
|
+
return "https://atlassian.design/components/eslint-plugin-design-system/".concat(name, "/usage");
|
|
11
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.includesHardCodedColor = void 0;
|
|
7
|
+
var _namedColors = require("./named-colors");
|
|
8
|
+
var includesWholeWord = function includesWholeWord(value, options) {
|
|
9
|
+
var values = value.replace(/[^a-zA-Z ]/g, ' ').trim().split(/(?:,|\.| )+/);
|
|
10
|
+
return values.some(function (value) {
|
|
11
|
+
return options.has(value);
|
|
12
|
+
});
|
|
13
|
+
};
|
|
14
|
+
var includesHardCodedColor = exports.includesHardCodedColor = function includesHardCodedColor(raw) {
|
|
15
|
+
var value = raw.toLowerCase();
|
|
16
|
+
if (/#(?:[a-f0-9]{3}|[a-f0-9]{6}|[a-f0-9]{8})\b|((?:rgb|hsl)a?|(lch|lab|color))\([^\)]*\)/.exec(value.toLowerCase())) {
|
|
17
|
+
return true;
|
|
18
|
+
}
|
|
19
|
+
if (includesWholeWord(value, _namedColors.namedColors)) {
|
|
20
|
+
return true;
|
|
21
|
+
}
|
|
22
|
+
return false;
|
|
23
|
+
};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.isColorCssPropertyName = void 0;
|
|
7
|
+
var validColorPropertyNames = new Set(['color', 'background', 'background-color', 'border', 'border-left', 'border-right', 'border-top', 'border-bottom', 'border-color', 'border-left-color', 'border-right-color', 'border-top-color', 'border-bottom-color', 'outline', 'outline-color', 'box-shadow']);
|
|
8
|
+
var kebabize = function kebabize(str) {
|
|
9
|
+
return str.replace(/[A-Z]+(?![a-z])|[A-Z]/g, function ($, ofs) {
|
|
10
|
+
return (ofs ? '-' : '') + $.toLowerCase();
|
|
11
|
+
});
|
|
12
|
+
};
|
|
13
|
+
var isColorCssPropertyName = exports.isColorCssPropertyName = function isColorCssPropertyName(value) {
|
|
14
|
+
return validColorPropertyNames.has(kebabize(value));
|
|
15
|
+
};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.isCssInJsCallNode = void 0;
|
|
7
|
+
var cssInJsCallees = ['css', 'styled', 'styled2'];
|
|
8
|
+
var isCssInJsCallNode = exports.isCssInJsCallNode = function isCssInJsCallNode(node) {
|
|
9
|
+
return (node === null || node === void 0 ? void 0 : node.type) === 'CallExpression' && node.callee.type === 'Identifier' && cssInJsCallees.includes(node.callee.name);
|
|
10
|
+
};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.isCssInJsObjectNode = void 0;
|
|
7
|
+
var cssInJsCallees = ['css', 'styled', 'styled2'];
|
|
8
|
+
var isCssInJsObjectNode = exports.isCssInJsObjectNode = function isCssInJsObjectNode(node) {
|
|
9
|
+
return (node === null || node === void 0 ? void 0 : node.type) === 'CallExpression' && node.callee.type === 'MemberExpression' && node.callee.object.type === 'Identifier' && cssInJsCallees.includes(node.callee.object.name);
|
|
10
|
+
};
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.isDecendantOfStyleBlock = void 0;
|
|
7
|
+
var _isCssInJsCallNode = require("./is-css-in-js-call-node");
|
|
8
|
+
var _isCssInJsObjectNode = require("./is-css-in-js-object-node");
|
|
9
|
+
var _isCssInJsTemplateNode = require("./is-css-in-js-template-node");
|
|
10
|
+
var _isDecendantOfStyleBlock = exports.isDecendantOfStyleBlock = function isDecendantOfStyleBlock(node) {
|
|
11
|
+
if (node.type === 'VariableDeclarator') {
|
|
12
|
+
if (node.id.type !== 'Identifier') {
|
|
13
|
+
return false;
|
|
14
|
+
}
|
|
15
|
+
if (
|
|
16
|
+
// @ts-ignore typeAnnotation is not defined by types
|
|
17
|
+
node.id.typeAnnotation &&
|
|
18
|
+
// @ts-ignore typeAnnotation is not defined by types
|
|
19
|
+
node.id.typeAnnotation.typeAnnotation.type === 'GenericTypeAnnotation' &&
|
|
20
|
+
// @ts-ignore typeAnnotation is not defined by types
|
|
21
|
+
node.id.typeAnnotation.typeAnnotation.id.type === 'Identifier') {
|
|
22
|
+
// @ts-ignore typeAnnotation is not defined by types
|
|
23
|
+
var typeName = node.id.typeAnnotation.typeAnnotation.id.name;
|
|
24
|
+
var hasCSSType = ['CSSProperties', 'CSSObject'].some(function (el) {
|
|
25
|
+
return typeName.includes(el);
|
|
26
|
+
});
|
|
27
|
+
if (hasCSSType) {
|
|
28
|
+
return true;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
// @ts-ignore Name is not defined in types
|
|
33
|
+
var varName = node.id.name.toLowerCase();
|
|
34
|
+
return ['style', 'css', 'theme'].some(function (el) {
|
|
35
|
+
return varName.includes(el);
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
if ((0, _isCssInJsCallNode.isCssInJsCallNode)(node) || (0, _isCssInJsObjectNode.isCssInJsObjectNode)(node) || (0, _isCssInJsTemplateNode.isCssInJsTemplateNode)(node)) {
|
|
39
|
+
return true;
|
|
40
|
+
}
|
|
41
|
+
if (node.type === 'TaggedTemplateExpression' && node.tag.type === 'Identifier' && node.tag.name === 'css') {
|
|
42
|
+
return true;
|
|
43
|
+
}
|
|
44
|
+
if (node.parent) {
|
|
45
|
+
return _isDecendantOfStyleBlock(node.parent);
|
|
46
|
+
}
|
|
47
|
+
return false;
|
|
48
|
+
};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.isDeprecatedImportConfig = void 0;
|
|
7
|
+
var isDeprecatedImportConfig = exports.isDeprecatedImportConfig = function isDeprecatedImportConfig(config) {
|
|
8
|
+
return Object.values(config)[0].message !== undefined || Object.values(config)[0].importSpecifiers !== undefined;
|
|
9
|
+
};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.isDeprecatedJSXAttributeConfig = void 0;
|
|
7
|
+
var isDeprecatedJSXAttributeConfig = exports.isDeprecatedJSXAttributeConfig = function isDeprecatedJSXAttributeConfig(config) {
|
|
8
|
+
return Array.isArray(Object.values(config)[0]);
|
|
9
|
+
};
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.isHardCodedColor = void 0;
|
|
7
|
+
var _namedColors = require("./named-colors");
|
|
8
|
+
var includesWholeWord = function includesWholeWord(value, options) {
|
|
9
|
+
var values = value.replace(/[^a-zA-Z ]/g, ' ').trim().split(/(?:,|\.| )+/);
|
|
10
|
+
return values.some(function (value) {
|
|
11
|
+
return options.has(value);
|
|
12
|
+
});
|
|
13
|
+
};
|
|
14
|
+
var isHardCodedColor = exports.isHardCodedColor = function isHardCodedColor(value) {
|
|
15
|
+
if (includesWholeWord(value.toLowerCase(), _namedColors.namedColors)) {
|
|
16
|
+
return true;
|
|
17
|
+
}
|
|
18
|
+
if (value.startsWith('rgb(') || value.startsWith('rgba(') || value.startsWith('hsl(') || value.startsWith('hsla(') || value.startsWith('lch(') || value.startsWith('lab(') || value.startsWith('color(')) {
|
|
19
|
+
return true;
|
|
20
|
+
}
|
|
21
|
+
if (value.startsWith('#') && (
|
|
22
|
+
// short hex, hex, or hex with alpha
|
|
23
|
+
value.length === 4 || value.length === 7 || value.length === 9)) {
|
|
24
|
+
return true;
|
|
25
|
+
}
|
|
26
|
+
return false;
|
|
27
|
+
};
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.isLegacyColor = void 0;
|
|
7
|
+
var legacyColors = new Set(['R50', 'R75', 'R100', 'R200', 'R300', 'R400', 'R500', 'Y50', 'Y75', 'Y100', 'Y200', 'Y300', 'Y400', 'Y500', 'G50', 'G75', 'G100', 'G200', 'G300', 'G400', 'G500', 'B50', 'B75', 'B100', 'B200', 'B300', 'B400', 'B500', 'P50', 'P75', 'P100', 'P200', 'P300', 'P400', 'P500', 'T50', 'T75', 'T100', 'T200', 'T300', 'T400', 'T500', 'N0', 'N10', 'N20', 'N30', 'N40', 'N50', 'N60', 'N70', 'N80', 'N90', 'N100', 'N200', 'N300', 'N400', 'N500', 'N600', 'N700', 'N800', 'N900', 'N10A', 'N20A', 'N30A', 'N40A', 'N50A', 'N60A', 'N70A', 'N80A', 'N90A', 'N100A', 'N200A', 'N300A', 'N400A', 'N500A', 'N600A', 'N700A', 'N800A', 'DN900', 'DN800', 'DN700', 'DN600', 'DN500', 'DN400', 'DN300', 'DN200', 'DN100', 'DN90', 'DN80', 'DN70', 'DN60', 'DN50', 'DN40', 'DN30', 'DN20', 'DN10', 'DN0', 'DN800A', 'DN700A', 'DN600A', 'DN500A', 'DN400A', 'DN300A', 'DN200A', 'DN100A', 'DN90A', 'DN80A', 'DN70A', 'DN60A', 'DN50A', 'DN40A', 'DN30A', 'DN20A', 'DN10A',
|
|
8
|
+
// Legacy Trello colors:
|
|
9
|
+
'AtlassianBlue50', 'AtlassianBlue200', 'AtlassianBlue300', 'AtlassianBlue400', 'TrelloBlue25', 'TrelloBlue50', 'TrelloBlue100', 'TrelloBlue200', 'TrelloBlue300', 'TrelloBlue400', 'TrelloBlue500', 'TrelloBlue600', 'TrelloBlue700', 'TrelloBlue800', 'TrelloBlue900', 'Green50', 'Green100', 'Green200', 'Green300', 'Green400', 'Green500', 'Green600', 'Green700', 'Green800', 'Green900', 'Orange50', 'Orange100', 'Orange200', 'Orange300', 'Orange400', 'Orange500', 'Orange600', 'Orange700', 'Orange800', 'Orange900', 'Red50', 'Red100', 'Red200', 'Red300', 'Red400', 'Red500', 'Red600', 'Red700', 'Red800', 'Red900', 'Yellow50', 'Yellow100', 'Yellow200', 'Yellow300', 'Yellow400', 'Yellow500', 'Yellow600', 'Yellow700', 'Yellow800', 'Yellow900', 'Purple50', 'Purple100', 'Purple200', 'Purple300', 'Purple400', 'Purple500', 'Purple600', 'Purple700', 'Purple800', 'Purple900', 'VioletMbgAlert', 'Pink50', 'Pink100', 'Pink200', 'Pink300', 'Pink400', 'Pink500', 'Pink600', 'Pink700', 'Pink800', 'Pink900', 'Sky25', 'Sky50', 'Sky100', 'Sky200', 'Sky300', 'Sky400', 'Sky500', 'Sky600', 'Sky700', 'Sky800', 'Sky900', 'Lime50', 'Lime100', 'Lime200', 'Lime300', 'Lime400', 'Lime500', 'Lime600', 'Lime700', 'Lime800', 'Lime900', 'BusinessBlue50', 'BusinessBlue100', 'BusinessBlue200', 'BusinessBlue300', 'BusinessBlue400', 'BusinessBlue500', 'BusinessBlue600', 'BusinessBlue700', 'BusinessBlue800', 'BusinessBlue900', 'Opacity1', 'Opacity2', 'Opacity3', 'Opacity4', 'Opacity5', 'Opacity6', 'Opacity7', 'Opacity8', 'Opacity9', 'OpacityDark1', 'OpacityDark2', 'OpacityDark3', 'OpacityDark4', 'OpacityDark5', 'OpacityDark6', 'OpacityDark7', 'OpacityDark8', 'OpacityDark9', 'Black']);
|
|
10
|
+
var isLegacyColor = exports.isLegacyColor = function isLegacyColor(value) {
|
|
11
|
+
return legacyColors.has(value);
|
|
12
|
+
};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.isLegacyNamedColor = void 0;
|
|
7
|
+
var legacyColorMixins = new Set(['background', 'backgroundActive', 'backgroundHover', 'backgroundOnLayer', 'text', 'textHover', 'textActive', 'subtleText', 'placeholderText', 'heading', 'subtleHeading', 'codeBlock', 'link', 'linkHover', 'linkActive', 'linkOutline', 'primary', 'blue', 'teal', 'purple', 'red', 'yellow', 'green', 'skeleton']);
|
|
8
|
+
var isLegacyNamedColor = exports.isLegacyNamedColor = function isLegacyNamedColor(value) {
|
|
9
|
+
return legacyColorMixins.has(value);
|
|
10
|
+
};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.namedColors = void 0;
|
|
7
|
+
var namedColors = exports.namedColors = new Set(['black', 'silver', 'gray', 'white', 'maroon', 'red', 'purple', 'fuchsia', 'green', 'lime', 'olive', 'yellow', 'navy', 'blue', 'teal', 'aqua', 'orange', 'aliceblue', 'antiquewhite', 'aquamarine', 'azure', 'beige', 'bisque', 'blanchedalmond', 'blueviolet', 'brown', 'burlywood', 'cadetblue', 'chartreuse', 'chocolate', 'coral', 'cornflowerblue', 'cornsilk', 'crimson', 'cyan', 'darkblue', 'darkcyan', 'darkgoldenrod', 'darkgray', 'darkgreen', 'darkgrey', 'darkkhaki', 'darkmagenta', 'darkolivegreen', 'darkorange', 'darkorchid', 'darkred', 'darksalmon', 'darkseagreen', 'darkslateblue', 'darkslategray', 'darkslategrey', 'darkturquoise', 'darkviolet', 'deeppink', 'deepskyblue', 'dimgray', 'dimgrey', 'dodgerblue', 'firebrick', 'floralwhite', 'forestgreen', 'gainsboro', 'ghostwhite', 'gold', 'goldenrod', 'greenyellow', 'grey', 'honeydew', 'hotpink', 'indianred', 'indigo', 'ivory', 'khaki', 'lavender', 'lavenderblush', 'lawngreen', 'lemonchiffon', 'lightblue', 'lightcoral', 'lightcyan', 'lightgoldenrodyellow', 'lightgray', 'lightgreen', 'lightgrey', 'lightpink', 'lightsalmon', 'lightseagreen', 'lightskyblue', 'lightslategray', 'lightslategrey', 'lightsteelblue', 'lightyellow', 'limegreen', 'linen', 'magenta', 'mediumaquamarine', 'mediumblue', 'mediumorchid', 'mediumpurple', 'mediumseagreen', 'mediumslateblue', 'mediumspringgreen', 'mediumturquoise', 'mediumvioletred', 'midnightblue', 'mintcream', 'mistyrose', 'moccasin', 'navajowhite', 'oldlace', 'olivedrab', 'orangered', 'orchid', 'palegoldenrod', 'palegreen', 'paleturquoise', 'palevioletred', 'papayawhip', 'peachpuff', 'peru', 'pink', 'plum', 'powderblue', 'rosybrown', 'royalblue', 'saddlebrown', 'salmon', 'sandybrown', 'seagreen', 'seashell', 'sienna', 'skyblue', 'slateblue', 'slategray', 'slategrey', 'snow', 'springgreen', 'steelblue', 'tan', 'thistle', 'tomato', 'turquoise', 'violet', 'wheat', 'whitesmoke', 'yellowgreen', 'rebeccapurple']);
|
|
@@ -1,17 +1 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.isDeprecatedJSXAttributeConfig = exports.isDeprecatedImportConfig = void 0;
|
|
7
|
-
var isDeprecatedImportConfig = exports.isDeprecatedImportConfig = function isDeprecatedImportConfig(config) {
|
|
8
|
-
return Object.values(config)[0].message !== undefined || Object.values(config)[0].importSpecifiers !== undefined;
|
|
9
|
-
};
|
|
10
|
-
|
|
11
|
-
// Checks if the value of object is an array, will need to update this method if we add other deprecated types with array values
|
|
12
|
-
var isDeprecatedJSXAttributeConfig = exports.isDeprecatedJSXAttributeConfig = function isDeprecatedJSXAttributeConfig(config) {
|
|
13
|
-
return Array.isArray(Object.values(config)[0]);
|
|
14
|
-
};
|
|
15
|
-
|
|
16
|
-
// From ESLint's repo at path `docs/src/extend/custom-processors.md`. Can't be
|
|
17
|
-
// imported I guess
|
|
1
|
+
"use strict";
|
|
@@ -272,6 +272,15 @@
|
|
|
272
272
|
},
|
|
273
273
|
"@atlaskit/logo": {
|
|
274
274
|
"importSpecifiers": []
|
|
275
|
+
},
|
|
276
|
+
"@atlaskit/atlassian-navigation": {
|
|
277
|
+
"message": "Atlassian navigation (Nav 3) is deprecated. Please use `@atlaskit/navigation-system` instead."
|
|
278
|
+
},
|
|
279
|
+
"@atlaskit/page-layout": {
|
|
280
|
+
"message": "Page layout (Nav 3) is deprecated. Please use `@atlaskit/navigation-system` instead."
|
|
281
|
+
},
|
|
282
|
+
"@atlaskit/side-navigation": {
|
|
283
|
+
"message": "Side navigation (Nav 3) is deprecated. Please use `@atlaskit/navigation-system` instead."
|
|
275
284
|
}
|
|
276
285
|
}
|
|
277
286
|
}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import { isNodeOfType, jsxIdentifier } from 'eslint-codemod-utils';
|
|
2
|
+
import { JSXAttribute as HelperJSXAttribute } from './jsx-attribute';
|
|
3
|
+
export const JSXElementHelper = {
|
|
4
|
+
/**
|
|
5
|
+
* Names of JSXElements can be any of:
|
|
6
|
+
* `<Component></Component>` - (JSXIdentifier)
|
|
7
|
+
* `<MyComponents.Component></MyComponents.Component>` - `MyComponents` is a namespace (JSXNamespacedName)
|
|
8
|
+
* `<MyComponents.Component></MyComponents.Component>` - `MyComponents` is an object (JSXMemberExpression)
|
|
9
|
+
*
|
|
10
|
+
* getting the name of a JSXMemberExpression is difficult, because object can contain objects, which is recursively defined in the AST.
|
|
11
|
+
* e.g. Getting the name of `<MyComponents.PresentationLayer.LeftSideBar.Header />` would require `getName` to recursively resolve all parts of the name.
|
|
12
|
+
* `getName` does not currently have this functionality. Add it if you need it.
|
|
13
|
+
*/
|
|
14
|
+
getName(node) {
|
|
15
|
+
if (!isNodeOfType(node.openingElement.name, 'JSXIdentifier')) {
|
|
16
|
+
// TODO: We may want to log this
|
|
17
|
+
return '';
|
|
18
|
+
}
|
|
19
|
+
return node.openingElement.name.name;
|
|
20
|
+
},
|
|
21
|
+
updateName(node, newName, fixer) {
|
|
22
|
+
const isSelfClosing = JSXElementHelper.isSelfClosing(node);
|
|
23
|
+
const openingElementFix = fixer.replaceText(node.openingElement.name, jsxIdentifier(newName).toString());
|
|
24
|
+
if (isSelfClosing || !node.closingElement) {
|
|
25
|
+
return [openingElementFix];
|
|
26
|
+
}
|
|
27
|
+
const closingElementFix = fixer.replaceText(node.closingElement.name, jsxIdentifier(newName).toString());
|
|
28
|
+
return [openingElementFix, closingElementFix];
|
|
29
|
+
},
|
|
30
|
+
isSelfClosing(node) {
|
|
31
|
+
return node.openingElement.selfClosing;
|
|
32
|
+
},
|
|
33
|
+
getAttributes(node) {
|
|
34
|
+
return node.openingElement.attributes;
|
|
35
|
+
},
|
|
36
|
+
getAttributeByName(node, name) {
|
|
37
|
+
return node.openingElement.attributes.find(attr => {
|
|
38
|
+
// Ignore anything other than JSXAttribute
|
|
39
|
+
if (!isNodeOfType(attr, 'JSXAttribute')) {
|
|
40
|
+
return false;
|
|
41
|
+
}
|
|
42
|
+
return attr.name.name === name;
|
|
43
|
+
});
|
|
44
|
+
},
|
|
45
|
+
containsSpreadAttributes(node) {
|
|
46
|
+
return node.openingElement.attributes.some(attr => {
|
|
47
|
+
return isNodeOfType(attr, 'JSXSpreadAttribute');
|
|
48
|
+
});
|
|
49
|
+
},
|
|
50
|
+
addAttribute(node, name, value, fixer) {
|
|
51
|
+
const attributeString = ` ${name}='${value}'`;
|
|
52
|
+
const isSelfClosing = JSXElementHelper.isSelfClosing(node);
|
|
53
|
+
const start = node.openingElement.range ? node.openingElement.range[0] : 0;
|
|
54
|
+
const end = node.openingElement.range ? node.openingElement.range[1] - (isSelfClosing ? 3 : 1) : 0;
|
|
55
|
+
const range = [start, end];
|
|
56
|
+
const fix = fixer.insertTextAfterRange(range, attributeString);
|
|
57
|
+
return fix;
|
|
58
|
+
},
|
|
59
|
+
getChildren(node) {
|
|
60
|
+
const filteredChildren = node.children.filter(child => {
|
|
61
|
+
// Filter out text children with whitespace characters only as JSX removes whitespace used for intendation
|
|
62
|
+
if (isNodeOfType(child, 'JSXText')) {
|
|
63
|
+
const whiteSpaceChars = new RegExp('\\s', 'g');
|
|
64
|
+
return !whiteSpaceChars.test(child.value);
|
|
65
|
+
}
|
|
66
|
+
// Filter out empty JSX expressions, for example JSX expression containing comments only, including eslint ignore comments
|
|
67
|
+
if (isNodeOfType(child, 'JSXExpressionContainer')) {
|
|
68
|
+
return !isNodeOfType(child.expression, 'JSXEmptyExpression');
|
|
69
|
+
}
|
|
70
|
+
return true;
|
|
71
|
+
});
|
|
72
|
+
return filteredChildren;
|
|
73
|
+
},
|
|
74
|
+
hasAllowedAttrsOnly(node, allowedProps) {
|
|
75
|
+
const attrs = JSXElementHelper.getAttributes(node);
|
|
76
|
+
return attrs.every(attr => {
|
|
77
|
+
if (!isNodeOfType(attr, 'JSXAttribute')) {
|
|
78
|
+
return false;
|
|
79
|
+
}
|
|
80
|
+
const name = HelperJSXAttribute.getName(attr);
|
|
81
|
+
return allowedProps.includes(name);
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
};
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* THIS SECTION WAS CREATED VIA CODEGEN DO NOT MODIFY {@see http://go/af-codegen}
|
|
3
|
-
* @codegen <<SignedSource::
|
|
3
|
+
* @codegen <<SignedSource::d35b67b5e07f9d069f3b0cbdb4cf8e77>>
|
|
4
4
|
* @codegenId spacing
|
|
5
5
|
* @codegenCommand yarn workspace @atlaskit/eslint-plugin-design-system codegen-token-maps
|
|
6
6
|
* @codegenDependency ../../../tokens/src/artifacts/tokens-raw/atlassian-spacing.tsx <<SignedSource::535518e7add48ef24f526d0904f70060>>
|
|
7
7
|
*/
|
|
8
|
+
/* eslint-disable @atlaskit/volt-strict-mode/no-multiple-exports */
|
|
8
9
|
export const positiveSpaceMap = {
|
|
9
10
|
'0px': 'space.0',
|
|
10
11
|
'2px': 'space.025',
|
|
@@ -5,7 +5,7 @@ import { getScope, getSourceCode } from '@atlaskit/eslint-utils/context-compat';
|
|
|
5
5
|
import { findVariable } from '@atlaskit/eslint-utils/find-variable';
|
|
6
6
|
import { CSS_IN_JS_IMPORTS } from '@atlaskit/eslint-utils/is-supported-import';
|
|
7
7
|
import { Import } from '../../ast-nodes/import';
|
|
8
|
-
import { createLintRule } from '../utils/create-rule';
|
|
8
|
+
import { createLintRule } from '../utils/create-lint-rule';
|
|
9
9
|
import { getFirstSupportedImport } from '../utils/get-first-supported-import';
|
|
10
10
|
import { getModuleOfIdentifier } from '../utils/get-module-of-identifier';
|
|
11
11
|
const isDOMElementName = elementName => elementName.charAt(0) !== elementName.charAt(0).toUpperCase() && elementName.charAt(0) === elementName.charAt(0).toLowerCase();
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { isNodeOfType } from 'eslint-codemod-utils';
|
|
2
|
-
import { createLintRule } from '../utils/create-rule';
|
|
2
|
+
import { createLintRule } from '../utils/create-lint-rule';
|
|
3
3
|
const CONTROLLED_PROPS = ['size', 'borderColor', 'appearance'];
|
|
4
4
|
const rule = createLintRule({
|
|
5
5
|
meta: {
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
const emRegex = /(.*\d+)em$/;
|
|
2
|
+
const percentageRegex = /(%$)/;
|
|
3
|
+
export const emToPixels = (value, fontSize) => {
|
|
4
|
+
if (typeof value === 'string') {
|
|
5
|
+
const emMatch = value.match(emRegex);
|
|
6
|
+
if (emMatch && typeof fontSize === 'number') {
|
|
7
|
+
return Number(emMatch[1]) * fontSize;
|
|
8
|
+
} else if (value.match(percentageRegex)) {
|
|
9
|
+
return value;
|
|
10
|
+
} else {
|
|
11
|
+
return null;
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
return value;
|
|
15
|
+
};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { spacing as spacingScale } from '@atlaskit/tokens/tokens-raw';
|
|
2
|
+
import { borderWidthValueToToken } from './border-width-value-to-token';
|
|
3
|
+
import { isBorderSizeProperty } from './is-border-size-property';
|
|
4
|
+
import { isShapeProperty } from './is-shape-property';
|
|
5
|
+
import { normaliseValue } from './normalise-value';
|
|
6
|
+
import { radiusValueToToken } from './radius-value-to-token';
|
|
7
|
+
const spacingValueToToken = Object.fromEntries(spacingScale.map(token => [token.value, token.cleanName]));
|
|
8
|
+
export function findTokenNameByPropertyValue(propertyName, value) {
|
|
9
|
+
const lookupValue = normaliseValue(propertyName, value);
|
|
10
|
+
const tokenName = isShapeProperty(propertyName) ? isBorderSizeProperty(propertyName) ? borderWidthValueToToken[lookupValue] : radiusValueToToken[lookupValue] : spacingValueToToken[lookupValue];
|
|
11
|
+
if (!tokenName) {
|
|
12
|
+
return undefined;
|
|
13
|
+
}
|
|
14
|
+
return tokenName;
|
|
15
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { isColorCssPropertyName } from '../utils/is-color-css-property-name';
|
|
2
|
+
import { isCurrentSurfaceCustomPropertyName } from '../utils/is-current-surface-custom-property-name';
|
|
3
|
+
import { isShapeProperty } from './is-shape-property';
|
|
4
|
+
import { isSpacingProperty } from './is-spacing-property';
|
|
5
|
+
/**
|
|
6
|
+
* Returns an array of domains that are relevant to the provided property based on the rule options.
|
|
7
|
+
* @param propertyName camelCase CSS property
|
|
8
|
+
* @param targetOptions Array containing the types of properties that should be included in the rule.
|
|
9
|
+
* @example
|
|
10
|
+
* ```
|
|
11
|
+
* propertyName: padding, targetOptions: ['spacing'] -> returns ['spacing']
|
|
12
|
+
* propertyName: backgroundColor, targetOptions: ['spacing'] -> returns []
|
|
13
|
+
* propertyName: backgroundColor, targetOptions: ['color', 'spacing'] -> returns ['color']
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export function getDomainsForProperty(propertyName, targetOptions) {
|
|
17
|
+
const domains = [];
|
|
18
|
+
if ((isColorCssPropertyName(propertyName) || isCurrentSurfaceCustomPropertyName(propertyName)) && targetOptions.includes('color')) {
|
|
19
|
+
domains.push('color');
|
|
20
|
+
}
|
|
21
|
+
if (isSpacingProperty(propertyName) && targetOptions.includes('spacing')) {
|
|
22
|
+
domains.push('spacing');
|
|
23
|
+
}
|
|
24
|
+
if (isShapeProperty(propertyName) && targetOptions.includes('shape')) {
|
|
25
|
+
domains.push('shape');
|
|
26
|
+
}
|
|
27
|
+
return domains;
|
|
28
|
+
}
|