minify/src/70530246-2903-4c02-af9a-611...
Robot e23917c5e1
update 2024-04-07 13:20:18
2024-04-07 13:20:29 +02:00
..
README.md update 2023-10-24 10:36:32 2023-10-24 10:36:42 +02:00
code.php first commit 2023-04-15 16:58:37 +02:00
code.power first commit 2023-04-15 16:58:37 +02:00
settings.json update 2024-04-07 13:20:18 2024-04-07 13:20:29 +02:00

README.md

██████╗  ██████╗ ██╗    ██╗███████╗██████╗
██╔══██╗██╔═══██╗██║    ██║██╔════╝██╔══██╗
██████╔╝██║   ██║██║ █╗ ██║█████╗  ██████╔╝
██╔═══╝ ██║   ██║██║███╗██║██╔══╝  ██╔══██╗
██║     ╚██████╔╝╚███╔███╔╝███████╗██║  ██║
╚═╝      ╚═════╝  ╚══╝╚══╝ ╚══════╝╚═╝  ╚═╝

class Css (Details)

namespace: VDM\Minify extends: Minify

@startuml
class Css  #Gold {
  # $maxImportSize
  + setMaxImportSize(int $size)
  + setImportExtensions(array $extensions)
  # moveImportsToTop(string $content) : string
  # combineImports(string $source, string $content, ...) : string
  # importFiles(string $source, string $content) : string
  + execute(string[optional] $path = null, string[] $parents = []) : string
  # move(ConverterInterface $converter, string $content) : string
  # shortenColors(string $content) : string
  # shortenFontWeights(string $content) : string
  # shortenZeroes(string $content) : string
  # stripEmptyTags(string $content) : string
  # stripComments()
  # stripWhitespace(string $content) : string
  # extractMath()
  # extractCustomProperties()
  # canImportBySize(string $path) : bool
  # canImportByPath(string $path) : bool
  # getPathConverter(string $source, string $target) : ConverterInterface
}

note right of Css::setMaxImportSize
  Set the maximum size if files to be imported.
Files larger than this size (in kB) will not be imported into the CSS.
Importing files into the CSS as data-uri will save you some connections,
but we should only import relatively small decorative images so that our
CSS file doesn't get too bulky.

end note

note left of Css::setImportExtensions
  Set the type of extensions to be imported into the CSS (to save network
connections).
Keys of the array should be the file extensions & respective values
should be the data type.

end note

note right of Css::moveImportsToTop
  Move any import statements to the top.

  return: string
end note

note left of Css::combineImports
  Combine CSS from import statements.
Import statements will be loaded and their content merged into the original
file, to save HTTP requests.

  return: string
  
  arguments:
    string $source
    string $content
    string[] $parents
end note

note right of Css::importFiles
  Import files into the CSS, base64-ized.
original file, to save HTTP requests.

  return: string
end note

note left of Css::execute
  Minify the data.
Perform CSS optimizations.

  return: string
end note

note right of Css::move
  Moving a css file should update all relative urls.
Relative references (e.g. ../images/image.gif) in a certain css file,
will have to be updated when a file is being saved at another location
(e.g. ../../images/image.gif, if the new CSS file is 1 folder deeper).

  return: string
end note

note left of Css::shortenColors
  Shorthand hex color codes.
#FF0000 -> #F00.

  return: string
end note

note right of Css::shortenFontWeights
  Shorten CSS font weights.

  return: string
end note

note left of Css::shortenZeroes
  Shorthand 0 values to plain 0, instead of e.g. -0em.

  return: string
end note

note right of Css::stripEmptyTags
  Strip empty tags from source code.

  return: string
end note

note left of Css::stripComments
  Strip comments from source code.

end note

note right of Css::stripWhitespace
  Strip whitespace.

  return: string
end note

note left of Css::extractMath
  Replace all occurrences of functions that may contain math, where
whitespace around operators needs to be preserved (e.g. calc, clamp).

end note

note right of Css::extractCustomProperties
  Replace custom properties, whose values may be used in scenarios where
we wouldn't want them to be minified (e.g. inside calc).

end note

note left of Css::canImportBySize
  Check if file is small enough to be imported.

  return: bool
end note

note right of Css::canImportByPath
  Check if file a file can be imported, going by the path.

  return: bool
end note

note left of Css::getPathConverter
  Return a converter to update relative paths to be relative to the new
destination.

  return: ConverterInterface
end note
 
@enduml

     ██╗ ██████╗██████╗
     ██║██╔════╝██╔══██╗
     ██║██║     ██████╔╝
██   ██║██║     ██╔══██╗
╚█████╔╝╚██████╗██████╔╝
 ╚════╝  ╚═════╝╚═════╝

Build with Joomla Component Builder