@elliemae/pui-cli 8.58.2 → 8.59.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.
Files changed (92) hide show
  1. package/README.md +0 -1
  2. package/build/docs/404.html +4 -4
  3. package/build/docs/api/functions/loadRoutes/index.html +9 -9
  4. package/build/docs/api/index.html +8 -8
  5. package/build/docs/api/type-aliases/LIB_NAME/index.html +5 -5
  6. package/build/docs/api/variables/babelConfig/index.html +28 -28
  7. package/build/docs/api/variables/commitlintConfig/index.html +8 -8
  8. package/build/docs/api/variables/eslintBaseConfig/index.html +118 -118
  9. package/build/docs/api/variables/eslintConfig/index.html +166 -166
  10. package/build/docs/api/variables/jestConfig/index.html +86 -86
  11. package/build/docs/api/variables/jestNodeConfig/index.html +86 -86
  12. package/build/docs/api/variables/lintStagedConfig/index.html +12 -12
  13. package/build/docs/api/variables/prettierConfig/index.html +18 -18
  14. package/build/docs/api/variables/stylelintConfig/index.html +18 -18
  15. package/build/docs/api/variables/vitestConfig/index.html +5 -5
  16. package/build/docs/assets/css/{styles.a5feac63.css → styles.cf5ca7d5.css} +1 -1
  17. package/build/docs/assets/js/{04ee7372.55372ff8.js → 04ee7372.cab88fae.js} +1 -1
  18. package/build/docs/assets/js/1370.9cc961d9.js +1 -0
  19. package/build/docs/assets/js/{16b7bc88.d7f21dc6.js → 16b7bc88.7b96355a.js} +1 -1
  20. package/build/docs/assets/js/17896441.f090f976.js +1 -0
  21. package/build/docs/assets/js/{1b9df811.d8b0e0b0.js → 1b9df811.067b3319.js} +1 -1
  22. package/build/docs/assets/js/{2180.874123d6.js → 2180.72c28408.js} +1 -1
  23. package/build/docs/assets/js/{3308.3d63c1db.js → 3308.36ac9751.js} +1 -1
  24. package/build/docs/assets/js/3725.7d268fd2.js +1 -0
  25. package/build/docs/assets/js/{37d86055.b83e7595.js → 37d86055.ce58ae5f.js} +1 -1
  26. package/build/docs/assets/js/4632.33ebf057.js +1 -0
  27. package/build/docs/assets/js/483.0bf2839b.js +1 -0
  28. package/build/docs/assets/js/5168.8ac2b6a4.js +1 -0
  29. package/build/docs/assets/js/5179.03a64eee.js +1 -0
  30. package/build/docs/assets/js/5182.c2454f08.js +1 -0
  31. package/build/docs/assets/js/{5275.c920ecef.js → 5275.fdbfc864.js} +1 -1
  32. package/build/docs/assets/js/{9673.e19e0f6f.js → 5939.0233d80e.js} +1 -1
  33. package/build/docs/assets/js/{5d5f1db0.f47de70d.js → 5d5f1db0.621a6bcf.js} +1 -1
  34. package/build/docs/assets/js/{5e8c322a.4c12e120.js → 5e8c322a.169c8e1e.js} +1 -1
  35. package/build/docs/assets/js/5e95c892.80718d09.js +1 -0
  36. package/build/docs/assets/js/{5fb3c522.3892a9c1.js → 5fb3c522.77a300e7.js} +1 -1
  37. package/build/docs/assets/js/{654.28c81645.js → 654.c412807e.js} +1 -1
  38. package/build/docs/assets/js/{6603.c4f7f692.js → 6603.c4c7b68a.js} +1 -1
  39. package/build/docs/assets/js/6761.4632914b.js +1 -0
  40. package/build/docs/assets/js/{6873.363171bd.js → 6873.a077f28b.js} +1 -1
  41. package/build/docs/assets/js/6961.832e29ad.js +1 -0
  42. package/build/docs/assets/js/{6bd11e52.414a7e72.js → 6bd11e52.4efc16fe.js} +1 -1
  43. package/build/docs/assets/js/{6e96545e.59731a4f.js → 6e96545e.608e6476.js} +1 -1
  44. package/build/docs/assets/js/{71f6d02b.3074eeaf.js → 71f6d02b.547b5c0e.js} +1 -1
  45. package/build/docs/assets/js/7204.cddf81d8.js +1 -0
  46. package/build/docs/assets/js/{6143.8a807b04.js → 7392.1a248520.js} +1 -1
  47. package/build/docs/assets/js/7616.71465e84.js +1 -0
  48. package/build/docs/assets/js/7666.80af37b5.js +2 -0
  49. package/build/docs/assets/js/{7876.b574bc98.js → 7876.e77e9cd0.js} +1 -1
  50. package/build/docs/assets/js/{80e87108.d2e5fc24.js → 80e87108.b7ca69f5.js} +1 -1
  51. package/build/docs/assets/js/a7bd4aaa.fcc42a34.js +1 -0
  52. package/build/docs/assets/js/a94703ab.312d58d2.js +1 -0
  53. package/build/docs/assets/js/{b8ac1d98.aa997438.js → b8ac1d98.001652f2.js} +1 -1
  54. package/build/docs/assets/js/{bde5209a.5bb68010.js → bde5209a.4e819ba3.js} +1 -1
  55. package/build/docs/assets/js/{c377a04b.68d78283.js → c377a04b.c20e4cd5.js} +1 -1
  56. package/build/docs/assets/js/common.122a95b4.js +1 -0
  57. package/build/docs/assets/js/{e5f79924.74ffd5d9.js → e5f79924.00c23a43.js} +1 -1
  58. package/build/docs/assets/js/{f736c962.4dd0c940.js → f736c962.884ce2f6.js} +1 -1
  59. package/build/docs/assets/js/main.a16443ad.js +2 -0
  60. package/build/docs/assets/js/runtime~main.e79c13fc.js +1 -0
  61. package/build/docs/index.html +65 -65
  62. package/build/docs/ssl-certificate-setup/index.html +23 -23
  63. package/build/docs/usage-guide/index.html +78 -78
  64. package/dist/cjs/testing/jest.config.cjs +2 -0
  65. package/dist/cjs/webpack/interceptor-middleware.js +0 -2
  66. package/dist/cjs/webpack/webpack.lib.base.babel.js +22 -10
  67. package/dist/esm/testing/jest.config.cjs +2 -0
  68. package/dist/esm/webpack/interceptor-middleware.js +0 -2
  69. package/dist/esm/webpack/webpack.lib.base.babel.js +22 -10
  70. package/dist/types/tsconfig.tsbuildinfo +1 -1
  71. package/package.json +14 -14
  72. package/build/docs/assets/js/1370.def85668.js +0 -1
  73. package/build/docs/assets/js/17896441.52091be3.js +0 -1
  74. package/build/docs/assets/js/3725.a87ad1f7.js +0 -1
  75. package/build/docs/assets/js/4632.fd41519a.js +0 -1
  76. package/build/docs/assets/js/483.97fe3ac5.js +0 -1
  77. package/build/docs/assets/js/5168.fafb603f.js +0 -1
  78. package/build/docs/assets/js/5179.997edeac.js +0 -1
  79. package/build/docs/assets/js/5182.9aebe5d9.js +0 -1
  80. package/build/docs/assets/js/5e95c892.6f027eb6.js +0 -1
  81. package/build/docs/assets/js/6761.705da9bc.js +0 -1
  82. package/build/docs/assets/js/6961.8c97fc24.js +0 -1
  83. package/build/docs/assets/js/7204.c50cdf5c.js +0 -1
  84. package/build/docs/assets/js/7616.5aa824f0.js +0 -1
  85. package/build/docs/assets/js/7666.8be5d1f3.js +0 -2
  86. package/build/docs/assets/js/a7bd4aaa.addd5576.js +0 -1
  87. package/build/docs/assets/js/a94703ab.5d77bf85.js +0 -1
  88. package/build/docs/assets/js/common.a6d6d5e9.js +0 -1
  89. package/build/docs/assets/js/main.bc424106.js +0 -2
  90. package/build/docs/assets/js/runtime~main.c1030a7c.js +0 -1
  91. /package/build/docs/assets/js/{7666.8be5d1f3.js.LICENSE.txt → 7666.80af37b5.js.LICENSE.txt} +0 -0
  92. /package/build/docs/assets/js/{main.bc424106.js.LICENSE.txt → main.a16443ad.js.LICENSE.txt} +0 -0
