@sencha/extjs/no-private-config-usage

Report the usage of a private config

Rule Details

This rule will report when a private config is being used.

In this example, allowDomMove is a private config of the Ext.container.Viewport Class and has been around since version 4. A problem will be reported when using this config with a fromVersion or toVersion in the extjs settings set to a value >= 4.

ESLint Config

  1. {
  2. "plugins": [
  3. "@sencha/extjs"
  4. ],
  5. "extends": [
  6. // this rule is in the recommended configuration list
  7. // so including this line enables this rule
  8. "plugin:@sencha/extjs/recommended"
  9. ],
  10. "settings": {
  11. "extjs": {
  12. "toolkit": "classic",
  13. "fromVersion": 4,
  14. "toVersion": 'latest'
  15. }
  16. },
  17. "rules": {
  18. // optionally, you can specify the rule explicitly
  19. // and the errorlevel and any options set here
  20. // will override any defaults from the 'extends' section
  21. "@sencha/extjs/no-private-config-usage": "warn"
  22. }
  23. }

JavaScript

  1. Ext.create('Ext.container.Viewport', {
  2. layout: 'border',
  3. allowDomMove: true,
  4. items: []
  5. });

Problem Message reported by ESLint

  1. Usage of private config 'allowDomMove' found for 'Ext.container.Viewport'