class Components::Assets::AssetManager

Overview

Manages all assets in the pipeline

Defined in:

components/assets/asset_manager.cr

Constructors

Instance Method Summary

Constructor Detail

def self.instance : AssetManager #

[View source]
def self.new(output_dir : String = "public/assets", development : Bool = false) #

[View source]

Instance Method Detail

def asset_url(path : String) : String #

Get asset URL for templates


[View source]
def assets : Hash(String, Asset) #

Registered assets


[View source]
def build : Nil #

Build all assets to output directory


[View source]
def clear : Nil #

Clear all assets


[View source]
def css_assets : Array(CSSAsset) #

Get all CSS assets


[View source]
def development : Bool #

Development mode flag


[View source]
def development=(development : Bool) #

Development mode flag


[View source]
def get(id : String) : Asset | Nil #

Get an asset by ID


[View source]
def get_by_path(path : String) : Asset | Nil #

Get asset by source path


[View source]
def image_assets : Array(ImageAsset) #

Get all image assets


[View source]
def javascript_include_tags : String #

[View source]
def js_assets : Array(JSAsset) #

Get all JS assets


[View source]
def manifest : Hash(String, String) #

Asset manifest for production


[View source]
def output_dir : String #

Output directory


[View source]
def output_dir=(output_dir : String) #

Output directory


[View source]
def precompile(directory : String, pattern : String = "**/*") : Nil #

Precompile assets from directory


[View source]
def process_all : Nil #

Process all assets


[View source]
def register(asset : Asset) : String #

Register an asset


[View source]
def register_file(path : String) : String | Nil #

Register an asset from file


[View source]
def stylesheet_link_tags : String #

Generate asset tags for HTML


[View source]
def watch : Nil #

Watch for file changes


[View source]
def watch_paths : Array(String) #

Asset paths to watch


[View source]