Sha256: a4fb7494f369fa9f174bf8b7d99ee2078fec6c4d1ff34df0c1f519f373f8159e

Contents?: true

Size: 1.05 KB

Versions: 43

Compression:

Stored size: 1.05 KB

Contents

# frozen_string_literal: true

# takelage bit require export
module BitRequireExport
  # Backend method for bit require export.
  def bit_require_export
    log.debug 'Running bit require export'

    return false unless configured? %w[project_root_dir]

    components = _bit_require_lib_get_components
    bitrequire_yml = _bit_require_export_get_bitrequire_yml components

    log.debug "bitrequire.yml of this project:\n#{bitrequire_yml}"
    bitrequire_yml
  end

  private

  # Create contents of bitrequire yaml file.
  # rubocop:disable Metrics/AbcSize
  def _bit_require_export_get_bitrequire_yml(components)
    bitrequire = {}
    components.each do |component|
      scope = component['id'].clone.gsub!(%r{/.*}, '')
      name = component['id'].clone.gsub!(%r{#{scope}/}, '')
      bitrequire['scopes'] = { scope => [] } if bitrequire['scopes'].nil?
      bitrequire['scopes'][scope] = [] unless bitrequire['scopes'].key? scope
      bitrequire['scopes'][scope] << { 'name' => name }
    end
    hash_to_yaml bitrequire
  end
  # rubocop:enable Metrics/AbcSize
end

Version data entries

43 entries across 43 versions & 1 rubygems

Version Path
takelage-0.33.1 lib/takelage/bit/require/export.rb
takelage-0.32.4 lib/takelage/bit/require/export.rb
takelage-0.32.3 lib/takelage/bit/require/export.rb
takelage-0.32.1 lib/takelage/bit/require/export.rb
takelage-0.32.0 lib/takelage/bit/require/export.rb
takelage-0.31.0 lib/takelage/bit/require/export.rb
takelage-0.30.6 lib/takelage/bit/require/export.rb
takelage-0.30.5 lib/takelage/bit/require/export.rb
takelage-0.30.1 lib/takelage/bit/require/export.rb
takelage-0.30.0 lib/takelage/bit/require/export.rb
takelage-0.29.14 lib/takelage/bit/require/export.rb
takelage-0.29.13 lib/takelage/bit/require/export.rb
takelage-0.29.11 lib/takelage/bit/require/export.rb
takelage-0.29.10 lib/takelage/bit/require/export.rb
takelage-0.29.8 lib/takelage/bit/require/export.rb
takelage-0.29.6 lib/takelage/bit/require/export.rb
takelage-0.29.0 lib/takelage/bit/require/export.rb
takelage-0.28.26 lib/takelage/bit/require/export.rb
takelage-0.28.24 lib/takelage/bit/require/export.rb
takelage-0.28.14 lib/takelage/bit/require/export.rb