@siteimprove/alfa-dom 0.112.0 → 0.113.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 +24 -0
- package/dist/h.d.ts +14 -13
- package/dist/h.js +15 -13
- package/dist/index.d.ts +2 -28
- package/dist/index.js +2 -28
- package/dist/jsx.d.ts +2 -3
- package/dist/native.d.ts +10 -2
- package/dist/native.js +18 -2
- package/dist/node/attribute/predicate/has-name.d.ts +1 -1
- package/dist/node/attribute/predicate/has-name.js +2 -3
- package/dist/node/attribute.d.ts +9 -13
- package/dist/node/attribute.js +3 -10
- package/dist/node/comment.d.ts +7 -11
- package/dist/node/comment.js +2 -9
- package/dist/node/document.d.ts +11 -14
- package/dist/node/document.js +8 -23
- package/dist/node/element/augment.d.ts +1 -1
- package/dist/node/element/augment.js +1 -1
- package/dist/node/element/predicate/has-attribute.d.ts +1 -1
- package/dist/node/element/predicate/has-display-size.d.ts +1 -1
- package/dist/node/element/predicate/has-id.d.ts +1 -1
- package/dist/node/element/predicate/has-input-type.d.ts +1 -1
- package/dist/node/element/predicate/has-name.d.ts +1 -1
- package/dist/node/element/predicate/has-namespace.d.ts +1 -1
- package/dist/node/element/predicate/has-tab-index.d.ts +1 -1
- package/dist/node/element/predicate/has-unique-id.d.ts +3 -2
- package/dist/node/element/predicate/has-unique-id.js +21 -20
- package/dist/node/element/predicate/index.d.ts +19 -0
- package/dist/node/element/predicate/index.js +19 -0
- package/dist/node/element/predicate/is-actually-disabled.d.ts +4 -2
- package/dist/node/element/predicate/is-actually-disabled.js +37 -38
- package/dist/node/element/predicate/is-browsing-context-container.d.ts +1 -1
- package/dist/node/element/predicate/is-content.d.ts +4 -2
- package/dist/node/element/predicate/is-content.js +2 -4
- package/dist/node/element/predicate/is-document-element.d.ts +3 -2
- package/dist/node/element/predicate/is-document-element.js +2 -3
- package/dist/node/element/predicate/is-draggable.d.ts +1 -1
- package/dist/node/element/predicate/is-editing-host.d.ts +1 -1
- package/dist/node/element/predicate/is-fallback.d.ts +5 -2
- package/dist/node/element/predicate/is-fallback.js +5 -6
- package/dist/node/element/predicate/is-replaced.d.ts +1 -1
- package/dist/node/element/predicate/is-scoped-to.d.ts +3 -2
- package/dist/node/element/predicate/is-scoped-to.js +5 -5
- package/dist/node/element/predicate/is-suggested-focusable.d.ts +1 -1
- package/dist/node/element/predicate/is-suggested-focusable.js +3 -3
- package/dist/node/fragment.d.ts +6 -9
- package/dist/node/fragment.js +5 -20
- package/dist/node/index.d.ts +56 -0
- package/dist/node/index.js +74 -0
- package/dist/{node.d.ts → node/node.d.ts} +40 -160
- package/dist/{node.js → node/node.js} +57 -92
- package/dist/node/predicate/has-box.d.ts +1 -2
- package/dist/node/predicate/has-child.d.ts +2 -2
- package/dist/node/predicate/has-child.js +2 -3
- package/dist/node/predicate/has-descendant.d.ts +2 -2
- package/dist/node/predicate/has-descendant.js +2 -3
- package/dist/node/predicate/has-inclusive-descendant.d.ts +2 -2
- package/dist/node/predicate/has-inclusive-descendant.js +2 -3
- package/dist/node/predicate/has-text-content.d.ts +2 -2
- package/dist/node/predicate/has-text-content.js +2 -3
- package/dist/node/predicate/index.d.ts +7 -0
- package/dist/node/predicate/index.js +7 -0
- package/dist/node/predicate/is-root.d.ts +1 -1
- package/dist/node/query/descendants.d.ts +10 -10
- package/dist/node/query/descendants.js +6 -6
- package/dist/node/query/element-id-map.d.ts +3 -3
- package/dist/node/query/index.d.ts +3 -3
- package/dist/node/shadow.d.ts +11 -14
- package/dist/node/shadow.js +9 -24
- package/dist/node/{element.d.ts → slotable/element.d.ts} +28 -27
- package/dist/node/{element.js → slotable/element.js} +40 -51
- package/dist/node/slotable/index.d.ts +12 -0
- package/dist/node/slotable/index.js +15 -0
- package/dist/node/slotable/slot.d.ts +21 -0
- package/dist/node/slotable/slot.js +23 -0
- package/dist/node/slotable/slotable.d.ts +31 -0
- package/dist/node/slotable/slotable.js +16 -0
- package/dist/node/{text.d.ts → slotable/text.d.ts} +8 -11
- package/dist/node/{text.js → slotable/text.js} +13 -10
- package/dist/node/traversal/get-nodes-between.d.ts +2 -2
- package/dist/node/traversal/get-nodes-between.js +30 -29
- package/dist/node/traversal/index.d.ts +2 -0
- package/dist/node/traversal/index.js +2 -0
- package/dist/node/traversal/lowest-common-ancestor.d.ts +2 -2
- package/dist/node/traversal/lowest-common-ancestor.js +2 -3
- package/dist/node/type.d.ts +6 -10
- package/dist/node/type.js +2 -9
- package/dist/style/declaration.d.ts +2 -2
- package/dist/style/index.d.ts +5 -0
- package/dist/style/index.js +5 -0
- package/dist/style/rule/condition.d.ts +1 -1
- package/dist/style/rule/font-face.d.ts +3 -3
- package/dist/style/rule/font-face.js +2 -2
- package/dist/style/rule/grouping.d.ts +4 -3
- package/dist/style/rule/grouping.js +2 -2
- package/dist/style/rule/import.d.ts +3 -3
- package/dist/style/rule/import.js +2 -4
- package/dist/style/rule/index.d.ts +65 -0
- package/dist/style/rule/index.js +83 -0
- package/dist/style/rule/keyframe.d.ts +3 -3
- package/dist/style/rule/keyframe.js +2 -2
- package/dist/style/rule/keyframes.d.ts +2 -2
- package/dist/style/rule/keyframes.js +2 -3
- package/dist/style/rule/layer.d.ts +5 -4
- package/dist/style/rule/layer.js +4 -4
- package/dist/style/rule/media.d.ts +2 -2
- package/dist/style/rule/media.js +2 -3
- package/dist/style/rule/namespace.d.ts +3 -3
- package/dist/style/rule/namespace.js +2 -2
- package/dist/style/rule/page.d.ts +3 -3
- package/dist/style/rule/page.js +2 -2
- package/dist/style/rule/rule.d.ts +42 -0
- package/dist/style/rule/rule.js +64 -0
- package/dist/style/rule/style.d.ts +3 -3
- package/dist/style/rule/style.js +2 -2
- package/dist/style/rule/supports.d.ts +2 -2
- package/dist/style/rule/supports.js +2 -3
- package/dist/style/sheet.d.ts +1 -1
- package/dist/style/sheet.js +2 -2
- package/package.json +29 -30
- package/dist/node/element/predicate.d.ts +0 -19
- package/dist/node/element/predicate.js +0 -19
- package/dist/node/predicate.d.ts +0 -7
- package/dist/node/predicate.js +0 -7
- package/dist/node/slot.d.ts +0 -29
- package/dist/node/slot.js +0 -41
- package/dist/node/slotable.d.ts +0 -29
- package/dist/node/slotable.js +0 -40
- package/dist/node/traversal.d.ts +0 -2
- package/dist/node/traversal.js +0 -2
- package/dist/style/rule.d.ts +0 -60
- package/dist/style/rule.js +0 -109
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
export * from "./predicate/has-attribute.js";
|
|
2
|
-
export * from "./predicate/has-display-size.js";
|
|
3
|
-
export * from "./predicate/has-id.js";
|
|
4
|
-
export * from "./predicate/has-input-type.js";
|
|
5
|
-
export * from "./predicate/has-name.js";
|
|
6
|
-
export * from "./predicate/has-namespace.js";
|
|
7
|
-
export * from "./predicate/has-tab-index.js";
|
|
8
|
-
export * from "./predicate/has-unique-id.js";
|
|
9
|
-
export * from "./predicate/is-actually-disabled.js";
|
|
10
|
-
export * from "./predicate/is-browsing-context-container.js";
|
|
11
|
-
export * from "./predicate/is-content.js";
|
|
12
|
-
export * from "./predicate/is-document-element.js";
|
|
13
|
-
export * from "./predicate/is-draggable.js";
|
|
14
|
-
export * from "./predicate/is-editing-host.js";
|
|
15
|
-
export * from "./predicate/is-fallback.js";
|
|
16
|
-
export * from "./predicate/is-replaced.js";
|
|
17
|
-
export * from "./predicate/is-scoped-to.js";
|
|
18
|
-
export * from "./predicate/is-suggested-focusable.js";
|
|
19
|
-
//# sourceMappingURL=predicate.js.map
|
package/dist/node/predicate.d.ts
DELETED
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
export * from "./predicate/has-box.js";
|
|
2
|
-
export * from "./predicate/has-child.js";
|
|
3
|
-
export * from "./predicate/has-descendant.js";
|
|
4
|
-
export * from "./predicate/has-inclusive-descendant.js";
|
|
5
|
-
export * from "./predicate/has-text-content.js";
|
|
6
|
-
export * from "./predicate/is-root.js";
|
|
7
|
-
//# sourceMappingURL=predicate.d.ts.map
|
package/dist/node/predicate.js
DELETED
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
export * from "./predicate/has-box.js";
|
|
2
|
-
export * from "./predicate/has-child.js";
|
|
3
|
-
export * from "./predicate/has-descendant.js";
|
|
4
|
-
export * from "./predicate/has-inclusive-descendant.js";
|
|
5
|
-
export * from "./predicate/has-text-content.js";
|
|
6
|
-
export * from "./predicate/is-root.js";
|
|
7
|
-
//# sourceMappingURL=predicate.js.map
|
package/dist/node/slot.d.ts
DELETED
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import { Element } from "./element.js";
|
|
2
|
-
import { Slotable } from "./slotable.js";
|
|
3
|
-
/**
|
|
4
|
-
* @public
|
|
5
|
-
*/
|
|
6
|
-
export interface Slot extends Element {
|
|
7
|
-
/**
|
|
8
|
-
* Get the slotables assigned to this slot.
|
|
9
|
-
*
|
|
10
|
-
* {@link https://html.spec.whatwg.org/#dom-slot-assignednodes}
|
|
11
|
-
*/
|
|
12
|
-
assignedNodes(): Iterable<Slotable>;
|
|
13
|
-
}
|
|
14
|
-
/**
|
|
15
|
-
* @public
|
|
16
|
-
*/
|
|
17
|
-
export declare namespace Slot {
|
|
18
|
-
function isSlot(element: Element): boolean;
|
|
19
|
-
function isSlot(value: unknown): value is Slot;
|
|
20
|
-
/**
|
|
21
|
-
* {@link https://dom.spec.whatwg.org/#slot-name}
|
|
22
|
-
*/
|
|
23
|
-
function name(slot: Slot): string;
|
|
24
|
-
/**
|
|
25
|
-
* {@link https://dom.spec.whatwg.org/#find-slotables}
|
|
26
|
-
*/
|
|
27
|
-
function findSlotables(slot: Slot): Iterable<Slotable>;
|
|
28
|
-
}
|
|
29
|
-
//# sourceMappingURL=slot.d.ts.map
|
package/dist/node/slot.js
DELETED
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
import { Element } from "./element.js";
|
|
2
|
-
import { Shadow } from "./shadow.js";
|
|
3
|
-
import { Slotable } from "./slotable.js";
|
|
4
|
-
/**
|
|
5
|
-
* @public
|
|
6
|
-
*/
|
|
7
|
-
export var Slot;
|
|
8
|
-
(function (Slot) {
|
|
9
|
-
function isSlot(value) {
|
|
10
|
-
return Element.isElement(value) && value.name === "slot";
|
|
11
|
-
}
|
|
12
|
-
Slot.isSlot = isSlot;
|
|
13
|
-
/**
|
|
14
|
-
* {@link https://dom.spec.whatwg.org/#slot-name}
|
|
15
|
-
*/
|
|
16
|
-
function name(slot) {
|
|
17
|
-
return slot
|
|
18
|
-
.attribute("name")
|
|
19
|
-
.map((name) => name.value)
|
|
20
|
-
.getOr("");
|
|
21
|
-
}
|
|
22
|
-
Slot.name = name;
|
|
23
|
-
/**
|
|
24
|
-
* {@link https://dom.spec.whatwg.org/#find-slotables}
|
|
25
|
-
*/
|
|
26
|
-
function* findSlotables(slot) {
|
|
27
|
-
const root = slot.root();
|
|
28
|
-
if (Shadow.isShadow(root)) {
|
|
29
|
-
for (const host of root.host) {
|
|
30
|
-
for (const child of host.children()) {
|
|
31
|
-
if (Slotable.isSlotable(child) &&
|
|
32
|
-
child.assignedSlot().includes(slot)) {
|
|
33
|
-
yield child;
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
Slot.findSlotables = findSlotables;
|
|
40
|
-
})(Slot || (Slot = {}));
|
|
41
|
-
//# sourceMappingURL=slot.js.map
|
package/dist/node/slotable.d.ts
DELETED
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import type { Option } from "@siteimprove/alfa-option";
|
|
2
|
-
import type { Node } from "../node.js";
|
|
3
|
-
import { Slot } from "./slot.js";
|
|
4
|
-
/**
|
|
5
|
-
* @public
|
|
6
|
-
*/
|
|
7
|
-
export interface Slotable extends Node {
|
|
8
|
-
/**
|
|
9
|
-
* Get the slot that this slotable is assigned to.
|
|
10
|
-
*
|
|
11
|
-
* {@link https://dom.spec.whatwg.org/#dom-slotable-assignedslot}
|
|
12
|
-
*/
|
|
13
|
-
assignedSlot(): Option<Slot>;
|
|
14
|
-
}
|
|
15
|
-
/**
|
|
16
|
-
* @public
|
|
17
|
-
*/
|
|
18
|
-
export declare namespace Slotable {
|
|
19
|
-
function isSlotable(value: unknown): value is Slotable;
|
|
20
|
-
/**
|
|
21
|
-
* {@link https://dom.spec.whatwg.org/#slotable-name}
|
|
22
|
-
*/
|
|
23
|
-
function name(slotable: Slotable): string;
|
|
24
|
-
/**
|
|
25
|
-
* {@link https://dom.spec.whatwg.org/#find-a-slot}
|
|
26
|
-
*/
|
|
27
|
-
function findSlot(slotable: Slotable): Option<Slot>;
|
|
28
|
-
}
|
|
29
|
-
//# sourceMappingURL=slotable.d.ts.map
|
package/dist/node/slotable.js
DELETED
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
import { Element } from "./element.js";
|
|
2
|
-
import { Slot } from "./slot.js";
|
|
3
|
-
import { Text } from "./text.js";
|
|
4
|
-
/**
|
|
5
|
-
* @public
|
|
6
|
-
*/
|
|
7
|
-
export var Slotable;
|
|
8
|
-
(function (Slotable) {
|
|
9
|
-
function isSlotable(value) {
|
|
10
|
-
return Element.isElement(value) || Text.isText(value);
|
|
11
|
-
}
|
|
12
|
-
Slotable.isSlotable = isSlotable;
|
|
13
|
-
/**
|
|
14
|
-
* {@link https://dom.spec.whatwg.org/#slotable-name}
|
|
15
|
-
*/
|
|
16
|
-
function name(slotable) {
|
|
17
|
-
return Element.isElement(slotable)
|
|
18
|
-
? slotable
|
|
19
|
-
.attribute("slot")
|
|
20
|
-
.map((slot) => slot.value)
|
|
21
|
-
.getOr("")
|
|
22
|
-
: "";
|
|
23
|
-
}
|
|
24
|
-
Slotable.name = name;
|
|
25
|
-
/**
|
|
26
|
-
* {@link https://dom.spec.whatwg.org/#find-a-slot}
|
|
27
|
-
*/
|
|
28
|
-
function findSlot(slotable) {
|
|
29
|
-
const name = Slotable.name(slotable);
|
|
30
|
-
return slotable
|
|
31
|
-
.parent()
|
|
32
|
-
.filter(Element.isElement)
|
|
33
|
-
.flatMap((parent) => parent.shadow.flatMap((shadow) => shadow
|
|
34
|
-
.descendants()
|
|
35
|
-
.filter(Slot.isSlot)
|
|
36
|
-
.find((slot) => Slot.name(slot) === name)));
|
|
37
|
-
}
|
|
38
|
-
Slotable.findSlot = findSlot;
|
|
39
|
-
})(Slotable || (Slotable = {}));
|
|
40
|
-
//# sourceMappingURL=slotable.js.map
|
package/dist/node/traversal.d.ts
DELETED
package/dist/node/traversal.js
DELETED
package/dist/style/rule.d.ts
DELETED
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
import type { Equatable } from "@siteimprove/alfa-equatable";
|
|
2
|
-
import { Iterable } from "@siteimprove/alfa-iterable";
|
|
3
|
-
import type { Serializable } from "@siteimprove/alfa-json";
|
|
4
|
-
import { Option } from "@siteimprove/alfa-option";
|
|
5
|
-
import type { Trampoline } from "@siteimprove/alfa-trampoline";
|
|
6
|
-
import type * as json from "@siteimprove/alfa-json";
|
|
7
|
-
import type { Sheet } from "./sheet.js";
|
|
8
|
-
import { FontFaceRule, ImportRule, KeyframeRule, KeyframesRule, Layer, MediaRule, NamespaceRule, PageRule, StyleRule, SupportsRule } from "../index.js";
|
|
9
|
-
/**
|
|
10
|
-
* @public
|
|
11
|
-
*/
|
|
12
|
-
export declare abstract class Rule<T extends string = string> implements Equatable, Serializable {
|
|
13
|
-
protected _owner: Option<Sheet>;
|
|
14
|
-
protected _parent: Option<Rule>;
|
|
15
|
-
private readonly _type;
|
|
16
|
-
protected constructor(type: T);
|
|
17
|
-
get type(): T;
|
|
18
|
-
get owner(): Option<Sheet>;
|
|
19
|
-
get parent(): Option<Rule>;
|
|
20
|
-
children(): Iterable<Rule>;
|
|
21
|
-
descendants(): Iterable<Rule>;
|
|
22
|
-
ancestors(): Iterable<Rule>;
|
|
23
|
-
inclusiveAncestors(): Iterable<Rule>;
|
|
24
|
-
equals(value: unknown): value is this;
|
|
25
|
-
toJSON(): Rule.JSON<T>;
|
|
26
|
-
/**
|
|
27
|
-
* @internal
|
|
28
|
-
*/
|
|
29
|
-
_attachOwner(owner: Sheet): boolean;
|
|
30
|
-
/**
|
|
31
|
-
* @internal
|
|
32
|
-
*/
|
|
33
|
-
_attachParent(parent: Rule): boolean;
|
|
34
|
-
}
|
|
35
|
-
/**
|
|
36
|
-
* @public
|
|
37
|
-
*/
|
|
38
|
-
export declare namespace Rule {
|
|
39
|
-
interface JSON<T extends string = string> {
|
|
40
|
-
[key: string]: json.JSON;
|
|
41
|
-
type: T;
|
|
42
|
-
}
|
|
43
|
-
function from(json: FontFaceRule.JSON): FontFaceRule;
|
|
44
|
-
function from(json: ImportRule.JSON): ImportRule;
|
|
45
|
-
function from(json: KeyframeRule.JSON): KeyframeRule;
|
|
46
|
-
function from(json: KeyframesRule.JSON): KeyframesRule;
|
|
47
|
-
function from(json: Layer.BlockRule.JSON): Layer.BlockRule;
|
|
48
|
-
function from(json: Layer.StatementRule.JSON): Layer.StatementRule;
|
|
49
|
-
function from(json: MediaRule.JSON): MediaRule;
|
|
50
|
-
function from(json: NamespaceRule.JSON): NamespaceRule;
|
|
51
|
-
function from(json: PageRule.JSON): PageRule;
|
|
52
|
-
function from(json: StyleRule.JSON): StyleRule;
|
|
53
|
-
function from(json: SupportsRule.JSON): SupportsRule;
|
|
54
|
-
function from(json: JSON): Rule;
|
|
55
|
-
/**
|
|
56
|
-
* @internal
|
|
57
|
-
*/
|
|
58
|
-
function fromRule(json: JSON): Trampoline<Rule>;
|
|
59
|
-
}
|
|
60
|
-
//# sourceMappingURL=rule.d.ts.map
|
package/dist/style/rule.js
DELETED
|
@@ -1,109 +0,0 @@
|
|
|
1
|
-
import { Iterable } from "@siteimprove/alfa-iterable";
|
|
2
|
-
import { None, Option } from "@siteimprove/alfa-option";
|
|
3
|
-
import { FontFaceRule, ImportRule, KeyframeRule, KeyframesRule, Layer, MediaRule, NamespaceRule, PageRule, StyleRule, SupportsRule, } from "../index.js";
|
|
4
|
-
/**
|
|
5
|
-
* @public
|
|
6
|
-
*/
|
|
7
|
-
export class Rule {
|
|
8
|
-
_owner = None;
|
|
9
|
-
_parent = None;
|
|
10
|
-
_type;
|
|
11
|
-
constructor(type) {
|
|
12
|
-
this._type = type;
|
|
13
|
-
}
|
|
14
|
-
get type() {
|
|
15
|
-
return this._type;
|
|
16
|
-
}
|
|
17
|
-
get owner() {
|
|
18
|
-
return this._owner;
|
|
19
|
-
}
|
|
20
|
-
get parent() {
|
|
21
|
-
return this._parent;
|
|
22
|
-
}
|
|
23
|
-
*children() { }
|
|
24
|
-
*descendants() {
|
|
25
|
-
for (const child of this.children()) {
|
|
26
|
-
yield child;
|
|
27
|
-
yield* child.descendants();
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
*ancestors() {
|
|
31
|
-
for (const parent of this._parent) {
|
|
32
|
-
yield parent;
|
|
33
|
-
yield* parent.ancestors();
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
*inclusiveAncestors() {
|
|
37
|
-
yield this;
|
|
38
|
-
yield* this.ancestors();
|
|
39
|
-
}
|
|
40
|
-
equals(value) {
|
|
41
|
-
return value === this;
|
|
42
|
-
}
|
|
43
|
-
toJSON() {
|
|
44
|
-
return { type: this._type };
|
|
45
|
-
}
|
|
46
|
-
/**
|
|
47
|
-
* @internal
|
|
48
|
-
*/
|
|
49
|
-
_attachOwner(owner) {
|
|
50
|
-
if (this._owner.isSome()) {
|
|
51
|
-
return false;
|
|
52
|
-
}
|
|
53
|
-
this._owner = Option.of(owner);
|
|
54
|
-
// Recursively attach the owner to all children.
|
|
55
|
-
return Iterable.every(this.children(), (rule) => rule._attachOwner(owner));
|
|
56
|
-
}
|
|
57
|
-
/**
|
|
58
|
-
* @internal
|
|
59
|
-
*/
|
|
60
|
-
_attachParent(parent) {
|
|
61
|
-
if (this._parent.isSome()) {
|
|
62
|
-
return false;
|
|
63
|
-
}
|
|
64
|
-
this._parent = Option.of(parent);
|
|
65
|
-
return true;
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
/**
|
|
69
|
-
* @public
|
|
70
|
-
*/
|
|
71
|
-
(function (Rule) {
|
|
72
|
-
function from(json) {
|
|
73
|
-
return fromRule(json).run();
|
|
74
|
-
}
|
|
75
|
-
Rule.from = from;
|
|
76
|
-
/**
|
|
77
|
-
* @internal
|
|
78
|
-
*/
|
|
79
|
-
function fromRule(json) {
|
|
80
|
-
switch (json.type) {
|
|
81
|
-
case "font-face":
|
|
82
|
-
return FontFaceRule.fromFontFaceRule(json);
|
|
83
|
-
case "import":
|
|
84
|
-
return ImportRule.fromImportRule(json);
|
|
85
|
-
case "keyframe":
|
|
86
|
-
return KeyframeRule.fromKeyframeRule(json);
|
|
87
|
-
case "keyframes":
|
|
88
|
-
return KeyframesRule.fromKeyframesRule(json);
|
|
89
|
-
case "layer-block":
|
|
90
|
-
return Layer.BlockRule.fromLayerBlockRule(json);
|
|
91
|
-
case "layer-statement":
|
|
92
|
-
return Layer.StatementRule.fromLayerStatementRule(json);
|
|
93
|
-
case "media":
|
|
94
|
-
return MediaRule.fromMediaRule(json);
|
|
95
|
-
case "namespace":
|
|
96
|
-
return NamespaceRule.fromNamespaceRule(json);
|
|
97
|
-
case "page":
|
|
98
|
-
return PageRule.fromPageRule(json);
|
|
99
|
-
case "style":
|
|
100
|
-
return StyleRule.fromStyleRule(json);
|
|
101
|
-
case "supports":
|
|
102
|
-
return SupportsRule.fromSupportsRule(json);
|
|
103
|
-
default:
|
|
104
|
-
throw new Error(`Unexpected rule of type: ${json.type}`);
|
|
105
|
-
}
|
|
106
|
-
}
|
|
107
|
-
Rule.fromRule = fromRule;
|
|
108
|
-
})(Rule || (Rule = {}));
|
|
109
|
-
//# sourceMappingURL=rule.js.map
|