@tenphi/eslint-plugin-tasty 1.0.3 → 1.0.5

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/constants.js CHANGED
@@ -129,12 +129,38 @@ const RENAMED_SPECIAL_STYLE_KEYS = {
129
129
  "@counterStyle": "@counter-style"
130
130
  };
131
131
  /**
132
- * CSS property names (common subset for validation).
133
- * When a key is camelCase and matches a known CSS property, it's valid.
132
+ * CSS property names, camelCase, derived from `known-css-properties` — the
133
+ * MDN/W3C-sourced dataset stylelint uses for `property-no-unknown`.
134
+ *
135
+ * Generated. Run `pnpm generate:css-properties` after bumping the dataset rather
136
+ * than editing this list; `constants.css-properties.test.ts` fails on drift.
137
+ *
138
+ * Tasty renders any camelCase style key straight through to its kebab-case CSS
139
+ * declaration (`maskSize` -> `mask-size`), so anything absent here is a false
140
+ * positive from `known-property` on valid CSS — which is why the list is derived
141
+ * from data instead of maintained by hand.
142
+ *
143
+ * The dataset also carries at-rule descriptors (`src`, `syntax`, `symbols`, `size`),
144
+ * which are kept, as stylelint keeps them. They are only reachable as top-level
145
+ * style keys, where the cost is a declaration browsers drop rather than a report —
146
+ * and separating them would mean hand-maintaining the exclusion list this change
147
+ * exists to delete. Inside an at-rule block nothing validates them: `known-property`
148
+ * exempts every `@`-prefixed key and does not descend.
134
149
  */