@@ -1 +1 @@
1
- "use strict";(globalThis.webpackChunk_elliemae_pui_cli=globalThis.webpackChunk_elliemae_pui_cli||[]).push([[7613],{1893(e,n,s){s.r(n),s.d(n,{assets:()=>o,contentTitle:()=>t,default:()=>d,frontMatter:()=>i,metadata:()=>r,toc:()=>c});const r=JSON.parse('{"id":"api/variables/eslintConfig","title":"eslintConfig","description":"Type Declaration","source":"@site/docs/api/variables/eslintConfig.md","sourceDirName":"api/variables","slug":"/api/variables/eslintConfig","permalink":"/cli/api/variables/eslintConfig","draft":false,"unlisted":false,"editUrl":"https://git.elliemae.io/platform-ui/pui-cli.git/docs/api/variables/eslintConfig.md","tags":[],"version":"current","frontMatter":{},"sidebar":"docsSidebar","previous":{"title":"eslintBaseConfig","permalink":"/cli/api/variables/eslintBaseConfig"},"next":{"title":"jestConfig","permalink":"/cli/api/variables/jestConfig"}}');var l=s(6070),a=s(116);const i={},t="eslintConfig",o={},c=[{value:"Type Declaration",id:"type-declaration",level:2},{value:"env",id:"env",level:3},{value:"env.browser",id:"envbrowser",level:4},{value:"env.es2021",id:"enves2021",level:4},{value:"env.jest",id:"envjest",level:4},{value:"env.node",id:"envnode",level:4},{value:"extends",id:"extends",level:3},{value:"ignorePatterns",id:"ignorepatterns",level:3},{value:"overrides",id:"overrides",level:3},{value:"parser",id:"parser",level:3},{value:"parserOptions",id:"parseroptions",level:3},{value:"parserOptions.babelOptions",id:"parseroptionsbabeloptions",level:4},{value:"parserOptions.babelOptions.plugins",id:"parseroptionsbabeloptionsplugins",level:4},{value:"parserOptions.ecmaFeatures",id:"parseroptionsecmafeatures",level:4},{value:"parserOptions.ecmaFeatures.jsx",id:"parseroptionsecmafeaturesjsx",level:4},{value:"parserOptions.sourceType",id:"parseroptionssourcetype",level:4},{value:"plugins",id:"plugins",level:3},{value:"rules",id:"rules",level:3},{value:"rules.arrow-body-style",id:"rulesarrow-body-style",level:4},{value:"rules.class-methods-use-this",id:"rulesclass-methods-use-this",level:4},{value:"rules.complexity",id:"rulescomplexity",level:4},{value:"rules.eslint-comments/disable-enable-pair",id:"ruleseslint-commentsdisable-enable-pair",level:4},{value:"rules.import/extensions",id:"rulesimportextensions",level:4},{value:"rules.import/imports-first",id:"rulesimportimports-first",level:4},{value:"rules.import/newline-after-import",id:"rulesimportnewline-after-import",level:4},{value:"rules.import/no-dynamic-require",id:"rulesimportno-dynamic-require",level:4},{value:"rules.import/no-extraneous-dependencies",id:"rulesimportno-extraneous-dependencies",level:4},{value:"rules.import/no-named-as-default",id:"rulesimportno-named-as-default",level:4},{value:"rules.import/no-unresolved",id:"rulesimportno-unresolved",level:4},{value:"rules.import/no-webpack-loader-syntax",id:"rulesimportno-webpack-loader-syntax",level:4},{value:"rules.import/prefer-default-export",id:"rulesimportprefer-default-export",level:4},{value:"rules.indent",id:"rulesindent",level:4},{value:"rules.jsdoc/require-jsdoc",id:"rulesjsdocrequire-jsdoc",level:4},{value:"rules.jsx-a11y/aria-props",id:"rulesjsx-a11yaria-props",level:4},{value:"rules.jsx-a11y/heading-has-content",id:"rulesjsx-a11yheading-has-content",level:4},{value:"rules.jsx-a11y/label-has-associated-control",id:"rulesjsx-a11ylabel-has-associated-control",level:4},{value:"rules.jsx-a11y/label-has-for",id:"rulesjsx-a11ylabel-has-for",level:4},{value:"rules.jsx-a11y/mouse-events-have-key-events",id:"rulesjsx-a11ymouse-events-have-key-events",level:4},{value:"rules.jsx-a11y/role-has-required-aria-props",id:"rulesjsx-a11yrole-has-required-aria-props",level:4},{value:"rules.jsx-a11y/role-supports-aria-props",id:"rulesjsx-a11yrole-supports-aria-props",level:4},{value:"rules.max-depth",id:"rulesmax-depth",level:4},{value:"rules.max-len",id:"rulesmax-len",level:4},{value:"rules.max-lines",id:"rulesmax-lines",level:4},{value:"rules.max-lines-per-function",id:"rulesmax-lines-per-function",level:4},{value:"rules.max-nested-callbacks",id:"rulesmax-nested-callbacks",level:4},{value:"rules.max-params",id:"rulesmax-params",level:4},{value:"rules.max-statements",id:"rulesmax-statements",level:4},{value:"rules.newline-per-chained-call",id:"rulesnewline-per-chained-call",level:4},{value:"rules.no-confusing-arrow",id:"rulesno-confusing-arrow",level:4},{value:"rules.no-console",id:"rulesno-console",level:4},{value:"rules.no-param-reassign",id:"rulesno-param-reassign",level:4},{value:"rules.no-unused-vars",id:"rulesno-unused-vars",level:4},{value:"rules.no-use-before-define",id:"rulesno-use-before-define",level:4},{value:"rules.prefer-template",id:"rulesprefer-template",level:4},{value:"rules.prettier/prettier",id:"rulesprettierprettier",level:4},{value:"rules.react-hooks/rules-of-hooks",id:"rulesreact-hooksrules-of-hooks",level:4},{value:"rules.react/destructuring-assignment",id:"rulesreactdestructuring-assignment",level:4},{value:"rules.react/forbid-prop-types",id:"rulesreactforbid-prop-types",level:4},{value:"rules.react/function-component-definition",id:"rulesreactfunction-component-definition",level:4},{value:"rules.react/jsx-closing-tag-location",id:"rulesreactjsx-closing-tag-location",level:4},{value:"rules.react/jsx-filename-extension",id:"rulesreactjsx-filename-extension",level:4},{value:"rules.react/jsx-first-prop-new-line",id:"rulesreactjsx-first-prop-new-line",level:4},{value:"rules.react/jsx-no-target-blank",id:"rulesreactjsx-no-target-blank",level:4},{value:"rules.react/jsx-props-no-spreading",id:"rulesreactjsx-props-no-spreading",level:4},{value:"rules.react/jsx-uses-vars",id:"rulesreactjsx-uses-vars",level:4},{value:"rules.react/react-in-jsx-scope",id:"rulesreactreact-in-jsx-scope",level:4},{value:"rules.react/require-default-props",id:"rulesreactrequire-default-props",level:4},{value:"rules.react/require-extension",id:"rulesreactrequire-extension",level:4},{value:"rules.react/self-closing-comp",id:"rulesreactself-closing-comp",level:4},{value:"rules.react/sort-comp",id:"rulesreactsort-comp",level:4},{value:"rules.redux-saga/no-yield-in-race",id:"rulesredux-sagano-yield-in-race",level:4},{value:"rules.redux-saga/yield-effects",id:"rulesredux-sagayield-effects",level:4},{value:"rules.require-yield",id:"rulesrequire-yield",level:4},{value:"settings",id:"settings",level:3},{value:"settings.import/resolver",id:"settingsimportresolver",level:4},{value:"settings.import/resolver.node",id:"settingsimportresolvernode",level:4},{value:"settings.import/resolver.node.extensions",id:"settingsimportresolvernodeextensions",level:4},{value:"settings.jest",id:"settingsjest",level:4},{value:"settings.jest.version",id:"settingsjestversion",level:4},{value:"settings.react",id:"settingsreact",level:4},{value:"settings.react.version",id:"settingsreactversion",level:4}];function u(e){const n={code:"code",h1:"h1",h2:"h2",h3:"h3",h4:"h4",header:"header",pre:"pre",...(0,a.R)(),...e.components};return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(n.header,{children:(0,l.jsx)(n.h1,{id:"eslintconfig",children:"eslintConfig"})}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"eslintConfig: {\n env: {\n browser: boolean;\n es2021: boolean;\n jest: boolean;\n node: boolean;\n };\n extends: string[];\n ignorePatterns: string[];\n overrides: {\n files: string[];\n rules: {\n jest/valid-expect: string;\n };\n }[];\n parser: string;\n parserOptions: {\n babelOptions: {\n plugins: string[];\n };\n ecmaFeatures: {\n jsx: boolean;\n };\n sourceType: string;\n };\n plugins: string[];\n rules: {\n arrow-body-style: (string | number)[];\n class-methods-use-this: number;\n complexity: (\n | string\n | {\n max: number;\n })[];\n eslint-comments/disable-enable-pair: number;\n import/extensions: (\n | string\n | number\n | {\n js: string;\n json: string;\n })[];\n import/imports-first: number;\n import/newline-after-import: number;\n import/no-dynamic-require: number;\n import/no-extraneous-dependencies: number;\n import/no-named-as-default: number;\n import/no-unresolved: (\n | number\n | {\n caseSensitive: boolean;\n caseSensitiveStrict: boolean;\n })[];\n import/no-webpack-loader-syntax: number;\n import/prefer-default-export: number;\n indent: (\n | number\n | {\n SwitchCase: number;\n })[];\n jsdoc/require-jsdoc: number;\n jsx-a11y/aria-props: number;\n jsx-a11y/heading-has-content: number;\n jsx-a11y/label-has-associated-control: (\n | number\n | {\n controlComponents: string[];\n })[];\n jsx-a11y/label-has-for: number;\n jsx-a11y/mouse-events-have-key-events: number;\n jsx-a11y/role-has-required-aria-props: number;\n jsx-a11y/role-supports-aria-props: number;\n max-depth: (\n | string\n | {\n max: number;\n })[];\n max-len: number;\n max-lines: (\n | string\n | {\n max: number;\n skipComments: boolean;\n })[];\n max-lines-per-function: number;\n max-nested-callbacks: (\n | string\n | {\n max: number;\n })[];\n max-params: (\n | string\n | {\n max: number;\n })[];\n max-statements: (\n | string\n | {\n max: number;\n })[];\n newline-per-chained-call: number;\n no-confusing-arrow: number;\n no-console: number;\n no-param-reassign: (\n | string\n | {\n props: boolean;\n })[];\n no-unused-vars: number;\n no-use-before-define: number;\n prefer-template: number;\n prettier/prettier: (string | __module)[];\n react-hooks/rules-of-hooks: string;\n react/destructuring-assignment: number;\n react/forbid-prop-types: number;\n react/function-component-definition: (\n | number\n | {\n namedComponents: string;\n })[];\n react/jsx-closing-tag-location: number;\n react/jsx-filename-extension: (\n | number\n | {\n extensions: string[];\n })[];\n react/jsx-first-prop-new-line: (string | number)[];\n react/jsx-no-target-blank: number;\n react/jsx-props-no-spreading: number;\n react/jsx-uses-vars: number;\n react/react-in-jsx-scope: number;\n react/require-default-props: number;\n react/require-extension: number;\n react/self-closing-comp: number;\n react/sort-comp: number;\n redux-saga/no-yield-in-race: number;\n redux-saga/yield-effects: number;\n require-yield: number;\n };\n settings: {\n import/resolver: {\n node: {\n extensions: string[];\n };\n };\n jest: {\n version: number;\n };\n react: {\n version: string;\n };\n };\n};\n"})}),"\n",(0,l.jsx)(n.h2,{id:"type-declaration",children:"Type Declaration"}),"\n",(0,l.jsx)(n.h3,{id:"env",children:"env"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"env: {\n browser: boolean;\n es2021: boolean;\n jest: boolean;\n node: boolean;\n};\n"})}),"\n",(0,l.jsx)(n.h4,{id:"envbrowser",children:"env.browser"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"browser: boolean = true;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"enves2021",children:"env.es2021"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"es2021: boolean = true;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"envjest",children:"env.jest"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"jest: boolean = true;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"envnode",children:"env.node"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"node: boolean = true;\n"})}),"\n",(0,l.jsx)(n.h3,{id:"extends",children:"extends"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"extends: string[];\n"})}),"\n",(0,l.jsx)(n.h3,{id:"ignorepatterns",children:"ignorePatterns"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"ignorePatterns: string[];\n"})}),"\n",(0,l.jsx)(n.h3,{id:"overrides",children:"overrides"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"overrides: {\n files: string[];\n rules: {\n jest/valid-expect: string;\n };\n}[];\n"})}),"\n",(0,l.jsx)(n.h3,{id:"parser",children:"parser"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:'parser: string = "@babel/eslint-parser";\n'})}),"\n",(0,l.jsx)(n.h3,{id:"parseroptions",children:"parserOptions"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"parserOptions: {\n babelOptions: {\n plugins: string[];\n };\n ecmaFeatures: {\n jsx: boolean;\n };\n sourceType: string;\n};\n"})}),"\n",(0,l.jsx)(n.h4,{id:"parseroptionsbabeloptions",children:"parserOptions.babelOptions"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"babelOptions: {\n plugins: string[];\n};\n"})}),"\n",(0,l.jsx)(n.h4,{id:"parseroptionsbabeloptionsplugins",children:"parserOptions.babelOptions.plugins"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"plugins: string[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"parseroptionsecmafeatures",children:"parserOptions.ecmaFeatures"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"ecmaFeatures: {\n jsx: boolean;\n};\n"})}),"\n",(0,l.jsx)(n.h4,{id:"parseroptionsecmafeaturesjsx",children:"parserOptions.ecmaFeatures.jsx"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"jsx: boolean = true;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"parseroptionssourcetype",children:"parserOptions.sourceType"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:'sourceType: string = "module";\n'})}),"\n",(0,l.jsx)(n.h3,{id:"plugins",children:"plugins"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"plugins: string[] = basePlugins;\n"})}),"\n",(0,l.jsx)(n.h3,{id:"rules",children:"rules"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"rules: {\n arrow-body-style: (string | number)[];\n class-methods-use-this: number;\n complexity: (\n | string\n | {\n max: number;\n })[];\n eslint-comments/disable-enable-pair: number;\n import/extensions: (\n | string\n | number\n | {\n js: string;\n json: string;\n })[];\n import/imports-first: number;\n import/newline-after-import: number;\n import/no-dynamic-require: number;\n import/no-extraneous-dependencies: number;\n import/no-named-as-default: number;\n import/no-unresolved: (\n | number\n | {\n caseSensitive: boolean;\n caseSensitiveStrict: boolean;\n })[];\n import/no-webpack-loader-syntax: number;\n import/prefer-default-export: number;\n indent: (\n | number\n | {\n SwitchCase: number;\n })[];\n jsdoc/require-jsdoc: number;\n jsx-a11y/aria-props: number;\n jsx-a11y/heading-has-content: number;\n jsx-a11y/label-has-associated-control: (\n | number\n | {\n controlComponents: string[];\n })[];\n jsx-a11y/label-has-for: number;\n jsx-a11y/mouse-events-have-key-events: number;\n jsx-a11y/role-has-required-aria-props: number;\n jsx-a11y/role-supports-aria-props: number;\n max-depth: (\n | string\n | {\n max: number;\n })[];\n max-len: number;\n max-lines: (\n | string\n | {\n max: number;\n skipComments: boolean;\n })[];\n max-lines-per-function: number;\n max-nested-callbacks: (\n | string\n | {\n max: number;\n })[];\n max-params: (\n | string\n | {\n max: number;\n })[];\n max-statements: (\n | string\n | {\n max: number;\n })[];\n newline-per-chained-call: number;\n no-confusing-arrow: number;\n no-console: number;\n no-param-reassign: (\n | string\n | {\n props: boolean;\n })[];\n no-unused-vars: number;\n no-use-before-define: number;\n prefer-template: number;\n prettier/prettier: (string | __module)[];\n react-hooks/rules-of-hooks: string;\n react/destructuring-assignment: number;\n react/forbid-prop-types: number;\n react/function-component-definition: (\n | number\n | {\n namedComponents: string;\n })[];\n react/jsx-closing-tag-location: number;\n react/jsx-filename-extension: (\n | number\n | {\n extensions: string[];\n })[];\n react/jsx-first-prop-new-line: (string | number)[];\n react/jsx-no-target-blank: number;\n react/jsx-props-no-spreading: number;\n react/jsx-uses-vars: number;\n react/react-in-jsx-scope: number;\n react/require-default-props: number;\n react/require-extension: number;\n react/self-closing-comp: number;\n react/sort-comp: number;\n redux-saga/no-yield-in-race: number;\n redux-saga/yield-effects: number;\n require-yield: number;\n};\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesarrow-body-style",children:"rules.arrow-body-style"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"arrow-body-style: (string | number)[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesclass-methods-use-this",children:"rules.class-methods-use-this"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"class-methods-use-this: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulescomplexity",children:"rules.complexity"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"complexity: (\n | string\n | {\n max: number;\n})[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"ruleseslint-commentsdisable-enable-pair",children:"rules.eslint-comments/disable-enable-pair"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"eslint-comments/disable-enable-pair: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesimportextensions",children:"rules.import/extensions"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"import/extensions: (\n | string\n | number\n | {\n js: string;\n json: string;\n})[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesimportimports-first",children:"rules.import/imports-first"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"import/imports-first: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesimportnewline-after-import",children:"rules.import/newline-after-import"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"import/newline-after-import: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesimportno-dynamic-require",children:"rules.import/no-dynamic-require"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"import/no-dynamic-require: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesimportno-extraneous-dependencies",children:"rules.import/no-extraneous-dependencies"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"import/no-extraneous-dependencies: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesimportno-named-as-default",children:"rules.import/no-named-as-default"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"import/no-named-as-default: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesimportno-unresolved",children:"rules.import/no-unresolved"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"import/no-unresolved: (\n | number\n | {\n caseSensitive: boolean;\n caseSensitiveStrict: boolean;\n})[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesimportno-webpack-loader-syntax",children:"rules.import/no-webpack-loader-syntax"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"import/no-webpack-loader-syntax: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesimportprefer-default-export",children:"rules.import/prefer-default-export"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"import/prefer-default-export: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesindent",children:"rules.indent"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"indent: (\n | number\n | {\n SwitchCase: number;\n})[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesjsdocrequire-jsdoc",children:"rules.jsdoc/require-jsdoc"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"jsdoc/require-jsdoc: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesjsx-a11yaria-props",children:"rules.jsx-a11y/aria-props"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"jsx-a11y/aria-props: number = 2;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesjsx-a11yheading-has-content",children:"rules.jsx-a11y/heading-has-content"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"jsx-a11y/heading-has-content: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesjsx-a11ylabel-has-associated-control",children:"rules.jsx-a11y/label-has-associated-control"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"jsx-a11y/label-has-associated-control: (\n | number\n | {\n controlComponents: string[];\n})[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesjsx-a11ylabel-has-for",children:"rules.jsx-a11y/label-has-for"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"jsx-a11y/label-has-for: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesjsx-a11ymouse-events-have-key-events",children:"rules.jsx-a11y/mouse-events-have-key-events"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"jsx-a11y/mouse-events-have-key-events: number = 2;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesjsx-a11yrole-has-required-aria-props",children:"rules.jsx-a11y/role-has-required-aria-props"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"jsx-a11y/role-has-required-aria-props: number = 2;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesjsx-a11yrole-supports-aria-props",children:"rules.jsx-a11y/role-supports-aria-props"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"jsx-a11y/role-supports-aria-props: number = 2;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesmax-depth",children:"rules.max-depth"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"max-depth: (\n | string\n | {\n max: number;\n})[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesmax-len",children:"rules.max-len"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"max-len: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesmax-lines",children:"rules.max-lines"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"max-lines: (\n | string\n | {\n max: number;\n skipComments: boolean;\n})[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesmax-lines-per-function",children:"rules.max-lines-per-function"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"max-lines-per-function: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesmax-nested-callbacks",children:"rules.max-nested-callbacks"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"max-nested-callbacks: (\n | string\n | {\n max: number;\n})[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesmax-params",children:"rules.max-params"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"max-params: (\n | string\n | {\n max: number;\n})[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesmax-statements",children:"rules.max-statements"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"max-statements: (\n | string\n | {\n max: number;\n})[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesnewline-per-chained-call",children:"rules.newline-per-chained-call"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"newline-per-chained-call: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesno-confusing-arrow",children:"rules.no-confusing-arrow"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"no-confusing-arrow: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesno-console",children:"rules.no-console"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"no-console: number = 1;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesno-param-reassign",children:"rules.no-param-reassign"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"no-param-reassign: (\n | string\n | {\n props: boolean;\n})[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesno-unused-vars",children:"rules.no-unused-vars"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"no-unused-vars: number = 2;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesno-use-before-define",children:"rules.no-use-before-define"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"no-use-before-define: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesprefer-template",children:"rules.prefer-template"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"prefer-template: number = 2;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesprettierprettier",children:"rules.prettier/prettier"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"prettier/prettier: (string | __module)[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesreact-hooksrules-of-hooks",children:"rules.react-hooks/rules-of-hooks"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:'react-hooks/rules-of-hooks: string = "error";\n'})}),"\n",(0,l.jsx)(n.h4,{id:"rulesreactdestructuring-assignment",children:"rules.react/destructuring-assignment"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"react/destructuring-assignment: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesreactforbid-prop-types",children:"rules.react/forbid-prop-types"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"react/forbid-prop-types: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesreactfunction-component-definition",children:"rules.react/function-component-definition"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"react/function-component-definition: (\n | number\n | {\n namedComponents: string;\n})[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesreactjsx-closing-tag-location",children:"rules.react/jsx-closing-tag-location"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"react/jsx-closing-tag-location: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesreactjsx-filename-extension",children:"rules.react/jsx-filename-extension"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"react/jsx-filename-extension: (\n | number\n | {\n extensions: string[];\n})[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesreactjsx-first-prop-new-line",children:"rules.react/jsx-first-prop-new-line"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"react/jsx-first-prop-new-line: (string | number)[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesreactjsx-no-target-blank",children:"rules.react/jsx-no-target-blank"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"react/jsx-no-target-blank: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesreactjsx-props-no-spreading",children:"rules.react/jsx-props-no-spreading"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"react/jsx-props-no-spreading: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesreactjsx-uses-vars",children:"rules.react/jsx-uses-vars"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"react/jsx-uses-vars: number = 2;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesreactreact-in-jsx-scope",children:"rules.react/react-in-jsx-scope"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"react/react-in-jsx-scope: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesreactrequire-default-props",children:"rules.react/require-default-props"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"react/require-default-props: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesreactrequire-extension",children:"rules.react/require-extension"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"react/require-extension: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesreactself-closing-comp",children:"rules.react/self-closing-comp"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"react/self-closing-comp: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesreactsort-comp",children:"rules.react/sort-comp"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"react/sort-comp: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesredux-sagano-yield-in-race",children:"rules.redux-saga/no-yield-in-race"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"redux-saga/no-yield-in-race: number = 2;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesredux-sagayield-effects",children:"rules.redux-saga/yield-effects"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"redux-saga/yield-effects: number = 2;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesrequire-yield",children:"rules.require-yield"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"require-yield: number = 0;\n"})}),"\n",(0,l.jsx)(n.h3,{id:"settings",children:"settings"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"settings: {\n import/resolver: {\n node: {\n extensions: string[];\n };\n };\n jest: {\n version: number;\n };\n react: {\n version: string;\n };\n};\n"})}),"\n",(0,l.jsx)(n.h4,{id:"settingsimportresolver",children:"settings.import/resolver"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"import/resolver: {\n node: {\n extensions: string[];\n };\n};\n"})}),"\n",(0,l.jsx)(n.h4,{id:"settingsimportresolvernode",children:"settings.import/resolver.node"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"node: {\n extensions: string[];\n};\n"})}),"\n",(0,l.jsx)(n.h4,{id:"settingsimportresolvernodeextensions",children:"settings.import/resolver.node.extensions"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"extensions: string[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"settingsjest",children:"settings.jest"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"jest: {\n version: number;\n};\n"})}),"\n",(0,l.jsx)(n.h4,{id:"settingsjestversion",children:"settings.jest.version"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"version: number = 28;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"settingsreact",children:"settings.react"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"react: {\n version: string;\n};\n"})}),"\n",(0,l.jsx)(n.h4,{id:"settingsreactversion",children:"settings.react.version"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:'version: string = "detect";\n'})})]})}function d(e={}){const{wrapper:n}={...(0,a.R)(),...e.components};return n?(0,l.jsx)(n,{...e,children:(0,l.jsx)(u,{...e})}):u(e)}}}]);
1
+ "use strict";(globalThis.webpackChunk_elliemae_pui_cli=globalThis.webpackChunk_elliemae_pui_cli||[]).push([[7613],{4906(e,n,s){s.r(n),s.d(n,{assets:()=>o,contentTitle:()=>t,default:()=>d,frontMatter:()=>i,metadata:()=>r,toc:()=>c});const r=JSON.parse('{"id":"api/variables/eslintConfig","title":"eslintConfig","description":"Type Declaration","source":"@site/docs/api/variables/eslintConfig.md","sourceDirName":"api/variables","slug":"/api/variables/eslintConfig","permalink":"/cli/api/variables/eslintConfig","draft":false,"unlisted":false,"editUrl":"https://git.elliemae.io/platform-ui/pui-cli.git/docs/api/variables/eslintConfig.md","tags":[],"version":"current","frontMatter":{},"sidebar":"docsSidebar","previous":{"title":"eslintBaseConfig","permalink":"/cli/api/variables/eslintBaseConfig"},"next":{"title":"jestConfig","permalink":"/cli/api/variables/jestConfig"}}');var l=s(6070),a=s(116);const i={},t="eslintConfig",o={},c=[{value:"Type Declaration",id:"type-declaration",level:2},{value:"env",id:"env",level:3},{value:"env.browser",id:"envbrowser",level:4},{value:"env.es2021",id:"enves2021",level:4},{value:"env.jest",id:"envjest",level:4},{value:"env.node",id:"envnode",level:4},{value:"extends",id:"extends",level:3},{value:"ignorePatterns",id:"ignorepatterns",level:3},{value:"overrides",id:"overrides",level:3},{value:"parser",id:"parser",level:3},{value:"parserOptions",id:"parseroptions",level:3},{value:"parserOptions.babelOptions",id:"parseroptionsbabeloptions",level:4},{value:"parserOptions.babelOptions.plugins",id:"parseroptionsbabeloptionsplugins",level:4},{value:"parserOptions.ecmaFeatures",id:"parseroptionsecmafeatures",level:4},{value:"parserOptions.ecmaFeatures.jsx",id:"parseroptionsecmafeaturesjsx",level:4},{value:"parserOptions.sourceType",id:"parseroptionssourcetype",level:4},{value:"plugins",id:"plugins",level:3},{value:"rules",id:"rules",level:3},{value:"rules.arrow-body-style",id:"rulesarrow-body-style",level:4},{value:"rules.class-methods-use-this",id:"rulesclass-methods-use-this",level:4},{value:"rules.complexity",id:"rulescomplexity",level:4},{value:"rules.eslint-comments/disable-enable-pair",id:"ruleseslint-commentsdisable-enable-pair",level:4},{value:"rules.import/extensions",id:"rulesimportextensions",level:4},{value:"rules.import/imports-first",id:"rulesimportimports-first",level:4},{value:"rules.import/newline-after-import",id:"rulesimportnewline-after-import",level:4},{value:"rules.import/no-dynamic-require",id:"rulesimportno-dynamic-require",level:4},{value:"rules.import/no-extraneous-dependencies",id:"rulesimportno-extraneous-dependencies",level:4},{value:"rules.import/no-named-as-default",id:"rulesimportno-named-as-default",level:4},{value:"rules.import/no-unresolved",id:"rulesimportno-unresolved",level:4},{value:"rules.import/no-webpack-loader-syntax",id:"rulesimportno-webpack-loader-syntax",level:4},{value:"rules.import/prefer-default-export",id:"rulesimportprefer-default-export",level:4},{value:"rules.indent",id:"rulesindent",level:4},{value:"rules.jsdoc/require-jsdoc",id:"rulesjsdocrequire-jsdoc",level:4},{value:"rules.jsx-a11y/aria-props",id:"rulesjsx-a11yaria-props",level:4},{value:"rules.jsx-a11y/heading-has-content",id:"rulesjsx-a11yheading-has-content",level:4},{value:"rules.jsx-a11y/label-has-associated-control",id:"rulesjsx-a11ylabel-has-associated-control",level:4},{value:"rules.jsx-a11y/label-has-for",id:"rulesjsx-a11ylabel-has-for",level:4},{value:"rules.jsx-a11y/mouse-events-have-key-events",id:"rulesjsx-a11ymouse-events-have-key-events",level:4},{value:"rules.jsx-a11y/role-has-required-aria-props",id:"rulesjsx-a11yrole-has-required-aria-props",level:4},{value:"rules.jsx-a11y/role-supports-aria-props",id:"rulesjsx-a11yrole-supports-aria-props",level:4},{value:"rules.max-depth",id:"rulesmax-depth",level:4},{value:"rules.max-len",id:"rulesmax-len",level:4},{value:"rules.max-lines",id:"rulesmax-lines",level:4},{value:"rules.max-lines-per-function",id:"rulesmax-lines-per-function",level:4},{value:"rules.max-nested-callbacks",id:"rulesmax-nested-callbacks",level:4},{value:"rules.max-params",id:"rulesmax-params",level:4},{value:"rules.max-statements",id:"rulesmax-statements",level:4},{value:"rules.newline-per-chained-call",id:"rulesnewline-per-chained-call",level:4},{value:"rules.no-confusing-arrow",id:"rulesno-confusing-arrow",level:4},{value:"rules.no-console",id:"rulesno-console",level:4},{value:"rules.no-param-reassign",id:"rulesno-param-reassign",level:4},{value:"rules.no-unused-vars",id:"rulesno-unused-vars",level:4},{value:"rules.no-use-before-define",id:"rulesno-use-before-define",level:4},{value:"rules.prefer-template",id:"rulesprefer-template",level:4},{value:"rules.prettier/prettier",id:"rulesprettierprettier",level:4},{value:"rules.react-hooks/rules-of-hooks",id:"rulesreact-hooksrules-of-hooks",level:4},{value:"rules.react/destructuring-assignment",id:"rulesreactdestructuring-assignment",level:4},{value:"rules.react/forbid-prop-types",id:"rulesreactforbid-prop-types",level:4},{value:"rules.react/function-component-definition",id:"rulesreactfunction-component-definition",level:4},{value:"rules.react/jsx-closing-tag-location",id:"rulesreactjsx-closing-tag-location",level:4},{value:"rules.react/jsx-filename-extension",id:"rulesreactjsx-filename-extension",level:4},{value:"rules.react/jsx-first-prop-new-line",id:"rulesreactjsx-first-prop-new-line",level:4},{value:"rules.react/jsx-no-target-blank",id:"rulesreactjsx-no-target-blank",level:4},{value:"rules.react/jsx-props-no-spreading",id:"rulesreactjsx-props-no-spreading",level:4},{value:"rules.react/jsx-uses-vars",id:"rulesreactjsx-uses-vars",level:4},{value:"rules.react/react-in-jsx-scope",id:"rulesreactreact-in-jsx-scope",level:4},{value:"rules.react/require-default-props",id:"rulesreactrequire-default-props",level:4},{value:"rules.react/require-extension",id:"rulesreactrequire-extension",level:4},{value:"rules.react/self-closing-comp",id:"rulesreactself-closing-comp",level:4},{value:"rules.react/sort-comp",id:"rulesreactsort-comp",level:4},{value:"rules.redux-saga/no-yield-in-race",id:"rulesredux-sagano-yield-in-race",level:4},{value:"rules.redux-saga/yield-effects",id:"rulesredux-sagayield-effects",level:4},{value:"rules.require-yield",id:"rulesrequire-yield",level:4},{value:"settings",id:"settings",level:3},{value:"settings.import/resolver",id:"settingsimportresolver",level:4},{value:"settings.import/resolver.node",id:"settingsimportresolvernode",level:4},{value:"settings.import/resolver.node.extensions",id:"settingsimportresolvernodeextensions",level:4},{value:"settings.jest",id:"settingsjest",level:4},{value:"settings.jest.version",id:"settingsjestversion",level:4},{value:"settings.react",id:"settingsreact",level:4},{value:"settings.react.version",id:"settingsreactversion",level:4}];function u(e){const n={code:"code",h1:"h1",h2:"h2",h3:"h3",h4:"h4",header:"header",pre:"pre",...(0,a.R)(),...e.components};return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(n.header,{children:(0,l.jsx)(n.h1,{id:"eslintconfig",children:"eslintConfig"})}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"eslintConfig: {\n env: {\n browser: boolean;\n es2021: boolean;\n jest: boolean;\n node: boolean;\n };\n extends: string[];\n ignorePatterns: string[];\n overrides: {\n files: string[];\n rules: {\n jest/valid-expect: string;\n };\n }[];\n parser: string;\n parserOptions: {\n babelOptions: {\n plugins: string[];\n };\n ecmaFeatures: {\n jsx: boolean;\n };\n sourceType: string;\n };\n plugins: string[];\n rules: {\n arrow-body-style: (string | number)[];\n class-methods-use-this: number;\n complexity: (\n | string\n | {\n max: number;\n })[];\n eslint-comments/disable-enable-pair: number;\n import/extensions: (\n | string\n | number\n | {\n js: string;\n json: string;\n })[];\n import/imports-first: number;\n import/newline-after-import: number;\n import/no-dynamic-require: number;\n import/no-extraneous-dependencies: number;\n import/no-named-as-default: number;\n import/no-unresolved: (\n | number\n | {\n caseSensitive: boolean;\n caseSensitiveStrict: boolean;\n })[];\n import/no-webpack-loader-syntax: number;\n import/prefer-default-export: number;\n indent: (\n | number\n | {\n SwitchCase: number;\n })[];\n jsdoc/require-jsdoc: number;\n jsx-a11y/aria-props: number;\n jsx-a11y/heading-has-content: number;\n jsx-a11y/label-has-associated-control: (\n | number\n | {\n controlComponents: string[];\n })[];\n jsx-a11y/label-has-for: number;\n jsx-a11y/mouse-events-have-key-events: number;\n jsx-a11y/role-has-required-aria-props: number;\n jsx-a11y/role-supports-aria-props: number;\n max-depth: (\n | string\n | {\n max: number;\n })[];\n max-len: number;\n max-lines: (\n | string\n | {\n max: number;\n skipComments: boolean;\n })[];\n max-lines-per-function: number;\n max-nested-callbacks: (\n | string\n | {\n max: number;\n })[];\n max-params: (\n | string\n | {\n max: number;\n })[];\n max-statements: (\n | string\n | {\n max: number;\n })[];\n newline-per-chained-call: number;\n no-confusing-arrow: number;\n no-console: number;\n no-param-reassign: (\n | string\n | {\n props: boolean;\n })[];\n no-unused-vars: number;\n no-use-before-define: number;\n prefer-template: number;\n prettier/prettier: (string | __module)[];\n react-hooks/rules-of-hooks: string;\n react/destructuring-assignment: number;\n react/forbid-prop-types: number;\n react/function-component-definition: (\n | number\n | {\n namedComponents: string;\n })[];\n react/jsx-closing-tag-location: number;\n react/jsx-filename-extension: (\n | number\n | {\n extensions: string[];\n })[];\n react/jsx-first-prop-new-line: (string | number)[];\n react/jsx-no-target-blank: number;\n react/jsx-props-no-spreading: number;\n react/jsx-uses-vars: number;\n react/react-in-jsx-scope: number;\n react/require-default-props: number;\n react/require-extension: number;\n react/self-closing-comp: number;\n react/sort-comp: number;\n redux-saga/no-yield-in-race: number;\n redux-saga/yield-effects: number;\n require-yield: number;\n };\n settings: {\n import/resolver: {\n node: {\n extensions: string[];\n };\n };\n jest: {\n version: number;\n };\n react: {\n version: string;\n };\n };\n};\n"})}),"\n",(0,l.jsx)(n.h2,{id:"type-declaration",children:"Type Declaration"}),"\n",(0,l.jsx)(n.h3,{id:"env",children:"env"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"env: {\n browser: boolean;\n es2021: boolean;\n jest: boolean;\n node: boolean;\n};\n"})}),"\n",(0,l.jsx)(n.h4,{id:"envbrowser",children:"env.browser"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"browser: boolean = true;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"enves2021",children:"env.es2021"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"es2021: boolean = true;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"envjest",children:"env.jest"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"jest: boolean = true;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"envnode",children:"env.node"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"node: boolean = true;\n"})}),"\n",(0,l.jsx)(n.h3,{id:"extends",children:"extends"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"extends: string[];\n"})}),"\n",(0,l.jsx)(n.h3,{id:"ignorepatterns",children:"ignorePatterns"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"ignorePatterns: string[];\n"})}),"\n",(0,l.jsx)(n.h3,{id:"overrides",children:"overrides"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"overrides: {\n files: string[];\n rules: {\n jest/valid-expect: string;\n };\n}[];\n"})}),"\n",(0,l.jsx)(n.h3,{id:"parser",children:"parser"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:'parser: string = "@babel/eslint-parser";\n'})}),"\n",(0,l.jsx)(n.h3,{id:"parseroptions",children:"parserOptions"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"parserOptions: {\n babelOptions: {\n plugins: string[];\n };\n ecmaFeatures: {\n jsx: boolean;\n };\n sourceType: string;\n};\n"})}),"\n",(0,l.jsx)(n.h4,{id:"parseroptionsbabeloptions",children:"parserOptions.babelOptions"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"babelOptions: {\n plugins: string[];\n};\n"})}),"\n",(0,l.jsx)(n.h4,{id:"parseroptionsbabeloptionsplugins",children:"parserOptions.babelOptions.plugins"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"plugins: string[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"parseroptionsecmafeatures",children:"parserOptions.ecmaFeatures"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"ecmaFeatures: {\n jsx: boolean;\n};\n"})}),"\n",(0,l.jsx)(n.h4,{id:"parseroptionsecmafeaturesjsx",children:"parserOptions.ecmaFeatures.jsx"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"jsx: boolean = true;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"parseroptionssourcetype",children:"parserOptions.sourceType"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:'sourceType: string = "module";\n'})}),"\n",(0,l.jsx)(n.h3,{id:"plugins",children:"plugins"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"plugins: string[] = basePlugins;\n"})}),"\n",(0,l.jsx)(n.h3,{id:"rules",children:"rules"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"rules: {\n arrow-body-style: (string | number)[];\n class-methods-use-this: number;\n complexity: (\n | string\n | {\n max: number;\n })[];\n eslint-comments/disable-enable-pair: number;\n import/extensions: (\n | string\n | number\n | {\n js: string;\n json: string;\n })[];\n import/imports-first: number;\n import/newline-after-import: number;\n import/no-dynamic-require: number;\n import/no-extraneous-dependencies: number;\n import/no-named-as-default: number;\n import/no-unresolved: (\n | number\n | {\n caseSensitive: boolean;\n caseSensitiveStrict: boolean;\n })[];\n import/no-webpack-loader-syntax: number;\n import/prefer-default-export: number;\n indent: (\n | number\n | {\n SwitchCase: number;\n })[];\n jsdoc/require-jsdoc: number;\n jsx-a11y/aria-props: number;\n jsx-a11y/heading-has-content: number;\n jsx-a11y/label-has-associated-control: (\n | number\n | {\n controlComponents: string[];\n })[];\n jsx-a11y/label-has-for: number;\n jsx-a11y/mouse-events-have-key-events: number;\n jsx-a11y/role-has-required-aria-props: number;\n jsx-a11y/role-supports-aria-props: number;\n max-depth: (\n | string\n | {\n max: number;\n })[];\n max-len: number;\n max-lines: (\n | string\n | {\n max: number;\n skipComments: boolean;\n })[];\n max-lines-per-function: number;\n max-nested-callbacks: (\n | string\n | {\n max: number;\n })[];\n max-params: (\n | string\n | {\n max: number;\n })[];\n max-statements: (\n | string\n | {\n max: number;\n })[];\n newline-per-chained-call: number;\n no-confusing-arrow: number;\n no-console: number;\n no-param-reassign: (\n | string\n | {\n props: boolean;\n })[];\n no-unused-vars: number;\n no-use-before-define: number;\n prefer-template: number;\n prettier/prettier: (string | __module)[];\n react-hooks/rules-of-hooks: string;\n react/destructuring-assignment: number;\n react/forbid-prop-types: number;\n react/function-component-definition: (\n | number\n | {\n namedComponents: string;\n })[];\n react/jsx-closing-tag-location: number;\n react/jsx-filename-extension: (\n | number\n | {\n extensions: string[];\n })[];\n react/jsx-first-prop-new-line: (string | number)[];\n react/jsx-no-target-blank: number;\n react/jsx-props-no-spreading: number;\n react/jsx-uses-vars: number;\n react/react-in-jsx-scope: number;\n react/require-default-props: number;\n react/require-extension: number;\n react/self-closing-comp: number;\n react/sort-comp: number;\n redux-saga/no-yield-in-race: number;\n redux-saga/yield-effects: number;\n require-yield: number;\n};\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesarrow-body-style",children:"rules.arrow-body-style"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"arrow-body-style: (string | number)[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesclass-methods-use-this",children:"rules.class-methods-use-this"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"class-methods-use-this: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulescomplexity",children:"rules.complexity"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"complexity: (\n | string\n | {\n max: number;\n})[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"ruleseslint-commentsdisable-enable-pair",children:"rules.eslint-comments/disable-enable-pair"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"eslint-comments/disable-enable-pair: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesimportextensions",children:"rules.import/extensions"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"import/extensions: (\n | string\n | number\n | {\n js: string;\n json: string;\n})[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesimportimports-first",children:"rules.import/imports-first"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"import/imports-first: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesimportnewline-after-import",children:"rules.import/newline-after-import"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"import/newline-after-import: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesimportno-dynamic-require",children:"rules.import/no-dynamic-require"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"import/no-dynamic-require: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesimportno-extraneous-dependencies",children:"rules.import/no-extraneous-dependencies"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"import/no-extraneous-dependencies: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesimportno-named-as-default",children:"rules.import/no-named-as-default"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"import/no-named-as-default: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesimportno-unresolved",children:"rules.import/no-unresolved"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"import/no-unresolved: (\n | number\n | {\n caseSensitive: boolean;\n caseSensitiveStrict: boolean;\n})[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesimportno-webpack-loader-syntax",children:"rules.import/no-webpack-loader-syntax"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"import/no-webpack-loader-syntax: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesimportprefer-default-export",children:"rules.import/prefer-default-export"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"import/prefer-default-export: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesindent",children:"rules.indent"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"indent: (\n | number\n | {\n SwitchCase: number;\n})[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesjsdocrequire-jsdoc",children:"rules.jsdoc/require-jsdoc"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"jsdoc/require-jsdoc: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesjsx-a11yaria-props",children:"rules.jsx-a11y/aria-props"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"jsx-a11y/aria-props: number = 2;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesjsx-a11yheading-has-content",children:"rules.jsx-a11y/heading-has-content"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"jsx-a11y/heading-has-content: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesjsx-a11ylabel-has-associated-control",children:"rules.jsx-a11y/label-has-associated-control"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"jsx-a11y/label-has-associated-control: (\n | number\n | {\n controlComponents: string[];\n})[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesjsx-a11ylabel-has-for",children:"rules.jsx-a11y/label-has-for"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"jsx-a11y/label-has-for: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesjsx-a11ymouse-events-have-key-events",children:"rules.jsx-a11y/mouse-events-have-key-events"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"jsx-a11y/mouse-events-have-key-events: number = 2;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesjsx-a11yrole-has-required-aria-props",children:"rules.jsx-a11y/role-has-required-aria-props"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"jsx-a11y/role-has-required-aria-props: number = 2;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesjsx-a11yrole-supports-aria-props",children:"rules.jsx-a11y/role-supports-aria-props"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"jsx-a11y/role-supports-aria-props: number = 2;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesmax-depth",children:"rules.max-depth"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"max-depth: (\n | string\n | {\n max: number;\n})[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesmax-len",children:"rules.max-len"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"max-len: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesmax-lines",children:"rules.max-lines"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"max-lines: (\n | string\n | {\n max: number;\n skipComments: boolean;\n})[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesmax-lines-per-function",children:"rules.max-lines-per-function"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"max-lines-per-function: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesmax-nested-callbacks",children:"rules.max-nested-callbacks"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"max-nested-callbacks: (\n | string\n | {\n max: number;\n})[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesmax-params",children:"rules.max-params"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"max-params: (\n | string\n | {\n max: number;\n})[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesmax-statements",children:"rules.max-statements"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"max-statements: (\n | string\n | {\n max: number;\n})[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesnewline-per-chained-call",children:"rules.newline-per-chained-call"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"newline-per-chained-call: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesno-confusing-arrow",children:"rules.no-confusing-arrow"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"no-confusing-arrow: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesno-console",children:"rules.no-console"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"no-console: number = 1;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesno-param-reassign",children:"rules.no-param-reassign"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"no-param-reassign: (\n | string\n | {\n props: boolean;\n})[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesno-unused-vars",children:"rules.no-unused-vars"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"no-unused-vars: number = 2;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesno-use-before-define",children:"rules.no-use-before-define"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"no-use-before-define: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesprefer-template",children:"rules.prefer-template"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"prefer-template: number = 2;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesprettierprettier",children:"rules.prettier/prettier"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"prettier/prettier: (string | __module)[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesreact-hooksrules-of-hooks",children:"rules.react-hooks/rules-of-hooks"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:'react-hooks/rules-of-hooks: string = "error";\n'})}),"\n",(0,l.jsx)(n.h4,{id:"rulesreactdestructuring-assignment",children:"rules.react/destructuring-assignment"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"react/destructuring-assignment: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesreactforbid-prop-types",children:"rules.react/forbid-prop-types"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"react/forbid-prop-types: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesreactfunction-component-definition",children:"rules.react/function-component-definition"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"react/function-component-definition: (\n | number\n | {\n namedComponents: string;\n})[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesreactjsx-closing-tag-location",children:"rules.react/jsx-closing-tag-location"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"react/jsx-closing-tag-location: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesreactjsx-filename-extension",children:"rules.react/jsx-filename-extension"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"react/jsx-filename-extension: (\n | number\n | {\n extensions: string[];\n})[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesreactjsx-first-prop-new-line",children:"rules.react/jsx-first-prop-new-line"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"react/jsx-first-prop-new-line: (string | number)[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesreactjsx-no-target-blank",children:"rules.react/jsx-no-target-blank"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"react/jsx-no-target-blank: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesreactjsx-props-no-spreading",children:"rules.react/jsx-props-no-spreading"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"react/jsx-props-no-spreading: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesreactjsx-uses-vars",children:"rules.react/jsx-uses-vars"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"react/jsx-uses-vars: number = 2;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesreactreact-in-jsx-scope",children:"rules.react/react-in-jsx-scope"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"react/react-in-jsx-scope: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesreactrequire-default-props",children:"rules.react/require-default-props"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"react/require-default-props: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesreactrequire-extension",children:"rules.react/require-extension"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"react/require-extension: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesreactself-closing-comp",children:"rules.react/self-closing-comp"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"react/self-closing-comp: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesreactsort-comp",children:"rules.react/sort-comp"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"react/sort-comp: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesredux-sagano-yield-in-race",children:"rules.redux-saga/no-yield-in-race"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"redux-saga/no-yield-in-race: number = 2;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesredux-sagayield-effects",children:"rules.redux-saga/yield-effects"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"redux-saga/yield-effects: number = 2;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesrequire-yield",children:"rules.require-yield"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"require-yield: number = 0;\n"})}),"\n",(0,l.jsx)(n.h3,{id:"settings",children:"settings"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"settings: {\n import/resolver: {\n node: {\n extensions: string[];\n };\n };\n jest: {\n version: number;\n };\n react: {\n version: string;\n };\n};\n"})}),"\n",(0,l.jsx)(n.h4,{id:"settingsimportresolver",children:"settings.import/resolver"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"import/resolver: {\n node: {\n extensions: string[];\n };\n};\n"})}),"\n",(0,l.jsx)(n.h4,{id:"settingsimportresolvernode",children:"settings.import/resolver.node"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"node: {\n extensions: string[];\n};\n"})}),"\n",(0,l.jsx)(n.h4,{id:"settingsimportresolvernodeextensions",children:"settings.import/resolver.node.extensions"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"extensions: string[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"settingsjest",children:"settings.jest"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"jest: {\n version: number;\n};\n"})}),"\n",(0,l.jsx)(n.h4,{id:"settingsjestversion",children:"settings.jest.version"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"version: number = 28;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"settingsreact",children:"settings.react"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"react: {\n version: string;\n};\n"})}),"\n",(0,l.jsx)(n.h4,{id:"settingsreactversion",children:"settings.react.version"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:'version: string = "detect";\n'})})]})}function d(e={}){const{wrapper:n}={...(0,a.R)(),...e.components};return n?(0,l.jsx)(n,{...e,children:(0,l.jsx)(u,{...e})}):u(e)}}}]);
@@ -1 +1 @@
1
- "use strict";(globalThis.webpackChunk_elliemae_pui_cli=globalThis.webpackChunk_elliemae_pui_cli||[]).push([[8155],{2403(e,i,t){t.r(i),t.d(i,{assets:()=>o,contentTitle:()=>l,default:()=>p,frontMatter:()=>r,metadata:()=>s,toc:()=>c});const s=JSON.parse('{"id":"api/variables/vitestConfig","title":"vitestConfig","description":"","source":"@site/docs/api/variables/vitestConfig.md","sourceDirName":"api/variables","slug":"/api/variables/vitestConfig","permalink":"/cli/api/variables/vitestConfig","draft":false,"unlisted":false,"editUrl":"https://git.elliemae.io/platform-ui/pui-cli.git/docs/api/variables/vitestConfig.md","tags":[],"version":"current","frontMatter":{},"sidebar":"docsSidebar","previous":{"title":"stylelintConfig","permalink":"/cli/api/variables/stylelintConfig"},"next":{"title":"PUI CLI Documentation","permalink":"/cli/"}}');var a=t(6070),n=t(116);const r={},l="vitestConfig",o={},c=[];function d(e){const i={code:"code",h1:"h1",header:"header",pre:"pre",...(0,n.R)(),...e.components};return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(i.header,{children:(0,a.jsx)(i.h1,{id:"vitestconfig",children:"vitestConfig"})}),"\n",(0,a.jsx)(i.pre,{children:(0,a.jsx)(i.code,{className:"language-ts",children:"const vitestConfig: UserConfig;\n"})})]})}function p(e={}){const{wrapper:i}={...(0,n.R)(),...e.components};return i?(0,a.jsx)(i,{...e,children:(0,a.jsx)(d,{...e})}):d(e)}}}]);
1
+ "use strict";(globalThis.webpackChunk_elliemae_pui_cli=globalThis.webpackChunk_elliemae_pui_cli||[]).push([[8155],{6671(e,i,t){t.r(i),t.d(i,{assets:()=>o,contentTitle:()=>l,default:()=>p,frontMatter:()=>r,metadata:()=>s,toc:()=>c});const s=JSON.parse('{"id":"api/variables/vitestConfig","title":"vitestConfig","description":"","source":"@site/docs/api/variables/vitestConfig.md","sourceDirName":"api/variables","slug":"/api/variables/vitestConfig","permalink":"/cli/api/variables/vitestConfig","draft":false,"unlisted":false,"editUrl":"https://git.elliemae.io/platform-ui/pui-cli.git/docs/api/variables/vitestConfig.md","tags":[],"version":"current","frontMatter":{},"sidebar":"docsSidebar","previous":{"title":"stylelintConfig","permalink":"/cli/api/variables/stylelintConfig"},"next":{"title":"PUI CLI Documentation","permalink":"/cli/"}}');var a=t(6070),n=t(116);const r={},l="vitestConfig",o={},c=[];function d(e){const i={code:"code",h1:"h1",header:"header",pre:"pre",...(0,n.R)(),...e.components};return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(i.header,{children:(0,a.jsx)(i.h1,{id:"vitestconfig",children:"vitestConfig"})}),"\n",(0,a.jsx)(i.pre,{children:(0,a.jsx)(i.code,{className:"language-ts",children:"const vitestConfig: UserConfig;\n"})})]})}function p(e={}){const{wrapper:i}={...(0,n.R)(),...e.components};return i?(0,a.jsx)(i,{...e,children:(0,a.jsx)(d,{...e})}):d(e)}}}]);
@@ -1 +1 @@
1
- "use strict";(globalThis.webpackChunk_elliemae_pui_cli=globalThis.webpackChunk_elliemae_pui_cli||[]).push([[3361],{5247(e,n,i){i.r(n),i.d(n,{assets:()=>c,contentTitle:()=>o,default:()=>u,frontMatter:()=>r,metadata:()=>s,toc:()=>a});const s=JSON.parse('{"id":"index","title":"PUI CLI Documentation","description":"Welcome to the ICE MT UI Platform CLI documentation. This CLI tool provides a comprehensive set of commands for building, testing, and maintaining UI applications and libraries.","source":"@site/docs/index.md","sourceDirName":".","slug":"/","permalink":"/cli/","draft":false,"unlisted":false,"editUrl":"https://git.elliemae.io/platform-ui/pui-cli.git/docs/index.md","tags":[],"version":"current","frontMatter":{},"sidebar":"docsSidebar","previous":{"title":"vitestConfig","permalink":"/cli/api/variables/vitestConfig"},"next":{"title":"Trust SSL Certificate Guide","permalink":"/cli/ssl-certificate-setup"}}');var l=i(6070),t=i(116);const r={},o="PUI CLI Documentation",c={},a=[{value:"Quick Links",id:"quick-links",level:2},{value:"Features",id:"features",level:2},{value:"Getting Started",id:"getting-started",level:2},{value:"Prerequisites",id:"prerequisites",level:3},{value:"Installation",id:"installation",level:3},{value:"For New Projects",id:"for-new-projects",level:4},{value:"Quick Start",id:"quick-start",level:3},{value:"Setting Up a New Application",id:"setting-up-a-new-application",level:4},{value:"Project Structure",id:"project-structure",level:2},{value:"Application Structure",id:"application-structure",level:3},{value:"Library Structure",id:"library-structure",level:3},{value:"Configuration Files",id:"configuration-files",level:2},{value:"Prettier Configuration",id:"prettier-configuration",level:3},{value:"Stylelint Configuration",id:"stylelint-configuration",level:3},{value:"Commitlint Configuration",id:"commitlint-configuration",level:3},{value:"Lint-staged Configuration",id:"lint-staged-configuration",level:3},{value:"Babel Configuration (Optional)",id:"babel-configuration-optional",level:3},{value:"Git Hooks Setup",id:"git-hooks-setup",level:2},{value:"Additional Configuration Files",id:"additional-configuration-files",level:2},{value:"Jest Configuration",id:"jest-configuration",level:3},{value:"Environment Variables",id:"environment-variables",level:2},{value:"Running Your First Build",id:"running-your-first-build",level:2},{value:"Start Development Server",id:"start-development-server",level:3},{value:"Build for Production",id:"build-for-production",level:3},{value:"Run Tests",id:"run-tests",level:3},{value:"Linting and Type Checking",id:"linting-and-type-checking",level:3},{value:"Storybook",id:"storybook",level:3},{value:"Next Steps",id:"next-steps",level:2},{value:"Troubleshooting",id:"troubleshooting",level:2},{value:"Common Issues",id:"common-issues",level:3},{value:"Getting Help",id:"getting-help",level:2}];function d(e){const n={a:"a",code:"code",h1:"h1",h2:"h2",h3:"h3",h4:"h4",header:"header",li:"li",ol:"ol",p:"p",pre:"pre",strong:"strong",ul:"ul",...(0,t.R)(),...e.components};return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(n.header,{children:(0,l.jsx)(n.h1,{id:"pui-cli-documentation",children:"PUI CLI Documentation"})}),"\n",(0,l.jsx)(n.p,{children:"Welcome to the ICE MT UI Platform CLI documentation. This CLI tool provides a comprehensive set of commands for building, testing, and maintaining UI applications and libraries."}),"\n",(0,l.jsx)(n.h2,{id:"quick-links",children:"Quick Links"}),"\n",(0,l.jsxs)(n.ul,{children:["\n",(0,l.jsx)(n.li,{children:(0,l.jsx)(n.a,{href:"https://git.elliemae.io/platform-ui/pui-cli",children:"GitHub Repository"})}),"\n",(0,l.jsx)(n.li,{children:(0,l.jsx)(n.a,{href:"https://jenkinsbuild.elliemae.cloud/job/UIPlatform/job/pui-cli/job/master",children:"Build Job"})}),"\n",(0,l.jsx)(n.li,{children:(0,l.jsx)(n.a,{href:"https://sonarqube.jenkins.elliemae.cloud/overview?id=elliemae.pui.cli-master",children:"SonarQube Report"})}),"\n",(0,l.jsxs)(n.li,{children:[(0,l.jsx)(n.strong,{children:(0,l.jsx)(n.a,{href:"/cli/usage-guide",children:"Usage Guide"})})," - Detailed command reference and examples"]}),"\n",(0,l.jsxs)(n.li,{children:[(0,l.jsx)(n.strong,{children:(0,l.jsx)(n.a,{href:"./api/",children:"API Documentation"})})," - Generated API docs from source code"]}),"\n",(0,l.jsxs)(n.li,{children:[(0,l.jsx)(n.strong,{children:(0,l.jsx)(n.a,{href:"/cli/ssl-certificate-setup",children:"SSL Certificate Setup"})})," - HTTPS certificate configuration"]}),"\n"]}),"\n",(0,l.jsx)(n.h2,{id:"features",children:"Features"}),"\n",(0,l.jsxs)(n.ul,{children:["\n",(0,l.jsxs)(n.li,{children:["\ud83d\ude80 ",(0,l.jsx)(n.strong,{children:"Modern Build Tools"})," - Webpack and Vite integration"]}),"\n",(0,l.jsxs)(n.li,{children:["\ud83e\uddea ",(0,l.jsx)(n.strong,{children:"Testing"})," - Jest and Vitest support with coverage"]}),"\n",(0,l.jsxs)(n.li,{children:["\ud83c\udfa8 ",(0,l.jsx)(n.strong,{children:"Linting"})," - ESLint, Prettier, and Stylelint configurations"]}),"\n",(0,l.jsxs)(n.li,{children:["\ud83d\udcdd ",(0,l.jsx)(n.strong,{children:"TypeScript"})," - Full TypeScript support"]}),"\n",(0,l.jsxs)(n.li,{children:["\ud83d\udcda ",(0,l.jsx)(n.strong,{children:"Storybook"})," - Component development and documentation"]}),"\n",(0,l.jsxs)(n.li,{children:["\ud83d\udd27 ",(0,l.jsx)(n.strong,{children:"Development Server"})," - Hot module replacement"]}),"\n",(0,l.jsxs)(n.li,{children:["\ud83d\udce6 ",(0,l.jsx)(n.strong,{children:"Library Support"})," - Build both applications and libraries"]}),"\n",(0,l.jsxs)(n.li,{children:["\ud83c\udfaf ",(0,l.jsx)(n.strong,{children:"Monorepo Support"})," - Workspace version management"]}),"\n"]}),"\n",(0,l.jsx)(n.h2,{id:"getting-started",children:"Getting Started"}),"\n",(0,l.jsxs)(n.p,{children:["This guide will help you get started with ",(0,l.jsx)(n.code,{children:"@elliemae/pui-cli"}),", a command-line interface tool for building and managing UI applications and libraries."]}),"\n",(0,l.jsx)(n.h3,{id:"prerequisites",children:"Prerequisites"}),"\n",(0,l.jsx)(n.p,{children:"Before you begin, ensure you have the following installed:"}),"\n",(0,l.jsxs)(n.ul,{children:["\n",(0,l.jsxs)(n.li,{children:[(0,l.jsx)(n.strong,{children:"Node.js"}),": Version 20"]}),"\n",(0,l.jsxs)(n.li,{children:[(0,l.jsx)(n.strong,{children:"pnpm"}),": Version 8 (recommended package manager)"]}),"\n"]}),"\n",(0,l.jsx)(n.h3,{id:"installation",children:"Installation"}),"\n",(0,l.jsx)(n.h4,{id:"for-new-projects",children:"For New Projects"}),"\n",(0,l.jsx)(n.p,{children:"Install the CLI as a development dependency in your project:"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-bash",children:"pnpm add -D @elliemae/pui-cli\n"})}),"\n",(0,l.jsx)(n.h3,{id:"quick-start",children:"Quick Start"}),"\n",(0,l.jsx)(n.h4,{id:"setting-up-a-new-application",children:"Setting Up a New Application"}),"\n",(0,l.jsxs)(n.ol,{children:["\n",(0,l.jsxs)(n.li,{children:[(0,l.jsx)(n.strong,{children:"Create a package.json"})," if you don't have one:"]}),"\n"]}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-bash",children:"pnpm init\n"})}),"\n",(0,l.jsxs)(n.ol,{start:"2",children:["\n",(0,l.jsxs)(n.li,{children:[(0,l.jsx)(n.strong,{children:"Install pui-cli"}),":"]}),"\n"]}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-bash",children:"pnpm add -D @elliemae/pui-cli\n"})}),"\n",(0,l.jsxs)(n.ol,{start:"3",children:["\n",(0,l.jsxs)(n.li,{children:[(0,l.jsx)(n.strong,{children:"Add scripts to your package.json"}),":"]}),"\n"]}),"\n",(0,l.jsx)(n.p,{children:"For applications:"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-json",children:'{\n "scripts": {\n "start": "pui-cli start",\n "start:prod": "pui-cli start -p",\n "build": "pui-cli build",\n "test": "pui-cli test",\n "vitest": "pui-cli vitest",\n "test:fix": "pui-cli test -f",\n "test:debug": "pui-cli test --debug",\n "lint": "pui-cli lint",\n "lint:fix": "pui-cli lint --fix",\n "lint:staged": "lint-staged",\n "tscheck": "pui-cli tscheck --files",\n "storybook": "pui-cli storybook",\n "storybook:docs": "pui-cli storybook --docs",\n "storybook:build": "pui-cli storybook -b",\n "gendoc": "pui-cli gendoc"\n }\n}\n'})}),"\n",(0,l.jsx)(n.p,{children:"For libraries:"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-json",children:'{\n "scripts": {\n "build": "pui-cli pack -p",\n "build:dev": "pui-cli pack",\n "test": "pui-cli test",\n "test:fix": "pui-cli test -f",\n "lint": "pui-cli lint",\n "lint:fix": "pui-cli lint --fix",\n "tscheck": "pui-cli tscheck --files"\n }\n}\n'})}),"\n",(0,l.jsxs)(n.ol,{start:"4",children:["\n",(0,l.jsxs)(n.li,{children:[(0,l.jsx)(n.strong,{children:"Create a TypeScript configuration"})," (",(0,l.jsx)(n.code,{children:"tsconfig.json"}),"):"]}),"\n"]}),"\n",(0,l.jsx)(n.p,{children:"For applications:"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-json",children:'{\n "extends": "@elliemae/pui-cli/app.tsconfig.json",\n "compilerOptions": {\n "outDir": "dist/types",\n "baseUrl": ".",\n "paths": {}\n },\n "include": [\n "app/**/*",\n "wdio.config.mjs",\n "vitest.config.ts",\n "docusaurus.config.ts"\n ],\n "exclude": ["node_modules", "**/*.spec.ts"]\n}\n'})}),"\n",(0,l.jsx)(n.p,{children:"For libraries:"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-json",children:'{\n "extends": "@elliemae/pui-cli/library.tsconfig.json",\n "compilerOptions": {\n "outDir": "dist/types",\n "declarationDir": "dist/types",\n "baseUrl": "."\n },\n "include": ["lib/**/*", "./docusaurus.config.ts"],\n "exclude": ["node_modules"]\n}\n'})}),"\n",(0,l.jsxs)(n.ol,{start:"5",children:["\n",(0,l.jsxs)(n.li,{children:[(0,l.jsx)(n.strong,{children:"Create your source structure"}),":"]}),"\n"]}),"\n",(0,l.jsx)(n.p,{children:"For applications:"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{children:"your-project/\n\u251c\u2500\u2500 app/\n\u2502 \u251c\u2500\u2500 index.tsx # Entry point\n\u2502 \u251c\u2500\u2500 route/ # Routes\n\u2502 \u251c\u2500\u2500 view/ # Components\n\u2502 \u251c\u2500\u2500 data/ # Redux slices\n\u2502 \u251c\u2500\u2500 api/ # RTK Query APIs\n\u2502 \u251c\u2500\u2500 sideeffect/ # Redux Sagas\n\u2502 \u251c\u2500\u2500 utils/ # Utilities\n\u2502 \u2514\u2500\u2500 app.config.json # App configuration\n\u251c\u2500\u2500 public/ # Static assets\n\u251c\u2500\u2500 package.json\n\u2514\u2500\u2500 tsconfig.json\n"})}),"\n",(0,l.jsx)(n.p,{children:"For libraries:"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{children:"your-project/\n\u251c\u2500\u2500 lib/\n\u2502 \u251c\u2500\u2500 index.ts # Entry point\n\u2502 \u251c\u2500\u2500 components/ # Components\n\u2502 \u251c\u2500\u2500 utils/ # Utilities\n\u2502 \u2514\u2500\u2500 __tests__/ # Tests\n\u251c\u2500\u2500 stories/ # Storybook stories (optional)\n\u251c\u2500\u2500 package.json\n\u2514\u2500\u2500 tsconfig.json\n"})}),"\n",(0,l.jsx)(n.h2,{id:"project-structure",children:"Project Structure"}),"\n",(0,l.jsx)(n.h3,{id:"application-structure",children:"Application Structure"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{children:"your-app/\n\u251c\u2500\u2500 app/ # Application source code\n\u2502 \u251c\u2500\u2500 index.tsx # Entry point\n\u2502 \u251c\u2500\u2500 route/ # Route definitions\n\u2502 \u251c\u2500\u2500 view/ # UI components\n\u2502 \u251c\u2500\u2500 data/ # Redux slices (state)\n\u2502 \u251c\u2500\u2500 api/ # RTK Query API definitions\n\u2502 \u251c\u2500\u2500 sideeffect/ # Redux Sagas\n\u2502 \u251c\u2500\u2500 utils/ # Utility functions\n\u2502 \u251c\u2500\u2500 tests/ # Test files\n\u2502 \u2514\u2500\u2500 app.config.json # App configuration\n\u251c\u2500\u2500 public/ # Static assets\n\u251c\u2500\u2500 e2e/ # E2E tests (optional)\n\u251c\u2500\u2500 docs/ # Docusaurus docs (optional)\n\u251c\u2500\u2500 package.json\n\u2514\u2500\u2500 tsconfig.json\n"})}),"\n",(0,l.jsx)(n.h3,{id:"library-structure",children:"Library Structure"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{children:"your-library/\n\u251c\u2500\u2500 lib/ # Library source code\n\u2502 \u251c\u2500\u2500 index.ts # Entry point\n\u2502 \u251c\u2500\u2500 components/ # Components\n\u2502 \u2514\u2500\u2500 __tests__/ # Test files\n\u251c\u2500\u2500 stories/ # Storybook stories\n\u251c\u2500\u2500 package.json\n\u2514\u2500\u2500 tsconfig.json\n"})}),"\n",(0,l.jsx)(n.h2,{id:"configuration-files",children:"Configuration Files"}),"\n",(0,l.jsx)(n.h3,{id:"prettier-configuration",children:"Prettier Configuration"}),"\n",(0,l.jsxs)(n.p,{children:["Create ",(0,l.jsx)(n.code,{children:"prettier.config.cjs"}),":"]}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-javascript",children:"const { prettierConfig } = require('@elliemae/pui-cli');\nmodule.exports = prettierConfig;\n"})}),"\n",(0,l.jsx)(n.h3,{id:"stylelint-configuration",children:"Stylelint Configuration"}),"\n",(0,l.jsxs)(n.p,{children:["Create ",(0,l.jsx)(n.code,{children:"stylelint.config.cjs"}),":"]}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-javascript",children:"const { stylelintConfig } = require('@elliemae/pui-cli');\nmodule.exports = stylelintConfig;\n"})}),"\n",(0,l.jsx)(n.h3,{id:"commitlint-configuration",children:"Commitlint Configuration"}),"\n",(0,l.jsxs)(n.p,{children:["Create ",(0,l.jsx)(n.code,{children:"commitlint.config.cjs"}),":"]}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-javascript",children:"const { commitlintConfig } = require('@elliemae/pui-cli');\nmodule.exports = commitlintConfig;\n"})}),"\n",(0,l.jsx)(n.h3,{id:"lint-staged-configuration",children:"Lint-staged Configuration"}),"\n",(0,l.jsxs)(n.p,{children:["Create ",(0,l.jsx)(n.code,{children:"lint-staged.config.mjs"}),":"]}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-javascript",children:"import { lintStagedConfig } from '@elliemae/pui-cli';\nexport default lintStagedConfig;\n"})}),"\n",(0,l.jsx)(n.h3,{id:"babel-configuration-optional",children:"Babel Configuration (Optional)"}),"\n",(0,l.jsxs)(n.p,{children:["Create ",(0,l.jsx)(n.code,{children:"babel.config.cjs"})," for custom Babel configuration:"]}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-javascript",children:"const { babelConfig } = require('@elliemae/pui-cli');\nmodule.exports = babelConfig;\n"})}),"\n",(0,l.jsx)(n.h2,{id:"git-hooks-setup",children:"Git Hooks Setup"}),"\n",(0,l.jsx)(n.p,{children:"To enable pre-commit hooks with Husky:"}),"\n",(0,l.jsxs)(n.ol,{children:["\n",(0,l.jsxs)(n.li,{children:[(0,l.jsx)(n.strong,{children:"Install Husky"}),":"]}),"\n"]}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-bash",children:"pnpm add -D husky\nnpx husky init\n"})}),"\n",(0,l.jsxs)(n.ol,{start:"2",children:["\n",(0,l.jsxs)(n.li,{children:[(0,l.jsxs)(n.strong,{children:["Create ",(0,l.jsx)(n.code,{children:".husky/pre-commit"})]}),":"]}),"\n"]}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-bash",children:'#!/bin/sh\n. "$(dirname "$0")/_/husky.sh"\n\nnpx lint-staged\n'})}),"\n",(0,l.jsxs)(n.ol,{start:"3",children:["\n",(0,l.jsxs)(n.li,{children:[(0,l.jsx)(n.strong,{children:"Make it executable"}),":"]}),"\n"]}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-bash",children:"chmod +x .husky/pre-commit\n"})}),"\n",(0,l.jsx)(n.h2,{id:"additional-configuration-files",children:"Additional Configuration Files"}),"\n",(0,l.jsx)(n.h3,{id:"jest-configuration",children:"Jest Configuration"}),"\n",(0,l.jsxs)(n.p,{children:["For custom Jest configuration, create ",(0,l.jsx)(n.code,{children:"jest.config.cjs"}),":"]}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-javascript",children:"const { jestConfig } = require('@elliemae/pui-cli');\nmodule.exports = jestConfig;\n"})}),"\n",(0,l.jsx)(n.h2,{id:"environment-variables",children:"Environment Variables"}),"\n",(0,l.jsxs)(n.p,{children:["Create a ",(0,l.jsx)(n.code,{children:".env"})," file in your project root for environment-specific configuration:"]}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-env",children:"PORT=3000\nNODE_ENV=development\n"})}),"\n",(0,l.jsx)(n.h2,{id:"running-your-first-build",children:"Running Your First Build"}),"\n",(0,l.jsx)(n.h3,{id:"start-development-server",children:"Start Development Server"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-bash",children:"# Start development server\npnpm start\n\n# Start with production mode\npnpm start:prod\n# or\npui-cli start -p\n"})}),"\n",(0,l.jsx)(n.p,{children:"This will:"}),"\n",(0,l.jsxs)(n.ul,{children:["\n",(0,l.jsx)(n.li,{children:"Start webpack dev server"}),"\n",(0,l.jsx)(n.li,{children:"Enable hot module replacement"}),"\n",(0,l.jsxs)(n.li,{children:["Serve your application (default: ",(0,l.jsx)(n.a,{href:"http://localhost:3000",children:"http://localhost:3000"}),")"]}),"\n",(0,l.jsx)(n.li,{children:"Watch for file changes"}),"\n"]}),"\n",(0,l.jsx)(n.h3,{id:"build-for-production",children:"Build for Production"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-bash",children:"# Build application\npnpm build\n\n# Build library\npui-cli pack -p\n\n# Build library for development (no minification)\npui-cli pack\n"})}),"\n",(0,l.jsx)(n.p,{children:"This will:"}),"\n",(0,l.jsxs)(n.ul,{children:["\n",(0,l.jsx)(n.li,{children:"Create an optimized production build"}),"\n",(0,l.jsxs)(n.li,{children:["Output files to the ",(0,l.jsx)(n.code,{children:"dist/"})," or ",(0,l.jsx)(n.code,{children:"build/"})," directory"]}),"\n",(0,l.jsx)(n.li,{children:"Generate source maps"}),"\n",(0,l.jsx)(n.li,{children:"Minify and bundle your code"}),"\n",(0,l.jsx)(n.li,{children:"For libraries: Generate ESM, CJS, and type declarations"}),"\n"]}),"\n",(0,l.jsx)(n.h3,{id:"run-tests",children:"Run Tests"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-bash",children:"# Run Jest tests\npnpm test\n\n# Run tests with auto-fix\npnpm test:fix\n\n# Debug tests\npnpm test:debug\n\n# Watch mode\npnpm test:watch\n"})}),"\n",(0,l.jsx)(n.h3,{id:"linting-and-type-checking",children:"Linting and Type Checking"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-bash",children:"# Lint code\npnpm lint\n\n# Auto-fix lint issues\npnpm lint:fix\n\n# Type check\npnpm tscheck\n\n# Lint staged files only\npnpm lint:staged\n"})}),"\n",(0,l.jsx)(n.h3,{id:"storybook",children:"Storybook"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-bash",children:"# Run Storybook dev server\npnpm storybook\n\n# Run with docs mode\npnpm storybook:docs\n\n# Build static Storybook\npnpm storybook:build\n"})}),"\n",(0,l.jsx)(n.h2,{id:"next-steps",children:"Next Steps"}),"\n",(0,l.jsxs)(n.ul,{children:["\n",(0,l.jsxs)(n.li,{children:["Read the ",(0,l.jsx)(n.a,{href:"/cli/usage-guide",children:"Usage Guide"})," for detailed command documentation"]}),"\n",(0,l.jsxs)(n.li,{children:["Check out the ",(0,l.jsx)(n.a,{href:"./api/",children:"API Documentation"})," for library exports"]}),"\n",(0,l.jsxs)(n.li,{children:["Review the ",(0,l.jsx)(n.a,{href:"https://git.elliemae.io/platform-ui/pui-cli#migration-guide",children:"Migration Guide"})," if upgrading from an older version"]}),"\n"]}),"\n",(0,l.jsx)(n.h2,{id:"troubleshooting",children:"Troubleshooting"}),"\n",(0,l.jsx)(n.h3,{id:"common-issues",children:"Common Issues"}),"\n",(0,l.jsx)(n.p,{children:(0,l.jsx)(n.strong,{children:"Port already in use:"})}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-bash",children:"# Change the port in your .env file\nPORT=3001\n"})}),"\n",(0,l.jsx)(n.p,{children:(0,l.jsx)(n.strong,{children:"Module not found errors:"})}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-bash",children:"# Clear node_modules and reinstall\nrm -rf node_modules\npnpm install\n"})}),"\n",(0,l.jsx)(n.p,{children:(0,l.jsx)(n.strong,{children:"Build fails with TypeScript errors:"})}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-bash",children:"# Run type checking separately to see detailed errors\npnpm tscheck\n"})}),"\n",(0,l.jsx)(n.p,{children:(0,l.jsx)(n.strong,{children:"HTTPS certificate warnings:"})}),"\n",(0,l.jsx)(n.p,{children:'If you see "Not Secure" or certificate warnings when using HTTPS in development:'}),"\n",(0,l.jsxs)(n.ul,{children:["\n",(0,l.jsxs)(n.li,{children:["See the ",(0,l.jsx)(n.a,{href:"/cli/ssl-certificate-setup",children:"SSL Certificate Setup Guide"})," for detailed instructions"]}),"\n",(0,l.jsx)(n.li,{children:"You need to trust the self-signed CA certificate on your system"}),"\n",(0,l.jsx)(n.li,{children:"Platform-specific instructions available for macOS, Windows, and Firefox"}),"\n"]}),"\n",(0,l.jsx)(n.h2,{id:"getting-help",children:"Getting Help"}),"\n",(0,l.jsx)(n.p,{children:"If you encounter issues:"}),"\n",(0,l.jsxs)(n.ol,{children:["\n",(0,l.jsxs)(n.li,{children:["Review the documentation in the ",(0,l.jsx)(n.code,{children:"docs/"})," folder"]}),"\n",(0,l.jsx)(n.li,{children:"Reach out to the ui-platform teams channel"}),"\n"]})]})}function u(e={}){const{wrapper:n}={...(0,t.R)(),...e.components};return n?(0,l.jsx)(n,{...e,children:(0,l.jsx)(d,{...e})}):d(e)}}}]);
1
+ "use strict";(globalThis.webpackChunk_elliemae_pui_cli=globalThis.webpackChunk_elliemae_pui_cli||[]).push([[3361],{1233(e,n,i){i.r(n),i.d(n,{assets:()=>c,contentTitle:()=>o,default:()=>u,frontMatter:()=>r,metadata:()=>s,toc:()=>a});const s=JSON.parse('{"id":"index","title":"PUI CLI Documentation","description":"Welcome to the ICE MT UI Platform CLI documentation. This CLI tool provides a comprehensive set of commands for building, testing, and maintaining UI applications and libraries.","source":"@site/docs/index.md","sourceDirName":".","slug":"/","permalink":"/cli/","draft":false,"unlisted":false,"editUrl":"https://git.elliemae.io/platform-ui/pui-cli.git/docs/index.md","tags":[],"version":"current","frontMatter":{},"sidebar":"docsSidebar","previous":{"title":"vitestConfig","permalink":"/cli/api/variables/vitestConfig"},"next":{"title":"Trust SSL Certificate Guide","permalink":"/cli/ssl-certificate-setup"}}');var l=i(6070),t=i(116);const r={},o="PUI CLI Documentation",c={},a=[{value:"Quick Links",id:"quick-links",level:2},{value:"Features",id:"features",level:2},{value:"Getting Started",id:"getting-started",level:2},{value:"Prerequisites",id:"prerequisites",level:3},{value:"Installation",id:"installation",level:3},{value:"For New Projects",id:"for-new-projects",level:4},{value:"Quick Start",id:"quick-start",level:3},{value:"Setting Up a New Application",id:"setting-up-a-new-application",level:4},{value:"Project Structure",id:"project-structure",level:2},{value:"Application Structure",id:"application-structure",level:3},{value:"Library Structure",id:"library-structure",level:3},{value:"Configuration Files",id:"configuration-files",level:2},{value:"Prettier Configuration",id:"prettier-configuration",level:3},{value:"Stylelint Configuration",id:"stylelint-configuration",level:3},{value:"Commitlint Configuration",id:"commitlint-configuration",level:3},{value:"Lint-staged Configuration",id:"lint-staged-configuration",level:3},{value:"Babel Configuration (Optional)",id:"babel-configuration-optional",level:3},{value:"Git Hooks Setup",id:"git-hooks-setup",level:2},{value:"Additional Configuration Files",id:"additional-configuration-files",level:2},{value:"Jest Configuration",id:"jest-configuration",level:3},{value:"Environment Variables",id:"environment-variables",level:2},{value:"Running Your First Build",id:"running-your-first-build",level:2},{value:"Start Development Server",id:"start-development-server",level:3},{value:"Build for Production",id:"build-for-production",level:3},{value:"Run Tests",id:"run-tests",level:3},{value:"Linting and Type Checking",id:"linting-and-type-checking",level:3},{value:"Storybook",id:"storybook",level:3},{value:"Next Steps",id:"next-steps",level:2},{value:"Troubleshooting",id:"troubleshooting",level:2},{value:"Common Issues",id:"common-issues",level:3},{value:"Getting Help",id:"getting-help",level:2}];function d(e){const n={a:"a",code:"code",h1:"h1",h2:"h2",h3:"h3",h4:"h4",header:"header",li:"li",ol:"ol",p:"p",pre:"pre",strong:"strong",ul:"ul",...(0,t.R)(),...e.components};return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(n.header,{children:(0,l.jsx)(n.h1,{id:"pui-cli-documentation",children:"PUI CLI Documentation"})}),"\n",(0,l.jsx)(n.p,{children:"Welcome to the ICE MT UI Platform CLI documentation. This CLI tool provides a comprehensive set of commands for building, testing, and maintaining UI applications and libraries."}),"\n",(0,l.jsx)(n.h2,{id:"quick-links",children:"Quick Links"}),"\n",(0,l.jsxs)(n.ul,{children:["\n",(0,l.jsx)(n.li,{children:(0,l.jsx)(n.a,{href:"https://git.elliemae.io/platform-ui/pui-cli",children:"GitHub Repository"})}),"\n",(0,l.jsx)(n.li,{children:(0,l.jsx)(n.a,{href:"https://jenkinsbuild.elliemae.cloud/job/UIPlatform/job/pui-cli/job/master",children:"Build Job"})}),"\n",(0,l.jsx)(n.li,{children:(0,l.jsx)(n.a,{href:"https://sonarqube.jenkins.elliemae.cloud/overview?id=elliemae.pui.cli-master",children:"SonarQube Report"})}),"\n",(0,l.jsxs)(n.li,{children:[(0,l.jsx)(n.strong,{children:(0,l.jsx)(n.a,{href:"/cli/usage-guide",children:"Usage Guide"})})," - Detailed command reference and examples"]}),"\n",(0,l.jsxs)(n.li,{children:[(0,l.jsx)(n.strong,{children:(0,l.jsx)(n.a,{href:"./api/",children:"API Documentation"})})," - Generated API docs from source code"]}),"\n",(0,l.jsxs)(n.li,{children:[(0,l.jsx)(n.strong,{children:(0,l.jsx)(n.a,{href:"/cli/ssl-certificate-setup",children:"SSL Certificate Setup"})})," - HTTPS certificate configuration"]}),"\n"]}),"\n",(0,l.jsx)(n.h2,{id:"features",children:"Features"}),"\n",(0,l.jsxs)(n.ul,{children:["\n",(0,l.jsxs)(n.li,{children:["\ud83d\ude80 ",(0,l.jsx)(n.strong,{children:"Modern Build Tools"})," - Webpack and Vite integration"]}),"\n",(0,l.jsxs)(n.li,{children:["\ud83e\uddea ",(0,l.jsx)(n.strong,{children:"Testing"})," - Jest and Vitest support with coverage"]}),"\n",(0,l.jsxs)(n.li,{children:["\ud83c\udfa8 ",(0,l.jsx)(n.strong,{children:"Linting"})," - ESLint, Prettier, and Stylelint configurations"]}),"\n",(0,l.jsxs)(n.li,{children:["\ud83d\udcdd ",(0,l.jsx)(n.strong,{children:"TypeScript"})," - Full TypeScript support"]}),"\n",(0,l.jsxs)(n.li,{children:["\ud83d\udcda ",(0,l.jsx)(n.strong,{children:"Storybook"})," - Component development and documentation"]}),"\n",(0,l.jsxs)(n.li,{children:["\ud83d\udd27 ",(0,l.jsx)(n.strong,{children:"Development Server"})," - Hot module replacement"]}),"\n",(0,l.jsxs)(n.li,{children:["\ud83d\udce6 ",(0,l.jsx)(n.strong,{children:"Library Support"})," - Build both applications and libraries"]}),"\n",(0,l.jsxs)(n.li,{children:["\ud83c\udfaf ",(0,l.jsx)(n.strong,{children:"Monorepo Support"})," - Workspace version management"]}),"\n"]}),"\n",(0,l.jsx)(n.h2,{id:"getting-started",children:"Getting Started"}),"\n",(0,l.jsxs)(n.p,{children:["This guide will help you get started with ",(0,l.jsx)(n.code,{children:"@elliemae/pui-cli"}),", a command-line interface tool for building and managing UI applications and libraries."]}),"\n",(0,l.jsx)(n.h3,{id:"prerequisites",children:"Prerequisites"}),"\n",(0,l.jsx)(n.p,{children:"Before you begin, ensure you have the following installed:"}),"\n",(0,l.jsxs)(n.ul,{children:["\n",(0,l.jsxs)(n.li,{children:[(0,l.jsx)(n.strong,{children:"Node.js"}),": Version 20"]}),"\n",(0,l.jsxs)(n.li,{children:[(0,l.jsx)(n.strong,{children:"pnpm"}),": Version 8 (recommended package manager)"]}),"\n"]}),"\n",(0,l.jsx)(n.h3,{id:"installation",children:"Installation"}),"\n",(0,l.jsx)(n.h4,{id:"for-new-projects",children:"For New Projects"}),"\n",(0,l.jsx)(n.p,{children:"Install the CLI as a development dependency in your project:"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-bash",children:"pnpm add -D @elliemae/pui-cli\n"})}),"\n",(0,l.jsx)(n.h3,{id:"quick-start",children:"Quick Start"}),"\n",(0,l.jsx)(n.h4,{id:"setting-up-a-new-application",children:"Setting Up a New Application"}),"\n",(0,l.jsxs)(n.ol,{children:["\n",(0,l.jsxs)(n.li,{children:[(0,l.jsx)(n.strong,{children:"Create a package.json"})," if you don't have one:"]}),"\n"]}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-bash",children:"pnpm init\n"})}),"\n",(0,l.jsxs)(n.ol,{start:"2",children:["\n",(0,l.jsxs)(n.li,{children:[(0,l.jsx)(n.strong,{children:"Install pui-cli"}),":"]}),"\n"]}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-bash",children:"pnpm add -D @elliemae/pui-cli\n"})}),"\n",(0,l.jsxs)(n.ol,{start:"3",children:["\n",(0,l.jsxs)(n.li,{children:[(0,l.jsx)(n.strong,{children:"Add scripts to your package.json"}),":"]}),"\n"]}),"\n",(0,l.jsx)(n.p,{children:"For applications:"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-json",children:'{\n "scripts": {\n "start": "pui-cli start",\n "start:prod": "pui-cli start -p",\n "build": "pui-cli build",\n "test": "pui-cli test",\n "vitest": "pui-cli vitest",\n "test:fix": "pui-cli test -f",\n "test:debug": "pui-cli test --debug",\n "lint": "pui-cli lint",\n "lint:fix": "pui-cli lint --fix",\n "lint:staged": "lint-staged",\n "tscheck": "pui-cli tscheck --files",\n "storybook": "pui-cli storybook",\n "storybook:docs": "pui-cli storybook --docs",\n "storybook:build": "pui-cli storybook -b",\n "gendoc": "pui-cli gendoc"\n }\n}\n'})}),"\n",(0,l.jsx)(n.p,{children:"For libraries:"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-json",children:'{\n "scripts": {\n "build": "pui-cli pack -p",\n "build:dev": "pui-cli pack",\n "test": "pui-cli test",\n "test:fix": "pui-cli test -f",\n "lint": "pui-cli lint",\n "lint:fix": "pui-cli lint --fix",\n "tscheck": "pui-cli tscheck --files"\n }\n}\n'})}),"\n",(0,l.jsxs)(n.ol,{start:"4",children:["\n",(0,l.jsxs)(n.li,{children:[(0,l.jsx)(n.strong,{children:"Create a TypeScript configuration"})," (",(0,l.jsx)(n.code,{children:"tsconfig.json"}),"):"]}),"\n"]}),"\n",(0,l.jsx)(n.p,{children:"For applications:"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-json",children:'{\n "extends": "@elliemae/pui-cli/app.tsconfig.json",\n "compilerOptions": {\n "outDir": "dist/types",\n "baseUrl": ".",\n "paths": {}\n },\n "include": [\n "app/**/*",\n "wdio.config.mjs",\n "vitest.config.ts",\n "docusaurus.config.ts"\n ],\n "exclude": ["node_modules", "**/*.spec.ts"]\n}\n'})}),"\n",(0,l.jsx)(n.p,{children:"For libraries:"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-json",children:'{\n "extends": "@elliemae/pui-cli/library.tsconfig.json",\n "compilerOptions": {\n "outDir": "dist/types",\n "declarationDir": "dist/types",\n "baseUrl": "."\n },\n "include": ["lib/**/*", "./docusaurus.config.ts"],\n "exclude": ["node_modules"]\n}\n'})}),"\n",(0,l.jsxs)(n.ol,{start:"5",children:["\n",(0,l.jsxs)(n.li,{children:[(0,l.jsx)(n.strong,{children:"Create your source structure"}),":"]}),"\n"]}),"\n",(0,l.jsx)(n.p,{children:"For applications:"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{children:"your-project/\n\u251c\u2500\u2500 app/\n\u2502 \u251c\u2500\u2500 index.tsx # Entry point\n\u2502 \u251c\u2500\u2500 route/ # Routes\n\u2502 \u251c\u2500\u2500 view/ # Components\n\u2502 \u251c\u2500\u2500 data/ # Redux slices\n\u2502 \u251c\u2500\u2500 api/ # RTK Query APIs\n\u2502 \u251c\u2500\u2500 sideeffect/ # Redux Sagas\n\u2502 \u251c\u2500\u2500 utils/ # Utilities\n\u2502 \u2514\u2500\u2500 app.config.json # App configuration\n\u251c\u2500\u2500 public/ # Static assets\n\u251c\u2500\u2500 package.json\n\u2514\u2500\u2500 tsconfig.json\n"})}),"\n",(0,l.jsx)(n.p,{children:"For libraries:"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{children:"your-project/\n\u251c\u2500\u2500 lib/\n\u2502 \u251c\u2500\u2500 index.ts # Entry point\n\u2502 \u251c\u2500\u2500 components/ # Components\n\u2502 \u251c\u2500\u2500 utils/ # Utilities\n\u2502 \u2514\u2500\u2500 __tests__/ # Tests\n\u251c\u2500\u2500 stories/ # Storybook stories (optional)\n\u251c\u2500\u2500 package.json\n\u2514\u2500\u2500 tsconfig.json\n"})}),"\n",(0,l.jsx)(n.h2,{id:"project-structure",children:"Project Structure"}),"\n",(0,l.jsx)(n.h3,{id:"application-structure",children:"Application Structure"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{children:"your-app/\n\u251c\u2500\u2500 app/ # Application source code\n\u2502 \u251c\u2500\u2500 index.tsx # Entry point\n\u2502 \u251c\u2500\u2500 route/ # Route definitions\n\u2502 \u251c\u2500\u2500 view/ # UI components\n\u2502 \u251c\u2500\u2500 data/ # Redux slices (state)\n\u2502 \u251c\u2500\u2500 api/ # RTK Query API definitions\n\u2502 \u251c\u2500\u2500 sideeffect/ # Redux Sagas\n\u2502 \u251c\u2500\u2500 utils/ # Utility functions\n\u2502 \u251c\u2500\u2500 tests/ # Test files\n\u2502 \u2514\u2500\u2500 app.config.json # App configuration\n\u251c\u2500\u2500 public/ # Static assets\n\u251c\u2500\u2500 e2e/ # E2E tests (optional)\n\u251c\u2500\u2500 docs/ # Docusaurus docs (optional)\n\u251c\u2500\u2500 package.json\n\u2514\u2500\u2500 tsconfig.json\n"})}),"\n",(0,l.jsx)(n.h3,{id:"library-structure",children:"Library Structure"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{children:"your-library/\n\u251c\u2500\u2500 lib/ # Library source code\n\u2502 \u251c\u2500\u2500 index.ts # Entry point\n\u2502 \u251c\u2500\u2500 components/ # Components\n\u2502 \u2514\u2500\u2500 __tests__/ # Test files\n\u251c\u2500\u2500 stories/ # Storybook stories\n\u251c\u2500\u2500 package.json\n\u2514\u2500\u2500 tsconfig.json\n"})}),"\n",(0,l.jsx)(n.h2,{id:"configuration-files",children:"Configuration Files"}),"\n",(0,l.jsx)(n.h3,{id:"prettier-configuration",children:"Prettier Configuration"}),"\n",(0,l.jsxs)(n.p,{children:["Create ",(0,l.jsx)(n.code,{children:"prettier.config.cjs"}),":"]}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-javascript",children:"const { prettierConfig } = require('@elliemae/pui-cli');\nmodule.exports = prettierConfig;\n"})}),"\n",(0,l.jsx)(n.h3,{id:"stylelint-configuration",children:"Stylelint Configuration"}),"\n",(0,l.jsxs)(n.p,{children:["Create ",(0,l.jsx)(n.code,{children:"stylelint.config.cjs"}),":"]}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-javascript",children:"const { stylelintConfig } = require('@elliemae/pui-cli');\nmodule.exports = stylelintConfig;\n"})}),"\n",(0,l.jsx)(n.h3,{id:"commitlint-configuration",children:"Commitlint Configuration"}),"\n",(0,l.jsxs)(n.p,{children:["Create ",(0,l.jsx)(n.code,{children:"commitlint.config.cjs"}),":"]}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-javascript",children:"const { commitlintConfig } = require('@elliemae/pui-cli');\nmodule.exports = commitlintConfig;\n"})}),"\n",(0,l.jsx)(n.h3,{id:"lint-staged-configuration",children:"Lint-staged Configuration"}),"\n",(0,l.jsxs)(n.p,{children:["Create ",(0,l.jsx)(n.code,{children:"lint-staged.config.mjs"}),":"]}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-javascript",children:"import { lintStagedConfig } from '@elliemae/pui-cli';\nexport default lintStagedConfig;\n"})}),"\n",(0,l.jsx)(n.h3,{id:"babel-configuration-optional",children:"Babel Configuration (Optional)"}),"\n",(0,l.jsxs)(n.p,{children:["Create ",(0,l.jsx)(n.code,{children:"babel.config.cjs"})," for custom Babel configuration:"]}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-javascript",children:"const { babelConfig } = require('@elliemae/pui-cli');\nmodule.exports = babelConfig;\n"})}),"\n",(0,l.jsx)(n.h2,{id:"git-hooks-setup",children:"Git Hooks Setup"}),"\n",(0,l.jsx)(n.p,{children:"To enable pre-commit hooks with Husky:"}),"\n",(0,l.jsxs)(n.ol,{children:["\n",(0,l.jsxs)(n.li,{children:[(0,l.jsx)(n.strong,{children:"Install Husky"}),":"]}),"\n"]}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-bash",children:"pnpm add -D husky\nnpx husky init\n"})}),"\n",(0,l.jsxs)(n.ol,{start:"2",children:["\n",(0,l.jsxs)(n.li,{children:[(0,l.jsxs)(n.strong,{children:["Create ",(0,l.jsx)(n.code,{children:".husky/pre-commit"})]}),":"]}),"\n"]}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-bash",children:'#!/bin/sh\n. "$(dirname "$0")/_/husky.sh"\n\nnpx lint-staged\n'})}),"\n",(0,l.jsxs)(n.ol,{start:"3",children:["\n",(0,l.jsxs)(n.li,{children:[(0,l.jsx)(n.strong,{children:"Make it executable"}),":"]}),"\n"]}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-bash",children:"chmod +x .husky/pre-commit\n"})}),"\n",(0,l.jsx)(n.h2,{id:"additional-configuration-files",children:"Additional Configuration Files"}),"\n",(0,l.jsx)(n.h3,{id:"jest-configuration",children:"Jest Configuration"}),"\n",(0,l.jsxs)(n.p,{children:["For custom Jest configuration, create ",(0,l.jsx)(n.code,{children:"jest.config.cjs"}),":"]}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-javascript",children:"const { jestConfig } = require('@elliemae/pui-cli');\nmodule.exports = jestConfig;\n"})}),"\n",(0,l.jsx)(n.h2,{id:"environment-variables",children:"Environment Variables"}),"\n",(0,l.jsxs)(n.p,{children:["Create a ",(0,l.jsx)(n.code,{children:".env"})," file in your project root for environment-specific configuration:"]}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-env",children:"PORT=3000\nNODE_ENV=development\n"})}),"\n",(0,l.jsx)(n.h2,{id:"running-your-first-build",children:"Running Your First Build"}),"\n",(0,l.jsx)(n.h3,{id:"start-development-server",children:"Start Development Server"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-bash",children:"# Start development server\npnpm start\n\n# Start with production mode\npnpm start:prod\n# or\npui-cli start -p\n"})}),"\n",(0,l.jsx)(n.p,{children:"This will:"}),"\n",(0,l.jsxs)(n.ul,{children:["\n",(0,l.jsx)(n.li,{children:"Start webpack dev server"}),"\n",(0,l.jsx)(n.li,{children:"Enable hot module replacement"}),"\n",(0,l.jsxs)(n.li,{children:["Serve your application (default: ",(0,l.jsx)(n.a,{href:"http://localhost:3000",children:"http://localhost:3000"}),")"]}),"\n",(0,l.jsx)(n.li,{children:"Watch for file changes"}),"\n"]}),"\n",(0,l.jsx)(n.h3,{id:"build-for-production",children:"Build for Production"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-bash",children:"# Build application\npnpm build\n\n# Build library\npui-cli pack -p\n\n# Build library for development (no minification)\npui-cli pack\n"})}),"\n",(0,l.jsx)(n.p,{children:"This will:"}),"\n",(0,l.jsxs)(n.ul,{children:["\n",(0,l.jsx)(n.li,{children:"Create an optimized production build"}),"\n",(0,l.jsxs)(n.li,{children:["Output files to the ",(0,l.jsx)(n.code,{children:"dist/"})," or ",(0,l.jsx)(n.code,{children:"build/"})," directory"]}),"\n",(0,l.jsx)(n.li,{children:"Generate source maps"}),"\n",(0,l.jsx)(n.li,{children:"Minify and bundle your code"}),"\n",(0,l.jsx)(n.li,{children:"For libraries: Generate ESM, CJS, and type declarations"}),"\n"]}),"\n",(0,l.jsx)(n.h3,{id:"run-tests",children:"Run Tests"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-bash",children:"# Run Jest tests\npnpm test\n\n# Run tests with auto-fix\npnpm test:fix\n\n# Debug tests\npnpm test:debug\n\n# Watch mode\npnpm test:watch\n"})}),"\n",(0,l.jsx)(n.h3,{id:"linting-and-type-checking",children:"Linting and Type Checking"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-bash",children:"# Lint code\npnpm lint\n\n# Auto-fix lint issues\npnpm lint:fix\n\n# Type check\npnpm tscheck\n\n# Lint staged files only\npnpm lint:staged\n"})}),"\n",(0,l.jsx)(n.h3,{id:"storybook",children:"Storybook"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-bash",children:"# Run Storybook dev server\npnpm storybook\n\n# Run with docs mode\npnpm storybook:docs\n\n# Build static Storybook\npnpm storybook:build\n"})}),"\n",(0,l.jsx)(n.h2,{id:"next-steps",children:"Next Steps"}),"\n",(0,l.jsxs)(n.ul,{children:["\n",(0,l.jsxs)(n.li,{children:["Read the ",(0,l.jsx)(n.a,{href:"/cli/usage-guide",children:"Usage Guide"})," for detailed command documentation"]}),"\n",(0,l.jsxs)(n.li,{children:["Check out the ",(0,l.jsx)(n.a,{href:"./api/",children:"API Documentation"})," for library exports"]}),"\n",(0,l.jsxs)(n.li,{children:["Review the ",(0,l.jsx)(n.a,{href:"https://git.elliemae.io/platform-ui/pui-cli#migration-guide",children:"Migration Guide"})," if upgrading from an older version"]}),"\n"]}),"\n",(0,l.jsx)(n.h2,{id:"troubleshooting",children:"Troubleshooting"}),"\n",(0,l.jsx)(n.h3,{id:"common-issues",children:"Common Issues"}),"\n",(0,l.jsx)(n.p,{children:(0,l.jsx)(n.strong,{children:"Port already in use:"})}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-bash",children:"# Change the port in your .env file\nPORT=3001\n"})}),"\n",(0,l.jsx)(n.p,{children:(0,l.jsx)(n.strong,{children:"Module not found errors:"})}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-bash",children:"# Clear node_modules and reinstall\nrm -rf node_modules\npnpm install\n"})}),"\n",(0,l.jsx)(n.p,{children:(0,l.jsx)(n.strong,{children:"Build fails with TypeScript errors:"})}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-bash",children:"# Run type checking separately to see detailed errors\npnpm tscheck\n"})}),"\n",(0,l.jsx)(n.p,{children:(0,l.jsx)(n.strong,{children:"HTTPS certificate warnings:"})}),"\n",(0,l.jsx)(n.p,{children:'If you see "Not Secure" or certificate warnings when using HTTPS in development:'}),"\n",(0,l.jsxs)(n.ul,{children:["\n",(0,l.jsxs)(n.li,{children:["See the ",(0,l.jsx)(n.a,{href:"/cli/ssl-certificate-setup",children:"SSL Certificate Setup Guide"})," for detailed instructions"]}),"\n",(0,l.jsx)(n.li,{children:"You need to trust the self-signed CA certificate on your system"}),"\n",(0,l.jsx)(n.li,{children:"Platform-specific instructions available for macOS, Windows, and Firefox"}),"\n"]}),"\n",(0,l.jsx)(n.h2,{id:"getting-help",children:"Getting Help"}),"\n",(0,l.jsx)(n.p,{children:"If you encounter issues:"}),"\n",(0,l.jsxs)(n.ol,{children:["\n",(0,l.jsxs)(n.li,{children:["Review the documentation in the ",(0,l.jsx)(n.code,{children:"docs/"})," folder"]}),"\n",(0,l.jsx)(n.li,{children:"Reach out to the ui-platform teams channel"}),"\n"]})]})}function u(e={}){const{wrapper:n}={...(0,t.R)(),...e.components};return n?(0,l.jsx)(n,{...e,children:(0,l.jsx)(d,{...e})}):d(e)}}}]);
@@ -0,0 +1 @@
1
+ "use strict";(globalThis.webpackChunk_elliemae_pui_cli=globalThis.webpackChunk_elliemae_pui_cli||[]).push([[2076],{116(n,t,r){r.d(t,{R:()=>c,x:()=>i});var e=r(758);const o={},u=e.createContext(o);function c(n){const t=e.useContext(u);return e.useMemo(function(){return"function"==typeof n?n(t):{...t,...n}},[t,n])}function i(n){let t;return t=n.disableParentContext?"function"==typeof n.components?n.components(o):n.components||o:c(n.components),e.createElement(u.Provider,{value:t},n.children)}},9513(n,t,r){r.d(t,{A:()=>i});var e=r(2716);const o=function(n){return this.__data__.set(n,"__lodash_hash_undefined__"),this};const u=function(n){return this.__data__.has(n)};function c(n){var t=-1,r=null==n?0:n.length;for(this.__data__=new e.A;++t<r;)this.add(n[t])}c.prototype.add=c.prototype.push=o,c.prototype.has=u;const i=c},298(n,t,r){r.d(t,{A:()=>e});const e=function(n,t){for(var r=-1,e=null==n?0:n.length;++r<e&&!1!==t(n[r],r,n););return n}},6981(n,t,r){r.d(t,{A:()=>e});const e=function(n,t){for(var r=-1,e=null==n?0:n.length,o=0,u=[];++r<e;){var c=n[r];t(c,r,n)&&(u[o++]=c)}return u}},7441(n,t,r){r.d(t,{A:()=>e});const e=function(n,t){for(var r=-1,e=null==n?0:n.length,o=Array(e);++r<e;)o[r]=t(n[r],r,n);return o}},3891(n,t,r){r.d(t,{A:()=>e});const e=function(n,t){for(var r=-1,e=t.length,o=n.length;++r<e;)n[o+r]=t[r];return n}},8755(n,t,r){r.d(t,{A:()=>u});var e=r(44),o=r(8119);const u=function(n,t){return function(r,e){if(null==r)return r;if(!(0,o.A)(r))return n(r,e);for(var u=r.length,c=t?u:-1,i=Object(r);(t?c--:++c<u)&&!1!==e(i[c],c,i););return r}}(e.A)},1098(n,t,r){r.d(t,{A:()=>o});var e=r(9581);const o=function(n,t,r){for(var o=-1,u=n.length;++o<u;){var c=n[o],i=t(c);if(null!=i&&(void 0===a?i==i&&!(0,e.A)(i):r(i,a)))var a=i,f=c}return f}},9247(n,t,r){r.d(t,{A:()=>e});const e=function(n,t,r,e){for(var o=n.length,u=r+(e?1:-1);e?u--:++u<o;)if(t(n[u],u,n))return u;return-1}},93(n,t,r){r.d(t,{A:()=>f});var e=r(3891),o=r(3200),u=r(4933),c=r(1504),i=o.A?o.A.isConcatSpreadable:void 0;const a=function(n){return(0,c.A)(n)||(0,u.A)(n)||!!(i&&n&&n[i])};const f=function n(t,r,o,u,c){var i=-1,f=t.length;for(o||(o=a),c||(c=[]);++i<f;){var s=t[i];r>0&&o(s)?r>1?n(s,r-1,o,u,c):(0,e.A)(c,s):u||(c[c.length]=s)}return c}},44(n,t,r){r.d(t,{A:()=>u});var e=r(959),o=r(5773);const u=function(n,t){return n&&(0,e.A)(n,t,o.A)}},8293(n,t,r){r.d(t,{A:()=>u});var e=r(7848),o=r(9206);const u=function(n,t){for(var r=0,u=(t=(0,e.A)(t,n)).length;null!=n&&r<u;)n=n[(0,o.A)(t[r++])];return r&&r==u?n:void 0}},8898(n,t,r){r.d(t,{A:()=>u});var e=r(3891),o=r(1504);const u=function(n,t,r){var u=t(n);return(0,o.A)(n)?u:(0,e.A)(u,r(n))}},9649(n,t,r){r.d(t,{A:()=>H});var e=r(8091),o=r(9513);const u=function(n,t){for(var r=-1,e=null==n?0:n.length;++r<e;)if(t(n[r],r,n))return!0;return!1};var c=r(9742);const i=function(n,t,r,e,i,a){var f=1&r,s=n.length,A=t.length;if(s!=A&&!(f&&A>s))return!1;var l=a.get(n),v=a.get(t);if(l&&v)return l==t&&v==n;var d=-1,h=!0,g=2&r?new o.A:void 0;for(a.set(n,t),a.set(t,n);++d<s;){var p=n[d],b=t[d];if(e)var y=f?e(b,p,d,t,n,a):e(p,b,d,n,t,a);if(void 0!==y){if(y)continue;h=!1;break}if(g){if(!u(t,function(n,t){if(!(0,c.A)(g,t)&&(p===n||i(p,n,r,e,a)))return g.push(t)})){h=!1;break}}else if(p!==b&&!i(p,b,r,e,a)){h=!1;break}}return a.delete(n),a.delete(t),h};var a=r(3200),f=r(2253),s=r(5911);const A=function(n){var t=-1,r=Array(n.size);return n.forEach(function(n,e){r[++t]=[e,n]}),r};var l=r(254),v=a.A?a.A.prototype:void 0,d=v?v.valueOf:void 0;const h=function(n,t,r,e,o,u,c){switch(r){case"[object DataView]":if(n.byteLength!=t.byteLength||n.byteOffset!=t.byteOffset)return!1;n=n.buffer,t=t.buffer;case"[object ArrayBuffer]":return!(n.byteLength!=t.byteLength||!u(new f.A(n),new f.A(t)));case"[object Boolean]":case"[object Date]":case"[object Number]":return(0,s.A)(+n,+t);case"[object Error]":return n.name==t.name&&n.message==t.message;case"[object RegExp]":case"[object String]":return n==t+"";case"[object Map]":var a=A;case"[object Set]":var v=1&e;if(a||(a=l.A),n.size!=t.size&&!v)return!1;var h=c.get(n);if(h)return h==t;e|=2,c.set(n,t);var g=i(a(n),a(t),e,o,u,c);return c.delete(n),g;case"[object Symbol]":if(d)return d.call(n)==d.call(t)}return!1};var g=r(535),p=Object.prototype.hasOwnProperty;const b=function(n,t,r,e,o,u){var c=1&r,i=(0,g.A)(n),a=i.length;if(a!=(0,g.A)(t).length&&!c)return!1;for(var f=a;f--;){var s=i[f];if(!(c?s in t:p.call(t,s)))return!1}var A=u.get(n),l=u.get(t);if(A&&l)return A==t&&l==n;var v=!0;u.set(n,t),u.set(t,n);for(var d=c;++f<a;){var h=n[s=i[f]],b=t[s];if(e)var y=c?e(b,h,s,t,n,u):e(h,b,s,n,t,u);if(!(void 0===y?h===b||o(h,b,r,e,u):y)){v=!1;break}d||(d="constructor"==s)}if(v&&!d){var _=n.constructor,w=t.constructor;_==w||!("constructor"in n)||!("constructor"in t)||"function"==typeof _&&_ instanceof _&&"function"==typeof w&&w instanceof w||(v=!1)}return u.delete(n),u.delete(t),v};var y=r(7940),_=r(1504),w=r(2825),j=r(2231),m="[object Arguments]",O="[object Array]",x="[object Object]",$=Object.prototype.hasOwnProperty;const k=function(n,t,r,o,u,c){var a=(0,_.A)(n),f=(0,_.A)(t),s=a?O:(0,y.A)(n),A=f?O:(0,y.A)(t),l=(s=s==m?x:s)==x,v=(A=A==m?x:A)==x,d=s==A;if(d&&(0,w.A)(n)){if(!(0,w.A)(t))return!1;a=!0,l=!1}if(d&&!l)return c||(c=new e.A),a||(0,j.A)(n)?i(n,t,r,o,u,c):h(n,t,s,r,o,u,c);if(!(1&r)){var g=l&&$.call(n,"__wrapped__"),p=v&&$.call(t,"__wrapped__");if(g||p){var k=g?n.value():n,P=p?t.value():t;return c||(c=new e.A),u(k,P,r,o,c)}}return!!d&&(c||(c=new e.A),b(n,t,r,o,u,c))};var P=r(4341);const S=function n(t,r,e,o,u){return t===r||(null==t||null==r||!(0,P.A)(t)&&!(0,P.A)(r)?t!=t&&r!=r:k(t,r,e,o,n,u))};const B=function(n,t,r,o){var u=r.length,c=u,i=!o;if(null==n)return!c;for(n=Object(n);u--;){var a=r[u];if(i&&a[2]?a[1]!==n[a[0]]:!(a[0]in n))return!1}for(;++u<c;){var f=(a=r[u])[0],s=n[f],A=a[1];if(i&&a[2]){if(void 0===s&&!(f in n))return!1}else{var l=new e.A;if(o)var v=o(s,A,f,n,t,l);if(!(void 0===v?S(A,s,3,o,l):v))return!1}}return!0};var C=r(778);const E=function(n){return n==n&&!(0,C.A)(n)};var L=r(5773);const z=function(n){for(var t=(0,L.A)(n),r=t.length;r--;){var e=t[r],o=n[e];t[r]=[e,o,E(o)]}return t};const D=function(n,t){return function(r){return null!=r&&(r[n]===t&&(void 0!==t||n in Object(r)))}};const K=function(n){var t=z(n);return 1==t.length&&t[0][2]?D(t[0][0],t[0][1]):function(r){return r===n||B(r,n,t)}};var V=r(8293);const R=function(n,t,r){var e=null==n?void 0:(0,V.A)(n,t);return void 0===e?r:e};var M=r(8587),T=r(3033),F=r(9206);const G=function(n,t){return(0,T.A)(n)&&E(t)?D((0,F.A)(n),t):function(r){var e=R(r,n);return void 0===e&&e===t?(0,M.A)(r,n):S(t,e,3)}};var I=r(1003),N=r(7008);const W=function(n){return function(t){return(0,V.A)(t,n)}};const q=function(n){return(0,T.A)(n)?(0,N.A)((0,F.A)(n)):W(n)};const H=function(n){return"function"==typeof n?n:null==n?I.A:"object"==typeof n?(0,_.A)(n)?G(n[0],n[1]):K(n):q(n)}},2473(n,t,r){r.d(t,{A:()=>e});const e=function(n,t){return n<t}},8255(n,t,r){r.d(t,{A:()=>u});var e=r(8755),o=r(8119);const u=function(n,t){var r=-1,u=(0,o.A)(n)?Array(n.length):[];return(0,e.A)(n,function(n,e,o){u[++r]=t(n,e,o)}),u}},7008(n,t,r){r.d(t,{A:()=>e});const e=function(n){return function(t){return null==t?void 0:t[n]}}},2535(n,t,r){r.d(t,{A:()=>h});var e=r(9513),o=r(9247);const u=function(n){return n!=n};const c=function(n,t,r){for(var e=r-1,o=n.length;++e<o;)if(n[e]===t)return e;return-1};const i=function(n,t,r){return t==t?c(n,t,r):(0,o.A)(n,u,r)};const a=function(n,t){return!!(null==n?0:n.length)&&i(n,t,0)>-1};const f=function(n,t,r){for(var e=-1,o=null==n?0:n.length;++e<o;)if(r(t,n[e]))return!0;return!1};var s=r(9742),A=r(1426);const l=function(){};var v=r(254);const d=A.A&&1/(0,v.A)(new A.A([,-0]))[1]==1/0?function(n){return new A.A(n)}:l;const h=function(n,t,r){var o=-1,u=a,c=n.length,i=!0,A=[],l=A;if(r)i=!1,u=f;else if(c>=200){var h=t?null:d(n);if(h)return(0,v.A)(h);i=!1,u=s.A,l=new e.A}else l=t?[]:A;n:for(;++o<c;){var g=n[o],p=t?t(g):g;if(g=r||0!==g?g:0,i&&p==p){for(var b=l.length;b--;)if(l[b]===p)continue n;t&&l.push(p),A.push(g)}else u(l,p,r)||(l!==A&&l.push(p),A.push(g))}return A}},9742(n,t,r){r.d(t,{A:()=>e});const e=function(n,t){return n.has(t)}},9203(n,t,r){r.d(t,{A:()=>o});var e=r(1003);const o=function(n){return"function"==typeof n?n:e.A}},7848(n,t,r){r.d(t,{A:()=>s});var e=r(1504),o=r(3033),u=r(1577);var c=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,i=/\\(\\)?/g;const a=function(n){var t=(0,u.A)(n,function(n){return 500===r.size&&r.clear(),n}),r=t.cache;return t}(function(n){var t=[];return 46===n.charCodeAt(0)&&t.push(""),n.replace(c,function(n,r,e,o){t.push(e?o.replace(i,"$1"):r||n)}),t});var f=r(1631);const s=function(n,t){return(0,e.A)(n)?n:(0,o.A)(n,t)?[n]:a((0,f.A)(n))}},535(n,t,r){r.d(t,{A:()=>c});var e=r(8898),o=r(4521),u=r(5773);const c=function(n){return(0,e.A)(n,u.A,o.A)}},4521(n,t,r){r.d(t,{A:()=>i});var e=r(6981),o=r(4608),u=Object.prototype.propertyIsEnumerable,c=Object.getOwnPropertySymbols;const i=c?function(n){return null==n?[]:(n=Object(n),(0,e.A)(c(n),function(t){return u.call(n,t)}))}:o.A},5013(n,t,r){r.d(t,{A:()=>f});var e=r(7848),o=r(4933),u=r(1504),c=r(990),i=r(2857),a=r(9206);const f=function(n,t,r){for(var f=-1,s=(t=(0,e.A)(t,n)).length,A=!1;++f<s;){var l=(0,a.A)(t[f]);if(!(A=null!=n&&r(n,l)))break;n=n[l]}return A||++f!=s?A:!!(s=null==n?0:n.length)&&(0,i.A)(s)&&(0,c.A)(l,s)&&((0,u.A)(n)||(0,o.A)(n))}},3033(n,t,r){r.d(t,{A:()=>i});var e=r(1504),o=r(9581),u=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,c=/^\w*$/;const i=function(n,t){if((0,e.A)(n))return!1;var r=typeof n;return!("number"!=r&&"symbol"!=r&&"boolean"!=r&&null!=n&&!(0,o.A)(n))||(c.test(n)||!u.test(n)||null!=t&&n in Object(t))}},254(n,t,r){r.d(t,{A:()=>e});const e=function(n){var t=-1,r=Array(n.size);return n.forEach(function(n){r[++t]=n}),r}},9206(n,t,r){r.d(t,{A:()=>o});var e=r(9581);const o=function(n){if("string"==typeof n||(0,e.A)(n))return n;var t=n+"";return"0"==t&&1/n==-1/0?"-0":t}},2767(n,t,r){r.d(t,{A:()=>a});var e=r(6981),o=r(8755);const u=function(n,t){var r=[];return(0,o.A)(n,function(n,e,o){t(n,e,o)&&r.push(n)}),r};var c=r(9649),i=r(1504);const a=function(n,t){return((0,i.A)(n)?e.A:u)(n,(0,c.A)(t,3))}},3535(n,t,r){r.d(t,{A:()=>o});var e=r(93);const o=function(n){return(null==n?0:n.length)?(0,e.A)(n,1):[]}},6215(n,t,r){r.d(t,{A:()=>i});var e=r(298),o=r(8755),u=r(9203),c=r(1504);const i=function(n,t){return((0,c.A)(n)?e.A:o.A)(n,(0,u.A)(t))}},8587(n,t,r){r.d(t,{A:()=>u});const e=function(n,t){return null!=n&&t in Object(n)};var o=r(5013);const u=function(n,t){return null!=n&&(0,o.A)(n,t,e)}},9581(n,t,r){r.d(t,{A:()=>u});var e=r(5411),o=r(4341);const u=function(n){return"symbol"==typeof n||(0,o.A)(n)&&"[object Symbol]"==(0,e.A)(n)}},5773(n,t,r){r.d(t,{A:()=>c});var e=r(970),o=r(6260),u=r(8119);const c=function(n){return(0,u.A)(n)?(0,e.A)(n):(0,o.A)(n)}},4551(n,t,r){r.d(t,{A:()=>i});var e=r(7441),o=r(9649),u=r(8255),c=r(1504);const i=function(n,t){return((0,c.A)(n)?e.A:u.A)(n,(0,o.A)(t,3))}},2901(n,t,r){r.d(t,{A:()=>c});var e=r(1098),o=r(2473),u=r(1003);const c=function(n){return n&&n.length?(0,e.A)(n,u.A,o.A):void 0}},6642(n,t,r){r.d(t,{A:()=>a});const e=function(n,t,r,e){var o=-1,u=null==n?0:n.length;for(e&&u&&(r=n[++o]);++o<u;)r=t(r,n[o],o,n);return r};var o=r(8755),u=r(9649);const c=function(n,t,r,e,o){return o(n,function(n,o,u){r=e?(e=!1,n):t(r,n,o,u)}),r};var i=r(1504);const a=function(n,t,r){var a=(0,i.A)(n)?e:c,f=arguments.length<3;return a(n,(0,u.A)(t,4),r,f,o.A)}},4608(n,t,r){r.d(t,{A:()=>e});const e=function(){return[]}},1631(n,t,r){r.d(t,{A:()=>s});var e=r(3200),o=r(7441),u=r(1504),c=r(9581),i=e.A?e.A.prototype:void 0,a=i?i.toString:void 0;const f=function n(t){if("string"==typeof t)return t;if((0,u.A)(t))return(0,o.A)(t,n)+"";if((0,c.A)(t))return a?a.call(t):"";var r=t+"";return"0"==r&&1/t==-1/0?"-0":r};const s=function(n){return null==n?"":f(n)}},9461(n,t,r){r.d(t,{A:()=>u});var e=r(4417),o=r(7012),u=(0,e.K2)((n,t)=>{let r;"sandbox"===t&&(r=(0,o.Ltv)("#i"+n));return("sandbox"===t?(0,o.Ltv)(r.nodes()[0].contentDocument.body):(0,o.Ltv)("body")).select(`[id="${n}"]`)},"getDiagramElement")},7044(n,t,r){r.d(t,{P:()=>u});var e=r(5459),o=r(4417),u=(0,o.K2)((n,t,r,u)=>{n.attr("class",r);const{width:a,height:f,x:s,y:A}=c(n,t);(0,e.a$)(n,f,a,u);const l=i(s,A,a,f,t);n.attr("viewBox",l),o.Rm.debug(`viewBox configured: ${l} with padding: ${t}`)},"setupViewPortForSVG"),c=(0,o.K2)((n,t)=>{const r=n.node()?.getBBox()||{width:0,height:0,x:0,y:0};return{width:r.width+2*t,height:r.height+2*t,x:r.x,y:r.y}},"calculateDimensionsWithPadding"),i=(0,o.K2)((n,t,r,e,o)=>`${n-o} ${t-o} ${r} ${e}`,"createViewBox")}}]);
@@ -1 +1 @@
1
- "use strict";(globalThis.webpackChunk_elliemae_pui_cli=globalThis.webpackChunk_elliemae_pui_cli||[]).push([[1724],{3719(e,n,s){s.r(n),s.d(n,{assets:()=>o,contentTitle:()=>t,default:()=>c,frontMatter:()=>a,metadata:()=>r,toc:()=>d});const r=JSON.parse('{"id":"api/variables/eslintBaseConfig","title":"eslintBaseConfig","description":"Type Declaration","source":"@site/docs/api/variables/eslintBaseConfig.md","sourceDirName":"api/variables","slug":"/api/variables/eslintBaseConfig","permalink":"/cli/api/variables/eslintBaseConfig","draft":false,"unlisted":false,"editUrl":"https://git.elliemae.io/platform-ui/pui-cli.git/docs/api/variables/eslintBaseConfig.md","tags":[],"version":"current","frontMatter":{},"sidebar":"docsSidebar","previous":{"title":"commitlintConfig","permalink":"/cli/api/variables/commitlintConfig"},"next":{"title":"eslintConfig","permalink":"/cli/api/variables/eslintConfig"}}');var l=s(6070),i=s(116);const a={},t="eslintBaseConfig",o={},d=[{value:"Type Declaration",id:"type-declaration",level:2},{value:"env",id:"env",level:3},{value:"env.browser",id:"envbrowser",level:4},{value:"env.es2021",id:"enves2021",level:4},{value:"env.jest",id:"envjest",level:4},{value:"env.node",id:"envnode",level:4},{value:"extends",id:"extends",level:3},{value:"ignorePatterns",id:"ignorepatterns",level:3},{value:"overrides",id:"overrides",level:3},{value:"parser",id:"parser",level:3},{value:"parserOptions",id:"parseroptions",level:3},{value:"parserOptions.babelOptions",id:"parseroptionsbabeloptions",level:4},{value:"parserOptions.babelOptions.plugins",id:"parseroptionsbabeloptionsplugins",level:4},{value:"parserOptions.ecmaFeatures",id:"parseroptionsecmafeatures",level:4},{value:"parserOptions.ecmaFeatures.jsx",id:"parseroptionsecmafeaturesjsx",level:4},{value:"parserOptions.sourceType",id:"parseroptionssourcetype",level:4},{value:"plugins",id:"plugins",level:3},{value:"rules",id:"rules",level:3},{value:"rules.arrow-body-style",id:"rulesarrow-body-style",level:4},{value:"rules.class-methods-use-this",id:"rulesclass-methods-use-this",level:4},{value:"rules.complexity",id:"rulescomplexity",level:4},{value:"rules.eslint-comments/disable-enable-pair",id:"ruleseslint-commentsdisable-enable-pair",level:4},{value:"rules.import/extensions",id:"rulesimportextensions",level:4},{value:"rules.import/imports-first",id:"rulesimportimports-first",level:4},{value:"rules.import/newline-after-import",id:"rulesimportnewline-after-import",level:4},{value:"rules.import/no-dynamic-require",id:"rulesimportno-dynamic-require",level:4},{value:"rules.import/no-extraneous-dependencies",id:"rulesimportno-extraneous-dependencies",level:4},{value:"rules.import/no-named-as-default",id:"rulesimportno-named-as-default",level:4},{value:"rules.import/no-unresolved",id:"rulesimportno-unresolved",level:4},{value:"rules.import/no-webpack-loader-syntax",id:"rulesimportno-webpack-loader-syntax",level:4},{value:"rules.import/prefer-default-export",id:"rulesimportprefer-default-export",level:4},{value:"rules.indent",id:"rulesindent",level:4},{value:"rules.jsdoc/require-jsdoc",id:"rulesjsdocrequire-jsdoc",level:4},{value:"rules.max-depth",id:"rulesmax-depth",level:4},{value:"rules.max-len",id:"rulesmax-len",level:4},{value:"rules.max-lines",id:"rulesmax-lines",level:4},{value:"rules.max-lines-per-function",id:"rulesmax-lines-per-function",level:4},{value:"rules.max-nested-callbacks",id:"rulesmax-nested-callbacks",level:4},{value:"rules.max-params",id:"rulesmax-params",level:4},{value:"rules.max-statements",id:"rulesmax-statements",level:4},{value:"rules.newline-per-chained-call",id:"rulesnewline-per-chained-call",level:4},{value:"rules.no-confusing-arrow",id:"rulesno-confusing-arrow",level:4},{value:"rules.no-console",id:"rulesno-console",level:4},{value:"rules.no-param-reassign",id:"rulesno-param-reassign",level:4},{value:"rules.no-unused-vars",id:"rulesno-unused-vars",level:4},{value:"rules.no-use-before-define",id:"rulesno-use-before-define",level:4},{value:"rules.prefer-template",id:"rulesprefer-template",level:4},{value:"rules.prettier/prettier",id:"rulesprettierprettier",level:4},{value:"rules.require-yield",id:"rulesrequire-yield",level:4},{value:"settings",id:"settings",level:3},{value:"settings.import/resolver",id:"settingsimportresolver",level:4},{value:"settings.import/resolver.node",id:"settingsimportresolvernode",level:4},{value:"settings.import/resolver.node.extensions",id:"settingsimportresolvernodeextensions",level:4},{value:"settings.jest",id:"settingsjest",level:4},{value:"settings.jest.version",id:"settingsjestversion",level:4},{value:"settings.react",id:"settingsreact",level:4},{value:"settings.react.version",id:"settingsreactversion",level:4}];function u(e){const n={code:"code",h1:"h1",h2:"h2",h3:"h3",h4:"h4",header:"header",pre:"pre",...(0,i.R)(),...e.components};return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(n.header,{children:(0,l.jsx)(n.h1,{id:"eslintbaseconfig",children:"eslintBaseConfig"})}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"eslintBaseConfig: {\n env: {\n browser: boolean;\n es2021: boolean;\n jest: boolean;\n node: boolean;\n };\n extends: string[];\n ignorePatterns: string[];\n overrides: {\n files: string[];\n rules: {\n jest/valid-expect: string;\n };\n }[];\n parser: string;\n parserOptions: {\n babelOptions: {\n plugins: string[];\n };\n ecmaFeatures: {\n jsx: boolean;\n };\n sourceType: string;\n };\n plugins: string[];\n rules: {\n arrow-body-style: (string | number)[];\n class-methods-use-this: number;\n complexity: (\n | string\n | {\n max: number;\n })[];\n eslint-comments/disable-enable-pair: number;\n import/extensions: (\n | string\n | number\n | {\n js: string;\n json: string;\n })[];\n import/imports-first: number;\n import/newline-after-import: number;\n import/no-dynamic-require: number;\n import/no-extraneous-dependencies: number;\n import/no-named-as-default: number;\n import/no-unresolved: (\n | number\n | {\n caseSensitive: boolean;\n caseSensitiveStrict: boolean;\n })[];\n import/no-webpack-loader-syntax: number;\n import/prefer-default-export: number;\n indent: (\n | number\n | {\n SwitchCase: number;\n })[];\n jsdoc/require-jsdoc: number;\n max-depth: (\n | string\n | {\n max: number;\n })[];\n max-len: number;\n max-lines: (\n | string\n | {\n max: number;\n skipComments: boolean;\n })[];\n max-lines-per-function: number;\n max-nested-callbacks: (\n | string\n | {\n max: number;\n })[];\n max-params: (\n | string\n | {\n max: number;\n })[];\n max-statements: (\n | string\n | {\n max: number;\n })[];\n newline-per-chained-call: number;\n no-confusing-arrow: number;\n no-console: number;\n no-param-reassign: (\n | string\n | {\n props: boolean;\n })[];\n no-unused-vars: number;\n no-use-before-define: number;\n prefer-template: number;\n prettier/prettier: (string | __module)[];\n require-yield: number;\n };\n settings: {\n import/resolver: {\n node: {\n extensions: string[];\n };\n };\n jest: {\n version: number;\n };\n react: {\n version: string;\n };\n };\n};\n"})}),"\n",(0,l.jsx)(n.h2,{id:"type-declaration",children:"Type Declaration"}),"\n",(0,l.jsx)(n.h3,{id:"env",children:"env"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"env: {\n browser: boolean;\n es2021: boolean;\n jest: boolean;\n node: boolean;\n};\n"})}),"\n",(0,l.jsx)(n.h4,{id:"envbrowser",children:"env.browser"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"browser: boolean = true;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"enves2021",children:"env.es2021"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"es2021: boolean = true;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"envjest",children:"env.jest"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"jest: boolean = true;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"envnode",children:"env.node"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"node: boolean = true;\n"})}),"\n",(0,l.jsx)(n.h3,{id:"extends",children:"extends"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"extends: string[];\n"})}),"\n",(0,l.jsx)(n.h3,{id:"ignorepatterns",children:"ignorePatterns"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"ignorePatterns: string[];\n"})}),"\n",(0,l.jsx)(n.h3,{id:"overrides",children:"overrides"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"overrides: {\n files: string[];\n rules: {\n jest/valid-expect: string;\n };\n}[];\n"})}),"\n",(0,l.jsx)(n.h3,{id:"parser",children:"parser"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:'parser: string = "@babel/eslint-parser";\n'})}),"\n",(0,l.jsx)(n.h3,{id:"parseroptions",children:"parserOptions"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"parserOptions: {\n babelOptions: {\n plugins: string[];\n };\n ecmaFeatures: {\n jsx: boolean;\n };\n sourceType: string;\n};\n"})}),"\n",(0,l.jsx)(n.h4,{id:"parseroptionsbabeloptions",children:"parserOptions.babelOptions"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"babelOptions: {\n plugins: string[];\n};\n"})}),"\n",(0,l.jsx)(n.h4,{id:"parseroptionsbabeloptionsplugins",children:"parserOptions.babelOptions.plugins"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"plugins: string[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"parseroptionsecmafeatures",children:"parserOptions.ecmaFeatures"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"ecmaFeatures: {\n jsx: boolean;\n};\n"})}),"\n",(0,l.jsx)(n.h4,{id:"parseroptionsecmafeaturesjsx",children:"parserOptions.ecmaFeatures.jsx"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"jsx: boolean = true;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"parseroptionssourcetype",children:"parserOptions.sourceType"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:'sourceType: string = "module";\n'})}),"\n",(0,l.jsx)(n.h3,{id:"plugins",children:"plugins"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"plugins: string[] = basePlugins;\n"})}),"\n",(0,l.jsx)(n.h3,{id:"rules",children:"rules"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"rules: {\n arrow-body-style: (string | number)[];\n class-methods-use-this: number;\n complexity: (\n | string\n | {\n max: number;\n })[];\n eslint-comments/disable-enable-pair: number;\n import/extensions: (\n | string\n | number\n | {\n js: string;\n json: string;\n })[];\n import/imports-first: number;\n import/newline-after-import: number;\n import/no-dynamic-require: number;\n import/no-extraneous-dependencies: number;\n import/no-named-as-default: number;\n import/no-unresolved: (\n | number\n | {\n caseSensitive: boolean;\n caseSensitiveStrict: boolean;\n })[];\n import/no-webpack-loader-syntax: number;\n import/prefer-default-export: number;\n indent: (\n | number\n | {\n SwitchCase: number;\n })[];\n jsdoc/require-jsdoc: number;\n max-depth: (\n | string\n | {\n max: number;\n })[];\n max-len: number;\n max-lines: (\n | string\n | {\n max: number;\n skipComments: boolean;\n })[];\n max-lines-per-function: number;\n max-nested-callbacks: (\n | string\n | {\n max: number;\n })[];\n max-params: (\n | string\n | {\n max: number;\n })[];\n max-statements: (\n | string\n | {\n max: number;\n })[];\n newline-per-chained-call: number;\n no-confusing-arrow: number;\n no-console: number;\n no-param-reassign: (\n | string\n | {\n props: boolean;\n })[];\n no-unused-vars: number;\n no-use-before-define: number;\n prefer-template: number;\n prettier/prettier: (string | __module)[];\n require-yield: number;\n} = baseRules;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesarrow-body-style",children:"rules.arrow-body-style"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"arrow-body-style: (string | number)[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesclass-methods-use-this",children:"rules.class-methods-use-this"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"class-methods-use-this: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulescomplexity",children:"rules.complexity"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"complexity: (\n | string\n | {\n max: number;\n})[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"ruleseslint-commentsdisable-enable-pair",children:"rules.eslint-comments/disable-enable-pair"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"eslint-comments/disable-enable-pair: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesimportextensions",children:"rules.import/extensions"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"import/extensions: (\n | string\n | number\n | {\n js: string;\n json: string;\n})[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesimportimports-first",children:"rules.import/imports-first"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"import/imports-first: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesimportnewline-after-import",children:"rules.import/newline-after-import"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"import/newline-after-import: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesimportno-dynamic-require",children:"rules.import/no-dynamic-require"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"import/no-dynamic-require: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesimportno-extraneous-dependencies",children:"rules.import/no-extraneous-dependencies"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"import/no-extraneous-dependencies: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesimportno-named-as-default",children:"rules.import/no-named-as-default"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"import/no-named-as-default: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesimportno-unresolved",children:"rules.import/no-unresolved"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"import/no-unresolved: (\n | number\n | {\n caseSensitive: boolean;\n caseSensitiveStrict: boolean;\n})[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesimportno-webpack-loader-syntax",children:"rules.import/no-webpack-loader-syntax"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"import/no-webpack-loader-syntax: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesimportprefer-default-export",children:"rules.import/prefer-default-export"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"import/prefer-default-export: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesindent",children:"rules.indent"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"indent: (\n | number\n | {\n SwitchCase: number;\n})[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesjsdocrequire-jsdoc",children:"rules.jsdoc/require-jsdoc"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"jsdoc/require-jsdoc: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesmax-depth",children:"rules.max-depth"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"max-depth: (\n | string\n | {\n max: number;\n})[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesmax-len",children:"rules.max-len"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"max-len: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesmax-lines",children:"rules.max-lines"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"max-lines: (\n | string\n | {\n max: number;\n skipComments: boolean;\n})[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesmax-lines-per-function",children:"rules.max-lines-per-function"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"max-lines-per-function: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesmax-nested-callbacks",children:"rules.max-nested-callbacks"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"max-nested-callbacks: (\n | string\n | {\n max: number;\n})[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesmax-params",children:"rules.max-params"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"max-params: (\n | string\n | {\n max: number;\n})[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesmax-statements",children:"rules.max-statements"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"max-statements: (\n | string\n | {\n max: number;\n})[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesnewline-per-chained-call",children:"rules.newline-per-chained-call"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"newline-per-chained-call: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesno-confusing-arrow",children:"rules.no-confusing-arrow"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"no-confusing-arrow: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesno-console",children:"rules.no-console"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"no-console: number = 1;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesno-param-reassign",children:"rules.no-param-reassign"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"no-param-reassign: (\n | string\n | {\n props: boolean;\n})[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesno-unused-vars",children:"rules.no-unused-vars"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"no-unused-vars: number = 2;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesno-use-before-define",children:"rules.no-use-before-define"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"no-use-before-define: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesprefer-template",children:"rules.prefer-template"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"prefer-template: number = 2;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesprettierprettier",children:"rules.prettier/prettier"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"prettier/prettier: (string | __module)[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesrequire-yield",children:"rules.require-yield"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"require-yield: number = 0;\n"})}),"\n",(0,l.jsx)(n.h3,{id:"settings",children:"settings"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"settings: {\n import/resolver: {\n node: {\n extensions: string[];\n };\n };\n jest: {\n version: number;\n };\n react: {\n version: string;\n };\n};\n"})}),"\n",(0,l.jsx)(n.h4,{id:"settingsimportresolver",children:"settings.import/resolver"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"import/resolver: {\n node: {\n extensions: string[];\n };\n};\n"})}),"\n",(0,l.jsx)(n.h4,{id:"settingsimportresolvernode",children:"settings.import/resolver.node"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"node: {\n extensions: string[];\n};\n"})}),"\n",(0,l.jsx)(n.h4,{id:"settingsimportresolvernodeextensions",children:"settings.import/resolver.node.extensions"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"extensions: string[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"settingsjest",children:"settings.jest"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"jest: {\n version: number;\n};\n"})}),"\n",(0,l.jsx)(n.h4,{id:"settingsjestversion",children:"settings.jest.version"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"version: number = 28;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"settingsreact",children:"settings.react"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"react: {\n version: string;\n};\n"})}),"\n",(0,l.jsx)(n.h4,{id:"settingsreactversion",children:"settings.react.version"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:'version: string = "detect";\n'})})]})}function c(e={}){const{wrapper:n}={...(0,i.R)(),...e.components};return n?(0,l.jsx)(n,{...e,children:(0,l.jsx)(u,{...e})}):u(e)}}}]);
1
+ "use strict";(globalThis.webpackChunk_elliemae_pui_cli=globalThis.webpackChunk_elliemae_pui_cli||[]).push([[1724],{7156(e,n,s){s.r(n),s.d(n,{assets:()=>o,contentTitle:()=>t,default:()=>c,frontMatter:()=>a,metadata:()=>r,toc:()=>d});const r=JSON.parse('{"id":"api/variables/eslintBaseConfig","title":"eslintBaseConfig","description":"Type Declaration","source":"@site/docs/api/variables/eslintBaseConfig.md","sourceDirName":"api/variables","slug":"/api/variables/eslintBaseConfig","permalink":"/cli/api/variables/eslintBaseConfig","draft":false,"unlisted":false,"editUrl":"https://git.elliemae.io/platform-ui/pui-cli.git/docs/api/variables/eslintBaseConfig.md","tags":[],"version":"current","frontMatter":{},"sidebar":"docsSidebar","previous":{"title":"commitlintConfig","permalink":"/cli/api/variables/commitlintConfig"},"next":{"title":"eslintConfig","permalink":"/cli/api/variables/eslintConfig"}}');var l=s(6070),i=s(116);const a={},t="eslintBaseConfig",o={},d=[{value:"Type Declaration",id:"type-declaration",level:2},{value:"env",id:"env",level:3},{value:"env.browser",id:"envbrowser",level:4},{value:"env.es2021",id:"enves2021",level:4},{value:"env.jest",id:"envjest",level:4},{value:"env.node",id:"envnode",level:4},{value:"extends",id:"extends",level:3},{value:"ignorePatterns",id:"ignorepatterns",level:3},{value:"overrides",id:"overrides",level:3},{value:"parser",id:"parser",level:3},{value:"parserOptions",id:"parseroptions",level:3},{value:"parserOptions.babelOptions",id:"parseroptionsbabeloptions",level:4},{value:"parserOptions.babelOptions.plugins",id:"parseroptionsbabeloptionsplugins",level:4},{value:"parserOptions.ecmaFeatures",id:"parseroptionsecmafeatures",level:4},{value:"parserOptions.ecmaFeatures.jsx",id:"parseroptionsecmafeaturesjsx",level:4},{value:"parserOptions.sourceType",id:"parseroptionssourcetype",level:4},{value:"plugins",id:"plugins",level:3},{value:"rules",id:"rules",level:3},{value:"rules.arrow-body-style",id:"rulesarrow-body-style",level:4},{value:"rules.class-methods-use-this",id:"rulesclass-methods-use-this",level:4},{value:"rules.complexity",id:"rulescomplexity",level:4},{value:"rules.eslint-comments/disable-enable-pair",id:"ruleseslint-commentsdisable-enable-pair",level:4},{value:"rules.import/extensions",id:"rulesimportextensions",level:4},{value:"rules.import/imports-first",id:"rulesimportimports-first",level:4},{value:"rules.import/newline-after-import",id:"rulesimportnewline-after-import",level:4},{value:"rules.import/no-dynamic-require",id:"rulesimportno-dynamic-require",level:4},{value:"rules.import/no-extraneous-dependencies",id:"rulesimportno-extraneous-dependencies",level:4},{value:"rules.import/no-named-as-default",id:"rulesimportno-named-as-default",level:4},{value:"rules.import/no-unresolved",id:"rulesimportno-unresolved",level:4},{value:"rules.import/no-webpack-loader-syntax",id:"rulesimportno-webpack-loader-syntax",level:4},{value:"rules.import/prefer-default-export",id:"rulesimportprefer-default-export",level:4},{value:"rules.indent",id:"rulesindent",level:4},{value:"rules.jsdoc/require-jsdoc",id:"rulesjsdocrequire-jsdoc",level:4},{value:"rules.max-depth",id:"rulesmax-depth",level:4},{value:"rules.max-len",id:"rulesmax-len",level:4},{value:"rules.max-lines",id:"rulesmax-lines",level:4},{value:"rules.max-lines-per-function",id:"rulesmax-lines-per-function",level:4},{value:"rules.max-nested-callbacks",id:"rulesmax-nested-callbacks",level:4},{value:"rules.max-params",id:"rulesmax-params",level:4},{value:"rules.max-statements",id:"rulesmax-statements",level:4},{value:"rules.newline-per-chained-call",id:"rulesnewline-per-chained-call",level:4},{value:"rules.no-confusing-arrow",id:"rulesno-confusing-arrow",level:4},{value:"rules.no-console",id:"rulesno-console",level:4},{value:"rules.no-param-reassign",id:"rulesno-param-reassign",level:4},{value:"rules.no-unused-vars",id:"rulesno-unused-vars",level:4},{value:"rules.no-use-before-define",id:"rulesno-use-before-define",level:4},{value:"rules.prefer-template",id:"rulesprefer-template",level:4},{value:"rules.prettier/prettier",id:"rulesprettierprettier",level:4},{value:"rules.require-yield",id:"rulesrequire-yield",level:4},{value:"settings",id:"settings",level:3},{value:"settings.import/resolver",id:"settingsimportresolver",level:4},{value:"settings.import/resolver.node",id:"settingsimportresolvernode",level:4},{value:"settings.import/resolver.node.extensions",id:"settingsimportresolvernodeextensions",level:4},{value:"settings.jest",id:"settingsjest",level:4},{value:"settings.jest.version",id:"settingsjestversion",level:4},{value:"settings.react",id:"settingsreact",level:4},{value:"settings.react.version",id:"settingsreactversion",level:4}];function u(e){const n={code:"code",h1:"h1",h2:"h2",h3:"h3",h4:"h4",header:"header",pre:"pre",...(0,i.R)(),...e.components};return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(n.header,{children:(0,l.jsx)(n.h1,{id:"eslintbaseconfig",children:"eslintBaseConfig"})}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"eslintBaseConfig: {\n env: {\n browser: boolean;\n es2021: boolean;\n jest: boolean;\n node: boolean;\n };\n extends: string[];\n ignorePatterns: string[];\n overrides: {\n files: string[];\n rules: {\n jest/valid-expect: string;\n };\n }[];\n parser: string;\n parserOptions: {\n babelOptions: {\n plugins: string[];\n };\n ecmaFeatures: {\n jsx: boolean;\n };\n sourceType: string;\n };\n plugins: string[];\n rules: {\n arrow-body-style: (string | number)[];\n class-methods-use-this: number;\n complexity: (\n | string\n | {\n max: number;\n })[];\n eslint-comments/disable-enable-pair: number;\n import/extensions: (\n | string\n | number\n | {\n js: string;\n json: string;\n })[];\n import/imports-first: number;\n import/newline-after-import: number;\n import/no-dynamic-require: number;\n import/no-extraneous-dependencies: number;\n import/no-named-as-default: number;\n import/no-unresolved: (\n | number\n | {\n caseSensitive: boolean;\n caseSensitiveStrict: boolean;\n })[];\n import/no-webpack-loader-syntax: number;\n import/prefer-default-export: number;\n indent: (\n | number\n | {\n SwitchCase: number;\n })[];\n jsdoc/require-jsdoc: number;\n max-depth: (\n | string\n | {\n max: number;\n })[];\n max-len: number;\n max-lines: (\n | string\n | {\n max: number;\n skipComments: boolean;\n })[];\n max-lines-per-function: number;\n max-nested-callbacks: (\n | string\n | {\n max: number;\n })[];\n max-params: (\n | string\n | {\n max: number;\n })[];\n max-statements: (\n | string\n | {\n max: number;\n })[];\n newline-per-chained-call: number;\n no-confusing-arrow: number;\n no-console: number;\n no-param-reassign: (\n | string\n | {\n props: boolean;\n })[];\n no-unused-vars: number;\n no-use-before-define: number;\n prefer-template: number;\n prettier/prettier: (string | __module)[];\n require-yield: number;\n };\n settings: {\n import/resolver: {\n node: {\n extensions: string[];\n };\n };\n jest: {\n version: number;\n };\n react: {\n version: string;\n };\n };\n};\n"})}),"\n",(0,l.jsx)(n.h2,{id:"type-declaration",children:"Type Declaration"}),"\n",(0,l.jsx)(n.h3,{id:"env",children:"env"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"env: {\n browser: boolean;\n es2021: boolean;\n jest: boolean;\n node: boolean;\n};\n"})}),"\n",(0,l.jsx)(n.h4,{id:"envbrowser",children:"env.browser"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"browser: boolean = true;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"enves2021",children:"env.es2021"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"es2021: boolean = true;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"envjest",children:"env.jest"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"jest: boolean = true;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"envnode",children:"env.node"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"node: boolean = true;\n"})}),"\n",(0,l.jsx)(n.h3,{id:"extends",children:"extends"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"extends: string[];\n"})}),"\n",(0,l.jsx)(n.h3,{id:"ignorepatterns",children:"ignorePatterns"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"ignorePatterns: string[];\n"})}),"\n",(0,l.jsx)(n.h3,{id:"overrides",children:"overrides"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"overrides: {\n files: string[];\n rules: {\n jest/valid-expect: string;\n };\n}[];\n"})}),"\n",(0,l.jsx)(n.h3,{id:"parser",children:"parser"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:'parser: string = "@babel/eslint-parser";\n'})}),"\n",(0,l.jsx)(n.h3,{id:"parseroptions",children:"parserOptions"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"parserOptions: {\n babelOptions: {\n plugins: string[];\n };\n ecmaFeatures: {\n jsx: boolean;\n };\n sourceType: string;\n};\n"})}),"\n",(0,l.jsx)(n.h4,{id:"parseroptionsbabeloptions",children:"parserOptions.babelOptions"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"babelOptions: {\n plugins: string[];\n};\n"})}),"\n",(0,l.jsx)(n.h4,{id:"parseroptionsbabeloptionsplugins",children:"parserOptions.babelOptions.plugins"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"plugins: string[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"parseroptionsecmafeatures",children:"parserOptions.ecmaFeatures"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"ecmaFeatures: {\n jsx: boolean;\n};\n"})}),"\n",(0,l.jsx)(n.h4,{id:"parseroptionsecmafeaturesjsx",children:"parserOptions.ecmaFeatures.jsx"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"jsx: boolean = true;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"parseroptionssourcetype",children:"parserOptions.sourceType"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:'sourceType: string = "module";\n'})}),"\n",(0,l.jsx)(n.h3,{id:"plugins",children:"plugins"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"plugins: string[] = basePlugins;\n"})}),"\n",(0,l.jsx)(n.h3,{id:"rules",children:"rules"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"rules: {\n arrow-body-style: (string | number)[];\n class-methods-use-this: number;\n complexity: (\n | string\n | {\n max: number;\n })[];\n eslint-comments/disable-enable-pair: number;\n import/extensions: (\n | string\n | number\n | {\n js: string;\n json: string;\n })[];\n import/imports-first: number;\n import/newline-after-import: number;\n import/no-dynamic-require: number;\n import/no-extraneous-dependencies: number;\n import/no-named-as-default: number;\n import/no-unresolved: (\n | number\n | {\n caseSensitive: boolean;\n caseSensitiveStrict: boolean;\n })[];\n import/no-webpack-loader-syntax: number;\n import/prefer-default-export: number;\n indent: (\n | number\n | {\n SwitchCase: number;\n })[];\n jsdoc/require-jsdoc: number;\n max-depth: (\n | string\n | {\n max: number;\n })[];\n max-len: number;\n max-lines: (\n | string\n | {\n max: number;\n skipComments: boolean;\n })[];\n max-lines-per-function: number;\n max-nested-callbacks: (\n | string\n | {\n max: number;\n })[];\n max-params: (\n | string\n | {\n max: number;\n })[];\n max-statements: (\n | string\n | {\n max: number;\n })[];\n newline-per-chained-call: number;\n no-confusing-arrow: number;\n no-console: number;\n no-param-reassign: (\n | string\n | {\n props: boolean;\n })[];\n no-unused-vars: number;\n no-use-before-define: number;\n prefer-template: number;\n prettier/prettier: (string | __module)[];\n require-yield: number;\n} = baseRules;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesarrow-body-style",children:"rules.arrow-body-style"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"arrow-body-style: (string | number)[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesclass-methods-use-this",children:"rules.class-methods-use-this"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"class-methods-use-this: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulescomplexity",children:"rules.complexity"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"complexity: (\n | string\n | {\n max: number;\n})[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"ruleseslint-commentsdisable-enable-pair",children:"rules.eslint-comments/disable-enable-pair"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"eslint-comments/disable-enable-pair: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesimportextensions",children:"rules.import/extensions"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"import/extensions: (\n | string\n | number\n | {\n js: string;\n json: string;\n})[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesimportimports-first",children:"rules.import/imports-first"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"import/imports-first: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesimportnewline-after-import",children:"rules.import/newline-after-import"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"import/newline-after-import: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesimportno-dynamic-require",children:"rules.import/no-dynamic-require"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"import/no-dynamic-require: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesimportno-extraneous-dependencies",children:"rules.import/no-extraneous-dependencies"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"import/no-extraneous-dependencies: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesimportno-named-as-default",children:"rules.import/no-named-as-default"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"import/no-named-as-default: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesimportno-unresolved",children:"rules.import/no-unresolved"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"import/no-unresolved: (\n | number\n | {\n caseSensitive: boolean;\n caseSensitiveStrict: boolean;\n})[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesimportno-webpack-loader-syntax",children:"rules.import/no-webpack-loader-syntax"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"import/no-webpack-loader-syntax: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesimportprefer-default-export",children:"rules.import/prefer-default-export"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"import/prefer-default-export: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesindent",children:"rules.indent"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"indent: (\n | number\n | {\n SwitchCase: number;\n})[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesjsdocrequire-jsdoc",children:"rules.jsdoc/require-jsdoc"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"jsdoc/require-jsdoc: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesmax-depth",children:"rules.max-depth"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"max-depth: (\n | string\n | {\n max: number;\n})[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesmax-len",children:"rules.max-len"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"max-len: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesmax-lines",children:"rules.max-lines"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"max-lines: (\n | string\n | {\n max: number;\n skipComments: boolean;\n})[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesmax-lines-per-function",children:"rules.max-lines-per-function"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"max-lines-per-function: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesmax-nested-callbacks",children:"rules.max-nested-callbacks"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"max-nested-callbacks: (\n | string\n | {\n max: number;\n})[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesmax-params",children:"rules.max-params"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"max-params: (\n | string\n | {\n max: number;\n})[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesmax-statements",children:"rules.max-statements"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"max-statements: (\n | string\n | {\n max: number;\n})[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesnewline-per-chained-call",children:"rules.newline-per-chained-call"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"newline-per-chained-call: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesno-confusing-arrow",children:"rules.no-confusing-arrow"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"no-confusing-arrow: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesno-console",children:"rules.no-console"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"no-console: number = 1;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesno-param-reassign",children:"rules.no-param-reassign"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"no-param-reassign: (\n | string\n | {\n props: boolean;\n})[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesno-unused-vars",children:"rules.no-unused-vars"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"no-unused-vars: number = 2;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesno-use-before-define",children:"rules.no-use-before-define"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"no-use-before-define: number = 0;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesprefer-template",children:"rules.prefer-template"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"prefer-template: number = 2;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesprettierprettier",children:"rules.prettier/prettier"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"prettier/prettier: (string | __module)[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"rulesrequire-yield",children:"rules.require-yield"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"require-yield: number = 0;\n"})}),"\n",(0,l.jsx)(n.h3,{id:"settings",children:"settings"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"settings: {\n import/resolver: {\n node: {\n extensions: string[];\n };\n };\n jest: {\n version: number;\n };\n react: {\n version: string;\n };\n};\n"})}),"\n",(0,l.jsx)(n.h4,{id:"settingsimportresolver",children:"settings.import/resolver"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"import/resolver: {\n node: {\n extensions: string[];\n };\n};\n"})}),"\n",(0,l.jsx)(n.h4,{id:"settingsimportresolvernode",children:"settings.import/resolver.node"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"node: {\n extensions: string[];\n};\n"})}),"\n",(0,l.jsx)(n.h4,{id:"settingsimportresolvernodeextensions",children:"settings.import/resolver.node.extensions"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"extensions: string[];\n"})}),"\n",(0,l.jsx)(n.h4,{id:"settingsjest",children:"settings.jest"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"jest: {\n version: number;\n};\n"})}),"\n",(0,l.jsx)(n.h4,{id:"settingsjestversion",children:"settings.jest.version"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"version: number = 28;\n"})}),"\n",(0,l.jsx)(n.h4,{id:"settingsreact",children:"settings.react"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:"react: {\n version: string;\n};\n"})}),"\n",(0,l.jsx)(n.h4,{id:"settingsreactversion",children:"settings.react.version"}),"\n",(0,l.jsx)(n.pre,{children:(0,l.jsx)(n.code,{className:"language-ts",children:'version: string = "detect";\n'})})]})}function c(e={}){const{wrapper:n}={...(0,i.R)(),...e.components};return n?(0,l.jsx)(n,{...e,children:(0,l.jsx)(u,{...e})}):u(e)}}}]);
@@ -1 +1 @@
1
- "use strict";(globalThis.webpackChunk_elliemae_pui_cli=globalThis.webpackChunk_elliemae_pui_cli||[]).push([[2577],{7584(e,i,n){n.r(i),n.d(i,{assets:()=>o,contentTitle:()=>r,default:()=>m,frontMatter:()=>s,metadata:()=>t,toc:()=>c});const t=JSON.parse('{"id":"api/variables/commitlintConfig","title":"commitlintConfig","description":"Type Declaration","source":"@site/docs/api/variables/commitlintConfig.md","sourceDirName":"api/variables","slug":"/api/variables/commitlintConfig","permalink":"/cli/api/variables/commitlintConfig","draft":false,"unlisted":false,"editUrl":"https://git.elliemae.io/platform-ui/pui-cli.git/docs/api/variables/commitlintConfig.md","tags":[],"version":"current","frontMatter":{},"sidebar":"docsSidebar","previous":{"title":"babelConfig","permalink":"/cli/api/variables/babelConfig"},"next":{"title":"eslintBaseConfig","permalink":"/cli/api/variables/eslintBaseConfig"}}');var a=n(6070),l=n(116);const s={},r="commitlintConfig",o={},c=[{value:"Type Declaration",id:"type-declaration",level:2},{value:"extends",id:"extends",level:3}];function d(e){const i={code:"code",h1:"h1",h2:"h2",h3:"h3",header:"header",pre:"pre",...(0,l.R)(),...e.components};return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(i.header,{children:(0,a.jsx)(i.h1,{id:"commitlintconfig",children:"commitlintConfig"})}),"\n",(0,a.jsx)(i.pre,{children:(0,a.jsx)(i.code,{className:"language-ts",children:"commitlintConfig: {\n extends: string[];\n};\n"})}),"\n",(0,a.jsx)(i.h2,{id:"type-declaration",children:"Type Declaration"}),"\n",(0,a.jsx)(i.h3,{id:"extends",children:"extends"}),"\n",(0,a.jsx)(i.pre,{children:(0,a.jsx)(i.code,{className:"language-ts",children:"extends: string[];\n"})})]})}function m(e={}){const{wrapper:i}={...(0,l.R)(),...e.components};return i?(0,a.jsx)(i,{...e,children:(0,a.jsx)(d,{...e})}):d(e)}}}]);
1
+ "use strict";(globalThis.webpackChunk_elliemae_pui_cli=globalThis.webpackChunk_elliemae_pui_cli||[]).push([[2577],{6581(e,i,n){n.r(i),n.d(i,{assets:()=>o,contentTitle:()=>r,default:()=>m,frontMatter:()=>s,metadata:()=>t,toc:()=>c});const t=JSON.parse('{"id":"api/variables/commitlintConfig","title":"commitlintConfig","description":"Type Declaration","source":"@site/docs/api/variables/commitlintConfig.md","sourceDirName":"api/variables","slug":"/api/variables/commitlintConfig","permalink":"/cli/api/variables/commitlintConfig","draft":false,"unlisted":false,"editUrl":"https://git.elliemae.io/platform-ui/pui-cli.git/docs/api/variables/commitlintConfig.md","tags":[],"version":"current","frontMatter":{},"sidebar":"docsSidebar","previous":{"title":"babelConfig","permalink":"/cli/api/variables/babelConfig"},"next":{"title":"eslintBaseConfig","permalink":"/cli/api/variables/eslintBaseConfig"}}');var a=n(6070),l=n(116);const s={},r="commitlintConfig",o={},c=[{value:"Type Declaration",id:"type-declaration",level:2},{value:"extends",id:"extends",level:3}];function d(e){const i={code:"code",h1:"h1",h2:"h2",h3:"h3",header:"header",pre:"pre",...(0,l.R)(),...e.components};return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(i.header,{children:(0,a.jsx)(i.h1,{id:"commitlintconfig",children:"commitlintConfig"})}),"\n",(0,a.jsx)(i.pre,{children:(0,a.jsx)(i.code,{className:"language-ts",children:"commitlintConfig: {\n extends: string[];\n};\n"})}),"\n",(0,a.jsx)(i.h2,{id:"type-declaration",children:"Type Declaration"}),"\n",(0,a.jsx)(i.h3,{id:"extends",children:"extends"}),"\n",(0,a.jsx)(i.pre,{children:(0,a.jsx)(i.code,{className:"language-ts",children:"extends: string[];\n"})})]})}function m(e={}){const{wrapper:i}={...(0,l.R)(),...e.components};return i?(0,a.jsx)(i,{...e,children:(0,a.jsx)(d,{...e})}):d(e)}}}]);