Module: Smdev::CursorRules::FileOperations

Defined in:
lib/smdev/cursor_rules/file_operations.rb

Overview

Handles file operations for cursor rules installation

Constant Summary collapse

CURSOR_DIR =

Constants for directory paths

'.cursor'
DOCS_DIR =
'docs'
CURSOR_SUBDIRS =
['rules', 'templates'].freeze

Instance Method Summary collapse

Instance Method Details

#copy_cursor_filesObject

Copies cursor rules and templates from source to target

Raises:

  • (Error)

    if source directory is not found



15
16
17
18
19
20
21
22
23
# File 'lib/smdev/cursor_rules/file_operations.rb', line 15

def copy_cursor_files
  validate_source_directory(File.join(@source_dir, CURSOR_DIR))
  debug("Copying cursor files from #{@source_dir} to #{File.join(@target_dir, CURSOR_DIR)}")
  
  create_cursor_directories
  copy_cursor_subdirectories
  
  puts "📝 Copied cursor rules and templates"
end

#copy_docsObject

Copies documentation files from source to target

Raises:

  • (Error)

    if source documentation is not found



28
29
30
31
32
33
34
35
36
37
38
39
40
41
# File 'lib/smdev/cursor_rules/file_operations.rb', line 28

def copy_docs
  docs_source = File.join(@source_dir, DOCS_DIR)
  validate_source_directory(docs_source)
  
  debug("Copying docs from #{docs_source} to #{File.join(@target_dir, DOCS_DIR)}")
  
  # Create target directory
  FileUtils.mkdir_p(File.join(@target_dir, DOCS_DIR))
  
  # Copy documentation files
  copy_directory_contents(docs_source, File.join(@target_dir, DOCS_DIR))
  
  puts "📚 Copied documentation files"
end