Skip to content

[css-typed-om] Add Serializable attribute to css-typed-om objects #1102

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: main
Choose a base branch
from
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
58 changes: 29 additions & 29 deletions css-typed-om/Overview.bs
Original file line number Diff line number Diff line change
Expand Up @@ -884,7 +884,7 @@ of the {{CSSUnparsedValue/[[tokens]]}} internal slot.
{{CSSKeywordValue}} objects represent CSS keywords and other [=idents=].

<pre class='idl'>
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet)]
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet), Serializable]
interface CSSKeywordValue : CSSStyleValue {
constructor(USVString value);
attribute USVString value;
Expand Down Expand Up @@ -1960,7 +1960,7 @@ are represented as {{CSSUnitValue}}s.
</div>

<xmp class=idl>
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet)]
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet), Serializable]
interface CSSUnitValue : CSSNumericValue {
constructor(double value, USVString unit);
attribute double value;
Expand Down Expand Up @@ -2056,56 +2056,56 @@ are represented in this way.
</div>

<xmp class=idl>
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet)]
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet), Serializable]
interface CSSMathValue : CSSNumericValue {
readonly attribute CSSMathOperator operator;
};

[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet)]
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet), Serializable]
interface CSSMathSum : CSSMathValue {
constructor(CSSNumberish... args);
readonly attribute CSSNumericArray values;
};

[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet)]
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet), Serializable]
interface CSSMathProduct : CSSMathValue {
constructor(CSSNumberish... args);
readonly attribute CSSNumericArray values;
};

[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet)]
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet), Serializable]
interface CSSMathNegate : CSSMathValue {
constructor(CSSNumberish arg);
readonly attribute CSSNumericValue value;
};

[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet)]
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet), Serializable]
interface CSSMathInvert : CSSMathValue {
constructor(CSSNumberish arg);
readonly attribute CSSNumericValue value;
};

[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet)]
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet), Serializable]
interface CSSMathMin : CSSMathValue {
constructor(CSSNumberish... args);
readonly attribute CSSNumericArray values;
};

[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet)]
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet), Serializable]
interface CSSMathMax : CSSMathValue {
constructor(CSSNumberish... args);
readonly attribute CSSNumericArray values;
};

[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet)]
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet), Serializable]
interface CSSMathClamp : CSSMathValue {
constructor(CSSNumberish lower, CSSNumberish value, CSSNumberish upper);
readonly attribute CSSNumericValue lower;
readonly attribute CSSNumericValue value;
readonly attribute CSSNumericValue upper;
};

[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet)]
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet), Serializable]
interface CSSNumericArray {
iterable<CSSNumericValue>;
readonly attribute unsigned long length;
Expand Down Expand Up @@ -2388,7 +2388,7 @@ They "contain" one or more {{CSSTransformComponent}}s,
which represent individual <<transform-function>> values.

<xmp class='idl'>
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet)]
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet), Serializable]
interface CSSTransformValue : CSSStyleValue {
constructor(sequence<CSSTransformComponent> transforms);
iterable<CSSTransformComponent>;
Expand Down Expand Up @@ -2483,22 +2483,22 @@ This list is the object's [=values to iterate over=].
<xmp class=idl>
typedef (CSSNumericValue or CSSKeywordish) CSSPerspectiveValue;

[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet)]
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet), Serializable]
interface CSSTransformComponent {
stringifier;
attribute boolean is2D;
DOMMatrix toMatrix();
};

[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet)]
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet), Serializable]
interface CSSTranslate : CSSTransformComponent {
constructor(CSSNumericValue x, CSSNumericValue y, optional CSSNumericValue z);
attribute CSSNumericValue x;
attribute CSSNumericValue y;
attribute CSSNumericValue z;
};

[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet)]
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet), Serializable]
interface CSSRotate : CSSTransformComponent {
constructor(CSSNumericValue angle);
constructor(CSSNumberish x, CSSNumberish y, CSSNumberish z, CSSNumericValue angle);
Expand All @@ -2508,28 +2508,28 @@ This list is the object's [=values to iterate over=].
attribute CSSNumericValue angle;
};

[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet)]
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet), Serializable]
interface CSSScale : CSSTransformComponent {
constructor(CSSNumberish x, CSSNumberish y, optional CSSNumberish z);
attribute CSSNumberish x;
attribute CSSNumberish y;
attribute CSSNumberish z;
};

[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet)]
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet), Serializable]
interface CSSSkew : CSSTransformComponent {
constructor(CSSNumericValue ax, CSSNumericValue ay);
attribute CSSNumericValue ax;
attribute CSSNumericValue ay;
};

