@najemi-software/vitest-dom 0.33.1 → 0.34.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +7 -0
- package/esm/css-parse/at-rule-nodes.d.ts +54 -0
- package/esm/css-parse/at-rule-nodes.js +2 -0
- package/esm/css-parse/at-rule-nodes.js.map +1 -0
- package/esm/css-parse/comments.d.ts +10 -0
- package/esm/css-parse/comments.js +35 -0
- package/esm/css-parse/comments.js.map +1 -0
- package/esm/css-parse/css-parse.d.ts +3 -0
- package/esm/css-parse/css-parse.js +22 -0
- package/esm/css-parse/css-parse.js.map +1 -0
- package/esm/css-parse/declaration-block-at-rules.d.ts +10 -0
- package/esm/css-parse/declaration-block-at-rules.js +55 -0
- package/esm/css-parse/declaration-block-at-rules.js.map +1 -0
- package/esm/css-parse/declarations.d.ts +10 -0
- package/esm/css-parse/declarations.js +48 -0
- package/esm/css-parse/declarations.js.map +1 -0
- package/esm/css-parse/keyframes.d.ts +10 -0
- package/esm/css-parse/keyframes.js +53 -0
- package/esm/css-parse/keyframes.js.map +1 -0
- package/esm/css-parse/nested-rule-at-rules.d.ts +19 -0
- package/esm/css-parse/nested-rule-at-rules.js +85 -0
- package/esm/css-parse/nested-rule-at-rules.js.map +1 -0
- package/esm/css-parse/nodes.d.ts +34 -0
- package/esm/css-parse/nodes.js +2 -0
- package/esm/css-parse/nodes.js.map +1 -0
- package/esm/css-parse/options.d.ts +6 -0
- package/esm/css-parse/options.js +2 -0
- package/esm/css-parse/options.js.map +1 -0
- package/esm/css-parse/parent-references.d.ts +4 -0
- package/esm/css-parse/parent-references.js +29 -0
- package/esm/css-parse/parent-references.js.map +1 -0
- package/esm/css-parse/parse-error.d.ts +7 -0
- package/esm/css-parse/parse-error.js +2 -0
- package/esm/css-parse/parse-error.js.map +1 -0
- package/esm/css-parse/parser-context.d.ts +50 -0
- package/esm/css-parse/parser-context.js +88 -0
- package/esm/css-parse/parser-context.js.map +1 -0
- package/esm/css-parse/position.d.ts +24 -0
- package/esm/css-parse/position.js +18 -0
- package/esm/css-parse/position.js.map +1 -0
- package/esm/css-parse/rules.d.ts +6 -0
- package/esm/css-parse/rules.js +56 -0
- package/esm/css-parse/rules.js.map +1 -0
- package/esm/css-parse/selectors.d.ts +5 -0
- package/esm/css-parse/selectors.js +21 -0
- package/esm/css-parse/selectors.js.map +1 -0
- package/esm/css-parse/statement-at-rules.d.ts +18 -0
- package/esm/css-parse/statement-at-rules.js +44 -0
- package/esm/css-parse/statement-at-rules.js.map +1 -0
- package/esm/css-parse/trim.d.ts +4 -0
- package/esm/css-parse/trim.js +7 -0
- package/esm/css-parse/trim.js.map +1 -0
- package/esm/matchers/utils.js +1 -1
- package/esm/matchers/utils.js.map +1 -1
- package/package.json +1 -1
- package/esm/matchers/css-parse.d.ts +0 -112
- package/esm/matchers/css-parse.js +0 -508
- package/esm/matchers/css-parse.js.map +0 -1
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import { createPositionClass } from "./position.js";
|
|
2
|
+
/**
|
|
3
|
+
* Parser state (the remaining css and the current position in it) shared by
|
|
4
|
+
* all parsing functions, plus the low-level scanning primitives.
|
|
5
|
+
*/
|
|
6
|
+
export class ParserContext {
|
|
7
|
+
constructor(css, options) {
|
|
8
|
+
/**
|
|
9
|
+
* Positional.
|
|
10
|
+
*/
|
|
11
|
+
this.lineno = 1;
|
|
12
|
+
this.column = 1;
|
|
13
|
+
this.errorsList = [];
|
|
14
|
+
this.css = css;
|
|
15
|
+
this.options = options;
|
|
16
|
+
this.Position = createPositionClass(css);
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Update lineno and column based on `str`.
|
|
20
|
+
*/
|
|
21
|
+
updatePosition(str) {
|
|
22
|
+
const lines = str.match(/\n/g);
|
|
23
|
+
if (lines)
|
|
24
|
+
this.lineno += lines.length;
|
|
25
|
+
const i = str.lastIndexOf("\n");
|
|
26
|
+
this.column = ~i ? str.length - i : this.column + str.length;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Mark position and patch `node.position`.
|
|
30
|
+
*/
|
|
31
|
+
position() {
|
|
32
|
+
const start = { line: this.lineno, column: this.column };
|
|
33
|
+
return (node) => {
|
|
34
|
+
node.position = new this.Position(start, { line: this.lineno, column: this.column }, this.options.source);
|
|
35
|
+
this.whitespace();
|
|
36
|
+
return node;
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Error `msg`.
|
|
41
|
+
*/
|
|
42
|
+
error(msg) {
|
|
43
|
+
const err = Object.assign(new Error(this.options.source + ":" + this.lineno + ":" + this.column + ": " + msg), {
|
|
44
|
+
reason: msg,
|
|
45
|
+
filename: this.options.source,
|
|
46
|
+
line: this.lineno,
|
|
47
|
+
column: this.column,
|
|
48
|
+
source: this.css,
|
|
49
|
+
});
|
|
50
|
+
if (this.options.silent) {
|
|
51
|
+
this.errorsList.push(err);
|
|
52
|
+
}
|
|
53
|
+
else {
|
|
54
|
+
throw err;
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Match `re` and return captures.
|
|
59
|
+
*/
|
|
60
|
+
match(re) {
|
|
61
|
+
const m = re.exec(this.css);
|
|
62
|
+
if (!m)
|
|
63
|
+
return;
|
|
64
|
+
const str = m[0];
|
|
65
|
+
this.updatePosition(str);
|
|
66
|
+
this.css = this.css.slice(str.length);
|
|
67
|
+
return m;
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Parse whitespace.
|
|
71
|
+
*/
|
|
72
|
+
whitespace() {
|
|
73
|
+
this.match(/^\s*/);
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Opening brace.
|
|
77
|
+
*/
|
|
78
|
+
open() {
|
|
79
|
+
return this.match(/^{\s*/);
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Closing brace.
|
|
83
|
+
*/
|
|
84
|
+
close() {
|
|
85
|
+
return this.match(/^}/);
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
//# sourceMappingURL=parser-context.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parser-context.js","sourceRoot":"","sources":["../../src/css-parse/parser-context.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
export interface ILineColumn {
|
|
2
|
+
line: number;
|
|
3
|
+
column: number;
|
|
4
|
+
}
|
|
5
|
+
/** Information about the position in the source string that corresponds to the node. */
|
|
6
|
+
export interface INodePosition {
|
|
7
|
+
start: ILineColumn;
|
|
8
|
+
end: ILineColumn;
|
|
9
|
+
/** The value of options.source if passed to css.parse. Otherwise undefined. */
|
|
10
|
+
source: string | undefined;
|
|
11
|
+
/** The full source string passed to css.parse. */
|
|
12
|
+
content: string;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Store position information for a node
|
|
16
|
+
*/
|
|
17
|
+
export declare function createPositionClass(content: string): {
|
|
18
|
+
new (start: ILineColumn, end: ILineColumn, source: string | undefined): {
|
|
19
|
+
start: ILineColumn;
|
|
20
|
+
end: ILineColumn;
|
|
21
|
+
source: string | undefined;
|
|
22
|
+
content: string;
|
|
23
|
+
};
|
|
24
|
+
};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Store position information for a node
|
|
3
|
+
*/
|
|
4
|
+
export function createPositionClass(content) {
|
|
5
|
+
class Position {
|
|
6
|
+
constructor(start, end, source) {
|
|
7
|
+
this.start = start;
|
|
8
|
+
this.end = end;
|
|
9
|
+
this.source = source;
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Non-enumerable source string
|
|
14
|
+
*/
|
|
15
|
+
Position.prototype.content = content;
|
|
16
|
+
return Position;
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=position.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"position.js","sourceRoot":"","sources":["../../src/css-parse/position.ts"],"names":[],"mappings":"AAeA;;GAEG;AAEH,MAAM,UAAU,mBAAmB,CAAC,OAAe;IAC/C,MAAM,QAAQ;QAMV,YAAY,KAAkB,EAAE,GAAgB,EAAE,MAA0B;YACxE,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;YACnB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;YACf,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACzB,CAAC;KACJ;IAED;;OAEG;IAEH,QAAQ,CAAC,SAAS,CAAC,OAAO,GAAG,OAAO,CAAC;IAErC,OAAO,QAAQ,CAAC;AACpB,CAAC"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { comments } from "./comments.js";
|
|
2
|
+
import { atfontface, atpage } from "./declaration-block-at-rules.js";
|
|
3
|
+
import { declarations } from "./declarations.js";
|
|
4
|
+
import { atkeyframes } from "./keyframes.js";
|
|
5
|
+
import { atdocument, athost, atmedia, atsupports } from "./nested-rule-at-rules.js";
|
|
6
|
+
import { selector } from "./selectors.js";
|
|
7
|
+
import { atcharset, atcustommedia, atimport, atnamespace } from "./statement-at-rules.js";
|
|
8
|
+
/**
|
|
9
|
+
* Parse ruleset.
|
|
10
|
+
*/
|
|
11
|
+
export function rules(ctx) {
|
|
12
|
+
let node;
|
|
13
|
+
const rules = [];
|
|
14
|
+
ctx.whitespace();
|
|
15
|
+
comments(ctx, rules);
|
|
16
|
+
while (ctx.css.length && ctx.css.charAt(0) != "}" && (node = atrule(ctx) || rule(ctx))) {
|
|
17
|
+
rules.push(node);
|
|
18
|
+
comments(ctx, rules);
|
|
19
|
+
}
|
|
20
|
+
return rules;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Parse at rule.
|
|
24
|
+
*/
|
|
25
|
+
function atrule(ctx) {
|
|
26
|
+
if (ctx.css[0] != "@")
|
|
27
|
+
return;
|
|
28
|
+
const nestedRules = () => rules(ctx);
|
|
29
|
+
return (atkeyframes(ctx) ||
|
|
30
|
+
atmedia(ctx, nestedRules) ||
|
|
31
|
+
atcustommedia(ctx) ||
|
|
32
|
+
atsupports(ctx, nestedRules) ||
|
|
33
|
+
atimport(ctx) ||
|
|
34
|
+
atcharset(ctx) ||
|
|
35
|
+
atnamespace(ctx) ||
|
|
36
|
+
atdocument(ctx, nestedRules) ||
|
|
37
|
+
atpage(ctx) ||
|
|
38
|
+
athost(ctx, nestedRules) ||
|
|
39
|
+
atfontface(ctx));
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Parse rule.
|
|
43
|
+
*/
|
|
44
|
+
function rule(ctx) {
|
|
45
|
+
const pos = ctx.position();
|
|
46
|
+
const sel = selector(ctx);
|
|
47
|
+
if (!sel)
|
|
48
|
+
return ctx.error("selector missing");
|
|
49
|
+
comments(ctx);
|
|
50
|
+
return pos({
|
|
51
|
+
type: "rule",
|
|
52
|
+
selectors: sel,
|
|
53
|
+
declarations: declarations(ctx),
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
//# sourceMappingURL=rules.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rules.js","sourceRoot":"","sources":["../../src/css-parse/rules.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAGpF,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAE1F;;GAEG;AAEH,MAAM,UAAU,KAAK,CAAC,GAAkB;IACpC,IAAI,IAA2B,CAAC;IAChC,MAAM,KAAK,GAAgB,EAAE,CAAC;IAC9B,GAAG,CAAC,UAAU,EAAE,CAAC;IACjB,QAAQ,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IACrB,OAAO,GAAG,CAAC,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;QACrF,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjB,QAAQ,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IACzB,CAAC;IACD,OAAO,KAAK,CAAC;AACjB,CAAC;AAED;;GAEG;AAEH,SAAS,MAAM,CAAC,GAAkB;IAC9B,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,GAAG;QAAE,OAAO;IAE9B,MAAM,WAAW,GAAG,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAErC,OAAO,CACH,WAAW,CAAC,GAAG,CAAC;QAChB,OAAO,CAAC,GAAG,EAAE,WAAW,CAAC;QACzB,aAAa,CAAC,GAAG,CAAC;QAClB,UAAU,CAAC,GAAG,EAAE,WAAW,CAAC;QAC5B,QAAQ,CAAC,GAAG,CAAC;QACb,SAAS,CAAC,GAAG,CAAC;QACd,WAAW,CAAC,GAAG,CAAC;QAChB,UAAU,CAAC,GAAG,EAAE,WAAW,CAAC;QAC5B,MAAM,CAAC,GAAG,CAAC;QACX,MAAM,CAAC,GAAG,EAAE,WAAW,CAAC;QACxB,UAAU,CAAC,GAAG,CAAC,CAClB,CAAC;AACN,CAAC;AAED;;GAEG;AAEH,SAAS,IAAI,CAAC,GAAkB;IAC5B,MAAM,GAAG,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAC;IAC3B,MAAM,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;IAE1B,IAAI,CAAC,GAAG;QAAE,OAAO,GAAG,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;IAC/C,QAAQ,CAAC,GAAG,CAAC,CAAC;IAEd,OAAO,GAAG,CAAC;QACP,IAAI,EAAE,MAAM;QACZ,SAAS,EAAE,GAAG;QACd,YAAY,EAAE,YAAY,CAAC,GAAG,CAAC;KAClC,CAAC,CAAC;AACP,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { trim } from "./trim.js";
|
|
2
|
+
/**
|
|
3
|
+
* Parse selector.
|
|
4
|
+
*/
|
|
5
|
+
export function selector(ctx) {
|
|
6
|
+
const m = ctx.match(/^([^{]+)/);
|
|
7
|
+
if (!m)
|
|
8
|
+
return;
|
|
9
|
+
/* @fix Remove all comments from selectors
|
|
10
|
+
* http://ostermiller.org/findcomment.html */
|
|
11
|
+
return trim(m[0])
|
|
12
|
+
.replace(/\/\*([^*]|[\r\n]|(\*+([^*/]|[\r\n])))*\*\/+/g, "")
|
|
13
|
+
.replace(/"(?:\\"|[^"])*"|'(?:\\'|[^'])*'/g, function (m) {
|
|
14
|
+
return m.replace(/,/g, "\u200C");
|
|
15
|
+
})
|
|
16
|
+
.split(/\s*(?![^(]*\)),\s*/)
|
|
17
|
+
.map(function (s) {
|
|
18
|
+
return s.replace(/\u200C/g, ",");
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=selectors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"selectors.js","sourceRoot":"","sources":["../../src/css-parse/selectors.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC;;GAEG;AAEH,MAAM,UAAU,QAAQ,CAAC,GAAkB;IACvC,MAAM,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAChC,IAAI,CAAC,CAAC;QAAE,OAAO;IACf;iDAC6C;IAC7C,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SACZ,OAAO,CAAC,8CAA8C,EAAE,EAAE,CAAC;SAC3D,OAAO,CAAC,kCAAkC,EAAE,UAAU,CAAC;QACpD,OAAO,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IACrC,CAAC,CAAC;SACD,KAAK,CAAC,oBAAoB,CAAC;SAC3B,GAAG,CAAC,UAAU,CAAC;QACZ,OAAO,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;IACrC,CAAC,CAAC,CAAC;AACX,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { ICustomMedia, ISimpleAtRule } from "./at-rule-nodes.js";
|
|
2
|
+
import type { ParserContext } from "./parser-context.js";
|
|
3
|
+
/**
|
|
4
|
+
* Parse custom-media.
|
|
5
|
+
*/
|
|
6
|
+
export declare function atcustommedia(ctx: ParserContext): ICustomMedia | undefined;
|
|
7
|
+
/**
|
|
8
|
+
* Parse import
|
|
9
|
+
*/
|
|
10
|
+
export declare const atimport: (ctx: ParserContext) => ISimpleAtRule | undefined;
|
|
11
|
+
/**
|
|
12
|
+
* Parse charset
|
|
13
|
+
*/
|
|
14
|
+
export declare const atcharset: (ctx: ParserContext) => ISimpleAtRule | undefined;
|
|
15
|
+
/**
|
|
16
|
+
* Parse namespace
|
|
17
|
+
*/
|
|
18
|
+
export declare const atnamespace: (ctx: ParserContext) => ISimpleAtRule | undefined;
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { trim } from "./trim.js";
|
|
2
|
+
// At-rules without a block, terminated by a semicolon.
|
|
3
|
+
/**
|
|
4
|
+
* Parse custom-media.
|
|
5
|
+
*/
|
|
6
|
+
export function atcustommedia(ctx) {
|
|
7
|
+
const pos = ctx.position();
|
|
8
|
+
const m = ctx.match(/^@custom-media\s+(--[^\s]+)\s*([^{;]+);/);
|
|
9
|
+
if (!m)
|
|
10
|
+
return;
|
|
11
|
+
return pos({
|
|
12
|
+
type: "custom-media",
|
|
13
|
+
name: trim(m[1]),
|
|
14
|
+
media: trim(m[2]),
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Parse non-block at-rules
|
|
19
|
+
*/
|
|
20
|
+
function _compileAtrule(name) {
|
|
21
|
+
const re = new RegExp("^@" + name + "\\s*([^;]+);");
|
|
22
|
+
return function (ctx) {
|
|
23
|
+
const pos = ctx.position();
|
|
24
|
+
const m = ctx.match(re);
|
|
25
|
+
if (!m)
|
|
26
|
+
return;
|
|
27
|
+
const ret = { type: name };
|
|
28
|
+
ret[name] = m[1].trim();
|
|
29
|
+
return pos(ret);
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Parse import
|
|
34
|
+
*/
|
|
35
|
+
export const atimport = _compileAtrule("import");
|
|
36
|
+
/**
|
|
37
|
+
* Parse charset
|
|
38
|
+
*/
|
|
39
|
+
export const atcharset = _compileAtrule("charset");
|
|
40
|
+
/**
|
|
41
|
+
* Parse namespace
|
|
42
|
+
*/
|
|
43
|
+
export const atnamespace = _compileAtrule("namespace");
|
|
44
|
+
//# sourceMappingURL=statement-at-rules.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"statement-at-rules.js","sourceRoot":"","sources":["../../src/css-parse/statement-at-rules.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,uDAAuD;AAEvD;;GAEG;AAEH,MAAM,UAAU,aAAa,CAAC,GAAkB;IAC5C,MAAM,GAAG,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAC;IAC3B,MAAM,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,yCAAyC,CAAC,CAAC;IAC/D,IAAI,CAAC,CAAC;QAAE,OAAO;IAEf,OAAO,GAAG,CAAC;QACP,IAAI,EAAE,cAAc;QACpB,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAChB,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;KACpB,CAAC,CAAC;AACP,CAAC;AAED;;GAEG;AAEH,SAAS,cAAc,CAAC,IAAsB;IAC1C,MAAM,EAAE,GAAG,IAAI,MAAM,CAAC,IAAI,GAAG,IAAI,GAAG,cAAc,CAAC,CAAC;IACpD,OAAO,UAAU,GAAkB;QAC/B,MAAM,GAAG,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC3B,MAAM,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACxB,IAAI,CAAC,CAAC;YAAE,OAAO;QACf,MAAM,GAAG,GAAkB,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;QAC1C,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACxB,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC;IACpB,CAAC,CAAC;AACN,CAAC;AAED;;GAEG;AAEH,MAAM,CAAC,MAAM,QAAQ,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAC;AAEjD;;GAEG;AAEH,MAAM,CAAC,MAAM,SAAS,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC;AAEnD;;GAEG;AAEH,MAAM,CAAC,MAAM,WAAW,GAAG,cAAc,CAAC,WAAW,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trim.js","sourceRoot":"","sources":["../../src/css-parse/trim.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,UAAU,IAAI,CAAC,GAAuB;IACxC,OAAO,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACpD,CAAC"}
|
package/esm/matchers/utils.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import isEqual from "lodash-es/isEqual.js";
|
|
2
2
|
import isFunction from "lodash-es/isFunction.js";
|
|
3
3
|
import redent from "redent";
|
|
4
|
-
import { cssParse } from "
|
|
4
|
+
import { cssParse } from "../css-parse/css-parse.js";
|
|
5
5
|
class GenericTypeError extends Error {
|
|
6
6
|
constructor(expectedString, received, matcherFn, context) {
|
|
7
7
|
super();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/matchers/utils.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,sBAAsB,CAAC;AAC3C,OAAO,UAAU,MAAM,yBAAyB,CAAC;AACjD,OAAO,MAAM,MAAM,QAAQ,CAAC;AAE5B,OAAO,
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/matchers/utils.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@najemi-software/vitest-dom",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.34.0",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "Custom Vitest matchers to test the state of the DOM, forked from jest-dom.",
|
|
6
6
|
"homepage": "https://github.com/Najemi-Software/vitest-dom#readme",
|
|
@@ -1,112 +0,0 @@
|
|
|
1
|
-
export interface IParserOptions {
|
|
2
|
-
/** Silently fail on parse errors */
|
|
3
|
-
silent?: boolean | undefined;
|
|
4
|
-
/** The path to the file containing css. Makes errors and source maps more helpful, by letting them know where code comes from. */
|
|
5
|
-
source?: string | undefined;
|
|
6
|
-
}
|
|
7
|
-
interface ILineColumn {
|
|
8
|
-
line: number;
|
|
9
|
-
column: number;
|
|
10
|
-
}
|
|
11
|
-
/** Information about the position in the source string that corresponds to the node. */
|
|
12
|
-
interface INodePosition {
|
|
13
|
-
start: ILineColumn;
|
|
14
|
-
end: ILineColumn;
|
|
15
|
-
/** The value of options.source if passed to css.parse. Otherwise undefined. */
|
|
16
|
-
source: string | undefined;
|
|
17
|
-
/** The full source string passed to css.parse. */
|
|
18
|
-
content: string;
|
|
19
|
-
}
|
|
20
|
-
interface IBaseNode {
|
|
21
|
-
/** The possible values are the ones listed in the Types section on https://github.com/reworkcss/css page. */
|
|
22
|
-
type: string;
|
|
23
|
-
position?: INodePosition;
|
|
24
|
-
/** A reference to the parent node, or null if the node has no parent. */
|
|
25
|
-
parent?: IBaseNode | null;
|
|
26
|
-
}
|
|
27
|
-
export interface IComment extends IBaseNode {
|
|
28
|
-
type: "comment";
|
|
29
|
-
comment: string;
|
|
30
|
-
}
|
|
31
|
-
export interface IDeclaration extends IBaseNode {
|
|
32
|
-
type: "declaration";
|
|
33
|
-
property: string;
|
|
34
|
-
value: string;
|
|
35
|
-
}
|
|
36
|
-
export interface IRule extends IBaseNode {
|
|
37
|
-
type: "rule";
|
|
38
|
-
selectors: string[];
|
|
39
|
-
declarations: Array<IDeclaration | IComment> | undefined;
|
|
40
|
-
}
|
|
41
|
-
export interface IKeyframe extends IBaseNode {
|
|
42
|
-
type: "keyframe";
|
|
43
|
-
values: string[];
|
|
44
|
-
declarations: Array<IDeclaration | IComment> | undefined;
|
|
45
|
-
}
|
|
46
|
-
export interface IKeyframes extends IBaseNode {
|
|
47
|
-
type: "keyframes";
|
|
48
|
-
name: string;
|
|
49
|
-
vendor: string | undefined;
|
|
50
|
-
keyframes: Array<IKeyframe | IComment>;
|
|
51
|
-
}
|
|
52
|
-
export interface ISupports extends IBaseNode {
|
|
53
|
-
type: "supports";
|
|
54
|
-
supports: string;
|
|
55
|
-
rules: StyleNode[];
|
|
56
|
-
}
|
|
57
|
-
export interface IHost extends IBaseNode {
|
|
58
|
-
type: "host";
|
|
59
|
-
rules: StyleNode[];
|
|
60
|
-
}
|
|
61
|
-
export interface IMedia extends IBaseNode {
|
|
62
|
-
type: "media";
|
|
63
|
-
media: string;
|
|
64
|
-
rules: StyleNode[];
|
|
65
|
-
}
|
|
66
|
-
export interface ICustomMedia extends IBaseNode {
|
|
67
|
-
type: "custom-media";
|
|
68
|
-
name: string;
|
|
69
|
-
media: string;
|
|
70
|
-
}
|
|
71
|
-
export interface IPage extends IBaseNode {
|
|
72
|
-
type: "page";
|
|
73
|
-
selectors: string[];
|
|
74
|
-
declarations: Array<IDeclaration | IComment>;
|
|
75
|
-
}
|
|
76
|
-
export interface IDocument extends IBaseNode {
|
|
77
|
-
type: "document";
|
|
78
|
-
document: string;
|
|
79
|
-
vendor: string;
|
|
80
|
-
rules: StyleNode[];
|
|
81
|
-
}
|
|
82
|
-
export interface IFontFace extends IBaseNode {
|
|
83
|
-
type: "font-face";
|
|
84
|
-
declarations: Array<IDeclaration | IComment>;
|
|
85
|
-
}
|
|
86
|
-
type SimpleAtRuleName = "import" | "charset" | "namespace";
|
|
87
|
-
export interface ISimpleAtRule extends IBaseNode {
|
|
88
|
-
type: SimpleAtRuleName;
|
|
89
|
-
import?: string;
|
|
90
|
-
charset?: string;
|
|
91
|
-
namespace?: string;
|
|
92
|
-
}
|
|
93
|
-
export type AtRule = IKeyframes | IMedia | ICustomMedia | ISupports | ISimpleAtRule | IDocument | IPage | IHost | IFontFace;
|
|
94
|
-
export type StyleNode = IRule | IComment | AtRule;
|
|
95
|
-
export interface IParseError extends Error {
|
|
96
|
-
reason: string;
|
|
97
|
-
filename: string | undefined;
|
|
98
|
-
line: number;
|
|
99
|
-
column: number;
|
|
100
|
-
source: string;
|
|
101
|
-
}
|
|
102
|
-
export interface IStyleRules {
|
|
103
|
-
source: string | undefined;
|
|
104
|
-
rules: StyleNode[];
|
|
105
|
-
parsingErrors: IParseError[];
|
|
106
|
-
}
|
|
107
|
-
export interface IStylesheet extends IBaseNode {
|
|
108
|
-
type: "stylesheet";
|
|
109
|
-
stylesheet: IStyleRules;
|
|
110
|
-
}
|
|
111
|
-
export declare function cssParse(css: string, options?: IParserOptions): IStylesheet;
|
|
112
|
-
export {};
|