strata-cli 0.1.8 → 0.1.9

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.
Files changed (39) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +17 -0
  3. data/lib/strata/cli/ai/services/table_generator.rb +35 -20
  4. data/lib/strata/cli/api/client.rb +23 -63
  5. data/lib/strata/cli/api/response_error_handler.rb +115 -0
  6. data/lib/strata/cli/error_reporter.rb +4 -1
  7. data/lib/strata/cli/generators/datasource.rb +4 -3
  8. data/lib/strata/cli/generators/group.rb +37 -0
  9. data/lib/strata/cli/generators/migration.rb +2 -1
  10. data/lib/strata/cli/generators/project.rb +18 -11
  11. data/lib/strata/cli/generators/relation.rb +2 -1
  12. data/lib/strata/cli/generators/table.rb +5 -8
  13. data/lib/strata/cli/generators/templates/table.table_name.yml +1 -1
  14. data/lib/strata/cli/generators/test.rb +2 -1
  15. data/lib/strata/cli/guard.rb +4 -1
  16. data/lib/strata/cli/helpers/command_context.rb +8 -9
  17. data/lib/strata/cli/helpers/datasource_helper.rb +1 -1
  18. data/lib/strata/cli/helpers/description_helper.rb +2 -1
  19. data/lib/strata/cli/main.rb +15 -3
  20. data/lib/strata/cli/output.rb +103 -0
  21. data/lib/strata/cli/sub_commands/audit.rb +4 -3
  22. data/lib/strata/cli/sub_commands/branch.rb +163 -0
  23. data/lib/strata/cli/sub_commands/create.rb +1 -2
  24. data/lib/strata/cli/sub_commands/datasource.rb +2 -0
  25. data/lib/strata/cli/sub_commands/deploy.rb +14 -13
  26. data/lib/strata/cli/sub_commands/project.rb +4 -3
  27. data/lib/strata/cli/sub_commands/table.rb +9 -8
  28. data/lib/strata/cli/terminal.rb +7 -4
  29. data/lib/strata/cli/ui/field_editor.rb +21 -27
  30. data/lib/strata/cli/utils/deployment_monitor.rb +15 -34
  31. data/lib/strata/cli/utils/git.rb +78 -0
  32. data/lib/strata/cli/utils/import_manager.rb +4 -1
  33. data/lib/strata/cli/utils/test_reporter.rb +4 -32
  34. data/lib/strata/cli/utils/version_checker.rb +4 -8
  35. data/lib/strata/cli/utils.rb +3 -1
  36. data/lib/strata/cli/version.rb +1 -1
  37. data/lib/strata/cli.rb +4 -3
  38. metadata +4 -2
  39. data/lib/strata/cli/helpers/color_helper.rb +0 -103
@@ -1,103 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "pastel"
4
-
5
- module Strata
6
- module CLI
7
- module ColorHelper
8
- THEME = {
9
- success: :green,
10
- error: %i[red bold],
11
- warning: :yellow,
12
- info: :cyan,
13
- title: %i[cyan bold],
14
- highlight: %i[cyan bold],
15
- dim: :bright_black,
16
- primary: :blue,
17
- secondary: :magenta,
18
- border: %i[cyan dim],
19
- selected: %i[green bold],
20
- disabled: :dim
21
- }.freeze
22
-
23
- class << self
24
- def pastel
25
- @pastel ||= Pastel.new(enabled: $stdout.tty?)
26
- end
27
-
28
- def success(text = nil)
29
- apply_theme(:success, text)
30
- end
31
-
32
- def error(text = nil)
33
- apply_theme(:error, text)
34
- end
35
-
36
- def warning(text = nil)
37
- apply_theme(:warning, text)
38
- end
39
-
40
- def info(text = nil)
41
- apply_theme(:info, text)
42
- end
43
-
44
- def title(text = nil)
45
- apply_theme(:title, text)
46
- end
47
-
48
- def highlight(text = nil)
49
- apply_theme(:highlight, text)
50
- end
51
-
52
- def dim(text = nil)
53
- apply_theme(:dim, text)
54
- end
55
-
56
- def primary(text = nil)
57
- apply_theme(:primary, text)
58
- end
59
-
60
- def secondary(text = nil)
61
- apply_theme(:secondary, text)
62
- end
63
-
64
- def border(text = nil)
65
- apply_theme(:border, text)
66
- end
67
-
68
- def selected(text = nil)
69
- apply_theme(:selected, text)
70
- end
71
-
72
- def disabled(text = nil)
73
- apply_theme(:disabled, text)
74
- end
75
-
76
- def bright_cyan(text = nil)
77
- text ? pastel.bright_cyan(text) : :bright_cyan
78
- end
79
-
80
- def bright_green(text = nil)
81
- text ? pastel.bright_green(text) : :bright_green
82
- end
83
-
84
- def bright_yellow(text = nil)
85
- text ? pastel.bright_yellow(text) : :bright_yellow
86
- end
87
-
88
- private
89
-
90
- def apply_theme(key, text)
91
- styles = THEME[key]
92
- return styles unless text
93
-
94
- if styles.is_a?(Array)
95
- pastel.decorate(text, *styles)
96
- else
97
- pastel.send(styles, text)
98
- end
99
- end
100
- end
101
- end
102
- end
103
- end