Inital by-type split

Split type.class from CssTypeSelector to CssCompositeSelector, probably support type#id.class selectors

Apply review comments, refactor css-selectors internally

Applied refactoring, all tests pass, button does not notify changes

Add tests for the css selectors parser.

Added tests for css-selectors

Added basic implementation of mayMatch and changeMap for css match state

Implemented TKUnit.assertDeepEqual to check key and key/values in Map and Set

Watch for property and pseudoClass changes

Add one child group test

Add typings for animations

Added mechanism to enable/disable listeners for pseudo classes

Count listeners instead of checking handlers, reverse subscription and unsubscription
This commit is contained in:
Panayot Cankov
2016-06-22 13:13:53 +03:00
parent 0477c81dd5
commit c1aeeb51a7
33 changed files with 1560 additions and 1006 deletions

View File

@ -5,7 +5,7 @@ declare module "css" {
}
export interface Node {
type: string;
type: "rule" | "keyframes" | "declaration";
position: Position;
}
@ -16,11 +16,15 @@ declare module "css" {
export interface Rule extends Node {
selectors: string[];
declarations: Declaration[];
declarations: Node[];
}
export interface Keyframes extends Rule {
name: string;
}
export interface StyleSheet {
rules: Rule[];
rules: Node[];
}
export interface SyntaxTree {