[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet)]
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet), Serializable]
interface CSSSkewX : CSSTransformComponent {
constructor(CSSNumericValue ax);
attribute CSSNumericValue ax;
};

[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet)]
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet), Serializable]
interface CSSSkewY : CSSTransformComponent {
constructor(CSSNumericValue ay);
attribute CSSNumericValue ay;
Expand All @@ -2538,13 +2538,13 @@ This list is the object's [=values to iterate over=].
/* Note that skew(x,y) is *not* the same as skewX(x) skewY(y),
thus the separate interfaces for all three. */

[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet)]
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet), Serializable]
interface CSSPerspective : CSSTransformComponent {
constructor(CSSPerspectiveValue length);
attribute CSSPerspectiveValue length;
};

[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet)]
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet), Serializable]
interface CSSMatrixComponent : CSSTransformComponent {
constructor(DOMMatrixReadOnly matrix, optional CSSMatrixComponentOptions options = {});
attribute DOMMatrix matrix;
Expand Down Expand Up @@ -3069,7 +3069,7 @@ into a {{CSSNumericValue}}.
Issue: TODO add stringifiers

<xmp class=idl>
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet)]
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet), Serializable]
interface CSSRGB : CSSColorValue {
constructor(CSSColorRGBComp r, CSSColorRGBComp g, CSSColorRGBComp b, optional CSSColorPercent alpha = 1);
attribute CSSColorRGBComp r;
Expand Down Expand Up @@ -3117,7 +3117,7 @@ The {{CSSRGB}} class represents the CSS ''rgb()''/''rgba()'' functions.
</div>

<xmp class=idl>
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet)]
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet), Serializable]
interface CSSHSL : CSSColorValue {
constructor(CSSColorAngle h, CSSColorPercent s, CSSColorPercent l, optional CSSColorPercent alpha = 1);
attribute CSSColorAngle h;
Expand Down Expand Up @@ -3162,7 +3162,7 @@ The {{CSSHSL}} class represents the CSS ''hsl()''/''hsla()'' functions.
</div>

<xmp class=idl>
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet)]
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet), Serializable]
interface CSSHWB : CSSColorValue {
constructor(CSSNumericValue h, CSSNumberish w, CSSNumberish b, optional CSSNumberish alpha = 1);
attribute CSSNumericValue h;
Expand Down Expand Up @@ -3207,7 +3207,7 @@ The {{CSSHWB}} class represents the CSS ''hwb()'' function.
</div>

<xmp class=idl>
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet)]
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet), Serializable]
interface CSSLab : CSSColorValue {
constructor(CSSColorPercent l, CSSColorNumber a, CSSColorNumber b, optional CSSColorPercent alpha = 1);
attribute CSSColorPercent l;
Expand Down Expand Up @@ -3253,7 +3253,7 @@ The {{CSSLab}} class represents the CSS ''lab()'' function.
</div>

<xmp class=idl>
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet)]
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet), Serializable]
interface CSSLCH : CSSColorValue {
constructor(CSSColorPercent l, CSSColorPercent c, CSSColorAngle h, optional CSSColorPercent alpha = 1);
attribute CSSColorPercent l;
Expand Down Expand Up @@ -3298,7 +3298,7 @@ The {{CSSLCH}} class represents the CSS ''lch()'' function.
</div>

<xmp class=idl>
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet)]
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet), Serializable]
interface CSSOKLab : CSSColorValue {
constructor(CSSColorPercent l, CSSColorNumber a, CSSColorNumber b, optional CSSColorPercent alpha = 1);
attribute CSSColorPercent l;
Expand Down Expand Up @@ -3344,7 +3344,7 @@ The {{CSSOKLab}} class represents the CSS ''oklab()'' function.
</div>

<xmp class=idl>
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet)]
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet), Serializable]
interface CSSOKLCH : CSSColorValue {
constructor(CSSColorPercent l, CSSColorPercent c, CSSColorAngle h, optional CSSColorPercent alpha = 1);
attribute CSSColorPercent l;
Expand Down Expand Up @@ -3389,7 +3389,7 @@ The {{CSSOKLCH}} class represents the CSS ''lch()'' function.
</div>

<xmp class=idl>
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet)]
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet), Serializable]
interface CSSColor : CSSColorValue {
constructor(CSSKeywordish colorSpace, sequence<CSSColorPercent> channels, optional CSSNumberish alpha = 1);
attribute CSSKeywordish colorSpace;
Expand Down