sheetom 0.1.0 → 0.2.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/dist/index.cjs +398 -97
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +65 -10
- package/dist/index.d.ts +65 -10
- package/dist/index.js +391 -98
- package/dist/index.js.map +1 -1
- package/docs/api.md +19 -1
- package/engine-abi.json +3 -3
- package/package.json +21 -20
package/docs/api.md
CHANGED
|
@@ -28,6 +28,13 @@ with constructors from the same returned facade. Initialization and traps use
|
|
|
28
28
|
`SheetOMWasmBindingError` with stable `SHEETOM_WASM_*` codes; ordinary CSS and
|
|
29
29
|
Resource Budget failures retain the native facade contract.
|
|
30
30
|
|
|
31
|
+
## CSS utilities
|
|
32
|
+
|
|
33
|
+
The exported `CSS` object provides `escape(value)` and the two
|
|
34
|
+
`supports(condition)` / `supports(property, value)` overloads. They use the
|
|
35
|
+
revision-pinned authoring capabilities and do not install a global namespace.
|
|
36
|
+
`CSSStyleSheet` inherits from the exported, nonconstructible `StyleSheet` base.
|
|
37
|
+
|
|
31
38
|
## Stylesheets and identity
|
|
32
39
|
|
|
33
40
|
`CSSStyleSheet.cssRules` is stable and live. `insertRule` and `deleteRule` use
|
|
@@ -157,7 +164,7 @@ with the optional `UNSUPPORTED_SHORTHAND_VALUE` diagnostic.
|
|
|
157
164
|
`CSSNamespaceRule` exposes immutable `namespaceURI` and `prefix` values.
|
|
158
165
|
- `CSSImportRule` never fetches; `media` is live and `href` resolves against the
|
|
159
166
|
sheet base URL.
|
|
160
|
-
- `CSSFontFaceRule`, `CSSPageRule`/`CSSMarginRule`, `CSSPositionTryRule`, and
|
|
167
|
+
- `CSSFontFaceRule`, `CSSPageRule`/`CSSMarginRule`, `CSSPositionTryRule`/`CSSPositionTryDescriptors`, and
|
|
161
168
|
`CSSNestedDeclarations` expose declaration blocks.
|
|
162
169
|
- `CSSKeyframesRule` provides `appendRule`, `deleteRule`, and last-match
|
|
163
170
|
`findRule`; each `CSSKeyframeRule` exposes mutable `keyText` and `style`.
|
|
@@ -179,6 +186,17 @@ with the optional `UNSUPPORTED_SHORTHAND_VALUE` diagnostic.
|
|
|
179
186
|
or `setProperty()` is a no-op; `cssText` replacement and `removeProperty()`
|
|
180
187
|
remain live.
|
|
181
188
|
|
|
189
|
+
- Experimental `CSSMixinRule` exposes `name`, `contents`, fresh parameter
|
|
190
|
+
records from `getParameters()`, and live grouping mutation.
|
|
191
|
+
- Experimental `CSSApplyBlockRule` / `CSSApplyStatementRule` expose `name`
|
|
192
|
+
and fresh `getArguments()` snapshots. Block applications own live `cssRules`.
|
|
193
|
+
- Experimental `CSSContentsBlockRule` / `CSSContentsStatementRule` distinguish
|
|
194
|
+
a fallback block from a statement. Declaration runs inside mixin-related
|
|
195
|
+
blocks are editable `CSSNestedDeclarations`. Mixins are never expanded.
|
|
196
|
+
|
|
197
|
+
These five mixin interfaces are available by default under the exact draft
|
|
198
|
+
revision and [explicit resolutions](./css-september-2026-parity-evidence.md).
|
|
199
|
+
|
|
182
200
|
Unknown metadata and future rules can be retained and serialized, but are
|
|
183
201
|
read-only until a standards-defined mutable interface is implemented.
|
|
184
202
|
|
package/engine-abi.json
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"abiVersion":
|
|
3
|
-
"sheetomVersion": "0.
|
|
4
|
-
"syntaxEngineSetSha256": "
|
|
2
|
+
"abiVersion": 5,
|
|
3
|
+
"sheetomVersion": "0.2.0",
|
|
4
|
+
"syntaxEngineSetSha256": "954d76058dc35ad2a5c85e41fd66e35d308856e554c93563e7eee8a4704d4b70"
|
|
5
5
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "sheetom",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.2.0",
|
|
4
4
|
"description": "A browser-compatible mutable CSSOM for JavaScript runtimes",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"css",
|
|
@@ -48,19 +48,19 @@
|
|
|
48
48
|
"SECURITY.md"
|
|
49
49
|
],
|
|
50
50
|
"optionalDependencies": {
|
|
51
|
-
"@sheetom/native-darwin-arm64": "0.
|
|
52
|
-
"@sheetom/native-darwin-x64": "0.
|
|
53
|
-
"@sheetom/native-linux-arm-gnueabihf": "0.
|
|
54
|
-
"@sheetom/native-linux-arm-musleabihf": "0.
|
|
55
|
-
"@sheetom/native-linux-arm64-gnu": "0.
|
|
56
|
-
"@sheetom/native-linux-arm64-musl": "0.
|
|
57
|
-
"@sheetom/native-linux-ppc64-gnu": "0.
|
|
58
|
-
"@sheetom/native-linux-s390x-gnu": "0.
|
|
59
|
-
"@sheetom/native-linux-x64-gnu": "0.
|
|
60
|
-
"@sheetom/native-linux-x64-musl": "0.
|
|
61
|
-
"@sheetom/native-win32-arm64-msvc": "0.
|
|
62
|
-
"@sheetom/native-win32-ia32-msvc": "0.
|
|
63
|
-
"@sheetom/native-win32-x64-msvc": "0.
|
|
51
|
+
"@sheetom/native-darwin-arm64": "0.2.0",
|
|
52
|
+
"@sheetom/native-darwin-x64": "0.2.0",
|
|
53
|
+
"@sheetom/native-linux-arm-gnueabihf": "0.2.0",
|
|
54
|
+
"@sheetom/native-linux-arm-musleabihf": "0.2.0",
|
|
55
|
+
"@sheetom/native-linux-arm64-gnu": "0.2.0",
|
|
56
|
+
"@sheetom/native-linux-arm64-musl": "0.2.0",
|
|
57
|
+
"@sheetom/native-linux-ppc64-gnu": "0.2.0",
|
|
58
|
+
"@sheetom/native-linux-s390x-gnu": "0.2.0",
|
|
59
|
+
"@sheetom/native-linux-x64-gnu": "0.2.0",
|
|
60
|
+
"@sheetom/native-linux-x64-musl": "0.2.0",
|
|
61
|
+
"@sheetom/native-win32-arm64-msvc": "0.2.0",
|
|
62
|
+
"@sheetom/native-win32-ia32-msvc": "0.2.0",
|
|
63
|
+
"@sheetom/native-win32-x64-msvc": "0.2.0"
|
|
64
64
|
},
|
|
65
65
|
"scripts": {
|
|
66
66
|
"build": "tsdown",
|
|
@@ -131,18 +131,19 @@
|
|
|
131
131
|
"test:browser:matrix": "SHEETOM_BROWSER_MATRIX=1 vitest run --project browser",
|
|
132
132
|
"test:differential": "npm run build && node scripts/browser-differential.ts",
|
|
133
133
|
"typecheck": "tsc --noEmit && npm run typecheck:scripts",
|
|
134
|
-
"typecheck:scripts": "tsc --project tsconfig.scripts.json"
|
|
134
|
+
"typecheck:scripts": "tsc --project tsconfig.scripts.json",
|
|
135
|
+
"css:target:check": "node scripts/generate-css-feature-target.ts && node scripts/generate-css-authoring-coverage.ts && node scripts/check-css-authoring-target.ts && node scripts/test-modern-css-backends.ts"
|
|
135
136
|
},
|
|
136
137
|
"devDependencies": {
|
|
137
|
-
"@changesets/cli": "^
|
|
138
|
-
"@napi-rs/cli": "3.8.
|
|
138
|
+
"@changesets/cli": "^3.0.0",
|
|
139
|
+
"@napi-rs/cli": "3.8.6",
|
|
139
140
|
"@rollup/plugin-node-resolve": "16.0.3",
|
|
140
|
-
"@types/css-tree": "^2.
|
|
141
|
+
"@types/css-tree": "^3.2.0",
|
|
141
142
|
"@types/node": "^24.0.0",
|
|
142
143
|
"@vitest/browser-playwright": "^4.1.10",
|
|
143
144
|
"@webref/css": "8.7.1",
|
|
144
145
|
"ajv": "^8.20.0",
|
|
145
|
-
"binaryen": "
|
|
146
|
+
"binaryen": "132.0.0",
|
|
146
147
|
"css-tree": "3.2.1",
|
|
147
148
|
"esbuild": "0.28.2",
|
|
148
149
|
"fast-check": "^4.9.0",
|
|
@@ -150,7 +151,7 @@
|
|
|
150
151
|
"rollup": "4.62.4",
|
|
151
152
|
"tsdown": "^0.22.14",
|
|
152
153
|
"typedoc": "^0.28.20",
|
|
153
|
-
"typescript": "^
|
|
154
|
+
"typescript": "^6.0.3",
|
|
154
155
|
"vite": "8.2.1",
|
|
155
156
|
"vitest": "^4.1.10",
|
|
156
157
|
"webpack": "5.109.2"
|