-
Notifications
You must be signed in to change notification settings - Fork 54
feat:eslint plugin consistency rules #3963
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat:eslint plugin consistency rules #3963
Conversation
voicis
commented
Jan 5, 2026
- Add page name to rules
- Clean up types
- Add missing page names in v2 manifest paths
|
| for (const diagnostic of applicableDiagnostics) { | ||
| const paths = findDeepestExistingPath(diagnostic.manifest.object, diagnostic.manifest.propertyPath); | ||
| if (paths) { | ||
| matchers[sourceCode.createMatcherString(paths.validatedPath)] = createJsonVisitorHandler( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
we need to provide a way to pass a flag for strict and non-strict matcher. see 1fd3fa5#diff-200f7e27aa5e3809c41c544dbf53d69c8043508b6242c7e5ee4fe72eb5d446a8R65
| configuration: { | ||
| tableType: { | ||
| configurationPath: [ | ||
| ...pathToPage, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
you may need to adapt for creationMode config after resolving conflicts.
…x-consistency' into feat/eslint-plugin-consistency-rules
…x-consistency' into feat/eslint-plugin-consistency-rules
e3c4018
into
SAP:feat/eslint-plugin-fiori-tools-ux-consistency
…tency (#3778) * feat: replace custom plugin with ux consistency * fix: preserve identation on fix * test: add flex enabled unit test * fix: update eslint 9 config * feat: export plugin configs * fix: remove unreachable rule case * fix: update eslint config in package * setup language * refactor: use member node rule * refactor: update rule utils * fix: re-remove yaml dependency * fix: set language consts * test: update language name * fix: update plugin config * feat: update dependencies * feat: update package configs * feat: update plugin configs * feat: update rules and utils * feat: update types * test: add unit tests * fix: reset lockfile * chore: update lockfile * feat: fiori language * feat: diagnostic caching * chore: expose diagnostics cache * feat: update flexenabled rule * refactor: app indexing * fix: rule names * feat: get object page tables * fix: get entity type * refactor: clean up * feat: fe v2 object page * chore: lint errors * chore: update lock file * chore: fix naming * test: fix failing tests * chore: lint errors * refactor: fe v4 preprocessing * fix: windows url to path * test: add full path * docs: update rule documentation * test: fix for full path * fix: export diagnostics * feat: add v4 table copy rule * fix: get object page entity type * chore: clean up names * chore: changeset * feat: creation mode for v2 * chore: fix lint errors and tests * Linting auto fix commit * refactor: reduce code duplication * test: fix for windows * test: increase coverage * test: annotation source code * fix: adapt type definition for v4 * fix: remove table config from page * fix: correct configuration path and unified matcher methods * fix: add creation mode for v4 * fix: renmae file * feat:eslint plugin consistency rules (#3963) * refactor: simplify json rules * fix: page name for fe v2 * feat: add page names to diagnostics * chore: remove commented code * chore: fix lint errors * chore: remove redundant code * test: add tests * chore: fix lint errors * Linting auto fix commit * fix: access table type in data * fix: enable tests * fix: unified message for v2 and v4 * Linting auto fix commit * test: fe v4 config * test: source code * fix: add unit test for getProjectArtifacts * test: enable rule skipped tests * fix: recommended value for table type * fix: report on table if app level has wrong value * fix: donot pass page name on application level * fix: sonar issues * refactor: issues in project-context * fix: address sonar cloud issues * fix: adapt readme file * refactor: issues in parser * refactor: issues in v4 * fix: some sonar issues * fix: cognitive complexity * Linting auto fix commit * fix: cognitive complexity * fix: adapt typescript type * Linting auto fix commit * fix: failing test * fix: cognitive complexity for ve-v2 * Linting auto fix commit * refactor: complexity * fix: address some sonar issues * Linting auto fix commit * fix: sonar issues * fix: sonar issues * feat: add copy rule md doc * fix: add rule documentation for create mode * fix: adapt readme file * fix: some of review comments * Linting auto fix commit * fix: lint * fix: only show message if table type is defeind and valid values are defined * fix: add default value for creation mode * fix: test for v4 valid values --------- Co-authored-by: C5310768 <alina.govoruhina@sap.com> Co-authored-by: AlinaGovoruhina <125539086+AlinaGovoruhina@users.noreply.github.com> Co-authored-by: Davis Voicescuks <davis.voicescuks@sap.com> Co-authored-by: Maruf Rasully <100434800+marufrasully@users.noreply.github.com> Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> Co-authored-by: Klaus Keller <66327622+Klaus-Keller@users.noreply.github.com> Co-authored-by: Klaus Keller <klaus.keller@sap.com> Co-authored-by: Dominik Heim <73878785+heimwege@users.noreply.github.com>