appydave-tools 0.3.5 → 0.3.7

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e9ffa5eaaf86ac0e1c3fa37723bdf1de7deef27e8880f34111cd74a7069b3651
4
- data.tar.gz: 811afb3d402053e6d856e0af6b8373e23dd15758db21f12702c89dfd1bbd8f7d
3
+ metadata.gz: b784a1ec20492303e8e4f67b1492543456b4c1b9b65a9d569fc364f2493e17ca
4
+ data.tar.gz: 7482ddc3382d2b7284a7db3a9e5fe4496b8cb7202f3d18f8d4b0396507ae35b6
5
5
  SHA512:
6
- metadata.gz: cb885bd5100cdb0142b1807901fe97778e23b9adef88a03b326de2f22e8325c889b418e498ad1efc4e8c52c7eed87735d1d44dec2853370034e1e6c46679c658
7
- data.tar.gz: 35ee8a319386f6f38dcf5a8cfc3b2a361865740432f1bfac99b5b6d3bd448bca7accf9cfc32b76a6d4994f9be6abf91dae62c42596fdb9dafc56e493b3d5fea9
6
+ metadata.gz: 158e93d40b043b74eeb1f46f3fde47b342ccd37ca67fe448c458a9cd671fa6072ba530dcd355922ec7deb31b951bacac200526e266e3314357ba4d4ae552acaf
7
+ data.tar.gz: a6cd05c7cfb91ec0e9308f8d39bfe72a939426d611bd72f9dce98b527bdca7149aebb28ffa1da93e8ba4e40b206ac224c18b44f233cff702f476335ef0c854ea
data/CHANGELOG.md CHANGED
@@ -1,3 +1,18 @@
1
+ ## [0.3.6](https://github.com/klueless-io/appydave-tools/compare/v0.3.5...v0.3.6) (2024-05-19)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * add default configuration and support for project name ([65d7c3e](https://github.com/klueless-io/appydave-tools/commit/65d7c3e8b05bbf9db4510762cccbd419ca988611))
7
+ * fix issue in CI[#1](https://github.com/klueless-io/appydave-tools/issues/1) ([867937e](https://github.com/klueless-io/appydave-tools/commit/867937e2ed271e4afe8dbbe3b3cee9d5ff15d986))
8
+
9
+ ## [0.3.5](https://github.com/klueless-io/appydave-tools/compare/v0.3.4...v0.3.5) (2024-05-19)
10
+
11
+
12
+ ### Bug Fixes
13
+
14
+ * add support for configurable ([82852f8](https://github.com/klueless-io/appydave-tools/commit/82852f805809b133278de70be24314e83a1d4b05))
15
+
1
16
  ## [0.3.4](https://github.com/klueless-io/appydave-tools/compare/v0.3.3...v0.3.4) (2024-05-19)
2
17
 
3
18
 
@@ -10,9 +10,16 @@ module Appydave
10
10
 
11
11
  attr_accessor :config_path
12
12
  attr_reader :configurations
13
+ attr_reader :default_block
13
14
 
14
15
  def configure
15
- yield self
16
+ if block_given?
17
+ yield self
18
+ elsif default_block
19
+ default_block.call(self)
20
+ else
21
+ raise Appydave::Tools::Error, 'No configuration block provided'
22
+ end
16
23
  ensure_config_directory
17
24
  end
18
25
 
@@ -35,6 +42,10 @@ module Appydave
35
42
  configurations.each_value(&:save)
36
43
  end
37
44
 
45
+ def set_default(&block)
46
+ @default_block = block
47
+ end
48
+
38
49
  def load
39
50
  configurations.each_value(&:load)
40
51
  end
@@ -21,6 +21,8 @@ module Appydave
21
21
  result = case format
22
22
  when 'tree'
23
23
  build_tree
24
+ when 'both'
25
+ "#{build_tree}\n\n#{build_content}"
24
26
  else
25
27
  build_content
26
28
  end
@@ -6,7 +6,10 @@ module Appydave
6
6
  module NameManager
7
7
  # Parses and generates project names for Appydave video projects
8
8
  class ProjectName
9
- attr_reader :sequence, :channel_code, :project_name
9
+ include Appydave::Tools::Configuration::Configurable
10
+
11
+ attr_accessor :sequence, :project_name
12
+ attr_reader :channel_code
10
13
 
11
14
  def initialize(file_name)
12
15
  parse_file_name(file_name)
@@ -20,8 +23,8 @@ module Appydave
20
23
  end.downcase
21
24
  end
22
25
 
23
- def to_s
24
- generate_name
26
+ def channel_code=(code)
27
+ @channel_code = (code if config.channels.code?(code))
25
28
  end
26
29
 
27
30
  private
@@ -29,10 +32,20 @@ module Appydave
29
32
  def parse_file_name(file_name)
30
33
  file_name = File.basename(file_name, File.extname(file_name))
31
34
  parts = file_name.split('-')
35
+ length = parts.length
36
+
37
+ @sequence = part(parts, 0)
38
+ code = part(parts, 1)
39
+ if config.channels.code?(code)
40
+ @channel_code = code
41
+ @project_name = parts[2..length].join('-')
42
+ else
43
+ @project_name = parts[1..length].join('-')
44
+ end
45
+ end
32
46
 
33
- @sequence = parts[0]
34
- @project_name = parts[-1]
35
- @channel_code = parts.length == 3 ? parts[1] : nil
47
+ def part(parts, index)
48
+ parts[index] if parts.length > index
36
49
  end
37
50
  end
38
51
  end
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Appydave
4
4
  module Tools
5
- VERSION = '0.3.5'
5
+ VERSION = '0.3.7'
6
6
  end
7
7
  end
@@ -18,7 +18,8 @@ require 'appydave/tools/configuration/channel_projects_config'
18
18
  require 'appydave/tools/configuration/channels_config'
19
19
  require 'appydave/tools/name_manager/project_name'
20
20
 
21
- Appydave::Tools::Configuration::Config.configure do |config|
21
+ Appydave::Tools::Configuration::Config.set_default do |config|
22
+ config.config_path = File.expand_path('~/.config/appydave')
22
23
  config.register(:settings, Appydave::Tools::Configuration::SettingsConfig)
23
24
  config.register(:channels, Appydave::Tools::Configuration::ChannelsConfig)
24
25
  config.register(:channel_projects, Appydave::Tools::Configuration::ChannelProjectsConfig)
data/package-lock.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "appydave-tools",
3
- "version": "0.3.5",
3
+ "version": "0.3.7",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "appydave-tools",
9
- "version": "0.3.5",
9
+ "version": "0.3.7",
10
10
  "devDependencies": {
11
11
  "@klueless-js/semantic-release-rubygem": "github:klueless-js/semantic-release-rubygem",
12
12
  "@semantic-release/changelog": "^6.0.3",
data/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "appydave-tools",
3
- "version": "0.3.5",
3
+ "version": "0.3.7",
4
4
  "description": "AppyDave YouTube Automation Tools",
5
5
  "scripts": {
6
6
  "release": "semantic-release"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: appydave-tools
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.5
4
+ version: 0.3.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - David Cruwys