Sha256: 7877d6fd111db857c10ee276fe4f4f8a1ced7f098a1398e98d624a5a8512e801
Contents?: true
Size: 1.32 KB
Versions: 1
Compression:
Stored size: 1.32 KB
Contents
# frozen_string_literal: true require "sewing_kit/webpack/webpack" module SewingKit module Webpack class Manifest class Base def initialize @metadata = nil end def clear_cache! @metadata = nil end def manifest current_metadata = metadata if current_metadata.is_a?(Array) all_assets = current_metadata.flat_map do |data| data["assets"]["all"].values end # sewing-kit asset manifests return a numerically indexed hash, not a true array, # so we need to change it back to a hash for compatibility asset_hash = all_assets.each_with_index .collect { |asset, index| [index, asset] } .to_h { "all" => asset_hash, } else current_metadata["assets"] end end protected def load_metadata_from_fs(path) begin content = File.read(path) rescue => e raise ManifestLoadError.new(path, e) end parse_metadata(content) end private def parse_metadata(json) JSON.parse(json) rescue => e raise ManifestParseError, e end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
sewing_kit-0.130.1 | lib/sewing_kit/webpack/manifest/base.rb |