appydave-tools 0.3.5 → 0.3.6

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: adb0c7689faee4bc0c113a06a96f5c1f3e8537bfa7aff27486ce993edad0a87a
4
+ data.tar.gz: 834961331dacd537494daddd88347f0688499c9f5399b147c0ae1176aa683360
5
5
  SHA512:
6
- metadata.gz: cb885bd5100cdb0142b1807901fe97778e23b9adef88a03b326de2f22e8325c889b418e498ad1efc4e8c52c7eed87735d1d44dec2853370034e1e6c46679c658
7
- data.tar.gz: 35ee8a319386f6f38dcf5a8cfc3b2a361865740432f1bfac99b5b6d3bd448bca7accf9cfc32b76a6d4994f9be6abf91dae62c42596fdb9dafc56e493b3d5fea9
6
+ metadata.gz: 16676ca28b4c46c6b1bec9aef3ed9c103e426fa582d748bf6d6e4234e002bdfef9dc98e487d5b96a883df4b1e986ebfc7d9d20388a587207c092ec32a778d2e7
7
+ data.tar.gz: d8360470ac1f0015d40c7d6acb9cb7afaf10231f0486015dab83c4f4e88e30fa792419e135b96302c749e38bc999bbfb7884be27d63b56975e1a99e245ff405c
data/CHANGELOG.md CHANGED
@@ -1,3 +1,10 @@
1
+ ## [0.3.5](https://github.com/klueless-io/appydave-tools/compare/v0.3.4...v0.3.5) (2024-05-19)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * add support for configurable ([82852f8](https://github.com/klueless-io/appydave-tools/commit/82852f805809b133278de70be24314e83a1d4b05))
7
+
1
8
  ## [0.3.4](https://github.com/klueless-io/appydave-tools/compare/v0.3.3...v0.3.4) (2024-05-19)
2
9
 
3
10
 
@@ -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,6 +6,8 @@ module Appydave
6
6
  module NameManager
7
7
  # Parses and generates project names for Appydave video projects
8
8
  class ProjectName
9
+ include Appydave::Tools::Configuration::Configurable
10
+
9
11
  attr_reader :sequence, :channel_code, :project_name
10
12
 
11
13
  def initialize(file_name)
@@ -29,10 +31,20 @@ module Appydave
29
31
  def parse_file_name(file_name)
30
32
  file_name = File.basename(file_name, File.extname(file_name))
31
33
  parts = file_name.split('-')
34
+ length = parts.length
35
+
36
+ @sequence = part(parts, 0)
37
+ code = part(parts, 1)
38
+ if config.channels.code?(code)
39
+ @channel_code = code
40
+ @project_name = parts[2..length].join('-')
41
+ else
42
+ @project_name = parts[1..length].join('-')
43
+ end
44
+ end
32
45
 
33
- @sequence = parts[0]
34
- @project_name = parts[-1]
35
- @channel_code = parts.length == 3 ? parts[1] : nil
46
+ def part(parts, index)
47
+ parts[index] if parts.length > index
36
48
  end
37
49
  end
38
50
  end
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Appydave
4
4
  module Tools
5
- VERSION = '0.3.5'
5
+ VERSION = '0.3.6'
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.6",
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.6",
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.6",
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.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - David Cruwys