135
- const KNOWN_CSS_PROPERTIES = new Set([
150
+ const DATASET_CSS_PROPERTIES = [
151
+ "accelerator",
152
+ "accentColor",
153
+ "additiveSymbols",
154
+ "alignContent",
155
+ "alignItems",
156
+ "alignSelf",
157
+ "alignmentBaseline",
136
158
  "all",
159
+ "alt",
160
+ "anchorName",
161
+ "anchorScope",
137
162
  "animation",
163
+ "animationComposition",
138
164
  "animationDelay",
139
165
  "animationDirection",
140
166
  "animationDuration",
@@ -142,9 +168,26 @@ const KNOWN_CSS_PROPERTIES = new Set([
142
168
  "animationIterationCount",
143
169
  "animationName",
144
170
  "animationPlayState",
171
+ "animationRange",
172
+ "animationRangeEnd",
173
+ "animationRangeStart",
174
+ "animationTimeline",
145
175
  "animationTimingFunction",
176
+ "animationTrigger",
177
+ "animationTriggerBehavior",
178
+ "animationTriggerExitRange",
179
+ "animationTriggerExitRangeEnd",
180
+ "animationTriggerExitRangeStart",
181
+ "animationTriggerRange",
182
+ "animationTriggerRangeEnd",
183
+ "animationTriggerRangeStart",
184
+ "animationTriggerTimeline",
185
+ "appRegion",
146
186
  "appearance",
187
+ "ascentOverride",
147
188
  "aspectRatio",
189
+ "audioLevel",
190
+ "azimuth",
148
191
  "backdropFilter",
149
192
  "backfaceVisibility",
150
193
  "background",
@@ -155,9 +198,26 @@ const KNOWN_CSS_PROPERTIES = new Set([
155
198
  "backgroundImage",
156
199
  "backgroundOrigin",
157
200
  "backgroundPosition",
201
+ "backgroundPositionX",
202
+ "backgroundPositionY",
158
203
  "backgroundRepeat",
204
+ "backgroundRepeatX",
205
+ "backgroundRepeatY",
159
206
  "backgroundSize",
207
+ "basePalette",
208
+ "baselineShift",
209
+ "baselineSource",
210
+ "behavior",
211
+ "blockEllipsis",
160
212
  "blockSize",
213
+ "blockStep",
214
+ "blockStepAlign",
215
+ "blockStepInsert",
216
+ "blockStepRound",
217
+ "blockStepSize",
218
+ "bookmarkLabel",
219
+ "bookmarkLevel",
220
+ "bookmarkState",
161
221
  "border",
162
222
  "borderBlock",
163
223
  "borderBlockColor",
@@ -177,13 +237,27 @@ const KNOWN_CSS_PROPERTIES = new Set([
177
237
  "borderBottomRightRadius",
178
238
  "borderBottomStyle",
179
239
  "borderBottomWidth",
240
+ "borderBoundary",
180
241
  "borderCollapse",
181
242
  "borderColor",
243
+ "borderEndEndRadius",
244
+ "borderEndStartRadius",
182
245
  "borderImage",
246
+ "borderImageOutset",
247
+ "borderImageRepeat",
248
+ "borderImageSlice",
249
+ "borderImageSource",
250
+ "borderImageWidth",
183
251
  "borderInline",
184
252
  "borderInlineColor",
185
253
  "borderInlineEnd",
254
+ "borderInlineEndColor",
255
+ "borderInlineEndStyle",
256
+ "borderInlineEndWidth",
186
257
  "borderInlineStart",
258
+ "borderInlineStartColor",
259
+ "borderInlineStartStyle",
260
+ "borderInlineStartWidth",
187
261
  "borderInlineStyle",
188
262
  "borderInlineWidth",
189
263
  "borderLeft",
@@ -196,6 +270,8 @@ const KNOWN_CSS_PROPERTIES = new Set([
196
270
  "borderRightStyle",
197
271
  "borderRightWidth",
198
272
  "borderSpacing",
273
+ "borderStartEndRadius",
274
+ "borderStartStartRadius",
199
275
  "borderStyle",
200
276
  "borderTop",
201
277
  "borderTopColor",
@@ -208,42 +284,96 @@ const KNOWN_CSS_PROPERTIES = new Set([
208
284
  "boxDecorationBreak",
209
285
  "boxShadow",
210
286
  "boxSizing",
287
+ "boxSnap",
211
288
  "breakAfter",
212
289
  "breakBefore",
213
290
  "breakInside",
291
+ "bufferedRendering",
214
292
  "captionSide",
293
+ "caret",
294
+ "caretAnimation",
215
295
  "caretColor",
296
+ "caretShape",
297
+ "chains",
216
298
  "clear",
217
299
  "clip",
218
300
  "clipPath",
219
301
  "clipRule",
220
302
  "color",
303
+ "colorAdjust",
304
+ "colorInterpolation",
305
+ "colorInterpolationFilters",
306
+ "colorProfile",
307
+ "colorRendering",
221
308
  "colorScheme",
222
309
  "columnCount",
223
310
  "columnFill",
224
311
  "columnGap",
312
+ "columnHeight",
313
+ "columnProgression",
225
314
  "columnRule",
315
+ "columnRuleBreak",
226
316
  "columnRuleColor",
317
+ "columnRuleOutset",
227
318
  "columnRuleStyle",
228
319
  "columnRuleWidth",
229
320
  "columnSpan",
230
321
  "columnWidth",
322
+ "columnWrap",
231
323
  "columns",
232
324
  "contain",
325
+ "containIntrinsicBlockSize",
326
+ "containIntrinsicHeight",
327
+ "containIntrinsicInlineSize",
328
+ "containIntrinsicSize",
329
+ "containIntrinsicWidth",
330
+ "container",
233
331
  "containerName",
234
332
  "containerType",
235
333
  "content",
236
334
  "contentVisibility",
335
+ "continue",
237
336
  "counterIncrement",
238
337
  "counterReset",
239
338
  "counterSet",
339
+ "cue",
340
+ "cueAfter",
341
+ "cueBefore",
240
342
  "cursor",
343
+ "cx",
344
+ "cy",
345
+ "d",
346
+ "descentOverride",
241
347
  "direction",
242
348
  "display",
349
+ "displayAlign",
243
350
  "dominantBaseline",
351
+ "dynamicRangeLimit",
352
+ "elevation",
244
353
  "emptyCells",
354
+ "enableBackground",
355
+ "epubCaptionSide",
356
+ "epubHyphens",
357
+ "epubTextCombine",
358
+ "epubTextEmphasis",
359
+ "epubTextEmphasisColor",
360
+ "epubTextEmphasisStyle",
361
+ "epubTextOrientation",
362
+ "epubTextTransform",
363
+ "epubWordBreak",
364
+ "epubWritingMode",
365
+ "fallback",
366
+ "fieldSizing",
367
+ "fill",
368
+ "fillBreak",
369
+ "fillColor",
370
+ "fillImage",
245
371
  "fillOpacity",
372
+ "fillOrigin",
373
+ "fillPosition",
374
+ "fillRepeat",
246
375
  "fillRule",
376
+ "fillSize",
247
377
  "filter",
248
378
  "flex",
249
379
  "flexBasis",
@@ -253,27 +383,48 @@ const KNOWN_CSS_PROPERTIES = new Set([
253
383
  "flexShrink",
254
384
  "flexWrap",
255
385
  "float",
386
+ "floatDefer",
387
+ "floatOffset",
388
+ "floatReference",
256
389
  "floodColor",
257
390
  "floodOpacity",
391
+ "flow",
392
+ "flowFrom",
393
+ "flowInto",
258
394
  "font",
395
+ "fontDisplay",
259
396
  "fontFamily",
260
397
  "fontFeatureSettings",
261
398
  "fontKerning",
399
+ "fontLanguageOverride",
262
400
  "fontOpticalSizing",
401
+ "fontPalette",
263
402
  "fontSize",
264
403
  "fontSizeAdjust",
265
404
  "fontStretch",
266
405
  "fontStyle",
267
406
  "fontSynthesis",
407
+ "fontSynthesisPosition",
408
+ "fontSynthesisSmallCaps",
409
+ "fontSynthesisStyle",
410
+ "fontSynthesisWeight",
268
411
  "fontVariant",
269
412
  "fontVariantAlternates",
270
413
  "fontVariantCaps",
271
414
  "fontVariantEastAsian",
415
+ "fontVariantEmoji",
272
416
  "fontVariantLigatures",
273
417
  "fontVariantNumeric",
274
418
  "fontVariantPosition",
419
+ "fontVariationSettings",
275
420
  "fontWeight",
421
+ "fontWidth",
422
+ "footnoteDisplay",
423
+ "footnotePolicy",
424
+ "forcedColorAdjust",
276
425
  "gap",
426
+ "glyphOrientationHorizontal",
427
+ "glyphOrientationVertical",
277
428
  "grid",
278
429
  "gridArea",
279
430
  "gridAutoColumns",
@@ -281,67 +432,171 @@ const KNOWN_CSS_PROPERTIES = new Set([
281
432
  "gridAutoRows",
282
433
  "gridColumn",
283
434
  "gridColumnEnd",
435
+ "gridColumnGap",
284
436
  "gridColumnStart",
437
+ "gridGap",
285
438
  "gridRow",
286
439
  "gridRowEnd",
440
+ "gridRowGap",
287
441
  "gridRowStart",
288
442
  "gridTemplate",
289
443
  "gridTemplateAreas",
290
444
  "gridTemplateColumns",
291
445
  "gridTemplateRows",
446
+ "hangingPunctuation",
292
447
  "height",
448
+ "hyphenateCharacter",
449
+ "hyphenateLimitChars",
450
+ "hyphenateLimitLast",
451
+ "hyphenateLimitLines",
452
+ "hyphenateLimitZone",
293
453
  "hyphens",
454
+ "imageOrientation",
294
455
  "imageRendering",
456
+ "imageResolution",
457
+ "imeMode",
458
+ "inherits",
459
+ "initialLetter",
460
+ "initialLetterAlign",
461
+ "initialLetterWrap",
462
+ "initialValue",
295
463
  "inlineSize",
464
+ "inlineSizing",
465
+ "inputFormat",
466
+ "inputSecurity",
296
467
  "inset",
468
+ "insetArea",
297
469
  "insetBlock",
298
470
  "insetBlockEnd",
299
471
  "insetBlockStart",
300
472
  "insetInline",
301
473
  "insetInlineEnd",
302
474
  "insetInlineStart",
475
+ "interactivity",
476
+ "interpolateSize",
303
477
  "isolation",
478
+ "itemCross",
479
+ "itemDirection",
480
+ "itemFlow",
481
+ "itemPack",
482
+ "itemSlack",
483
+ "itemTrack",
484
+ "itemWrap",
304
485
  "justifyContent",
305
486
  "justifyItems",
306
487
  "justifySelf",
488
+ "kerning",
489
+ "layoutFlow",
490
+ "layoutGrid",
491
+ "layoutGridChar",
492
+ "layoutGridLine",
493
+ "layoutGridMode",
494
+ "layoutGridType",
307
495
  "left",
308
496
  "letterSpacing",
309
497
  "lightingColor",
310
498
  "lineBreak",
499
+ "lineClamp",
500
+ "lineFitEdge",
501
+ "lineGapOverride",
502
+ "lineGrid",
311
503
  "lineHeight",
504
+ "lineHeightStep",
505
+ "lineIncrement",
506
+ "linePadding",
507
+ "lineSnap",
312
508
  "listStyle",
313
509
  "listStyleImage",
314
510
  "listStylePosition",
315
511
  "listStyleType",
316
- "marker",
317
- "markerEnd",
318
- "markerMid",
319
- "markerStart",
320
512
  "margin",
321
513
  "marginBlock",
322
514
  "marginBlockEnd",
323
515
  "marginBlockStart",
324
516
  "marginBottom",
517
+ "marginBreak",
325
518
  "marginInline",
326
519
  "marginInlineEnd",
327
520
  "marginInlineStart",
328
521
  "marginLeft",
329
522
  "marginRight",
330
523
  "marginTop",
524
+ "marginTrim",
525
+ "marker",
526
+ "markerEnd",
527
+ "markerKnockoutLeft",
528
+ "markerKnockoutRight",
529
+ "markerMid",
530
+ "markerOffset",
531
+ "markerPattern",
532
+ "markerSegment",
533
+ "markerSide",
534
+ "markerStart",
535
+ "marks",
536
+ "mask",
537
+ "maskBorder",
538
+ "maskBorderMode",
539
+ "maskBorderOutset",
540
+ "maskBorderRepeat",
541
+ "maskBorderSlice",
542
+ "maskBorderSource",
543
+ "maskBorderWidth",
544
+ "maskClip",
545
+ "maskComposite",
331
546
  "maskImage",
547
+ "maskMode",
548
+ "maskOrigin",
549
+ "maskPosition",
550
+ "maskPositionX",
551
+ "maskPositionY",
552
+ "maskRepeat",
553
+ "maskSize",
554
+ "maskSourceType",
555
+ "maskType",
556
+ "mathDepth",
557
+ "mathShift",
558
+ "mathStyle",
332
559
  "maxBlockSize",
333
560
  "maxHeight",
334
561
  "maxInlineSize",
562
+ "maxLines",
335
563
  "maxWidth",
564
+ "maxZoom",
336
565
  "minBlockSize",
337
566
  "minHeight",
338
567
  "minInlineSize",
568
+ "minIntrinsicSizing",
339
569
  "minWidth",
570
+ "minZoom",
340
571
  "mixBlendMode",
572
+ "motion",
573
+ "motionOffset",
574
+ "motionPath",
575
+ "motionRotation",
576
+ "navDown",
577
+ "navIndex",
578
+ "navLeft",
579
+ "navRight",
580
+ "navUp",
581
+ "navigation",
582
+ "negative",
341
583
  "objectFit",
342
584
  "objectPosition",
585
+ "objectViewBox",
586
+ "offset",
587
+ "offsetAnchor",
588
+ "offsetBlockEnd",
589
+ "offsetBlockStart",
590
+ "offsetDistance",
591
+ "offsetInlineEnd",
592
+ "offsetInlineStart",
593
+ "offsetPath",
594
+ "offsetPosition",
595
+ "offsetRotate",
596
+ "offsetRotation",
343
597
  "opacity",
344
598
  "order",
599
+ "orientation",
345
600
  "orphans",
346
601
  "outline",
347
602
  "outlineColor",
@@ -350,10 +605,30 @@ const KNOWN_CSS_PROPERTIES = new Set([
350
605
  "outlineWidth",
351
606
  "overflow",
352
607
  "overflowAnchor",
608
+ "overflowBlock",
609
+ "overflowClipMargin",
610
+ "overflowClipMarginBlock",
611
+ "overflowClipMarginBlockEnd",
612
+ "overflowClipMarginBlockStart",
613
+ "overflowClipMarginBottom",
614
+ "overflowClipMarginInline",
615
+ "overflowClipMarginInlineEnd",
616
+ "overflowClipMarginInlineStart",
617
+ "overflowClipMarginLeft",
618
+ "overflowClipMarginRight",
619
+ "overflowClipMarginTop",
620
+ "overflowInline",
353
621
  "overflowWrap",
354
622
  "overflowX",
355
623
  "overflowY",
624
+ "overlay",
625
+ "overrideColors",
356
626
  "overscrollBehavior",
627
+ "overscrollBehaviorBlock",
628
+ "overscrollBehaviorInline",
629
+ "overscrollBehaviorX",
630
+ "overscrollBehaviorY",
631
+ "pad",
357
632
  "padding",
358
633
  "paddingBlock",
359
634
  "paddingBlockEnd",
@@ -365,20 +640,75 @@ const KNOWN_CSS_PROPERTIES = new Set([
365
640
  "paddingLeft",
366
641
  "paddingRight",
367
642
  "paddingTop",
643
+ "page",
644
+ "pageBreakAfter",
645
+ "pageBreakBefore",
646
+ "pageBreakInside",
647
+ "pageOrientation",
648
+ "paintOrder",
649
+ "pause",
650
+ "pauseAfter",
651
+ "pauseBefore",
652
+ "penAction",
368
653
  "perspective",
369
654
  "perspectiveOrigin",
655
+ "perspectiveOriginX",
656
+ "perspectiveOriginY",
657
+ "pitch",
658
+ "pitchRange",
370
659
  "placeContent",
371
660
  "placeItems",
372
661
  "placeSelf",
662
+ "playDuring",
373
663
  "pointerEvents",
374
664
  "position",
665
+ "positionAnchor",
666
+ "positionArea",
667
+ "positionTry",
668
+ "positionTryFallbacks",
669
+ "positionTryOptions",
670
+ "positionTryOrder",
671
+ "positionVisibility",
672
+ "prefix",
673
+ "printColorAdjust",
674
+ "propertyName",
375
675
  "quotes",
676
+ "r",
677
+ "range",
678
+ "readingFlow",
679
+ "readingOrder",
680
+ "regionFragment",
376
681
  "resize",
682
+ "rest",
683
+ "restAfter",
684
+ "restBefore",
685
+ "richness",
377
686
  "right",
378
687
  "rotate",
379
688
  "rowGap",
689
+ "rowRule",
690
+ "rowRuleBreak",
691
+ "rowRuleColor",
692
+ "rowRuleOutset",
693
+ "rowRuleStyle",
694
+ "rowRuleWidth",
695
+ "rubyAlign",
696
+ "rubyMerge",
697
+ "rubyOverhang",
698
+ "rubyPosition",
699
+ "rule",
700
+ "ruleBreak",
701
+ "ruleColor",
702
+ "ruleOutset",
703
+ "rulePaintOrder",
704
+ "ruleStyle",
705
+ "ruleWidth",
706
+ "running",
707
+ "rx",
708
+ "ry",
380
709
  "scale",
381
710
  "scrollBehavior",
711
+ "scrollInitialTarget",
382
712
  "scrollMargin",
383
713
  "scrollMarginBlock",
384
714
  "scrollMarginBlockEnd",
@@ -390,6 +720,7 @@ const KNOWN_CSS_PROPERTIES = new Set([
390
720
  "scrollMarginLeft",
391
721
  "scrollMarginRight",
392
722
  "scrollMarginTop",
723
+ "scrollMarkerGroup",
393
724
  "scrollPadding",
394
725
  "scrollPaddingBlock",
395
726
  "scrollPaddingBlockEnd",
@@ -402,70 +733,251 @@ const KNOWN_CSS_PROPERTIES = new Set([
402
733
  "scrollPaddingRight",
403
734
  "scrollPaddingTop",
404
735
  "scrollSnapAlign",
736
+ "scrollSnapCoordinate",
737
+ "scrollSnapDestination",
738
+ "scrollSnapMargin",
739
+ "scrollSnapMarginBottom",
740
+ "scrollSnapMarginLeft",
741
+ "scrollSnapMarginRight",
742
+ "scrollSnapMarginTop",
743
+ "scrollSnapPointsX",
744
+ "scrollSnapPointsY",
405
745
  "scrollSnapStop",
406
746
  "scrollSnapType",
747
+ "scrollSnapTypeX",
748
+ "scrollSnapTypeY",
749
+ "scrollStartTarget",
750
+ "scrollTargetGroup",
751
+ "scrollTimeline",
752
+ "scrollTimelineAxis",
753
+ "scrollTimelineName",
754
+ "scrollbar3dLightColor",
755
+ "scrollbar3dlightColor",
756
+ "scrollbarArrowColor",
757
+ "scrollbarBaseColor",
407
758
  "scrollbarColor",
759
+ "scrollbarDarkShadowColor",
760
+ "scrollbarDarkshadowColor",
761
+ "scrollbarFaceColor",
408
762
  "scrollbarGutter",
763
+ "scrollbarHighlightColor",
764
+ "scrollbarShadowColor",
765
+ "scrollbarTrackColor",
409
766
  "scrollbarWidth",
767
+ "shapeImageThreshold",
768
+ "shapeInside",
769
+ "shapeMargin",
410
770
  "shapeOutside",
411
771
  "shapeRendering",
772
+ "size",
773
+ "sizeAdjust",
774
+ "sliderOrientation",
775
+ "snapHeight",
776
+ "solidColor",
777
+ "solidOpacity",
778
+ "spatialNavigationAction",
779
+ "spatialNavigationContain",
780
+ "spatialNavigationFunction",
781
+ "speak",
782
+ "speakAs",
783
+ "speakHeader",
784
+ "speakNumeral",
785
+ "speakPunctuation",
786
+ "speechRate",
787
+ "src",
412
788
  "stopColor",
413
789
  "stopOpacity",
790
+ "stress",
791
+ "stringSet",
414
792
  "stroke",
793
+ "strokeAlign",
794
+ "strokeAlignment",
795
+ "strokeBreak",
796
+ "strokeColor",
797
+ "strokeDashCorner",
798
+ "strokeDashJustify",
799
+ "strokeDashadjust",
415
800
  "strokeDasharray",
801
+ "strokeDashcorner",
416
802
  "strokeDashoffset",
803
+ "strokeImage",
417
804
  "strokeLinecap",
418
805
  "strokeLinejoin",
419
806
  "strokeMiterlimit",
420
807
  "strokeOpacity",
808
+ "strokeOrigin",
809
+ "strokePosition",
810
+ "strokeRepeat",
811
+ "strokeSize",
421
812
  "strokeWidth",
813
+ "suffix",
814
+ "supportedColorSchemes",
815
+ "symbols",
816
+ "syntax",
817
+ "system",
422
818
  "tabSize",
423
819
  "tableLayout",
424
820
  "textAlign",
821
+ "textAlignAll",
425
822
  "textAlignLast",
426
823
  "textAnchor",
824
+ "textAutospace",
825
+ "textBox",
826
+ "textBoxEdge",
827
+ "textBoxTrim",
427
828
  "textCombineUpright",
428
829
  "textDecoration",
830
+ "textDecorationBlink",
429
831
  "textDecorationColor",
430
832
  "textDecorationLine",
833
+ "textDecorationLineThrough",
834
+ "textDecorationNone",
835
+ "textDecorationOverline",
836
+ "textDecorationSkip",
837
+ "textDecorationSkipBox",
431
838
  "textDecorationSkipInk",
839
+ "textDecorationSkipInset",
840
+ "textDecorationSkipSelf",
841
+ "textDecorationSkipSpaces",
432
842
  "textDecorationStyle",
433
843
  "textDecorationThickness",
844
+ "textDecorationTrim",
845
+ "textDecorationUnderline",
434
846
  "textEmphasis",
847
+ "textEmphasisColor",
848
+ "textEmphasisPosition",
849
+ "textEmphasisSkip",
850
+ "textEmphasisStyle",
851
+ "textGroupAlign",
435
852
  "textIndent",
853
+ "textJustify",
854
+ "textJustifyTrim",
855
+ "textKashida",
856
+ "textKashidaSpace",
857
+ "textLineThrough",
858
+ "textLineThroughColor",
859
+ "textLineThroughMode",
860
+ "textLineThroughStyle",
861
+ "textLineThroughWidth",
436
862
  "textOrientation",
437
863
  "textOverflow",
864
+ "textOverline",
865
+ "textOverlineColor",
866
+ "textOverlineMode",
867
+ "textOverlineStyle",
868
+ "textOverlineWidth",
438
869
  "textRendering",
439
870
  "textShadow",
440
871
  "textSizeAdjust",
872
+ "textSpacing",
873
+ "textSpacingTrim",
441
874
  "textTransform",
875
+ "textUnderline",
876
+ "textUnderlineColor",
877
+ "textUnderlineMode",
442
878
  "textUnderlineOffset",
443
879
  "textUnderlinePosition",
880
+ "textUnderlineStyle",
881
+ "textUnderlineWidth",
444
882
  "textWrap",
883
+ "textWrapMode",
884
+ "textWrapStyle",
885
+ "timelineScope",
445
886
  "top",
446
887
  "touchAction",
888
+ "touchActionDelay",
447
889
  "transform",
890
+ "transformBox",
448
891
  "transformOrigin",
892
+ "transformOriginX",
893
+ "transformOriginY",
894
+ "transformOriginZ",
449
895
  "transformStyle",
450
896
  "transition",
897
+ "transitionBehavior",
451
898
  "transitionDelay",
452
899
  "transitionDuration",
453
900
  "transitionProperty",
454
901
  "transitionTimingFunction",
455
902
  "translate",
903
+ "types",
904
+ "ucAltSkin",
905
+ "ucSkin",
456
906
  "unicodeBidi",
907
+ "unicodeRange",
457
908
  "userSelect",
909
+ "userZoom",
910
+ "vectorEffect",
458
911
  "verticalAlign",
912
+ "viewTimeline",
913
+ "viewTimelineAxis",
914
+ "viewTimelineInset",
915
+ "viewTimelineName",
916
+ "viewTransitionClass",
917
+ "viewTransitionGroup",
918
+ "viewTransitionName",
919
+ "viewportFill",
920
+ "viewportFillOpacity",
921
+ "viewportFit",
459
922
  "visibility",
923
+ "voiceBalance",
924
+ "voiceDuration",
925
+ "voiceFamily",
926
+ "voicePitch",
927
+ "voiceRange",
928
+ "voiceRate",
929
+ "voiceStress",
930
+ "voiceVolume",
931
+ "volume",
460
932
  "whiteSpace",
933
+ "whiteSpaceCollapse",
934
+ "whiteSpaceTrim",
461
935
  "widows",
462
936
  "width",
463
937
  "willChange",
464
938
  "wordBreak",
939
+ "wordSpaceTransform",
465
940
  "wordSpacing",
941
+ "wordWrap",
942
+ "wrapAfter",
943
+ "wrapBefore",
944
+ "wrapFlow",
945
+ "wrapInside",
946
+ "wrapThrough",
466
947
  "writingMode",
467
- "zIndex"
468
- ]);
948
+ "x",
949
+ "y",
950
+ "zIndex",
951
+ "zoom"
952
+ ];
953
+ /**
954
+ * Properties that ship in browsers or sit in a spec, but have not landed in
955
+ * `known-css-properties` yet. Hand-maintained, and pruned as the dataset catches
956
+ * up — the guard test fails on any entry the dataset already covers.
957
+ */
958
+ const EMERGING_CSS_PROPERTIES = [
959
+ "cornerShape",
960
+ "cornerTopShape",
961
+ "cornerRightShape",
962
+ "cornerBottomShape",
963
+ "cornerLeftShape",
964
+ "cornerBlockStartShape",
965
+ "cornerBlockEndShape",
966
+ "cornerInlineStartShape",
967
+ "cornerInlineEndShape",
968
+ "cornerTopLeftShape",
969
+ "cornerTopRightShape",
970
+ "cornerBottomRightShape",
971
+ "cornerBottomLeftShape",
972
+ "cornerStartStartShape",
973
+ "cornerStartEndShape",
974
+ "cornerEndStartShape",
975
+ "cornerEndEndShape"
976
+ ];
977
+ /**
978
+ * Every CSS property `known-property` accepts as a camelCase style key.
979
+ */
980
+ const KNOWN_CSS_PROPERTIES = new Set([...DATASET_CSS_PROPERTIES, ...EMERGING_CSS_PROPERTIES]);
469
981
  /**
470
982
  * Built-in custom units recognized by the tasty parser.
471
983
  */