class SvelteOnRails::Lib::ViewHelperSupport

def generate_cache_key

def generate_cache_key
  mtime_file = @conf.ssr_dist_folder.join('last_mtime')
  mtime = File.read(mtime_file)
  key2 = if @helper_options[:cache_key]
           k2 = (@helper_options[:cache_key])
           keys = k2.is_a?(Array) ? k2 : [k2]
           keys.map { |k| k.is_a?(ActiveRecord::Base) ? "#{k.class.name}#{k.id}" : k.to_s }.join('-')
         end
  filename_part = [
    "#{filename.split('/').last}.svelte",
    Zlib.crc32(filename).to_s(36),
    key2
  ].compact.join('-')
  @cache_key_primary = [
    conf.redis_cache_store[:namespace] ? conf.redis_cache_store[:namespace] : "svelte-on-rails:#{Rails.env}",
    filename_part,
  ].join(':')
  last_part = [
    (@conf.watch_changes? ? Zlib.crc32(mtime).to_s(36) : nil),
    Zlib.crc32(@all_arguments.to_json).to_s(36)
  ].compact.join('-')
  @cache_key = [@cache_key_primary, last_part].join(':')
end