Skip to content

Latest commit

 

History

History
189 lines (142 loc) · 4.05 KB

CHANGELOG.md

File metadata and controls

189 lines (142 loc) · 4.05 KB

Changelog

v0.7.1

  • fix nesting rules expansion #45

#v0.7.0

  • fix merging rules
  • experimental CSS prefix removal
    • declaration name
    • declaration value
    • exclude -webkit-* gradients
  • css selector validation
    • pseudo element
    • partial pseudo class validation. does not validate parameters
    • attribute selector
    • combinator
    • simple selector
    • nested selector
    • strict vs permissive validation: allow unknown items such as pseudo classes
      • allow unknown pseudo classes
      • allow unknown attribute selectors
  • strip universal selector when possible

v0.6.0

  • light-dark() color
  • system color

V0.5.4

  • incorrectly expand css nesting rules

v0.5.3

  • incorrectly expand css nesting rules

v0.5.1

  • failed to flatten @import when using url() syntax

v0.5.0

  • render node with parents
  • fix relative color from xyz
  • fix bug when inlineCss is true bug no css variable exists
  • compute more shorthands
  • (web) fetch imported css files from external domains using cors

v0.4.1

no code change

v0.4.0

Parsing

  • allow async node visitors
  • adding declaration parsing helper async parseDeclarations(source: string): Promise<AstDeclarations[]>

CSS color level 4 & 5

  • color space: srgb, srgb-linear, display-p3, prophoto-rgb, a98-rgb, rec2020, xyz, xyz-d50
  • color-mix()
  • color()
  • relative color
  • lab()
  • lch()
  • oklab()
  • oklch()

v0.3.0

shorthands

  • column-rule
  • columns
  • container
  • flex
  • flex-flow
  • gap

Other

  • renamed RenderOptions.colorConvert to RenderOptions.convertColor
  • support none keyword in color
  • css relative color syntax for rgb(), hsl() and hwb() colors https://www.w3.org/TR/css-color-5/#relative-colors
    • rgb
    • hex
    • hsl
    • hwb
    • calc()
    • calc() and inline var()

v0.2.0

  • cancellable parser promise using abortSignal
  • node visitor (callback) :
    • Declaration visitor
    • selector visitor
    • at-rule visitor
  • support mixing units with calc()

shorthands

  • transition
  • list-style
  • text-emphasis
  • animation

Minification

v0.1.0

  • sourcemap generation
  • reduce calc():
  • inline css variables
  • configure duplicate declarations removal
  • configure shorthand properties computation

v0.0.1

Minification

  • merge identical rules
  • merge adjacent rules
  • minify colors
  • minify numbers and Dimensions tokens
  • compute shorthand: see the list below
  • remove redundant declarations
  • simple shorthand properties (padding, margin, etc). must have all required properties
  • complex shorthand properties (background, font, etc.). may have optional properties
  • conditionally unwrap :is()
  • automatic css nesting
  • automatically wrap selectors using :is()
  • multi-level shorthand properties ( border - [border-width, border-color, border-style, etc.]) https://developer.mozilla.org/en-US/docs/Web/CSS/Shorthand_properties
  • avoid reparsing (declarations, selectors, at-rule)
  • node and browser versions
  • decode and replace utf-8 escape sequence

Computed shorthands

  • background
  • border
  • border-bottom
  • border-color
  • border-left
  • border-radius
  • border-right
  • border-style
  • border-top
  • border-width
  • font
  • inset
  • margin
  • outline
  • overflow
  • padding
  • text-decoration

Performance

  • flatten @import

Error handling

  • parse bad comments / cdo comments
  • parse bad string 1
  • parse bad string 2
  • parse empty declaration
  • parse unclosed rule
  • parse unclosed at-rule
  • parse bad import

Testing

  • node tests
  • browser tests

Code Coverage

  • node
  • browser