@najemi-software/vitest-dom 0.13.0 → 0.14.0-alpha.14.1

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.
Files changed (94) hide show
  1. package/dist/extend-expect.d.ts +1 -3
  2. package/dist/extend-expect.js +2 -6
  3. package/dist/extend-expect.js.map +1 -1
  4. package/dist/matchers/css-parse.d.ts +30 -0
  5. package/dist/matchers/css-parse.js +514 -0
  6. package/dist/matchers/css-parse.js.map +1 -0
  7. package/dist/matchers/to-be-checked.d.ts +2 -0
  8. package/dist/matchers/to-be-checked.js +52 -0
  9. package/dist/matchers/to-be-checked.js.map +1 -0
  10. package/dist/matchers/to-be-disabled.d.ts +3 -0
  11. package/dist/matchers/to-be-disabled.js +74 -0
  12. package/dist/matchers/to-be-disabled.js.map +1 -0
  13. package/dist/matchers/to-be-empty-dom-element.d.ts +2 -0
  14. package/dist/matchers/to-be-empty-dom-element.js +31 -0
  15. package/dist/matchers/to-be-empty-dom-element.js.map +1 -0
  16. package/dist/matchers/to-be-empty.d.ts +3 -0
  17. package/dist/matchers/to-be-empty.js +18 -0
  18. package/dist/matchers/to-be-empty.js.map +1 -0
  19. package/dist/matchers/to-be-in-the-document.d.ts +2 -0
  20. package/dist/matchers/to-be-in-the-document.js +24 -0
  21. package/dist/matchers/to-be-in-the-document.js.map +1 -0
  22. package/dist/matchers/to-be-in-the-dom.d.ts +3 -0
  23. package/dist/matchers/to-be-in-the-dom.js +23 -0
  24. package/dist/matchers/to-be-in-the-dom.js.map +1 -0
  25. package/dist/matchers/to-be-invalid.d.ts +3 -0
  26. package/dist/matchers/to-be-invalid.js +50 -0
  27. package/dist/matchers/to-be-invalid.js.map +1 -0
  28. package/dist/matchers/to-be-partially-checked.d.ts +2 -0
  29. package/dist/matchers/to-be-partially-checked.js +36 -0
  30. package/dist/matchers/to-be-partially-checked.js.map +1 -0
  31. package/dist/matchers/to-be-required.d.ts +2 -0
  32. package/dist/matchers/to-be-required.js +40 -0
  33. package/dist/matchers/to-be-required.js.map +1 -0
  34. package/dist/matchers/to-be-visible.d.ts +2 -0
  35. package/dist/matchers/to-be-visible.js +46 -0
  36. package/dist/matchers/to-be-visible.js.map +1 -0
  37. package/dist/matchers/to-contain-element.d.ts +2 -0
  38. package/dist/matchers/to-contain-element.js +19 -0
  39. package/dist/matchers/to-contain-element.js.map +1 -0
  40. package/dist/matchers/to-contain-html.d.ts +2 -0
  41. package/dist/matchers/to-contain-html.js +25 -0
  42. package/dist/matchers/to-contain-html.js.map +1 -0
  43. package/dist/matchers/to-have-accessible-description.d.ts +4 -0
  44. package/dist/matchers/to-have-accessible-description.js +28 -0
  45. package/dist/matchers/to-have-accessible-description.js.map +1 -0
  46. package/dist/matchers/to-have-accessible-errormessage.d.ts +2 -0
  47. package/dist/matchers/to-have-accessible-errormessage.js +48 -0
  48. package/dist/matchers/to-have-accessible-errormessage.js.map +1 -0
  49. package/dist/matchers/to-have-accessible-name.d.ts +3 -0
  50. package/dist/matchers/to-have-accessible-name.js +27 -0
  51. package/dist/matchers/to-have-accessible-name.js.map +1 -0
  52. package/dist/matchers/to-have-attribute.d.ts +2 -0
  53. package/dist/matchers/to-have-attribute.js +34 -0
  54. package/dist/matchers/to-have-attribute.js.map +1 -0
  55. package/dist/matchers/to-have-class.d.ts +2 -0
  56. package/dist/matchers/to-have-class.js +56 -0
  57. package/dist/matchers/to-have-class.js.map +1 -0
  58. package/dist/matchers/to-have-description.d.ts +4 -0
  59. package/dist/matchers/to-have-description.js +30 -0
  60. package/dist/matchers/to-have-description.js.map +1 -0
  61. package/dist/matchers/to-have-display-value.d.ts +2 -0
  62. package/dist/matchers/to-have-display-value.js +31 -0
  63. package/dist/matchers/to-have-display-value.js.map +1 -0
  64. package/dist/matchers/to-have-errormessage.d.ts +3 -0
  65. package/dist/matchers/to-have-errormessage.js +39 -0
  66. package/dist/matchers/to-have-errormessage.js.map +1 -0
  67. package/dist/matchers/to-have-focus.d.ts +2 -0
  68. package/dist/matchers/to-have-focus.js +22 -0
  69. package/dist/matchers/to-have-focus.js.map +1 -0
  70. package/dist/matchers/to-have-form-values.d.ts +2 -0
  71. package/dist/matchers/to-have-form-values.js +67 -0
  72. package/dist/matchers/to-have-form-values.js.map +1 -0
  73. package/dist/matchers/to-have-style.d.ts +2 -0
  74. package/dist/matchers/to-have-style.js +59 -0
  75. package/dist/matchers/to-have-style.js.map +1 -0
  76. package/dist/matchers/to-have-text-content.d.ts +4 -0
  77. package/dist/matchers/to-have-text-content.js +18 -0
  78. package/dist/matchers/to-have-text-content.js.map +1 -0
  79. package/dist/matchers/to-have-value.d.ts +2 -0
  80. package/dist/matchers/to-have-value.js +27 -0
  81. package/dist/matchers/to-have-value.js.map +1 -0
  82. package/dist/matchers/types.d.ts +13 -0
  83. package/dist/matchers/types.js +2 -0
  84. package/dist/matchers/types.js.map +1 -0
  85. package/dist/matchers/utils.d.ts +43 -0
  86. package/dist/matchers/utils.js +217 -0
  87. package/dist/matchers/utils.js.map +1 -0
  88. package/dist/matchers.d.ts +682 -83
  89. package/dist/matchers.js +25 -56
  90. package/dist/matchers.js.map +1 -1
  91. package/package.json +9 -5
  92. package/dist/chunk-DARZWRGS.js +0 -1546
  93. package/dist/chunk-DARZWRGS.js.map +0 -1
  94. package/dist/matchers-CEKfObS0.d.ts +0 -661
