class_docstr: FileCollectionController inherits from BaseController and manages business logic related to the
  file system.
  
  Methods
  -------
  create(paths)
      create a file collection within the project
  list()
      list all file collections within the project
  delete(id)
      delete the specified file collection from the project
class_docstr_tok: ["FileCollectionController","inherits","from","BaseController","and","manages","business","logic","related","to","the","file","system",".","Methods","--","--","--","-","create","(","paths",")","create","a","file","collection","within","the","project","list","(",")","list","all","file","collections","within","the","project","delete","(","id",")","delete","the","specified","file","collection","from","the","project"]
docstr: Checks if there exists any unstaged changes for the file collection in the files directory
  If the folder does not exist, then there are no unstaged changes.
  
  Returns
  -------
  bool
      False if already staged else error
  
  Raises
  ------
  FileNotInitialized
      error if file driver is not initialized, otherwise cannot check unstaged changes
  UnstagedChanges
      error if not there exists unstaged changes in files
docstr_tok: ["Checks","if","there","exists","any","unstaged","changes","for","the","file","collection","in","the","files","directory","If","the","folder","does","not","exist",",","then","there","are","no","unstaged","changes",".","Returns","--","--","--","-","bool","False","if","already","staged","else","error","Raises","--","--","--","FileNotInitialized","error","if","file","driver","is","not","initialized",",","otherwise","can","not","check","unstaged","changes","UnstagedChanges","error","if","not","there","exists","unstaged","changes","in","files"]
code: def check_unstaged_changes(self):
      """Checks if there exists any unstaged changes for the file collection in the files directory
      If the folder does not exist, then there are no unstaged changes.
  
      Returns
      -------
      bool
          False if already staged else error
  
      Raises
      ------
      FileNotInitialized
          error if file driver is not initialized, otherwise cannot check unstaged changes
      UnstagedChanges
          error if not there exists unstaged changes in files
      """
      if not self.file_driver.is_initialized:
          raise FileNotInitialized()
  
      # Check if unstaged changes exist
      if self._has_unstaged_changes():
          raise UnstagedChanges()
  
      return False
  
file_path: datmo/datmo/core/controller/file/file_collection.py
imports: import os
  import shutil
  from datmo.core.util.i18n import get
  from datmo.core.controller.base import BaseController
  from datmo.core.util.misc_functions import list_all_filepaths, get_datmo_temp_path
  from datmo.core.entity.file_collection import FileCollection
  from datmo.core.util.exceptions import PathDoesNotExist, EnvironmentInitFailed, FileNotInitialized, UnstagedChanges
label_desc: Use image node_id 9 for calling the FileCollectionController obj's underlying member method code with example usage: obj.check_unstaged_changes() and returns: False