dev_suite 0.2.4 → 0.2.5
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 +4 -4
- data/Gemfile +2 -0
- data/Gemfile.lock +1 -1
- data/README.md +53 -0
- data/dev_suite.gemspec +0 -4
- data/lib/dev_suite/cli/commands/base.rb +0 -2
- data/lib/dev_suite/cli/commands/tree.rb +3 -3
- data/lib/dev_suite/cli/commands/version.rb +1 -1
- data/lib/dev_suite/cli/main.rb +1 -1
- data/lib/dev_suite/dev_suite.rb +12 -0
- data/lib/dev_suite/directory_tree/config/config.rb +11 -0
- data/lib/dev_suite/directory_tree/config/configuration.rb +21 -0
- data/lib/dev_suite/directory_tree/config.rb +2 -36
- data/lib/dev_suite/directory_tree/directory_tree.rb +0 -1
- data/lib/dev_suite/directory_tree/renderer/base.rb +0 -6
- data/lib/dev_suite/performance/analyzer.rb +1 -1
- data/lib/dev_suite/performance/config/config.rb +11 -0
- data/lib/dev_suite/performance/config/configuration.rb +30 -0
- data/lib/dev_suite/performance/config.rb +2 -30
- data/lib/dev_suite/performance/{reportor → reporter}/base.rb +1 -1
- data/lib/dev_suite/performance/{reportor → reporter}/helpers/stat_mappings.rb +1 -1
- data/lib/dev_suite/performance/{reportor → reporter}/helpers/table_builder.rb +1 -1
- data/lib/dev_suite/performance/{reportor → reporter}/helpers.rb +1 -1
- data/lib/dev_suite/performance/{reportor → reporter}/simple.rb +1 -1
- data/lib/dev_suite/performance/reporter.rb +22 -0
- data/lib/dev_suite/performance.rb +1 -1
- data/lib/dev_suite/request_logger/adapter/adapter.rb +27 -0
- data/lib/dev_suite/request_logger/adapter/base.rb +17 -0
- data/lib/dev_suite/request_logger/adapter/net_http.rb +42 -0
- data/lib/dev_suite/request_logger/adapter.rb +9 -0
- data/lib/dev_suite/request_logger/config/config.rb +11 -0
- data/lib/dev_suite/request_logger/config/configuration.rb +24 -0
- data/lib/dev_suite/request_logger/config.rb +9 -0
- data/lib/dev_suite/request_logger/logger.rb +93 -0
- data/lib/dev_suite/request_logger/request_logger.rb +29 -0
- data/lib/dev_suite/request_logger.rb +7 -0
- data/lib/dev_suite/utils/color/color.rb +12 -0
- data/lib/dev_suite/utils/color/config/config.rb +13 -0
- data/lib/dev_suite/utils/color/config/configuration.rb +31 -0
- data/lib/dev_suite/utils/color/config.rb +2 -31
- data/lib/dev_suite/utils/color/strategy/theme.rb +6 -7
- data/lib/dev_suite/utils/color/strategy.rb +2 -4
- data/lib/dev_suite/utils/color.rb +1 -4
- data/lib/dev_suite/utils/construct/config/attribute/attribute.rb +15 -0
- data/lib/dev_suite/utils/construct/config/attribute/manager.rb +63 -0
- data/lib/dev_suite/utils/construct/config/attribute/resolver.rb +31 -0
- data/lib/dev_suite/utils/construct/config/attribute/validator.rb +55 -0
- data/lib/dev_suite/utils/construct/config/attribute.rb +13 -0
- data/lib/dev_suite/utils/construct/config/base.rb +20 -0
- data/lib/dev_suite/utils/construct/config/config.rb +24 -0
- data/lib/dev_suite/utils/construct/config/configuration.rb +13 -0
- data/lib/dev_suite/utils/construct/config/hook/hook.rb +13 -0
- data/lib/dev_suite/utils/construct/config/hook/manager.rb +36 -0
- data/lib/dev_suite/utils/construct/config/hook.rb +13 -0
- data/lib/dev_suite/utils/construct/config/initializer.rb +21 -0
- data/lib/dev_suite/utils/construct/config/manager.rb +33 -0
- data/lib/dev_suite/utils/construct/config/settings/base.rb +59 -0
- data/lib/dev_suite/utils/construct/config/settings/manager.rb +38 -0
- data/lib/dev_suite/utils/construct/config/settings/settings.rb +14 -0
- data/lib/dev_suite/utils/construct/config/settings.rb +13 -0
- data/lib/dev_suite/utils/construct/config.rb +11 -0
- data/lib/dev_suite/utils/construct/construct.rb +9 -0
- data/lib/dev_suite/utils/construct.rb +16 -0
- data/lib/dev_suite/utils/emoji.rb +71 -0
- data/lib/dev_suite/utils/error_handler.rb +24 -0
- data/lib/dev_suite/utils/file_loader/config/config.rb +13 -0
- data/lib/dev_suite/utils/file_loader/config/configuration.rb +33 -0
- data/lib/dev_suite/utils/file_loader/config.rb +11 -0
- data/lib/dev_suite/utils/file_loader/file_loader.rb +23 -0
- data/lib/dev_suite/utils/file_loader/loader/base.rb +21 -0
- data/lib/dev_suite/utils/file_loader/loader/json.rb +21 -0
- data/lib/dev_suite/utils/file_loader/loader/text.rb +21 -0
- data/lib/dev_suite/utils/file_loader/loader/yaml.rb +38 -0
- data/lib/dev_suite/utils/file_loader/loader.rb +41 -0
- data/lib/dev_suite/utils/file_loader/loader_manager.rb +34 -0
- data/lib/dev_suite/utils/file_loader/loader_registry.rb +36 -0
- data/lib/dev_suite/utils/file_loader.rb +9 -0
- data/lib/dev_suite/utils/logger.rb +58 -0
- data/lib/dev_suite/utils/path_matcher/matcher.rb +31 -0
- data/lib/dev_suite/utils/path_matcher/path_matcher.rb +17 -0
- data/lib/dev_suite/utils/path_matcher/pattern.rb +35 -0
- data/lib/dev_suite/utils/path_matcher.rb +9 -0
- data/lib/dev_suite/utils/table/config/config.rb +13 -0
- data/lib/dev_suite/utils/table/config/configuration.rb +32 -0
- data/lib/dev_suite/utils/table/config.rb +2 -23
- data/lib/dev_suite/utils/table/renderer/base.rb +0 -6
- data/lib/dev_suite/utils/table/renderer/simple.rb +9 -5
- data/lib/dev_suite/utils/table/renderer.rb +2 -2
- data/lib/dev_suite/utils/table/table.rb +6 -0
- data/lib/dev_suite/utils/table.rb +0 -6
- data/lib/dev_suite/utils/utils.rb +14 -0
- data/lib/dev_suite/utils.rb +1 -3
- data/lib/dev_suite/version.rb +1 -1
- data/lib/dev_suite.rb +1 -10
- metadata +68 -44
- data/lib/dev_suite/directory_tree/settings.rb +0 -18
- data/lib/dev_suite/emoji.rb +0 -33
- data/lib/dev_suite/error_handler.rb +0 -22
- data/lib/dev_suite/logger.rb +0 -56
- data/lib/dev_suite/performance/reportor.rb +0 -22
- data/lib/dev_suite/utils/config_tools/configuration.rb +0 -134
- data/lib/dev_suite/utils/config_tools/settings.rb +0 -67
- data/lib/dev_suite/utils/config_tools.rb +0 -10
- data/lib/dev_suite/utils/table/settings.rb +0 -34
@@ -0,0 +1,35 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module DevSuite
|
4
|
+
module Utils
|
5
|
+
module PathMatcher
|
6
|
+
class Pattern
|
7
|
+
def initialize(pattern)
|
8
|
+
@regex = convert_to_regex(pattern)
|
9
|
+
end
|
10
|
+
|
11
|
+
def match?(path)
|
12
|
+
!!(@regex =~ path)
|
13
|
+
end
|
14
|
+
|
15
|
+
private
|
16
|
+
|
17
|
+
def convert_to_regex(pattern)
|
18
|
+
# Escape all regex special characters except '*'
|
19
|
+
pattern = Regexp.escape(pattern).gsub('\*', "*")
|
20
|
+
|
21
|
+
# Convert glob patterns to regex:
|
22
|
+
# - '**/' matches any directory level
|
23
|
+
# - '*.txt' matches any .txt file in any directory
|
24
|
+
pattern = pattern.gsub("**", ".*") # ** -> .*
|
25
|
+
pattern = pattern.gsub("*", "[^/]*") # * -> [^/]*
|
26
|
+
|
27
|
+
# Allow '*.txt' to match any .txt file in any directory by prefixing with '.*'
|
28
|
+
pattern = ".*#{pattern}" unless pattern.start_with?(".*")
|
29
|
+
|
30
|
+
Regexp.new("^#{pattern}$")
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
35
|
+
end
|
@@ -0,0 +1,32 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module DevSuite
|
4
|
+
module Utils
|
5
|
+
module Table
|
6
|
+
module Config
|
7
|
+
class Configuration < BaseConfiguration
|
8
|
+
set_default_settings(
|
9
|
+
colors: {
|
10
|
+
title: :cyan,
|
11
|
+
column: :yellow,
|
12
|
+
row: :default,
|
13
|
+
border: :blue,
|
14
|
+
},
|
15
|
+
# alignments: {
|
16
|
+
# column: :left,
|
17
|
+
# row: :left,
|
18
|
+
# },
|
19
|
+
)
|
20
|
+
|
21
|
+
config_attr :renderer, default_value: :simple, type: :symbol, resolver: :resolve_renderer
|
22
|
+
|
23
|
+
private
|
24
|
+
|
25
|
+
def resolve_renderer(value)
|
26
|
+
Renderer.create(value)
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
@@ -3,29 +3,8 @@
|
|
3
3
|
module DevSuite
|
4
4
|
module Utils
|
5
5
|
module Table
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
DEFAULT_SETTING = {
|
10
|
-
colors: {
|
11
|
-
title: :cyan,
|
12
|
-
column: :yellow,
|
13
|
-
row: :default,
|
14
|
-
border: :blue,
|
15
|
-
},
|
16
|
-
alignments: {
|
17
|
-
column: :left,
|
18
|
-
row: :left,
|
19
|
-
},
|
20
|
-
}.freeze
|
21
|
-
|
22
|
-
attr_reader :settings, :renderer
|
23
|
-
|
24
|
-
def initialize(settings: {}, renderer: :simple)
|
25
|
-
@settings = Settings.new(settings)
|
26
|
-
@renderer = Renderer.create(renderer, settings: @settings)
|
27
|
-
freeze
|
28
|
-
end
|
6
|
+
module Config
|
7
|
+
require_relative "config/config"
|
29
8
|
end
|
30
9
|
end
|
31
10
|
end
|
@@ -5,12 +5,6 @@ module DevSuite
|
|
5
5
|
module Table
|
6
6
|
module Renderer
|
7
7
|
class Base
|
8
|
-
attr_reader :settings
|
9
|
-
|
10
|
-
def initialize(settings: Settings.new)
|
11
|
-
@settings = settings
|
12
|
-
end
|
13
|
-
|
14
8
|
def render(table)
|
15
9
|
raise NotImplementedError, "Render method must be implemented in subclasses"
|
16
10
|
end
|
@@ -19,6 +19,10 @@ module DevSuite
|
|
19
19
|
|
20
20
|
private
|
21
21
|
|
22
|
+
def settings
|
23
|
+
Config.configuration.settings
|
24
|
+
end
|
25
|
+
|
22
26
|
#
|
23
27
|
# Calculates the widths of the columns
|
24
28
|
#
|
@@ -45,7 +49,7 @@ module DevSuite
|
|
45
49
|
|
46
50
|
total_width = column_widths.sum + column_widths.size * 3 - 1
|
47
51
|
title_str = "| #{table.title.center(total_width - 2)} |"
|
48
|
-
colorize(title_str, settings.
|
52
|
+
colorize(title_str, settings.get("colors.title"))
|
49
53
|
end
|
50
54
|
|
51
55
|
def render_header(table, column_widths)
|
@@ -55,13 +59,13 @@ module DevSuite
|
|
55
59
|
text_align(column.name, column_widths[index])
|
56
60
|
end
|
57
61
|
header_str = "| #{header.join(" | ")} |"
|
58
|
-
colorize(header_str, settings.
|
62
|
+
colorize(header_str, settings.get("colors.column"))
|
59
63
|
end
|
60
64
|
|
61
65
|
def render_separator(column_widths)
|
62
66
|
separator = column_widths.map { |width| "-" * width }.join("-+-")
|
63
67
|
separator_str = "+-#{separator}-+"
|
64
|
-
colorize(separator_str, settings.
|
68
|
+
colorize(separator_str, settings.get("colors.border"))
|
65
69
|
end
|
66
70
|
|
67
71
|
def render_rows(table, column_widths)
|
@@ -69,7 +73,7 @@ module DevSuite
|
|
69
73
|
render_row(row, column_widths)
|
70
74
|
end
|
71
75
|
cells_str = cells.join("\n")
|
72
|
-
colorize(cells_str, settings.
|
76
|
+
colorize(cells_str, settings.get("colors.row"))
|
73
77
|
end
|
74
78
|
|
75
79
|
def render_row(row, column_widths)
|
@@ -77,7 +81,7 @@ module DevSuite
|
|
77
81
|
text_align(cell.to_s, column_widths[index])
|
78
82
|
end
|
79
83
|
cell_str = "| #{cell.join(" | ")} |"
|
80
|
-
colorize(cell_str, settings.
|
84
|
+
colorize(cell_str, settings.get("colors.row"))
|
81
85
|
end
|
82
86
|
end
|
83
87
|
end
|
@@ -8,10 +8,10 @@ module DevSuite
|
|
8
8
|
require_relative "renderer/simple"
|
9
9
|
|
10
10
|
class << self
|
11
|
-
def create(type
|
11
|
+
def create(type)
|
12
12
|
case type
|
13
13
|
when :simple
|
14
|
-
Simple.new
|
14
|
+
Simple.new
|
15
15
|
else
|
16
16
|
raise ArgumentError, "Unknown renderer type: #{type}"
|
17
17
|
end
|
@@ -3,6 +3,12 @@
|
|
3
3
|
module DevSuite
|
4
4
|
module Utils
|
5
5
|
module Table
|
6
|
+
require_relative "column"
|
7
|
+
require_relative "row"
|
8
|
+
require_relative "config"
|
9
|
+
require_relative "formatter"
|
10
|
+
require_relative "renderer"
|
11
|
+
|
6
12
|
class Table
|
7
13
|
attr_accessor :title
|
8
14
|
attr_reader :columns, :rows
|
@@ -4,12 +4,6 @@ module DevSuite
|
|
4
4
|
module Utils
|
5
5
|
module Table
|
6
6
|
require_relative "table/table"
|
7
|
-
require_relative "table/column"
|
8
|
-
require_relative "table/row"
|
9
|
-
require_relative "table/config"
|
10
|
-
require_relative "table/settings"
|
11
|
-
require_relative "table/formatter"
|
12
|
-
require_relative "table/renderer"
|
13
7
|
end
|
14
8
|
end
|
15
9
|
end
|
@@ -0,0 +1,14 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module DevSuite
|
4
|
+
module Utils
|
5
|
+
require_relative "emoji"
|
6
|
+
require_relative "logger"
|
7
|
+
require_relative "error_handler"
|
8
|
+
require_relative "construct"
|
9
|
+
require_relative "color"
|
10
|
+
require_relative "table"
|
11
|
+
require_relative "file_loader"
|
12
|
+
require_relative "path_matcher"
|
13
|
+
end
|
14
|
+
end
|
data/lib/dev_suite/utils.rb
CHANGED
data/lib/dev_suite/version.rb
CHANGED
data/lib/dev_suite.rb
CHANGED
@@ -1,14 +1,5 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
module DevSuite
|
4
|
-
require_relative "dev_suite/
|
5
|
-
require_relative "dev_suite/emoji"
|
6
|
-
require_relative "dev_suite/logger"
|
7
|
-
require_relative "dev_suite/error_handler"
|
8
|
-
require_relative "dev_suite/utils"
|
9
|
-
require_relative "dev_suite/cli"
|
10
|
-
require_relative "dev_suite/performance"
|
11
|
-
require_relative "dev_suite/directory_tree"
|
12
|
-
|
13
|
-
class Error < StandardError; end
|
4
|
+
require_relative "dev_suite/dev_suite"
|
14
5
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: dev_suite
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Huy Nguyen
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-08-
|
11
|
+
date: 2024-08-19 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: benchmark
|
@@ -52,34 +52,6 @@ dependencies:
|
|
52
52
|
- - "~>"
|
53
53
|
- !ruby/object:Gem::Version
|
54
54
|
version: '1.1'
|
55
|
-
- !ruby/object:Gem::Dependency
|
56
|
-
name: rspec
|
57
|
-
requirement: !ruby/object:Gem::Requirement
|
58
|
-
requirements:
|
59
|
-
- - "~>"
|
60
|
-
- !ruby/object:Gem::Version
|
61
|
-
version: '3.9'
|
62
|
-
type: :development
|
63
|
-
prerelease: false
|
64
|
-
version_requirements: !ruby/object:Gem::Requirement
|
65
|
-
requirements:
|
66
|
-
- - "~>"
|
67
|
-
- !ruby/object:Gem::Version
|
68
|
-
version: '3.9'
|
69
|
-
- !ruby/object:Gem::Dependency
|
70
|
-
name: simplecov
|
71
|
-
requirement: !ruby/object:Gem::Requirement
|
72
|
-
requirements:
|
73
|
-
- - "~>"
|
74
|
-
- !ruby/object:Gem::Version
|
75
|
-
version: '0.21'
|
76
|
-
type: :development
|
77
|
-
prerelease: false
|
78
|
-
version_requirements: !ruby/object:Gem::Requirement
|
79
|
-
requirements:
|
80
|
-
- - "~>"
|
81
|
-
- !ruby/object:Gem::Version
|
82
|
-
version: '0.21'
|
83
55
|
description: This gem provides a suite of utilities for developers to enhance their
|
84
56
|
productivity.
|
85
57
|
email:
|
@@ -112,10 +84,13 @@ files:
|
|
112
84
|
- lib/dev_suite/cli/commands/tree.rb
|
113
85
|
- lib/dev_suite/cli/commands/version.rb
|
114
86
|
- lib/dev_suite/cli/main.rb
|
87
|
+
- lib/dev_suite/dev_suite.rb
|
115
88
|
- lib/dev_suite/directory_tree.rb
|
116
89
|
- lib/dev_suite/directory_tree/builder.rb
|
117
90
|
- lib/dev_suite/directory_tree/builder/base.rb
|
118
91
|
- lib/dev_suite/directory_tree/config.rb
|
92
|
+
- lib/dev_suite/directory_tree/config/config.rb
|
93
|
+
- lib/dev_suite/directory_tree/config/configuration.rb
|
119
94
|
- lib/dev_suite/directory_tree/directory_tree.rb
|
120
95
|
- lib/dev_suite/directory_tree/node.rb
|
121
96
|
- lib/dev_suite/directory_tree/node/base.rb
|
@@ -125,16 +100,14 @@ files:
|
|
125
100
|
- lib/dev_suite/directory_tree/renderer.rb
|
126
101
|
- lib/dev_suite/directory_tree/renderer/base.rb
|
127
102
|
- lib/dev_suite/directory_tree/renderer/simple.rb
|
128
|
-
- lib/dev_suite/directory_tree/settings.rb
|
129
103
|
- lib/dev_suite/directory_tree/visualizer.rb
|
130
104
|
- lib/dev_suite/directory_tree/visualizer/base.rb
|
131
105
|
- lib/dev_suite/directory_tree/visualizer/tree.rb
|
132
|
-
- lib/dev_suite/emoji.rb
|
133
|
-
- lib/dev_suite/error_handler.rb
|
134
|
-
- lib/dev_suite/logger.rb
|
135
106
|
- lib/dev_suite/performance.rb
|
136
107
|
- lib/dev_suite/performance/analyzer.rb
|
137
108
|
- lib/dev_suite/performance/config.rb
|
109
|
+
- lib/dev_suite/performance/config/config.rb
|
110
|
+
- lib/dev_suite/performance/config/configuration.rb
|
138
111
|
- lib/dev_suite/performance/data.rb
|
139
112
|
- lib/dev_suite/performance/data/memory_usage.rb
|
140
113
|
- lib/dev_suite/performance/profiler.rb
|
@@ -142,16 +115,29 @@ files:
|
|
142
115
|
- lib/dev_suite/performance/profiler/execution_time.rb
|
143
116
|
- lib/dev_suite/performance/profiler/memory.rb
|
144
117
|
- lib/dev_suite/performance/profiler_manager.rb
|
145
|
-
- lib/dev_suite/performance/
|
146
|
-
- lib/dev_suite/performance/
|
147
|
-
- lib/dev_suite/performance/
|
148
|
-
- lib/dev_suite/performance/
|
149
|
-
- lib/dev_suite/performance/
|
150
|
-
- lib/dev_suite/performance/
|
118
|
+
- lib/dev_suite/performance/reporter.rb
|
119
|
+
- lib/dev_suite/performance/reporter/base.rb
|
120
|
+
- lib/dev_suite/performance/reporter/helpers.rb
|
121
|
+
- lib/dev_suite/performance/reporter/helpers/stat_mappings.rb
|
122
|
+
- lib/dev_suite/performance/reporter/helpers/table_builder.rb
|
123
|
+
- lib/dev_suite/performance/reporter/simple.rb
|
124
|
+
- lib/dev_suite/request_logger.rb
|
125
|
+
- lib/dev_suite/request_logger/adapter.rb
|
126
|
+
- lib/dev_suite/request_logger/adapter/adapter.rb
|
127
|
+
- lib/dev_suite/request_logger/adapter/base.rb
|
128
|
+
- lib/dev_suite/request_logger/adapter/net_http.rb
|
129
|
+
- lib/dev_suite/request_logger/config.rb
|
130
|
+
- lib/dev_suite/request_logger/config/config.rb
|
131
|
+
- lib/dev_suite/request_logger/config/configuration.rb
|
132
|
+
- lib/dev_suite/request_logger/logger.rb
|
133
|
+
- lib/dev_suite/request_logger/request_logger.rb
|
151
134
|
- lib/dev_suite/utils.rb
|
152
135
|
- lib/dev_suite/utils/color.rb
|
136
|
+
- lib/dev_suite/utils/color/color.rb
|
153
137
|
- lib/dev_suite/utils/color/colorizer.rb
|
154
138
|
- lib/dev_suite/utils/color/config.rb
|
139
|
+
- lib/dev_suite/utils/color/config/config.rb
|
140
|
+
- lib/dev_suite/utils/color/config/configuration.rb
|
155
141
|
- lib/dev_suite/utils/color/palette.rb
|
156
142
|
- lib/dev_suite/utils/color/palette/base.rb
|
157
143
|
- lib/dev_suite/utils/color/palette/default.rb
|
@@ -160,12 +146,50 @@ files:
|
|
160
146
|
- lib/dev_suite/utils/color/strategy/basic.rb
|
161
147
|
- lib/dev_suite/utils/color/strategy/rgb.rb
|
162
148
|
- lib/dev_suite/utils/color/strategy/theme.rb
|
163
|
-
- lib/dev_suite/utils/
|
164
|
-
- lib/dev_suite/utils/
|
165
|
-
- lib/dev_suite/utils/
|
149
|
+
- lib/dev_suite/utils/construct.rb
|
150
|
+
- lib/dev_suite/utils/construct/config.rb
|
151
|
+
- lib/dev_suite/utils/construct/config/attribute.rb
|
152
|
+
- lib/dev_suite/utils/construct/config/attribute/attribute.rb
|
153
|
+
- lib/dev_suite/utils/construct/config/attribute/manager.rb
|
154
|
+
- lib/dev_suite/utils/construct/config/attribute/resolver.rb
|
155
|
+
- lib/dev_suite/utils/construct/config/attribute/validator.rb
|
156
|
+
- lib/dev_suite/utils/construct/config/base.rb
|
157
|
+
- lib/dev_suite/utils/construct/config/config.rb
|
158
|
+
- lib/dev_suite/utils/construct/config/configuration.rb
|
159
|
+
- lib/dev_suite/utils/construct/config/hook.rb
|
160
|
+
- lib/dev_suite/utils/construct/config/hook/hook.rb
|
161
|
+
- lib/dev_suite/utils/construct/config/hook/manager.rb
|
162
|
+
- lib/dev_suite/utils/construct/config/initializer.rb
|
163
|
+
- lib/dev_suite/utils/construct/config/manager.rb
|
164
|
+
- lib/dev_suite/utils/construct/config/settings.rb
|
165
|
+
- lib/dev_suite/utils/construct/config/settings/base.rb
|
166
|
+
- lib/dev_suite/utils/construct/config/settings/manager.rb
|
167
|
+
- lib/dev_suite/utils/construct/config/settings/settings.rb
|
168
|
+
- lib/dev_suite/utils/construct/construct.rb
|
169
|
+
- lib/dev_suite/utils/emoji.rb
|
170
|
+
- lib/dev_suite/utils/error_handler.rb
|
171
|
+
- lib/dev_suite/utils/file_loader.rb
|
172
|
+
- lib/dev_suite/utils/file_loader/config.rb
|
173
|
+
- lib/dev_suite/utils/file_loader/config/config.rb
|
174
|
+
- lib/dev_suite/utils/file_loader/config/configuration.rb
|
175
|
+
- lib/dev_suite/utils/file_loader/file_loader.rb
|
176
|
+
- lib/dev_suite/utils/file_loader/loader.rb
|
177
|
+
- lib/dev_suite/utils/file_loader/loader/base.rb
|
178
|
+
- lib/dev_suite/utils/file_loader/loader/json.rb
|
179
|
+
- lib/dev_suite/utils/file_loader/loader/text.rb
|
180
|
+
- lib/dev_suite/utils/file_loader/loader/yaml.rb
|
181
|
+
- lib/dev_suite/utils/file_loader/loader_manager.rb
|
182
|
+
- lib/dev_suite/utils/file_loader/loader_registry.rb
|
183
|
+
- lib/dev_suite/utils/logger.rb
|
184
|
+
- lib/dev_suite/utils/path_matcher.rb
|
185
|
+
- lib/dev_suite/utils/path_matcher/matcher.rb
|
186
|
+
- lib/dev_suite/utils/path_matcher/path_matcher.rb
|
187
|
+
- lib/dev_suite/utils/path_matcher/pattern.rb
|
166
188
|
- lib/dev_suite/utils/table.rb
|
167
189
|
- lib/dev_suite/utils/table/column.rb
|
168
190
|
- lib/dev_suite/utils/table/config.rb
|
191
|
+
- lib/dev_suite/utils/table/config/config.rb
|
192
|
+
- lib/dev_suite/utils/table/config/configuration.rb
|
169
193
|
- lib/dev_suite/utils/table/formatter.rb
|
170
194
|
- lib/dev_suite/utils/table/formatter/column_width_calculator.rb
|
171
195
|
- lib/dev_suite/utils/table/formatter/text_aligner.rb
|
@@ -173,8 +197,8 @@ files:
|
|
173
197
|
- lib/dev_suite/utils/table/renderer/base.rb
|
174
198
|
- lib/dev_suite/utils/table/renderer/simple.rb
|
175
199
|
- lib/dev_suite/utils/table/row.rb
|
176
|
-
- lib/dev_suite/utils/table/settings.rb
|
177
200
|
- lib/dev_suite/utils/table/table.rb
|
201
|
+
- lib/dev_suite/utils/utils.rb
|
178
202
|
- lib/dev_suite/version.rb
|
179
203
|
homepage: https://patrick204nqh.github.io
|
180
204
|
licenses:
|
@@ -1,18 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
module DevSuite
|
4
|
-
module DirectoryTree
|
5
|
-
class Settings
|
6
|
-
include Utils::ConfigTools::Settings
|
7
|
-
|
8
|
-
def default_settings
|
9
|
-
{
|
10
|
-
skip_hidden: false,
|
11
|
-
skip_types: [],
|
12
|
-
max_depth: nil,
|
13
|
-
max_size: 100 * 1024 * 1024, # 100 MB
|
14
|
-
}
|
15
|
-
end
|
16
|
-
end
|
17
|
-
end
|
18
|
-
end
|
data/lib/dev_suite/emoji.rb
DELETED
@@ -1,33 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
module DevSuite
|
4
|
-
module Emoji
|
5
|
-
# A frozen hash that contains all the emojis used in the application.
|
6
|
-
EMOJIS = {
|
7
|
-
start: "🚀",
|
8
|
-
success: "✅",
|
9
|
-
error: "🚨❌",
|
10
|
-
retry: "💥",
|
11
|
-
info: "ℹ️",
|
12
|
-
warning: "⚠️",
|
13
|
-
note: "📝", # For notes or annotations
|
14
|
-
tip: "💡", # For tips or helpful hints
|
15
|
-
important: "❗", # For important information
|
16
|
-
caution: "⚠️", # For warnings or cautions
|
17
|
-
document: "📄", # For representing documents or files
|
18
|
-
code: "💻", # For code or technical content
|
19
|
-
update: "🔄", # For updates or changes
|
20
|
-
bug: "🐞", # For bugs or issues
|
21
|
-
fix: "🔧", # For fixes or repairs
|
22
|
-
}.freeze
|
23
|
-
|
24
|
-
class << self
|
25
|
-
# Returns the emoji corresponding to the given key.
|
26
|
-
# @param key [Symbol] the key to look up the emoji
|
27
|
-
# @return [String] the corresponding emoji or an empty string if not found
|
28
|
-
def get(key)
|
29
|
-
EMOJIS[key] || ""
|
30
|
-
end
|
31
|
-
end
|
32
|
-
end
|
33
|
-
end
|
@@ -1,22 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
module DevSuite
|
4
|
-
module ErrorHandler
|
5
|
-
extend self # This makes all instance methods behave like class methods
|
6
|
-
|
7
|
-
def handle_error(error)
|
8
|
-
Logger.log(
|
9
|
-
"Oops! An error occurred: #{error.message}",
|
10
|
-
level: :error,
|
11
|
-
emoji: :error,
|
12
|
-
)
|
13
|
-
Logger.log(
|
14
|
-
"For more information, please refer to the README: " \
|
15
|
-
"https://github.com/patrick204nqh/dev_suite",
|
16
|
-
level: :error,
|
17
|
-
emoji: :document,
|
18
|
-
)
|
19
|
-
# exit(1)
|
20
|
-
end
|
21
|
-
end
|
22
|
-
end
|
data/lib/dev_suite/logger.rb
DELETED
@@ -1,56 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
module DevSuite
|
4
|
-
module Logger
|
5
|
-
LOG_DETAILS = {
|
6
|
-
info: { prefix: "[INFO]", color: :green },
|
7
|
-
warn: { prefix: "[WARNING]", color: :yellow },
|
8
|
-
error: { prefix: "[ERROR]", color: :red },
|
9
|
-
debug: { prefix: "[DEBUG]", color: :blue },
|
10
|
-
}.freeze
|
11
|
-
|
12
|
-
class << self
|
13
|
-
# Logs a message with an optional emoji and specified log level.
|
14
|
-
#
|
15
|
-
# @param message [String] The message to log.
|
16
|
-
# @param level [Symbol] The log level (:info, :warn, :error, :debug).
|
17
|
-
# @param emoji [String, Symbol] Optional emoji to prepend to the message.
|
18
|
-
def log(message, level: :info, emoji: nil)
|
19
|
-
emoji_icon = resolve_emoji(emoji)
|
20
|
-
formatted_message = format_message("#{emoji_icon} #{message}", level)
|
21
|
-
output_log(formatted_message)
|
22
|
-
end
|
23
|
-
|
24
|
-
private
|
25
|
-
|
26
|
-
# Resolves the emoji, either from a symbol or directly as a string.
|
27
|
-
#
|
28
|
-
# @param emoji [String, Symbol, nil] The emoji or its symbol key.
|
29
|
-
# @return [String] The resolved emoji or an empty string if none is provided.
|
30
|
-
def resolve_emoji(emoji)
|
31
|
-
return "" unless emoji
|
32
|
-
|
33
|
-
emoji.is_a?(Symbol) ? Emoji.get(emoji) : emoji
|
34
|
-
end
|
35
|
-
|
36
|
-
# Formats the log message with the appropriate prefix and color.
|
37
|
-
#
|
38
|
-
# @param message [String] The message to format.
|
39
|
-
# @param level [Symbol] The log level (:info, :warn, :error, :debug).
|
40
|
-
# @return [String] The formatted log message.
|
41
|
-
def format_message(message, level)
|
42
|
-
details = LOG_DETAILS[level]
|
43
|
-
raise ArgumentError, "Invalid log level: #{level}" unless details
|
44
|
-
|
45
|
-
Utils::Color.colorize("#{details[:prefix]} #{message}", color: details[:color])
|
46
|
-
end
|
47
|
-
|
48
|
-
# Outputs the formatted log message to the console.
|
49
|
-
#
|
50
|
-
# @param formatted_message [String] The message to output.
|
51
|
-
def output_log(formatted_message)
|
52
|
-
puts formatted_message if formatted_message
|
53
|
-
end
|
54
|
-
end
|
55
|
-
end
|
56
|
-
end
|
@@ -1,22 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
module DevSuite
|
4
|
-
module Performance
|
5
|
-
module Reportor
|
6
|
-
require_relative "reportor/base"
|
7
|
-
require_relative "reportor/simple"
|
8
|
-
require_relative "reportor/helpers"
|
9
|
-
|
10
|
-
class << self
|
11
|
-
def create(reportor)
|
12
|
-
case reportor
|
13
|
-
when :simple
|
14
|
-
Simple.new
|
15
|
-
else
|
16
|
-
raise ArgumentError, "Invalid reportor: #{reportor}"
|
17
|
-
end
|
18
|
-
end
|
19
|
-
end
|
20
|
-
end
|
21
|
-
end
|
22
|
-
end
|