@@ -1,6 +1,4 @@
1
- import "vitest";
2
- import { T as TestingLibraryMatchers } from './matchers-CEKfObS0.js';
3
-
1
+ import type { TestingLibraryMatchers } from "./matchers.js";
4
2
  declare module "vitest" {
5
3
  interface Assertion<T = any> extends TestingLibraryMatchers<(expected: string) => any, T> {
6
4
  }
@@ -1,8 +1,4 @@
1
- import {
2
- matchers_exports
3
- } from "./chunk-DARZWRGS.js";
4
-
5
- // src/matchers/extend-expect.ts
6
1
  import { expect } from "vitest";
7
- expect.extend(matchers_exports);
2
+ import * as matchers from "./matchers.js";
3
+ expect.extend(matchers);
8
4
  //# sourceMappingURL=extend-expect.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/matchers/extend-expect.ts"],"sourcesContent":["import { expect } from \"vitest\";\n\nimport * as matchers from \"./matchers\";\nimport type { TestingLibraryMatchers } from \"./matchers\";\n\nexpect.extend(matchers);\n\ndeclare module \"vitest\" {\n interface Assertion<T = any> extends TestingLibraryMatchers<(expected: string) => any, T> {}\n interface AsymmetricMatchersContaining extends TestingLibraryMatchers<unknown, unknown> {}\n}\n"],"mappings":";;;;;AAAA,SAAS,cAAc;AAKvB,OAAO,OAAO,gBAAQ;","names":[]}
1
+ {"version":3,"file":"extend-expect.js","sourceRoot":"","sources":["../src/extend-expect.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAC;AAG1C,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC"}
@@ -0,0 +1,30 @@
1
+ export interface ParserOptions {
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
+ export interface Stylesheet extends Node {
8
+ stylesheet?: StyleRules | undefined;
9
+ }
10
+ interface Node {
11
+ /** The possible values are the ones listed in the Types section on https://github.com/reworkcss/css page. */
12
+ type?: string | undefined;
13
+ /** A reference to the parent node, or null if the node has no parent. */
14
+ parent?: Node | undefined;
15
+ /** Information about the position in the source string that corresponds to the node. */
16
+ position?: {
17
+ start?: Position | undefined;
18
+ end?: Position | undefined;
19
+ /** The value of options.source if passed to css.parse. Otherwise undefined. */
20
+ source?: string | undefined;
21
+ /** The full source string passed to css.parse. */
22
+ content?: string | undefined;
23
+ } | undefined;
24
+ }
25
+ interface Position {
26
+ line?: number | undefined;
27
+ column?: number | undefined;
28
+ }
29
+ declare function cssParse(css: string, options?: ParserOptions): Stylesheet;
30
+ export default cssParse;
@@ -0,0 +1,514 @@
1
+ // http://www.w3.org/TR/CSS21/grammar.html
2
+ // https://github.com/visionmedia/css-parse/pull/49#issuecomment-30088027
3
+ const commentre = /\/\*[^*]*\*+([^/*][^*]*\*+)*\//g;
4
+ function cssParse(css, options) {
5
+ options = options || {};
6
+ /**
7
+ * Positional.
8
+ */
9
+ let lineno = 1;
10
+ let column = 1;
11
+ /**
12
+ * Update lineno and column based on `str`.
13
+ */
14
+ function updatePosition(str) {
15
+ let lines = str.match(/\n/g);
16
+ if (lines)
17
+ lineno += lines.length;
18
+ let i = str.lastIndexOf("\n");
19
+ column = ~i ? str.length - i : column + str.length;
20
+ }
21
+ /**
22
+ * Mark position and patch `node.position`.
23
+ */
24
+ function position() {
25
+ let start = { line: lineno, column: column };
26
+ return function (node) {
27
+ node.position = new Position(start);
28
+ whitespace();
29
+ return node;
30
+ };
31
+ }
32
+ /**
33
+ * Store position information for a node
34
+ */
35
+ function Position(start) {
36
+ this.start = start;
37
+ this.end = { line: lineno, column: column };
38
+ this.source = options.source;
39
+ }
40
+ /**
41
+ * Non-enumerable source string
42
+ */
43
+ Position.prototype.content = css;
44
+ /**
45
+ * Error `msg`.
46
+ */
47
+ let errorsList = [];
48
+ function error(msg) {
49
+ let err = new Error(options.source + ":" + lineno + ":" + column + ": " + msg);
50
+ err.reason = msg;
51
+ err.filename = options.source;
52
+ err.line = lineno;
53
+ err.column = column;
54
+ err.source = css;
55
+ if (options.silent) {
56
+ errorsList.push(err);
57
+ }
58
+ else {
59
+ throw err;
60
+ }
61
+ }
62
+ /**
63
+ * Parse stylesheet.
64
+ */
65
+ function stylesheet() {
66
+ let rulesList = rules();
67
+ return {
68
+ type: "stylesheet",
69
+ stylesheet: {
70
+ source: options.source,
71
+ rules: rulesList,
72
+ parsingErrors: errorsList,
73
+ },
74
+ };
75
+ }
76
+ /**
77
+ * Opening brace.
78
+ */
79
+ function open() {
80
+ return match(/^{\s*/);
81
+ }
82
+ /**
83
+ * Closing brace.
84
+ */
85
+ function close() {
86
+ return match(/^}/);
87
+ }
88
+ /**
89
+ * Parse ruleset.
90
+ */
91
+ function rules() {
92
+ let node;
93
+ let rules = [];
94
+ whitespace();
95
+ comments(rules);
96
+ while (css.length && css.charAt(0) != "}" && (node = atrule() || rule())) {
97
+ if (node !== false) {
98
+ rules.push(node);
99
+ comments(rules);
100
+ }
101
+ }
102
+ return rules;
103
+ }
104
+ /**
105
+ * Match `re` and return captures.
106
+ */
107
+ function match(re) {
108
+ let m = re.exec(css);
109
+ if (!m)
110
+ return;
111
+ let str = m[0];
112
+ updatePosition(str);
113
+ css = css.slice(str.length);
114
+ return m;
115
+ }
116
+ /**
117
+ * Parse whitespace.
118
+ */
119
+ function whitespace() {
120
+ match(/^\s*/);
121
+ }
122
+ /**
123
+ * Parse comments;
124
+ */
125
+ function comments(rules) {
126
+ let c;
127
+ rules = rules || [];
128
+ while ((c = comment())) {
129
+ if (c !== false) {
130
+ rules.push(c);
131
+ }
132
+ }
133
+ return rules;
134
+ }
135
+ /**
136
+ * Parse comment.
137
+ */
138
+ function comment() {
139
+ let pos = position();
140
+ if ("/" != css.charAt(0) || "*" != css.charAt(1))
141
+ return;
142
+ let i = 2;
143
+ while ("" != css.charAt(i) && ("*" != css.charAt(i) || "/" != css.charAt(i + 1)))
144
+ ++i;
145
+ i += 2;
146
+ if ("" === css.charAt(i - 1)) {
147
+ return error("End of comment missing");
148
+ }
149
+ let str = css.slice(2, i - 2);
150
+ column += 2;
151
+ updatePosition(str);
152
+ css = css.slice(i);
153
+ column += 2;
154
+ return pos({
155
+ type: "comment",
156
+ comment: str,
157
+ });
158
+ }
159
+ /**
160
+ * Parse selector.
161
+ */
162
+ function selector() {
163
+ let m = match(/^([^{]+)/);
164
+ if (!m)
165
+ return;
166
+ /* @fix Remove all comments from selectors
167
+ * http://ostermiller.org/findcomment.html */
168
+ return trim(m[0])
169
+ .replace(/\/\*([^*]|[\r\n]|(\*+([^*/]|[\r\n])))*\*\/+/g, "")
170
+ .replace(/"(?:\\"|[^"])*"|'(?:\\'|[^'])*'/g, function (m) {
171
+ return m.replace(/,/g, "\u200C");
172
+ })
173
+ .split(/\s*(?![^(]*\)),\s*/)
174
+ .map(function (s) {
175
+ return s.replace(/\u200C/g, ",");
176
+ });
177
+ }
178
+ /**
179
+ * Parse declaration.
180
+ */
181
+ function declaration() {
182
+ let pos = position();
183
+ // prop
184
+ // eslint-disable-next-line no-useless-escape
185
+ let prop = match(/^(\*?[-#\/\*\\\w]+(\[[0-9a-z_-]+\])?)\s*/);
186
+ if (!prop)
187
+ return;
188
+ prop = trim(prop[0]);
189
+ // :
190
+ if (!match(/^:\s*/))
191
+ return error("property missing ':'");
192
+ // val
193
+ // eslint-disable-next-line no-useless-escape
194
+ let val = match(/^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^\)]*?\)|[^};])+)/);
195
+ let ret = pos({
196
+ type: "declaration",
197
+ property: prop.replace(commentre, ""),
198
+ value: val ? trim(val[0]).replace(commentre, "") : "",
199
+ });
200
+ // ;
201
+ match(/^[;\s]*/);
202
+ return ret;
203
+ }
204
+ /**
205
+ * Parse declarations.
206
+ */
207
+ function declarations() {
208
+ let decls = [];
209
+ if (!open())
210
+ return error("missing '{'");
211
+ comments(decls);
212
+ // declarations
213
+ let decl;
214
+ while ((decl = declaration())) {
215
+ if (decl !== false) {
216
+ decls.push(decl);
217
+ comments(decls);
218
+ }
219
+ }
220
+ if (!close())
221
+ return error("missing '}'");
222
+ return decls;
223
+ }
224
+ /**
225
+ * Parse keyframe.
226
+ */
227
+ function keyframe() {
228
+ let m;
229
+ let vals = [];
230
+ let pos = position();
231
+ while ((m = match(/^((\d+\.\d+|\.\d+|\d+)%?|[a-z]+)\s*/))) {
232
+ vals.push(m[1]);
233
+ match(/^,\s*/);
234
+ }
235
+ if (!vals.length)
236
+ return;
237
+ return pos({
238
+ type: "keyframe",
239
+ values: vals,
240
+ declarations: declarations(),
241
+ });
242
+ }
243
+ /**
244
+ * Parse keyframes.
245
+ */
246
+ function atkeyframes() {
247
+ let pos = position();
248
+ let m = match(/^@([-\w]+)?keyframes\s*/);
249
+ if (!m)
250
+ return;
251
+ let vendor = m[1];
252
+ // identifier
253
+ m = match(/^([-\w]+)\s*/);
254
+ if (!m)
255
+ return error("@keyframes missing name");
256
+ let name = m[1];
257
+ if (!open())
258
+ return error("@keyframes missing '{'");
259
+ let frame;
260
+ let frames = comments();
261
+ while ((frame = keyframe())) {
262
+ frames.push(frame);
263
+ frames = frames.concat(comments());
264
+ }
265
+ if (!close())
266
+ return error("@keyframes missing '}'");
267
+ return pos({
268
+ type: "keyframes",
269
+ name: name,
270
+ vendor: vendor,
271
+ keyframes: frames,
272
+ });
273
+ }
274
+ /**
275
+ * Parse supports.
276
+ */
277
+ function atsupports() {
278
+ let pos = position();
279
+ let m = match(/^@supports *([^{]+)/);
280
+ if (!m)
281
+ return;
282
+ let supports = trim(m[1]);
283
+ if (!open())
284
+ return error("@supports missing '{'");
285
+ let style = comments().concat(rules());
286
+ if (!close())
287
+ return error("@supports missing '}'");
288
+ return pos({
289
+ type: "supports",
290
+ supports: supports,
291
+ rules: style,
292
+ });
293
+ }
294
+ /**
295
+ * Parse host.
296
+ */
297
+ function athost() {
298
+ let pos = position();
299
+ let m = match(/^@host\s*/);
300
+ if (!m)
301
+ return;
302
+ if (!open())
303
+ return error("@host missing '{'");
304
+ let style = comments().concat(rules());
305
+ if (!close())
306
+ return error("@host missing '}'");
307
+ return pos({
308
+ type: "host",
309
+ rules: style,
310
+ });
311
+ }
312
+ /**
313
+ * Parse media.
314
+ */
315
+ function atmedia() {
316
+ let pos = position();
317
+ let m = match(/^@media *([^{]+)/);
318
+ if (!m)
319
+ return;
320
+ let media = trim(m[1]);
321
+ if (!open())
322
+ return error("@media missing '{'");
323
+ let style = comments().concat(rules());
324
+ if (!close())
325
+ return error("@media missing '}'");
326
+ return pos({
327
+ type: "media",
328
+ media: media,
329
+ rules: style,
330
+ });
331
+ }
332
+ /**
333
+ * Parse custom-media.
334
+ */
335
+ function atcustommedia() {
336
+ let pos = position();
337
+ let m = match(/^@custom-media\s+(--[^\s]+)\s*([^{;]+);/);
338
+ if (!m)
339
+ return;
340
+ return pos({
341
+ type: "custom-media",
342
+ name: trim(m[1]),
343
+ media: trim(m[2]),
344
+ });
345
+ }
346
+ /**
347
+ * Parse paged media.
348
+ */
349
+ function atpage() {
350
+ let pos = position();
351
+ let m = match(/^@page */);
352
+ if (!m)
353
+ return;
354
+ let sel = selector() || [];
355
+ if (!open())
356
+ return error("@page missing '{'");
357
+ let decls = comments();
358
+ // declarations
359
+ let decl;
360
+ while ((decl = declaration())) {
361
+ decls.push(decl);
362
+ decls = decls.concat(comments());
363
+ }
364
+ if (!close())
365
+ return error("@page missing '}'");
366
+ return pos({
367
+ type: "page",
368
+ selectors: sel,
369
+ declarations: decls,
370
+ });
371
+ }
372
+ /**
373
+ * Parse document.
374
+ */
375
+ function atdocument() {
376
+ let pos = position();
377
+ let m = match(/^@([-\w]+)?document *([^{]+)/);
378
+ if (!m)
379
+ return;
380
+ let vendor = trim(m[1]);
381
+ let doc = trim(m[2]);
382
+ if (!open())
383
+ return error("@document missing '{'");
384
+ let style = comments().concat(rules());
385
+ if (!close())
386
+ return error("@document missing '}'");
387
+ return pos({
388
+ type: "document",
389
+ document: doc,
390
+ vendor: vendor,
391
+ rules: style,
392
+ });
393
+ }
394
+ /**
395
+ * Parse font-face.
396
+ */
397
+ function atfontface() {
398
+ let pos = position();
399
+ let m = match(/^@font-face\s*/);
400
+ if (!m)
401
+ return;
402
+ if (!open())
403
+ return error("@font-face missing '{'");
404
+ let decls = comments();
405
+ // declarations
406
+ let decl;
407
+ while ((decl = declaration())) {
408
+ decls.push(decl);
409
+ decls = decls.concat(comments());
410
+ }
411
+ if (!close())
412
+ return error("@font-face missing '}'");
413
+ return pos({
414
+ type: "font-face",
415
+ declarations: decls,
416
+ });
417
+ }
418
+ /**
419
+ * Parse import
420
+ */
421
+ let atimport = _compileAtrule("import");
422
+ /**
423
+ * Parse charset
424
+ */
425
+ let atcharset = _compileAtrule("charset");
426
+ /**
427
+ * Parse namespace
428
+ */
429
+ let atnamespace = _compileAtrule("namespace");
430
+ /**
431
+ * Parse non-block at-rules
432
+ */
433
+ function _compileAtrule(name) {
434
+ let re = new RegExp("^@" + name + "\\s*([^;]+);");
435
+ return function () {
436
+ let pos = position();
437
+ let m = match(re);
438
+ if (!m)
439
+ return;
440
+ let ret = { type: name };
441
+ ret[name] = m[1].trim();
442
+ return pos(ret);
443
+ };
444
+ }
445
+ /**
446
+ * Parse at rule.
447
+ */
448
+ function atrule() {
449
+ if (css[0] != "@")
450
+ return;
451
+ return (atkeyframes() ||
452
+ atmedia() ||
453
+ atcustommedia() ||
454
+ atsupports() ||
455
+ atimport() ||
456
+ atcharset() ||
457
+ atnamespace() ||
458
+ atdocument() ||
459
+ atpage() ||
460
+ athost() ||
461
+ atfontface());
462
+ }
463
+ /**
464
+ * Parse rule.
465
+ */
466
+ function rule() {
467
+ let pos = position();
468
+ let sel = selector();
469
+ if (!sel)
470
+ return error("selector missing");
471
+ comments();
472
+ return pos({
473
+ type: "rule",
474
+ selectors: sel,
475
+ declarations: declarations(),
476
+ });
477
+ }
478
+ return addParent(stylesheet());
479
+ }
480
+ /**
481
+ * Trim `str`.
482
+ */
483
+ function trim(str) {
484
+ return str ? str.replace(/^\s+|\s+$/g, "") : "";
485
+ }
486
+ /**
487
+ * Adds non-enumerable parent node reference to each node.
488
+ */
489
+ function addParent(obj, parent) {
490
+ let isNode = obj && typeof obj.type === "string";
491
+ let childParent = isNode ? obj : parent;
492
+ for (var k in obj) {
493
+ let value = obj[k];
494
+ if (Array.isArray(value)) {
495
+ value.forEach(function (v) {
496
+ addParent(v, childParent);
497
+ });
498
+ }
499
+ else if (value && typeof value === "object") {
500
+ addParent(value, childParent);
501
+ }
502
+ }
503
+ if (isNode) {
504
+ Object.defineProperty(obj, "parent", {
505
+ configurable: true,
506
+ writable: true,
507
+ enumerable: false,
508
+ value: parent || null,
509
+ });
510
+ }
511
+ return obj;
512
+ }
513
+ export default cssParse;
514
+ //# sourceMappingURL=css-parse.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"css-parse.js","sourceRoot":"","sources":["../../src/matchers/css-parse.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import type { MatcherResult } from "./types.js";
2
+ export declare function toBeChecked(element: Element): MatcherResult;
@@ -0,0 +1,52 @@
1
+ import { checkHtmlElement, toSentence } from "./utils.js";
2
+ // WAI-ARIA roles supporting the aria-checked state
3
+ // (https://www.w3.org/TR/wai-aria-1.2/#aria-checked).
4
+ const ROLES_SUPPORTING_CHECKED = [
5
+ "checkbox",
6
+ "menuitemcheckbox",
7
+ "menuitemradio",
8
+ "option",
9
+ "radio",
10
+ "switch",
11
+ "treeitem",
12
+ ];
13
+ export function toBeChecked(element) {
14
+ checkHtmlElement(element, toBeChecked, this);
15
+ const isValidInput = () => {
16
+ return element.tagName.toLowerCase() === "input" && ["checkbox", "radio"].includes(element.type);
17
+ };
18
+ const isValidAriaElement = () => {
19
+ return (roleSupportsChecked(element.getAttribute("role")) &&
20
+ ["true", "false"].includes(element.getAttribute("aria-checked")));
21
+ };
22
+ if (!isValidInput() && !isValidAriaElement()) {
23
+ return {
24
+ pass: false,
25
+ message: () => `only inputs with type="checkbox" or type="radio" or elements with ${supportedRolesSentence()} and a valid aria-checked attribute can be used with .toBeChecked(). Use .toHaveValue() instead`,
26
+ };
27
+ }
28
+ const isChecked = () => {
29
+ if (isValidInput())
30
+ return element.checked;
31
+ return element.getAttribute("aria-checked") === "true";
32
+ };
33
+ return {
34
+ pass: isChecked(),
35
+ message: () => {
36
+ const is = isChecked() ? "is" : "is not";
37
+ return [
38
+ this.utils.matcherHint(`${this.isNot ? ".not" : ""}.toBeChecked`, "element", ""),
39
+ "",
40
+ `Received element ${is} checked:`,
41
+ ` ${this.utils.printReceived(element.cloneNode(false))}`,
42
+ ].join("\n");
43
+ },
44
+ };
45
+ }
46
+ function supportedRolesSentence() {
47
+ return toSentence(ROLES_SUPPORTING_CHECKED.map((role) => `role="${role}"`), { lastWordConnector: " or " });
48
+ }
49
+ function roleSupportsChecked(role) {
50
+ return ROLES_SUPPORTING_CHECKED.includes(role);
51
+ }
52
+ //# sourceMappingURL=to-be-checked.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"to-be-checked.js","sourceRoot":"","sources":["../../src/matchers/to-be-checked.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE1D,mDAAmD;AACnD,sDAAsD;AACtD,MAAM,wBAAwB,GAAG;IAC7B,UAAU;IACV,kBAAkB;IAClB,eAAe;IACf,QAAQ;IACR,OAAO;IACP,QAAQ;IACR,UAAU;CACb,CAAC;AAEF,MAAM,UAAU,WAAW,CAAC,OAAgB;IACxC,gBAAgB,CAAC,OAAO,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC;IAE7C,MAAM,YAAY,GAAG,GAAG,EAAE;QACtB,OAAO,OAAO,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,OAAO,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACrG,CAAC,CAAC;IAEF,MAAM,kBAAkB,GAAG,GAAG,EAAE;QAC5B,OAAO,CACH,mBAAmB,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;YACjD,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC,CACnE,CAAC;IACN,CAAC,CAAC;IAEF,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,kBAAkB,EAAE,EAAE,CAAC;QAC3C,OAAO;YACH,IAAI,EAAE,KAAK;YACX,OAAO,EAAE,GAAG,EAAE,CACV,qEAAqE,sBAAsB,EAAE,iGAAiG;SACrM,CAAC;IACN,CAAC;IAED,MAAM,SAAS,GAAG,GAAG,EAAE;QACnB,IAAI,YAAY,EAAE;YAAE,OAAO,OAAO,CAAC,OAAO,CAAC;QAC3C,OAAO,OAAO,CAAC,YAAY,CAAC,cAAc,CAAC,KAAK,MAAM,CAAC;IAC3D,CAAC,CAAC;IAEF,OAAO;QACH,IAAI,EAAE,SAAS,EAAE;QACjB,OAAO,EAAE,GAAG,EAAE;YACV,MAAM,EAAE,GAAG,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC;YACzC,OAAO;gBACH,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,SAAS,EAAE,EAAE,CAAC;gBAChF,EAAE;gBACF,oBAAoB,EAAE,WAAW;gBACjC,KAAK,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE;aAC5D,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjB,CAAC;KACJ,CAAC;AACN,CAAC;AAED,SAAS,sBAAsB;IAC3B,OAAO,UAAU,CACb,wBAAwB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,IAAI,GAAG,CAAC,EACxD,EAAE,iBAAiB,EAAE,MAAM,EAAE,CAChC,CAAC;AACN,CAAC;AAED,SAAS,mBAAmB,CAAC,IAAI;IAC7B,OAAO,wBAAwB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AACnD,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { MatcherResult } from "./types.js";
2
+ export declare function toBeDisabled(element: Element): MatcherResult;
3
+ export declare function toBeEnabled(element: Element): MatcherResult;