docs: def js(self, name=None):
          """
          Returns all needed Javascript filepaths for given config name (if
          given) or every registred config instead (if no name is given).
  
          Keyword Arguments:
              name (string): Specific config name to use instead of all.
  
          Returns:
              list: List of Javascript file paths.
          """
          filepaths = copy.copy(settings.CODEMIRROR_BASE_JS)
  
          configs = self.get_configs(name)
          names = sorted(configs)
  
          # Addons first
          for name in names:
              opts = configs[name]
              for item in opts.get('addons', []):
                  if item not in filepaths:
                      filepaths.append(item)
  
          # Process modes
          for name in names:
              opts = configs[name]
              for item in opts['modes']:
                  resolved = self.resolve_mode(item)
                  if resolved not in filepaths:
                      filepaths.append(resolved)
  
          return filepaths