docs: def path(self, *args: typing.List[str]) -> typing.Union[None, str]:
          """
          Creates an absolute path in the project source directory from the
          relative path components.
  
          :param args:
              Relative components for creating a path within the project source
              directory
          :return:
              An absolute path to the specified file or directory within the
              project source directory.
          """
          if not self._project:
              return None
  
          return environ.paths.clean(os.path.join(
              self._project.source_directory,
              *args
          ))