Sha256: 6bdc7d64ceb783ce16454bdc3d73aa339f564cd208e506854564c0609b2bf229
Contents?: true
Size: 885 Bytes
Versions: 18
Compression:
Stored size: 885 Bytes
Contents
# frozen_string_literal: true class CmdletDao attr_reader :k_builder def initialize(k_builder) @k_builder = k_builder end def all_cmdlets data_access .category .categories.flat_map { |category| read_cmdlets(category[:name]) } .compact .uniq .sort_by { |r| [r[:category], r[:name]] } end def all_cmdlets_by_category grouped_categories = all_cmdlets.group_by { |cmdlet| cmdlet[:category] } grouped_categories.keys.map { |category_key| { category: category_key, cmdlets: grouped_categories[category_key] } } end private def read_cmdlets(category_name) file_name = k_builder.target_folders.join(:builder_data, 'cmdlets', "#{category_name}.json") return JSON.parse(File.read(file_name), symbolize_names: true)[:cmdlets] if File.exist?(file_name) puts "Cmdlet file #{file_name} not found" nil end end
Version data entries
18 entries across 18 versions & 1 rubygems