.builders/generators/utilities.rb in tailwind_dsl-0.0.22 vs .builders/generators/utilities.rb in tailwind_dsl-0.0.23

- old
+ new

@@ -27,11 +27,18 @@ # Separate clean and raw components, tailwind configuration, settings into their own folders component_generator = helpers.generate_components(uikit, source_component_path, target_component_path, reset_root_path: false) components = component_generator.components # Use GPT3 to extract component models in supervised fashion - helpers.extract_next_component_model(components, target_component_model_path, batch_size: 1, use_prompt: true, filter_design_system: 'tui') + helpers.batch_extraction( + components, + target_component_model_path, + batch_size: 1, + use_prompt: true, + filter_design_system: 'tui', + extract_handler: TailwindDsl::Etl::Extractors::DataExtractor + ) # puts target_component_path # /Users/davidcruwys/dev/kgems/tailwind_dsl/.components # Goals # - Generate a Tailwind component complete design system so that I can see both the component plus the original source code @@ -65,16 +72,21 @@ generator = TailwindDsl::Etl::ComponentStructures::Generator.new(uikit, source_component_path, target_folder, reset_root_path: reset_root_path) generator.generate generator end - # Extracts the next component model using GPT3 + # Extracts the next component data using GPT3 # # This needs to be supervised and verified, so it will only do a few models at a time - def extract_next_component_model(components, target_folder, batch_size: 1, use_prompt: false, filter_design_system: nil) - puts target_folder - extractor = TailwindDsl::Etl::ComponentModels::Extractor.new(components, target_folder, batch_size: batch_size, use_prompt: use_prompt, filter_design_system: filter_design_system) - extractor.extract + def batch_extraction(components, target_folder, batch_size: 1, use_prompt: false, filter_design_system: nil, extract_handler: nil) + extraction = TailwindDsl::Etl::Extractors::BatchExtraction.new( + components, + target_folder, + batch_size: batch_size, + use_prompt: use_prompt, + filter_design_system: filter_design_system, + extract_handler: extract_handler) + extraction.extract end end KManager.opts.sleep = 2