alfred-flow 0.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: f9edd0d5d68b5fe9006140ad8ae0c9d208ecf6f106719714aa7c00e6032ae24c
4
+ data.tar.gz: e627f564733c7ea56fcbcc42068e635ec459a8ab5191fba8ecad821b0f67e127
5
+ SHA512:
6
+ metadata.gz: 2d67f5ffe01f7959db3cbc2b444946617b8abcc043b81f26ecd838e1694d7b1236c245a19eb7375e57192e459957f4898da32421329e6685f34af0226900f5c5
7
+ data.tar.gz: ddb18de836f9b19aeaa084ae43c61c9dd6c9c6051be94037e4c57c5a9d3fb961b749bba620767f973c13911e3978e0c575076551facb0f27f52dc6e4d365599e
data/bin/alfred-flow ADDED
@@ -0,0 +1,6 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require "alfred/classes" # Carrega a classe Alfred[cite: 5]
4
+ require "alfred/main" # Carrega o menu e Actions[cite: 5]
5
+
6
+ Alfred::Alfred.new.iniciar # Inicia o fluxo principal
@@ -0,0 +1,22 @@
1
+ module Alfred
2
+ class Alfred
3
+ def initialize
4
+ @comando_init = "alfred init"
5
+ end
6
+
7
+ def iniciar
8
+ puts "Digite o comando para iniciar o programa (ou 'sair' para encerrar): "
9
+ comando = STDIN.gets.chomp
10
+
11
+ if comando == "sair"
12
+ puts "Encerrando..."
13
+ exit
14
+ elsif comando == @comando_init
15
+ ::Alfred::Actions.menu
16
+ else
17
+ puts "Comando inválido!"
18
+ iniciar
19
+ end
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,78 @@
1
+ module Alfred
2
+ module Actions
3
+ # Definição das cores para o visual "hacker"
4
+ CYAN = "\e[36m"
5
+ RESET = "\e[0m"
6
+
7
+ def self.menu
8
+ puts "\n#{CYAN}=============================="
9
+ puts " BEM-VINDO AO ALFRED "
10
+ puts "==============================#{RESET}"
11
+ puts "Escolha uma opção:"
12
+ puts "1. Criar arquivo"
13
+ puts "2. Sair"
14
+ print "Opção: "
15
+ opcao = STDIN.gets.chomp
16
+
17
+ case opcao
18
+ when "1"
19
+ self.criar_arquivo
20
+ when "2"
21
+ puts "Saindo..."
22
+ exit
23
+ else
24
+ puts "Opção inválida!"
25
+ self.menu
26
+ end
27
+ end
28
+
29
+ def self.criar_gem
30
+ path = File.join(Dir.pwd, 'Gemfile')
31
+ gems_adicionadas = 0
32
+
33
+ File.open(path, 'a') do |file|
34
+ loop do
35
+ print "Digite o nome da gem (ou '0' para sair): "
36
+ gem_name = opcao = STDIN.gets.chomp
37
+ break if gem_name == "0"
38
+ next if gem_name.empty?
39
+
40
+ file.puts "gem \"#{gem_name}\""
41
+ gems_adicionadas += 1
42
+ puts "✅ Gem \"#{gem_name}\" adicionada!"
43
+ end
44
+ end
45
+
46
+ if gems_adicionadas > 0
47
+ puts "Instalando dependências..."
48
+ if system("bundle install")
49
+ puts "🎉 Dependências instaladas com sucesso!"
50
+ else
51
+ puts "❌ Ocorreu um erro ao rodar o bundle install."
52
+ end
53
+ end
54
+ puts "Processo encerrado. Seu Gemfile foi atualizado!"
55
+ end
56
+
57
+ def self.criar_arquivo
58
+ path = File.join(Dir.pwd, 'Gemfile')
59
+ puts "Você está na: #{Dir.pwd}"
60
+ print "Digite 1 para criar o Gemfile aqui: "
61
+ opcao = STDIN.gets.chomp
62
+
63
+ if opcao == "1"
64
+ if File.exist?(path)
65
+ puts "⚠️ Arquivo Gemfile já existe."
66
+ else
67
+ File.open(path, 'a') do |file|
68
+ file.puts "source \"https://rubygems.org\""
69
+ end
70
+ puts "✅ Gemfile criado com sucesso!"
71
+ end
72
+ self.criar_gem
73
+ else
74
+ self.menu
75
+ end
76
+ end
77
+ end
78
+ end
data/lib/alfred.rb ADDED
@@ -0,0 +1,2 @@
1
+ require "alfred/classes" # Carrega a classe Alfred
2
+ require "alfred/main" # Carrega o menu
metadata ADDED
@@ -0,0 +1,46 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: alfred-flow
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.2.1
5
+ platform: ruby
6
+ authors:
7
+ - Alisson
8
+ bindir: bin
9
+ cert_chain: []
10
+ date: 1980-01-02 00:00:00.000000000 Z
11
+ dependencies: []
12
+ description: Alfred é uma ferramenta para automatizar a criação de arquivos e configuração
13
+ de dependências em projetos Ruby.
14
+ email:
15
+ - alissonmendesw3@gmail.com
16
+ executables:
17
+ - alfred-flow
18
+ extensions: []
19
+ extra_rdoc_files: []
20
+ files:
21
+ - bin/alfred-flow
22
+ - lib/alfred.rb
23
+ - lib/alfred/classes.rb
24
+ - lib/alfred/main.rb
25
+ homepage: https://github.com/alisson-mendes-dev/alfred-assistente-ruby
26
+ licenses:
27
+ - MIT
28
+ metadata: {}
29
+ rdoc_options: []
30
+ require_paths:
31
+ - lib
32
+ required_ruby_version: !ruby/object:Gem::Requirement
33
+ requirements:
34
+ - - ">="
35
+ - !ruby/object:Gem::Version
36
+ version: '0'
37
+ required_rubygems_version: !ruby/object:Gem::Requirement
38
+ requirements:
39
+ - - ">="
40
+ - !ruby/object:Gem::Version
41
+ version: '0'
42
+ requirements: []
43
+ rubygems_version: 4.0.10
44
+ specification_version: 4
45
+ summary: Um assistente CLI para automação de fluxo de trabalho.
46
+ test_files: []