appydave-tools 0.3.5 → 0.3.6

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: 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