main
@reggi/path-to-regexp
dependabot/npm_and_yarn/main/copy-to-clipboard-4.0.2
dependabot/npm_and_yarn/main/eslint-10.4.0
dependabot/npm_and_yarn/main/npmcli/eslint-config-7.0.0
dependabot/npm_and_yarn/main/proc-log-7.0.0
dependabot/npm_and_yarn/npm_and_yarn-826852524d
dependabot/npm_and_yarn/npm_and_yarn-ab9a7f4bc2
deprecate-totp-2fa
dhei/classic-tokens
gat-bypass-2fa-docs
jpg619/fix-accessibility-content-flow
jpg619/version-bump-tar-2
kartykp/gat-bypass-2fa-docs
kartykp/upgrade-path-to-regex
main
maitxn/version-bump-tar
patch-1
reggi/cache-based-on-version
reggi/dev-engines
reggi/fix-transform-prettier
reggi/overrides
update-search-sensitivity
| 1 | module.exports = { |
| 2 | root: true, |
| 3 | ignorePatterns: ['.cache/', 'public/'], |
| 4 | plugins: ['primer-react'], // github plugin now comes from flat config |
| 5 | extends: ['@npmcli', 'react-app', 'eslint:recommended', 'plugin:react/recommended', 'prettier'], |
| 6 | rules: { |
| 7 | 'max-len': 'off', |
| 8 | 'react/prop-types': 'off', |
| 9 | 'primer-react/direct-slot-children': 'error', |
| 10 | 'primer-react/no-system-props': ['error', {includeUtilityComponents: true}], |
| 11 | 'primer-react/a11y-tooltip-interactive-trigger': 'error', |
| 12 | 'primer-react/new-color-css-vars': 'error', |
| 13 | 'primer-react/a11y-explicit-heading': 'error', |
| 14 | 'primer-react/no-deprecated-props': 'warn', |
| 15 | 'primer-react/a11y-remove-disable-tooltip': 'error', |
| 16 | 'primer-react/a11y-use-accessible-tooltip': 'error', |
| 17 | }, |
| 18 | settings: { |
| 19 | 'import/resolver': { |
| 20 | typescript: {}, |
| 21 | }, |
| 22 | }, |
| 23 | overrides: [ |
| 24 | { |
| 25 | files: ['*.js'], |
| 26 | extends: ['plugin:import/recommended'], |
| 27 | }, |
| 28 | { |
| 29 | files: ['src/shared.js'], |
| 30 | rules: { |
| 31 | 'react/no-unescaped-entities': 'off', |
| 32 | }, |
| 33 | }, |
| 34 | { |
| 35 | files: ['*.mdx'], |
| 36 | plugins: ['mdx', 'prettier'], |
| 37 | extends: ['plugin:mdx/recommended'], |
| 38 | parserOptions: { |
| 39 | sourceType: 'module', |
| 40 | }, |
| 41 | globals: { |
| 42 | Index: 'readonly', |
| 43 | Note: 'readonly', |
| 44 | Prompt: 'readonly', |
| 45 | Screenshot: 'readonly', |
| 46 | Link: 'readonly', |
| 47 | YouTube: 'readonly', |
| 48 | DataTable: 'readonly', |
| 49 | InlineCode: 'readonly', |
| 50 | Strikethrough: 'readonly', |
| 51 | CliLink: 'readonly', |
| 52 | }, |
| 53 | settings: { |
| 54 | 'import/resolver': 'webpack', |
| 55 | }, |
| 56 | rules: { |
| 57 | 'no-irregular-whitespace': 'off', |
| 58 | 'react/no-unescaped-entities': 'off', |
| 59 | 'react/jsx-key': 'off', |
| 60 | }, |
| 61 | }, |
| 62 | { |
| 63 | files: ['*.mdx', 'src/shared.js', 'src/**/*.js'], |
| 64 | rules: { |
| 65 | 'react/forbid-elements': [ |
| 66 | 'error', |
| 67 | { |
| 68 | // See https://github.com/npm/documentation/pull/791 |
| 69 | // https://gist.githubusercontent.com/cecchi/99772a8483914b112400/raw/bcaecc4ba809caec518158bb46f9dead456ae5da/html-tags.json |
| 70 | forbid: [ |
| 71 | 'abbr', |
| 72 | 'acronym', |
| 73 | 'address', |
| 74 | 'applet', |
| 75 | 'area', |
| 76 | 'article', |
| 77 | 'audio', |
| 78 | 'b', |
| 79 | 'base', |
| 80 | 'basefont', |
| 81 | 'bdi', |
| 82 | 'bdo', |
| 83 | 'big', |
| 84 | 'blink', |
| 85 | 'br', |
| 86 | 'button', |
| 87 | 'canvas', |
| 88 | 'caption', |
| 89 | 'center', |
| 90 | 'cite', |
| 91 | 'code', |
| 92 | 'col', |
| 93 | 'colgroup', |
| 94 | 'content', |
| 95 | 'data', |
| 96 | 'datalist', |
| 97 | 'dd', |
| 98 | 'del', |
| 99 | 'details', |
| 100 | 'dfn', |
| 101 | 'dialog', |
| 102 | 'dir', |
| 103 | // ok because Box is deprecated and styles are provided via CSS modules |
| 104 | // 'div', |
| 105 | 'dl', |
| 106 | 'dt', |
| 107 | 'element', |
| 108 | 'em', |
| 109 | 'embed', |
| 110 | 'fieldset', |
| 111 | 'figcaption', |
| 112 | 'figure', |
| 113 | 'footer', |
| 114 | 'form', |
| 115 | 'frame', |
| 116 | 'frameset', |
| 117 | 'h1', |
| 118 | 'h2', |
| 119 | 'h3', |
| 120 | 'h4', |
| 121 | 'h5', |
| 122 | 'h6', |
| 123 | 'head', |
| 124 | // ok because Box is deprecated and styles are provided via CSS modules |
| 125 | // 'header', |
| 126 | 'hgroup', |
| 127 | 'hr', |
| 128 | // used in head |
| 129 | // 'html', |
| 130 | 'i', |
| 131 | // ok because Box is deprecated and styles are provided via CSS modules |
| 132 | // 'iframe', |
| 133 | 'input', |
| 134 | 'ins', |
| 135 | 'isindex', |
| 136 | 'kbd', |
| 137 | 'keygen', |
| 138 | 'label', |
| 139 | 'legend', |
| 140 | // ok because there is no mdx replacement and styles are provided via parent ul/ol |
| 141 | // 'li', |
| 142 | 'listing', |
| 143 | // ok because Box is deprecated and styles are provided via CSS modules |
| 144 | // 'main', |
| 145 | 'map', |
| 146 | 'mark', |
| 147 | 'menu', |
| 148 | 'menuitem', |
| 149 | 'meter', |
| 150 | // ok because Box is deprecated and styles are provided via CSS modules |
| 151 | // 'nav', |
| 152 | 'noembed', |
| 153 | 'noscript', |
| 154 | 'object', |
| 155 | 'ol', |
| 156 | 'optgroup', |
| 157 | 'option', |
| 158 | 'output', |
| 159 | // ok because Box is deprecated and styles are provided via CSS modules |
| 160 | // 'p', |
| 161 | 'param', |
| 162 | 'plaintext', |
| 163 | // ok because Box is deprecated and styles are provided via CSS modules |
| 164 | // 'pre', |
| 165 | 'progress', |
| 166 | 'q', |
| 167 | 'rp', |
| 168 | 'rt', |
| 169 | 'rtc', |
| 170 | 'ruby', |
| 171 | 's', |
| 172 | 'samp', |
| 173 | 'script', |
| 174 | 'section', |
| 175 | 'select', |
| 176 | 'shadow', |
| 177 | 'small', |
| 178 | 'source', |
| 179 | 'spacer', |
| 180 | 'span', |
| 181 | 'strike', |
| 182 | // ok since there is no mdx replacement |
| 183 | // 'strong' |
| 184 | 'style', |
| 185 | 'sub', |
| 186 | 'summary', |
| 187 | 'sup', |
| 188 | 'table', |
| 189 | 'tbody', |
| 190 | 'td', |
| 191 | 'template', |
| 192 | 'tfoot', |
| 193 | 'th', |
| 194 | 'thead', |
| 195 | 'time', |
| 196 | // used in head |
| 197 | // 'title', |
| 198 | 'tr', |
| 199 | 'track', |
| 200 | 'tt', |
| 201 | 'u', |
| 202 | // ok because Box is deprecated and styles are provided via CSS modules |
| 203 | // 'ul', |
| 204 | 'var', |
| 205 | 'video', |
| 206 | 'wbr', |
| 207 | 'xmp', |
| 208 | ], |
| 209 | }, |
| 210 | ], |
| 211 | }, |
| 212 | }, |
| 213 | ], |
| 214 | } |