k_builder 0.0.68 → 0.0.69
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/lib/k_builder/base_builder.rb +48 -14
- data/lib/k_builder/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 344376d8ceaffc96fb8ebc4c0add3456bc6a1ff97f7d1b017286a6f4ea523c09
|
4
|
+
data.tar.gz: 51eb8ddb6f7e3b578442423f0dfd9c08759012caa33003d1ecec0849d435b342
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0dde58c5926b4ecdf4952ee40b4babc4111cf8e9578ee2bacb29f6f6a14915e954631b4ef1c09d4148002357640f7323879325ac61cc7da9c8e5d40bb0168971
|
7
|
+
data.tar.gz: 1a6b81315dd4a09c7bd48e83e5f3fb3b35a2b179a3fdd4a79d1d6e87e9645d86ae054ecc1332eed8a5e24e4628117b53c30b445264975ad93dc03e8f9d6daf8e
|
@@ -121,9 +121,10 @@ module KBuilder
|
|
121
121
|
# Extra options will be used as data for templates, e.g
|
122
122
|
# @option opts [String] :to Recipient email
|
123
123
|
# @option opts [String] :body The email's body
|
124
|
-
def
|
124
|
+
def add_file_action(file, **opts)
|
125
125
|
{
|
126
126
|
action: :add_file,
|
127
|
+
played: false,
|
127
128
|
file: file,
|
128
129
|
opts: opts
|
129
130
|
}
|
@@ -156,24 +157,39 @@ module KBuilder
|
|
156
157
|
end
|
157
158
|
# rubocop:enable Metrics/AbcSize, Metrics/CyclomaticComplexity
|
158
159
|
|
159
|
-
def
|
160
|
-
|
161
|
-
|
162
|
-
when :add_file
|
163
|
-
add_file(command[:file], command[:opts])
|
164
|
-
when :delete_file
|
165
|
-
delete_file(command[:file], command[:opts])
|
166
|
-
else
|
167
|
-
log.error "Unknown command: #{command[:action]}"
|
168
|
-
end
|
160
|
+
def play_actions(actions)
|
161
|
+
actions.reject { |action| action[:played] }.each do |action|
|
162
|
+
play_action(action)
|
169
163
|
end
|
170
164
|
end
|
171
165
|
|
166
|
+
def play_action(action)
|
167
|
+
case action[:action]
|
168
|
+
when :add_file
|
169
|
+
add_file(action[:file], action[:opts])
|
170
|
+
when :delete_file
|
171
|
+
delete_file(action[:file], action[:opts])
|
172
|
+
when :vscode
|
173
|
+
vscode(action[:file_parts], action[:opts])
|
174
|
+
when :browse
|
175
|
+
browse(action[:file_parts], action[:opts])
|
176
|
+
when :set_current_folder
|
177
|
+
set_current_folder(action[:folder_key])
|
178
|
+
when :run_command
|
179
|
+
run_command(action[:command])
|
180
|
+
else
|
181
|
+
log.error "Unknown action: #{action[:action]}"
|
182
|
+
end
|
183
|
+
|
184
|
+
action[:played] = true
|
185
|
+
end
|
186
|
+
|
172
187
|
alias touch add_file # it is expected that you would not supply any options, just a file name
|
173
188
|
|
174
|
-
def
|
189
|
+
def delete_file_action(file, **opts)
|
175
190
|
{
|
176
191
|
action: :delete_file,
|
192
|
+
played: false,
|
177
193
|
file: file,
|
178
194
|
opts: opts
|
179
195
|
}
|
@@ -241,9 +257,10 @@ module KBuilder
|
|
241
257
|
end
|
242
258
|
alias clipboard_copy add_clipboard
|
243
259
|
|
244
|
-
def
|
260
|
+
def vscode_action(*file_parts, folder_key: current_folder_key, file: nil)
|
245
261
|
{
|
246
262
|
action: :vscode,
|
263
|
+
played: false,
|
247
264
|
file_parts: file_parts,
|
248
265
|
opts: { folder_key: folder_key, file: file }
|
249
266
|
}
|
@@ -258,9 +275,10 @@ module KBuilder
|
|
258
275
|
self
|
259
276
|
end
|
260
277
|
|
261
|
-
def
|
278
|
+
def browse_action(*file_parts, folder_key: current_folder_key, file: nil)
|
262
279
|
{
|
263
280
|
action: :browse,
|
281
|
+
played: false,
|
264
282
|
file_parts: file_parts,
|
265
283
|
opts: { folder_key: folder_key, file: file }
|
266
284
|
}
|
@@ -330,6 +348,14 @@ module KBuilder
|
|
330
348
|
# Target folders and files
|
331
349
|
# ----------------------------------------------------------------------
|
332
350
|
|
351
|
+
def set_current_folder_action(folder_key)
|
352
|
+
{
|
353
|
+
action: :set_current_folder,
|
354
|
+
played: false,
|
355
|
+
folder_key: folder_key
|
356
|
+
}
|
357
|
+
end
|
358
|
+
|
333
359
|
def set_current_folder(folder_key)
|
334
360
|
target_folders.current = folder_key
|
335
361
|
|
@@ -506,6 +532,14 @@ module KBuilder
|
|
506
532
|
end
|
507
533
|
alias rc run_command
|
508
534
|
|
535
|
+
def run_command_action(command)
|
536
|
+
{
|
537
|
+
action: :run_command,
|
538
|
+
played: false,
|
539
|
+
command: command
|
540
|
+
}
|
541
|
+
end
|
542
|
+
|
509
543
|
def file_write(file, content, on_exist: :skip)
|
510
544
|
self.last_output_file = file # if file not found, we still want to record this as the last_output_file
|
511
545
|
|
data/lib/k_builder/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: k_builder
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.69
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- David Cruwys
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-01-
|
11
|
+
date: 2022-01-10 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: handlebars-helpers
|