k_director 0.14.1 → 0.16.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: bc4ed2368c8a9ce4434bc212d09ea17691937d586839fedbcfbb76b34eeac9e9
4
- data.tar.gz: 52ae2c7386c007d1b07435dbe39726d05bb2264af13b4418d7b3533e74aafc89
3
+ metadata.gz: 2da86957af8afcf2d881268e0b470475e3607dda436389402b01767971305a6d
4
+ data.tar.gz: c9e3a5b28541ce9a22f6c7b4b6b2208490da25b928c6a4cedcfcc8bfe5f6e968
5
5
  SHA512:
6
- metadata.gz: e6b87e758c5c0368c180c16023c592aa973934c80478de589e39930bbfca3c305ada8d897e6df58616e64cc3f1aaba882536db59d81434209899a8636c15f3d7
7
- data.tar.gz: b531ad193ff767017798a52a387cf40841c1a1fc7f2a85b5bfd0a7fec825dd5fea5a9f35405c0fad090c40f6accf0158bdd03221019fe9c2b22f48b27729a420
6
+ metadata.gz: db69ff7f714aa90ec014e7947a988fd84e859b03cdcb239e863791b1a3886fdc921c220e5c6d0b7559285201676fd19d7a32d1a9a960c38bea94b69b5052179b
7
+ data.tar.gz: 62a951216cb0b70d4548702ebb98db2d991830e84fe62ee253defde4a218ff35df8ec5ea1ba76ae14ce03489d0ec44278a64d7a5080c94ac10a77bab689aeebe
data/.rubocop.yml CHANGED
@@ -41,7 +41,7 @@ Metrics/MethodLength:
41
41
  Layout/LineLength:
42
42
  Max: 200
43
43
  # Ignores annotate output
44
- IgnoredPatterns: ['\A# \*\*']
44
+ # IgnoredPatterns: ['\A# \*\*']
45
45
  IgnoreCopDirectives: true
46
46
 
47
47
  Lint/UnusedMethodArgument:
data/docs/CHANGELOG.md CHANGED
@@ -1,3 +1,24 @@
1
+ ## [0.15.1](https://github.com/klueless-io/k_director/compare/v0.15.0...v0.15.1) (2022-03-05)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * add clipboard alias to add_clipboard command ([fc4c8ec](https://github.com/klueless-io/k_director/commit/fc4c8ece391a470436bac4c25dde643575998c40))
7
+
8
+ # [0.15.0](https://github.com/klueless-io/k_director/compare/v0.14.1...v0.15.0) (2022-03-05)
9
+
10
+
11
+ ### Features
12
+
13
+ * add clipboard action to director ([f5a8e4d](https://github.com/klueless-io/k_director/commit/f5a8e4d20c448630792a8ec13faacaf10e151b21))
14
+
15
+ ## [0.14.1](https://github.com/klueless-io/k_director/compare/v0.14.0...v0.14.1) (2022-03-01)
16
+
17
+
18
+ ### Bug Fixes
19
+
20
+ * handle case where base_director does not use a builder with .dom ([a1e868c](https://github.com/klueless-io/k_director/commit/a1e868c14bc0e331494e428b77113691c88efd16))
21
+
1
22
  # [0.14.0](https://github.com/klueless-io/k_director/compare/v0.13.0...v0.14.0) (2022-02-27)
2
23
 
3
24
 
data/k_director.gemspec CHANGED
@@ -47,5 +47,4 @@ Gem::Specification.new do |spec|
47
47
  spec.add_dependency 'k_builder', '~> 0.0.0'
48
48
  spec.add_dependency 'k_ext-github', '~> 0.0.0'
49
49
  spec.add_dependency 'k_util', '~> 0.0.0'
50
- spec.add_dependency 'nokogiri', '~> 1.13'
51
50
  end
@@ -160,6 +160,25 @@ module KDirector
160
160
  # rubocop:enable Naming/AccessorMethodName
161
161
  alias cd set_current_folder_action
162
162
 
163
+ # Add content to the clipboard
164
+ #
165
+ # @option opts [String] :content Supply the content that you want to write to the file
166
+ # @option opts [String] :template Supply the template that you want to write to the file, template will be processed ('nobody') From address
167
+ # @option opts [String] :content_file File with content, file location is based on where the program is running
168
+ # @option opts [String] :template_file File with handlebars templated content that will be transformed, file location is based on the configured template_path
169
+ #
170
+ # Extra options will be used as data for templates, e.g
171
+ # @option opts [String] :to Recipient email
172
+ # @option opts [String] :body The email's body
173
+ def add_clipboard(**opts)
174
+ # RUN (not handle), current folder effects subsequent actions and so it needs to be executed straight away.
175
+ run_action(k_builder.add_clipboard_action(**opts))
176
+
177
+ self
178
+ end
179
+ alias clipboard_copy add_clipboard
180
+ alias clipboard add_clipboard
181
+
163
182
  # Run a command using shell, this is useful with command line tools
164
183
  def run_command(command)
165
184
  handle_action(k_builder.run_command_action(command))
File without changes
@@ -0,0 +1,39 @@
1
+ # frozen_string_literal: true
2
+
3
+ module KDirector
4
+ module Dsls
5
+ # BuilderOptionsDsl is a DSL for generating builder options.
6
+ class BuilderOptionsDsl < KDirector::Directors::BaseDirector
7
+ def initialize(k_builder, builder, **opts)
8
+ super(k_builder, builder, **opts)
9
+
10
+ dom[:option_groups] = []
11
+ end
12
+
13
+ def default_template_base_folder
14
+ 'ruby/components/builder_options'
15
+ end
16
+
17
+ def add_group(name, params: [], flags: [], description: nil)
18
+ group = {
19
+ name: name,
20
+ params: params,
21
+ flags: flags,
22
+ description: description
23
+ }
24
+
25
+ dom[:option_groups] << group
26
+
27
+ self
28
+ end
29
+
30
+ # def build_options_builder(file)
31
+ # .add_file('builder_options.rb',
32
+ # template_file: 'ruby/components/builder_options/builder_options.rb',
33
+ # dom: director.dom,
34
+ # on_exist: :write)
35
+
36
+ # end
37
+ end
38
+ end
39
+ end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module KDirector
4
- VERSION = '0.14.1'
4
+ VERSION = '0.16.0'
5
5
  end
data/lib/k_director.rb CHANGED
@@ -5,7 +5,6 @@ require 'k_log'
5
5
  require 'k_util'
6
6
  require 'k_builder'
7
7
  require 'k_ext/github'
8
- require 'nokogiri'
9
8
 
10
9
  require_relative 'k_director/version'
11
10
  require_relative 'k_director/builders/dom_builder'
@@ -19,7 +18,8 @@ require_relative 'k_director/dsls/children/package_json_configuration'
19
18
  require_relative 'k_director/dsls/children/package_json'
20
19
  require_relative 'k_director/dsls/nuxt3_dsl'
21
20
  require_relative 'k_director/dsls/ruby_gem_dsl'
22
- require_relative 'k_director/dsls/simple_dsl'
21
+ require_relative 'k_director/dsls/basic_dsl'
22
+ require_relative 'k_director/dsls/builder_options_dsl'
23
23
 
24
24
  module KDirector
25
25
  # raise KDirector::Error, 'Sample message'
@@ -28,7 +28,7 @@ module KDirector
28
28
  # Your code goes here...
29
29
  end
30
30
 
31
- if ENV['KLUE_DEBUG']&.to_s&.downcase == 'true'
31
+ if ENV.fetch('KLUE_DEBUG', 'false').downcase == 'true'
32
32
  namespace = 'KDirector::Version'
33
33
  file_path = $LOADED_FEATURES.find { |f| f.include?('k_director/version') }
34
34
  version = KDirector::VERSION.ljust(9)
data/package-lock.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "k_director",
3
- "version": "0.14.1",
3
+ "version": "0.16.0",
4
4
  "lockfileVersion": 2,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "k_director",
9
- "version": "0.14.1",
9
+ "version": "0.16.0",
10
10
  "devDependencies": {
11
11
  "@klueless-js/semantic-release-rubygem": "github:klueless-js/semantic-release-rubygem",
12
12
  "@semantic-release/changelog": "^6.0.1",
data/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "k_director",
3
- "version": "0.14.1",
3
+ "version": "0.16.0",
4
4
  "description": "Command line and CI/CD tools for k_director",
5
5
  "scripts": {
6
6
  "release": "semantic-release"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: k_director
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.14.1
4
+ version: 0.16.0
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-03-01 00:00:00.000000000 Z
11
+ date: 2022-04-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: k_config
@@ -80,20 +80,6 @@ dependencies:
80
80
  - - "~>"
81
81
  - !ruby/object:Gem::Version
82
82
  version: 0.0.0
83
- - !ruby/object:Gem::Dependency
84
- name: nokogiri
85
- requirement: !ruby/object:Gem::Requirement
86
- requirements:
87
- - - "~>"
88
- - !ruby/object:Gem::Version
89
- version: '1.13'
90
- type: :runtime
91
- prerelease: false
92
- version_requirements: !ruby/object:Gem::Requirement
93
- requirements:
94
- - - "~>"
95
- - !ruby/object:Gem::Version
96
- version: '1.13'
97
83
  description: " KDirector provides domain specific language implementations for
98
84
  code generation\n"
99
85
  email:
@@ -130,13 +116,14 @@ files:
130
116
  - lib/k_director/directors/base_director.rb
131
117
  - lib/k_director/directors/child_director.rb
132
118
  - lib/k_director/directors/data.rb
119
+ - lib/k_director/dsls/basic_dsl.rb
120
+ - lib/k_director/dsls/builder_options_dsl.rb
133
121
  - lib/k_director/dsls/children/blueprint.rb
134
122
  - lib/k_director/dsls/children/github.rb
135
123
  - lib/k_director/dsls/children/package_json.rb
136
124
  - lib/k_director/dsls/children/package_json_configuration.rb
137
125
  - lib/k_director/dsls/nuxt3_dsl.rb
138
126
  - lib/k_director/dsls/ruby_gem_dsl.rb
139
- - lib/k_director/dsls/simple_dsl.rb
140
127
  - lib/k_director/version.rb
141
128
  - package-lock.json
142
129
  - package.json