Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(225)

Side by Side Diff: third_party/WebKit/Source/core/css/CSSProperties.json5

Issue 2633223003: Convert CSSProperties.in to JSON5 format (Closed)
Patch Set: Fix test_converter_unittest Created 3 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 {
2 // This file specifies all the CSS properties we support and the necessary
3 // information for our code generation. The various supported arguments
4 // are described below with example usage
5
6 parameters: {
7 // - alias_for: "other-property"
8 // Properties specifying alias_for should be virtually identical to the
9 // properties they alias. Minor parsing differences are allowed as long as
10 // the CSSValues created are of the same format of the aliased property.
11 alias_for: {
12 },
13
14 // - runtime_flag: "CSSGridLayout"
15 // The flag on RuntimeEnabledFeatures conditionally enables the property.
16 // This doesn't currently work with alias_for.
17 runtime_flag: {
18 },
19
20 // - descriptor_only
21 // These are actually descriptors and not CSS properties. Properties with
22 // the same name as a descriptor do not get this flag.
23 descriptor_only: {
24 },
25
26 // - longhands: "property;other-property"
27 // The property is a shorthand for several other properties.
28 longhands: {
29 default: '',
30 },
31
32 // - api_class: true|"classname"
33 // Specifies the existance (and optionally name) of a CSSPropertyAPI
34 // implementation for the property to be used by make_css_property_descripto r.py.
35 // See core/css/properties/CSSPropertyAPI.h for API details.
36 // * Add this flag if the API has been implemented for this property.
37 // * If the classname for this is different to the name of the property, spe cify a
38 // value for this flag. e.g. api_class=CSSPropertyAPIWebkitPadding
39 // TODO(aazzam): When most properties have been implemented, modify this so that
40 // properties with default classnames do not get this flag, and introduce a
41 // 'not_implemented' flag instead.
42 api_class: {
43 },
44
45 // - keyword_only
46 // These properties only store keyword values. This is used when
47 // generating the ComputedStyle storage for the property. The initial
48 // value for this property on a ComputedStyle is specified with the
49 // initial_keyword flag below.
50 // TODO(sashab): Rename this to field_type=keyword once we support
51 // multiple types of generatable fields in ComputedStyle
52 // TODO(sashab, meade): Remove this once TypedOM types are specified for
53 // every property, since this value can be inferred from that.
54 keyword_only: {
55 default: false,
56 valid_type: "bool",
57 },
58
59 // - field_storage_type: "path/to/Type"
60 // For properties that have generated field storage in ComputedStyle,
61 // this optional argument will override the field's generated type with
62 // an external one specified at the given path. The type must be defined
63 // in a header file at that path, and have the same name as the file.
64 // Currently, only enum types are supported, and the enum's only values
65 // must be CamelCase values of the keywords of the property.
66 field_storage_type: {
67 },
68
69 // - keywords: ["keyword1", "keyword2"]
70 // This specifies all valid keyword values for the property.
71 // TODO(sashab): Once all properties are represented here, delete
72 // CSSValueKeywords.in and use this list instead.
73 keywords: {
74 default: [],
75 },
76
77 // - initial_keyword: "keyword-value"
78 // This specifies the initial keyword value for the keyword_only
79 // property.
80 initial_keyword: {
81 },
82
83 // Flags which go into CSSOMTypes:
84 // - typedom_types: ["Type", "OtherType"]
85 // The property can take types specified in typedom_types for CSS Typed OM.
86 // Keyword does not need to be specified as every property can take keywords .
87 // - repeated
88 // The property supports a list of values.
89 // - supports_percentage
90 // The property supports percentage types.
91 typedom_types: {
92 default: [],
93 },
94 repeated: {
95 default: false,
96 valid_type: "bool",
97 },
98 supports_percentage: {
99 default: false,
100 valid_type: "bool",
101 },
102
103 // Flags which go into CSSPropertyMetadata:
104 // - interpolable
105 // The interpolable flag indicates whether a property can be animated smooth ly.
106 // If this flag is set, the property should also be added to the switch
107 // statements in AnimatedStyleBuilder, CSSPropertyEquality and
108 // CSSAnimatableValueFactory.
109 // - inherited
110 // The property will inherit by default if no value is specified, typically
111 // mentioned in specifications as "Inherited: yes"
112 interpolable: {
113 default: false,
114 valid_type: "bool",
115 },
116 inherited: {
117 default: false,
118 valid_type: "bool",
119 },
120
121 // - independent
122 // This property affects only one field on ComputedStyle, and can be set
123 // directly during inheritance instead of forcing a recalc.
124 // StyleResolver and StyleAdjuster are not invoked when these properties
125 // are changed on a parent. Recalcs only happen if at least one
126 // non-independent inherited property is changed in the parent.
127 independent: {
128 default: false,
129 valid_type: "bool",
130 },
131
132 // The remaining arguments are used for the StyleBuilder and allow us to
133 // succinctly describe how to apply properties. When default handlers are no t
134 // sufficient, we should prefer to use converter, and failing that define
135 // custom property handlers in StyleBuilderCustom.cpp. We only should use
136 // StyleBuilderFunctions.cpp.tmpl to define handlers when there are multiple
137 // properties requiring the same handling, but converter doesn't suffice.
138
139 // - font
140 // The default property handlers call into the FontBuilder instead of settin g
141 // values directly onto the ComputedStyle
142 // - svg
143 // The default property handlers access the SVGComputedStyle
144 font: {
145 default: false,
146 valid_type: "bool",
147 },
148 svg: {
149 default: false,
150 valid_type: "bool",
151 },
152
153 // - name_for_methods: "BlendMode"
154 // Tweaks how we choose defaults for getter, setter, initial and type_name.
155 // For example, setting this to BlendMode will make us use a setter of setBl endMode
156 // - initial
157 // The initial value accessor on the ComputedStyle, defaults to e.g. initial BoxShadow
158 // - getter
159 // The ComputedStyle getter, defaults to e.g. borderBottomLeft
160 // - setter
161 // The ComputedStyle setter, defaults to e.g. setBorderBottomLeft
162 // - type_name
163 // The computed type for the property. Only required for the default value
164 // application, defaults to e.g. EDisplay
165 name_for_methods: {
166 },
167 getter: {
168 },
169 setter: {
170 },
171 initial: {
172 },
173 type_name: {
174 },
175
176 // - converter: "convertRadius"
177 // The StyleBuilder will call the specified function on StyleBuilderConverte r
178 // to convert a CSSValue to an appropriate platform value
179 converter: {
180 },
181
182 // - custom_initial
183 // - custom_inherit
184 // - custom_value
185 // - custom_all
186 // Handlers of the given types will be declared but not defined. Setting
187 // custom_all is equivalent to setting the other three flags
188 custom_all: {
189 default: false,
190 valid_type: "bool",
191 },
192 custom_initial: {
193 default: false,
194 valid_type: "bool",
195 },
196 custom_inherit: {
197 default: false,
198 valid_type: "bool",
199 },
200 custom_value: {
201 default: false,
202 valid_type: "bool",
203 },
204
205 // - use_handlers_for: "CSSPropertyTransform"
206 // Use handlers for the specified property instead of defining new ones
207 use_handlers_for: {
208 },
209
210 // - builder_skip
211 // Ignore this property in the StyleBuilder
212 builder_skip: {
213 default: false,
214 valid_type: "bool",
215 },
216
217 // - direction_aware
218 // This property resolves to a different property based on the current direc tion
219 // and writing mode.
220 direction_aware: {
221 default: false,
222 valid_type: "bool",
223 },
224
225 // - priority: "High"
226 // The priority level for computing the property. Valid values are
227 // "Animation" (highest), "High" and "Low". Properties with the same
228 // priority level are grouped and computed in alphabetical order. The
229 // default value is "Low".
230 priority: {
231 default: "Low",
232 valid_values: ["Animation", "High", "Low"],
233 },
234
235 },
236
237 data: [
238 // Properties with StyleBuilder handling
239
240 // Animation Priority properties
241 {
242 name: "animation-delay",
243 custom_all: true,
244 priority: "Animation",
245 },
246 {
247 name: "animation-direction",
248 custom_all: true,
249 keywords: ["normal", "reverse", "alternate", "alternate-reverse"],
250 priority: "Animation",
251 repeated: true,
252 },
253 {
254 name: "animation-duration",
255 custom_all: true,
256 priority: "Animation",
257 },
258 {
259 name: "animation-fill-mode",
260 custom_all: true,
261 priority: "Animation",
262 },
263 {
264 name: "animation-iteration-count",
265 custom_all: true,
266 keywords: ["infinite"],
267 priority: "Animation",
268 repeated: true,
269 },
270 {
271 name: "animation-name",
272 custom_all: true,
273 priority: "Animation",
274 },
275 {
276 name: "animation-play-state",
277 custom_all: true,
278 priority: "Animation",
279 },
280 {
281 name: "animation-timing-function",
282 custom_all: true,
283 priority: "Animation",
284 },
285 {
286 name: "transition-delay",
287 custom_all: true,
288 priority: "Animation",
289 },
290 {
291 name: "transition-duration",
292 custom_all: true,
293 priority: "Animation",
294 },
295 {
296 name: "transition-property",
297 custom_all: true,
298 priority: "Animation",
299 },
300 {
301 name: "transition-timing-function",
302 custom_all: true,
303 priority: "Animation",
304 },
305
306 // High Priority and all other font properties.
307 // Other properties can depend upon high priority properties (e.g. font-size / ems)
308 {
309 name: "color",
310 custom_all: true,
311 inherited: true,
312 interpolable: true,
313 priority: "High",
314 },
315 {
316 name: "direction",
317 custom_value: true,
318 field_storage_type: "platform/text/TextDirection",
319 inherited: true,
320 initial_keyword: "ltr",
321 keyword_only: true,
322 keywords: ["ltr", "rtl"],
323 priority: "High",
324 },
325 {
326 name: "font-family",
327 converter: "convertFontFamily",
328 font: true,
329 inherited: true,
330 name_for_methods: "FamilyDescription",
331 priority: "High",
332 type_name: "FontDescription::FamilyDescription",
333 },
334 {
335 name: "font-kerning",
336 font: true,
337 inherited: true,
338 name_for_methods: "Kerning",
339 priority: "High",
340 type_name: "FontDescription::Kerning",
341 },
342 {
343 name: "font-size",
344 converter: "convertFontSize",
345 font: true,
346 getter: "getSize",
347 inherited: true,
348 interpolable: true,
349 name_for_methods: "Size",
350 priority: "High",
351 },
352 {
353 name: "font-size-adjust",
354 api_class: true,
355 converter: "convertFontSizeAdjust",
356 font: true,
357 inherited: true,
358 interpolable: true,
359 name_for_methods: "SizeAdjust",
360 priority: "High",
361 runtime_flag: "CSSFontSizeAdjust",
362 },
363 {
364 name: "font-stretch",
365 font: true,
366 inherited: true,
367 name_for_methods: "Stretch",
368 priority: "High",
369 type_name: "FontStretch",
370 },
371 {
372 name: "font-style",
373 font: true,
374 inherited: true,
375 name_for_methods: "Style",
376 priority: "High",
377 type_name: "FontStyle",
378 },
379 {
380 name: "font-variant-ligatures",
381 api_class: true,
382 converter: "convertFontVariantLigatures",
383 font: true,
384 inherited: true,
385 name_for_methods: "VariantLigatures",
386 priority: "High",
387 type_name: "VariantLigatures",
388 },
389 {
390 name: "font-variant-caps",
391 api_class: true,
392 converter: "convertFontVariantCaps",
393 font: true,
394 inherited: true,
395 name_for_methods: "VariantCaps",
396 priority: "High",
397 },
398 {
399 name: "font-variant-numeric",
400 api_class: true,
401 converter: "convertFontVariantNumeric",
402 font: true,
403 inherited: true,
404 name_for_methods: "VariantNumeric",
405 priority: "High",
406 },
407 {
408 name: "font-weight",
409 converter: "convertFontWeight",
410 font: true,
411 inherited: true,
412 interpolable: true,
413 name_for_methods: "Weight",
414 priority: "High",
415 type_name: "FontWeight",
416 },
417 {
418 name: "font-feature-settings",
419 converter: "convertFontFeatureSettings",
420 font: true,
421 inherited: true,
422 name_for_methods: "FeatureSettings",
423 priority: "High",
424 },
425 {
426 name: "font-variation-settings",
427 api_class: true,
428 converter: "convertFontVariationSettings",
429 font: true,
430 inherited: true,
431 name_for_methods: "VariationSettings",
432 priority: "High",
433 runtime_flag: "CSSVariableFonts",
434 },
435 {
436 name: "-webkit-font-smoothing",
437 font: true,
438 inherited: true,
439 priority: "High",
440 type_name: "FontSmoothingMode",
441 },
442 {
443 name: "-webkit-locale",
444 custom_value: true,
445 font: true,
446 inherited: true,
447 priority: "High",
448 },
449 {
450 name: "text-orientation",
451 custom_value: true,
452 inherited: true,
453 priority: "High",
454 type_name: "TextOrientation",
455 },
456 {
457 name: "-webkit-text-orientation",
458 custom_value: true,
459 inherited: true,
460 priority: "High",
461 type_name: "TextOrientation",
462 },
463 {
464 name: "writing-mode",
465 custom_value: true,
466 field_storage_type: "platform/text/WritingMode",
467 inherited: true,
468 initial_keyword: "horizontal-tb",
469 keyword_only: true,
470 keywords: ["horizontal-tb", "vertical-rl", "vertical-lr"],
471 priority: "High",
472 type_name: "WritingMode",
473 },
474 {
475 name: "-webkit-writing-mode",
476 custom_value: true,
477 inherited: true,
478 priority: "High",
479 type_name: "WritingMode",
480 },
481 {
482 name: "text-rendering",
483 font: true,
484 inherited: true,
485 priority: "High",
486 type_name: "TextRenderingMode",
487 },
488 {
489 name: "zoom",
490 api_class: true,
491 custom_all: true,
492 priority: "High",
493 },
494
495 {
496 name: "align-content",
497 converter: "convertContentAlignmentData",
498 initial: "initialContentAlignment",
499 },
500 {
501 name: "align-items",
502 converter: "convertSelfOrDefaultAlignmentData",
503 initial: "initialDefaultAlignment",
504 },
505 {
506 name: "alignment-baseline",
507 svg: true,
508 },
509 {
510 name: "align-self",
511 converter: "convertSelfOrDefaultAlignmentData",
512 initial: "initialSelfAlignment",
513 },
514 {
515 name: "backdrop-filter",
516 converter: "convertFilterOperations",
517 interpolable: true,
518 runtime_flag: "CSSBackdropFilter",
519 },
520 "backface-visibility",
521 {
522 name: "background-attachment",
523 custom_all: true,
524 },
525 {
526 name: "background-blend-mode",
527 custom_all: true,
528 },
529 {
530 name: "background-clip",
531 custom_all: true,
532 },
533 {
534 name: "background-color",
535 custom_all: true,
536 interpolable: true,
537 },
538 {
539 name: "background-image",
540 custom_all: true,
541 interpolable: true,
542 keywords: ["auto"],
543 typedom_types: ["Image"],
544 },
545 {
546 name: "background-origin",
547 custom_all: true,
548 },
549 {
550 name: "background-position-x",
551 custom_all: true,
552 interpolable: true,
553 },
554 {
555 name: "background-position-y",
556 custom_all: true,
557 interpolable: true,
558 },
559 {
560 name: "background-repeat-x",
561 custom_all: true,
562 },
563 {
564 name: "background-repeat-y",
565 custom_all: true,
566 },
567 {
568 name: "background-size",
569 custom_all: true,
570 interpolable: true,
571 },
572 {
573 name: "baseline-shift",
574 custom_inherit: true,
575 custom_value: true,
576 interpolable: true,
577 svg: true,
578 },
579 {
580 name: "border-bottom-color",
581 custom_all: true,
582 interpolable: true,
583 },
584 {
585 name: "border-bottom-left-radius",
586 api_class: "CSSPropertyAPIBorderRadius",
587 converter: "convertRadius",
588 initial: "initialBorderRadius",
589 interpolable: true,
590 },
591 {
592 name: "border-bottom-right-radius",
593 api_class: "CSSPropertyAPIBorderRadius",
594 converter: "convertRadius",
595 initial: "initialBorderRadius",
596 interpolable: true,
597 },
598 {
599 name: "border-bottom-style",
600 initial: "initialBorderStyle",
601 type_name: "EBorderStyle",
602 },
603 {
604 name: "border-bottom-width",
605 converter: "convertLineWidth<unsigned>",
606 initial: "initialBorderWidth",
607 interpolable: true,
608 },
609 {
610 name: "border-collapse",
611 independent: true,
612 inherited: true,
613 initial_keyword: "separate",
614 keyword_only: true,
615 keywords: ["separate", "collapse"],
616 },
617 {
618 name: "border-image-outset",
619 custom_all: true,
620 interpolable: true,
621 },
622 {
623 name: "border-image-repeat",
624 custom_all: true,
625 },
626 {
627 name: "border-image-slice",
628 custom_all: true,
629 interpolable: true,
630 },
631 {
632 name: "border-image-source",
633 api_class: "CSSPropertyAPIImage",
634 custom_value: true,
635 interpolable: true,
636 keywords: ["none"],
637 typedom_types: ["Image"],
638 },
639 {
640 name: "border-image-width",
641 custom_all: true,
642 interpolable: true,
643 },
644 {
645 name: "border-left-color",
646 custom_all: true,
647 interpolable: true,
648 },
649 {
650 name: "border-left-style",
651 initial: "initialBorderStyle",
652 type_name: "EBorderStyle",
653 },
654 {
655 name: "border-left-width",
656 converter: "convertLineWidth<unsigned>",
657 initial: "initialBorderWidth",
658 interpolable: true,
659 },
660 {
661 name: "border-right-color",
662 custom_all: true,
663 interpolable: true,
664 },
665 {
666 name: "border-right-style",
667 initial: "initialBorderStyle",
668 type_name: "EBorderStyle",
669 },
670 {
671 name: "border-right-width",
672 converter: "convertLineWidth<unsigned>",
673 initial: "initialBorderWidth",
674 interpolable: true,
675 },
676 {
677 name: "border-top-color",
678 custom_all: true,
679 interpolable: true,
680 },
681 {
682 name: "border-top-left-radius",
683 api_class: "CSSPropertyAPIBorderRadius",
684 converter: "convertRadius",
685 initial: "initialBorderRadius",
686 interpolable: true,
687 },
688 {
689 name: "border-top-right-radius",
690 api_class: "CSSPropertyAPIBorderRadius",
691 converter: "convertRadius",
692 initial: "initialBorderRadius",
693 interpolable: true,
694 },
695 {
696 name: "border-top-style",
697 initial: "initialBorderStyle",
698 type_name: "EBorderStyle",
699 },
700 {
701 name: "border-top-width",
702 converter: "convertLineWidth<unsigned>",
703 initial: "initialBorderWidth",
704 interpolable: true,
705 keywords: ["thin", "medium", "thick"],
706 supports_percentage: true,
707 typedom_types: ["Length"],
708 },
709 {
710 name: "bottom",
711 converter: "convertLengthOrAuto",
712 initial: "initialOffset",
713 interpolable: true,
714 keywords: ["auto"],
715 supports_percentage: true,
716 typedom_types: ["Length"],
717 },
718 {
719 name: "box-shadow",
720 converter: "convertShadowList",
721 interpolable: true,
722 },
723 "box-sizing",
724 {
725 name: "break-after",
726 type_name: "EBreak",
727 },
728 {
729 name: "break-before",
730 type_name: "EBreak",
731 },
732 {
733 name: "break-inside",
734 type_name: "EBreak",
735 },
736 {
737 name: "buffered-rendering",
738 svg: true,
739 },
740 {
741 name: "caption-side",
742 independent: true,
743 inherited: true,
744 initial_keyword: "top",
745 keyword_only: true,
746 keywords: ["top", "bottom", "left", "right"],
747 },
748 {
749 name: "caret-color",
750 api_class: true,
751 custom_all: true,
752 inherited: true,
753 interpolable: true,
754 },
755 "clear",
756 {
757 name: "clip",
758 api_class: true,
759 converter: "convertClip",
760 custom_all: true,
761 interpolable: true,
762 },
763 {
764 name: "clip-path",
765 api_class: true,
766 converter: "convertClipPath",
767 interpolable: true,
768 },
769 {
770 name: "clip-rule",
771 inherited: true,
772 svg: true,
773 type_name: "WindRule",
774 },
775 {
776 name: "color-interpolation",
777 inherited: true,
778 svg: true,
779 },
780 {
781 name: "color-interpolation-filters",
782 inherited: true,
783 svg: true,
784 type_name: "EColorInterpolation",
785 },
786 {
787 name: "color-rendering",
788 inherited: true,
789 svg: true,
790 },
791 {
792 name: "column-fill",
793 type_name: "ColumnFill",
794 },
795 {
796 name: "contain",
797 api_class: true,
798 converter: "convertFlags<Containment>",
799 runtime_flag: "CSSContainment",
800 },
801 {
802 name: "content",
803 api_class: true,
804 custom_all: true,
805 repeated: true,
806 typedom_types: ["Image"],
807 },
808 {
809 name: "counter-increment",
810 custom_all: true,
811 },
812 {
813 name: "counter-reset",
814 custom_all: true,
815 },
816 {
817 name: "cursor",
818 api_class: true,
819 custom_all: true,
820 inherited: true,
821 },
822 {
823 name: "cx",
824 converter: "convertLength",
825 interpolable: true,
826 svg: true,
827 },
828 {
829 name: "cy",
830 converter: "convertLength",
831 interpolable: true,
832 svg: true,
833 },
834 {
835 name: "d",
836 converter: "convertPathOrNone",
837 interpolable: true,
838 svg: true,
839 },
840 "display",
841 {
842 name: "dominant-baseline",
843 inherited: true,
844 svg: true,
845 },
846 {
847 name: "empty-cells",
848 independent: true,
849 inherited: true,
850 initial_keyword: "show",
851 keyword_only: true,
852 keywords: ["show", "hide"],
853 type_name: "EEmptyCells",
854 },
855 {
856 name: "fill",
857 api_class: "CSSPropertyAPIPaintStroke",
858 custom_all: true,
859 inherited: true,
860 interpolable: true,
861 setter: "setFillPaint",
862 svg: true,
863 },
864 {
865 name: "fill-opacity",
866 api_class: "CSSPropertyAPIOpacity",
867 converter: "convertNumberOrPercentage",
868 inherited: true,
869 interpolable: true,
870 svg: true,
871 },
872 {
873 name: "fill-rule",
874 inherited: true,
875 svg: true,
876 type_name: "WindRule",
877 },
878 {
879 name: "filter",
880 converter: "convertFilterOperations",
881 interpolable: true,
882 },
883 {
884 name: "flex-basis",
885 api_class: true,
886 converter: "convertLengthOrAuto",
887 interpolable: true,
888 },
889 "flex-direction",
890 {
891 name: "flex-grow",
892 interpolable: true,
893 type_name: "float",
894 },
895 {
896 name: "flex-shrink",
897 interpolable: true,
898 type_name: "float",
899 },
900 "flex-wrap",
901 {
902 name: "float",
903 initial_keyword: "none",
904 keyword_only: true,
905 keywords: ["none", "left", "right"],
906 name_for_methods: "Floating",
907 type_name: "EFloat",
908 },
909 {
910 name: "flood-color",
911 api_class: "CSSPropertyAPIColor",
912 converter: "convertColor",
913 interpolable: true,
914 svg: true,
915 },
916 {
917 name: "flood-opacity",
918 api_class: "CSSPropertyAPIOpacity",
919 converter: "convertNumberOrPercentage",
920 interpolable: true,
921 svg: true,
922 },
923 {
924 name: "grid-auto-columns",
925 converter: "convertGridTrackSizeList",
926 runtime_flag: "CSSGridLayout",
927 },
928 {
929 name: "grid-auto-flow",
930 api_class: true,
931 converter: "convertGridAutoFlow",
932 runtime_flag: "CSSGridLayout",
933 type_name: "GridAutoFlow",
934 },
935 {
936 name: "grid-auto-rows",
937 converter: "convertGridTrackSizeList",
938 runtime_flag: "CSSGridLayout",
939 },
940 {
941 name: "grid-column-end",
942 converter: "convertGridPosition",
943 runtime_flag: "CSSGridLayout",
944 },
945 {
946 name: "grid-column-gap",
947 converter: "convertLength",
948 runtime_flag: "CSSGridLayout",
949 },
950 {
951 name: "grid-column-start",
952 converter: "convertGridPosition",
953 runtime_flag: "CSSGridLayout",
954 },
955 {
956 name: "grid-row-end",
957 converter: "convertGridPosition",
958 runtime_flag: "CSSGridLayout",
959 },
960 {
961 name: "grid-row-gap",
962 converter: "convertLength",
963 runtime_flag: "CSSGridLayout",
964 },
965 {
966 name: "grid-row-start",
967 converter: "convertGridPosition",
968 runtime_flag: "CSSGridLayout",
969 },
970 {
971 name: "grid-template-areas",
972 custom_all: true,
973 runtime_flag: "CSSGridLayout",
974 },
975 {
976 name: "grid-template-columns",
977 custom_all: true,
978 runtime_flag: "CSSGridLayout",
979 },
980 {
981 name: "grid-template-rows",
982 custom_all: true,
983 runtime_flag: "CSSGridLayout",
984 },
985 {
986 name: "height",
987 converter: "convertLengthSizing",
988 initial: "initialSize",
989 interpolable: true,
990 keywords: ["auto"],
991 supports_percentage: true,
992 typedom_types: ["Length"],
993 },
994 {
995 name: "hyphens",
996 inherited: true,
997 runtime_flag: "CSSHyphens",
998 type_name: "Hyphens",
999 },
1000 {
1001 name: "image-rendering",
1002 inherited: true,
1003 },
1004 {
1005 name: "image-orientation",
1006 api_class: true,
1007 converter: "convertImageOrientation",
1008 inherited: true,
1009 name_for_methods: "RespectImageOrientation",
1010 runtime_flag: "ImageOrientation",
1011 },
1012 "isolation",
1013 {
1014 name: "justify-content",
1015 converter: "convertContentAlignmentData",
1016 initial: "initialContentAlignment",
1017 },
1018 {
1019 name: "justify-items",
1020 converter: "convertSelfOrDefaultAlignmentData",
1021 initial: "initialSelfAlignment",
1022 runtime_flag: "CSSGridLayout",
1023 },
1024 {
1025 name: "justify-self",
1026 converter: "convertSelfOrDefaultAlignmentData",
1027 initial: "initialSelfAlignment",
1028 runtime_flag: "CSSGridLayout",
1029 },
1030 {
1031 name: "left",
1032 converter: "convertLengthOrAuto",
1033 initial: "initialOffset",
1034 interpolable: true,
1035 keywords: ["auto"],
1036 supports_percentage: true,
1037 typedom_types: ["Length"],
1038 },
1039 {
1040 name: "letter-spacing",
1041 api_class: "CSSPropertyAPILetterAndWordSpacing",
1042 converter: "convertSpacing",
1043 inherited: true,
1044 initial: "initialLetterWordSpacing",
1045 interpolable: true,
1046 },
1047 {
1048 name: "lighting-color",
1049 api_class: "CSSPropertyAPIColor",
1050 converter: "convertColor",
1051 interpolable: true,
1052 svg: true,
1053 },
1054 {
1055 name: "line-height",
1056 converter: "convertLineHeight",
1057 getter: "specifiedLineHeight",
1058 inherited: true,
1059 interpolable: true,
1060 },
1061 {
1062 name: "list-style-image",
1063 api_class: "CSSPropertyAPIImage",
1064 custom_value: true,
1065 inherited: true,
1066 interpolable: true,
1067 typedom_types: ["Image"],
1068 },
1069 {
1070 name: "list-style-position",
1071 independent: true,
1072 inherited: true,
1073 initial_keyword: "outside",
1074 keyword_only: true,
1075 keywords: ["outside", "inside"],
1076 },
1077 {
1078 name: "list-style-type",
1079 inherited: true,
1080 initial_keyword: "disc",
1081 keyword_only: true,
1082 keywords: [
1083 "disc", "circle", "square", "decimal", "decimal-leading-zero", "arabic-i ndic", "bengali", "cambodian", "khmer", "devanagari", "gujarati", "gurmukhi", "k annada", "lao", "malayalam", "mongolian", "myanmar", "oriya", "persian", "urdu", "telugu", "tibetan", "thai", "lower-roman", "upper-roman", "lower-greek", "lowe r-alpha", "lower-latin", "upper-alpha", "upper-latin", "cjk-earthly-branch", "cj k-heavenly-stem", "ethiopic-halehame", "ethiopic-halehame-am", "ethiopic-haleham e-ti-er", "ethiopic-halehame-ti-et", "hangul", "hangul-consonant", "korean-hangu l-formal", "korean-hanja-formal", "korean-hanja-informal", "hebrew", "armenian", "lower-armenian", "upper-armenian", "georgian", "cjk-ideographic", "simp-chines e-formal", "simp-chinese-informal", "trad-chinese-formal", "trad-chinese-informa l", "hiragana", "katakana", "hiragana-iroha", "katakana-iroha", "none",
1084 ],
1085 },
1086 {
1087 name: "margin-bottom",
1088 converter: "convertQuirkyLength",
1089 initial: "initialMargin",
1090 interpolable: true,
1091 },
1092 {
1093 name: "margin-left",
1094 converter: "convertQuirkyLength",
1095 initial: "initialMargin",
1096 interpolable: true,
1097 },
1098 {
1099 name: "margin-right",
1100 converter: "convertQuirkyLength",
1101 initial: "initialMargin",
1102 interpolable: true,
1103 },
1104 {
1105 name: "margin-top",
1106 converter: "convertQuirkyLength",
1107 initial: "initialMargin",
1108 interpolable: true,
1109 },
1110 {
1111 name: "marker-end",
1112 converter: "convertFragmentIdentifier",
1113 inherited: true,
1114 name_for_methods: "MarkerEndResource",
1115 svg: true,
1116 },
1117 {
1118 name: "marker-mid",
1119 converter: "convertFragmentIdentifier",
1120 inherited: true,
1121 name_for_methods: "MarkerMidResource",
1122 svg: true,
1123 },
1124 {
1125 name: "marker-start",
1126 converter: "convertFragmentIdentifier",
1127 inherited: true,
1128 name_for_methods: "MarkerStartResource",
1129 svg: true,
1130 },
1131 {
1132 name: "mask",
1133 converter: "convertFragmentIdentifier",
1134 name_for_methods: "MaskerResource",
1135 svg: true,
1136 },
1137 {
1138 name: "mask-source-type",
1139 custom_all: true,
1140 runtime_flag: "CSSMaskSourceType",
1141 },
1142 {
1143 name: "mask-type",
1144 svg: true,
1145 },
1146 {
1147 name: "max-height",
1148 converter: "convertLengthMaxSizing",
1149 initial: "initialMaxSize",
1150 interpolable: true,
1151 },
1152 {
1153 name: "max-width",
1154 converter: "convertLengthMaxSizing",
1155 initial: "initialMaxSize",
1156 interpolable: true,
1157 },
1158 {
1159 name: "min-height",
1160 converter: "convertLengthSizing",
1161 initial: "initialMinSize",
1162 interpolable: true,
1163 },
1164 {
1165 name: "min-width",
1166 converter: "convertLengthSizing",
1167 initial: "initialMinSize",
1168 interpolable: true,
1169 },
1170 {
1171 name: "mix-blend-mode",
1172 name_for_methods: "BlendMode",
1173 type_name: "blink::WebBlendMode",
1174 },
1175 {
1176 name: "motion-offset",
1177 alias_for: "offset-distance",
1178 },
1179 {
1180 name: "motion-path",
1181 alias_for: "offset-path",
1182 },
1183 {
1184 name: "motion-rotation",
1185 alias_for: "offset-rotation",
1186 },
1187 {
1188 name: "object-fit",
1189 type_name: "ObjectFit",
1190 },
1191 {
1192 name: "object-position",
1193 converter: "convertPosition",
1194 interpolable: true,
1195 },
1196 {
1197 name: "offset-anchor",
1198 converter: "convertPositionOrAuto",
1199 interpolable: true,
1200 runtime_flag: "CSSOffsetPositionAnchor",
1201 },
1202 {
1203 name: "offset-distance",
1204 converter: "convertLength",
1205 interpolable: true,
1206 },
1207 {
1208 name: "offset-path",
1209 converter: "convertPathOrNone",
1210 },
1211 {
1212 name: "offset-position",
1213 api_class: true,
1214 converter: "convertPositionOrAuto",
1215 interpolable: true,
1216 runtime_flag: "CSSOffsetPositionAnchor",
1217 },
1218 {
1219 name: "offset-rotate",
1220 converter: "convertOffsetRotate",
1221 interpolable: true,
1222 runtime_flag: "CSSOffsetRotate",
1223 },
1224 {
1225 name: "offset-rotation",
1226 converter: "convertOffsetRotate",
1227 interpolable: true,
1228 runtime_flag: "CSSOffsetRotation",
1229 },
1230 {
1231 name: "opacity",
1232 api_class: "CSSPropertyAPIOpacity",
1233 interpolable: true,
1234 type_name: "float",
1235 },
1236 {
1237 name: "order",
1238 api_class: true,
1239 type_name: "int",
1240 },
1241 {
1242 name: "orphans",
1243 inherited: true,
1244 interpolable: true,
1245 type_name: "short",
1246 },
1247 {
1248 name: "outline-color",
1249 api_class: true,
1250 custom_all: true,
1251 interpolable: true,
1252 },
1253 {
1254 name: "outline-offset",
1255 api_class: true,
1256 converter: "convertComputedLength<int>",
1257 interpolable: true,
1258 },
1259 {
1260 name: "outline-style",
1261 custom_all: true,
1262 },
1263 {
1264 name: "outline-width",
1265 api_class: true,
1266 converter: "convertLineWidth<unsigned short>",
1267 interpolable: true,
1268 },
1269 {
1270 name: "overflow-anchor",
1271 runtime_flag: "ScrollAnchoring",
1272 type_name: "EOverflowAnchor",
1273 },
1274 {
1275 name: "overflow-wrap",
1276 inherited: true,
1277 },
1278 {
1279 name: "overflow-x",
1280 type_name: "EOverflow",
1281 },
1282 {
1283 name: "overflow-y",
1284 type_name: "EOverflow",
1285 },
1286 {
1287 name: "padding-bottom",
1288 api_class: "CSSPropertyAPIPadding",
1289 converter: "convertLength",
1290 initial: "initialPadding",
1291 interpolable: true,
1292 },
1293 {
1294 name: "padding-left",
1295 api_class: "CSSPropertyAPIPadding",
1296 converter: "convertLength",
1297 initial: "initialPadding",
1298 interpolable: true,
1299 },
1300 {
1301 name: "padding-right",
1302 api_class: "CSSPropertyAPIPadding",
1303 converter: "convertLength",
1304 initial: "initialPadding",
1305 interpolable: true,
1306 },
1307 {
1308 name: "padding-top",
1309 api_class: "CSSPropertyAPIPadding",
1310 converter: "convertLength",
1311 initial: "initialPadding",
1312 interpolable: true,
1313 },
1314 {
1315 name: "paint-order",
1316 api_class: true,
1317 converter: "convertPaintOrder",
1318 inherited: true,
1319 svg: true,
1320 },
1321 {
1322 name: "perspective",
1323 converter: "convertPerspective",
1324 interpolable: true,
1325 },
1326 {
1327 name: "perspective-origin",
1328 converter: "convertPosition",
1329 interpolable: true,
1330 },
1331 {
1332 name: "pointer-events",
1333 independent: true,
1334 inherited: true,
1335 initial_keyword: "auto",
1336 keyword_only: true,
1337 keywords: [
1338 "none", "auto", "stroke", "fill", "painted", "visible", "visibleStroke", "visibleFill", "visiblePainted", "bounding-box", "all",
1339 ],
1340 },
1341 {
1342 name: "position",
1343 custom_inherit: true,
1344 },
1345 {
1346 name: "quotes",
1347 api_class: true,
1348 converter: "convertQuotes",
1349 inherited: true,
1350 },
1351 {
1352 name: "resize",
1353 custom_value: true,
1354 },
1355 {
1356 name: "right",
1357 converter: "convertLengthOrAuto",
1358 initial: "initialOffset",
1359 interpolable: true,
1360 keywords: ["auto"],
1361 supports_percentage: true,
1362 typedom_types: ["Length"],
1363 },
1364 {
1365 name: "r",
1366 converter: "convertLength",
1367 interpolable: true,
1368 svg: true,
1369 },
1370 {
1371 name: "rx",
1372 api_class: "CSSPropertyAPIRadius",
1373 converter: "convertLengthOrAuto",
1374 interpolable: true,
1375 svg: true,
1376 },
1377 {
1378 name: "ry",
1379 api_class: "CSSPropertyAPIRadius",
1380 converter: "convertLengthOrAuto",
1381 interpolable: true,
1382 svg: true,
1383 },
1384 {
1385 name: "scroll-behavior",
1386 runtime_flag: "CSSOMSmoothScroll",
1387 type_name: "ScrollBehavior",
1388 },
1389 {
1390 name: "scroll-snap-type",
1391 runtime_flag: "CSSScrollSnapPoints",
1392 type_name: "ScrollSnapType",
1393 },
1394 {
1395 name: "scroll-snap-points-x",
1396 converter: "convertSnapPoints",
1397 runtime_flag: "CSSScrollSnapPoints",
1398 },
1399 {
1400 name: "scroll-snap-points-y",
1401 converter: "convertSnapPoints",
1402 runtime_flag: "CSSScrollSnapPoints",
1403 },
1404 {
1405 name: "scroll-snap-destination",
1406 converter: "convertPosition",
1407 runtime_flag: "CSSScrollSnapPoints",
1408 },
1409 {
1410 name: "scroll-snap-coordinate",
1411 api_class: true,
1412 converter: "convertSnapCoordinates",
1413 runtime_flag: "CSSScrollSnapPoints",
1414 },
1415 {
1416 name: "shape-image-threshold",
1417 api_class: true,
1418 interpolable: true,
1419 type_name: "float",
1420 },
1421 {
1422 name: "shape-margin",
1423 api_class: true,
1424 converter: "convertLength",
1425 interpolable: true,
1426 },
1427 {
1428 name: "shape-outside",
1429 api_class: true,
1430 converter: "convertShapeValue",
1431 interpolable: true,
1432 typedom_types: ["Image"],
1433 },
1434 {
1435 name: "shape-rendering",
1436 inherited: true,
1437 svg: true,
1438 },
1439 {
1440 name: "size",
1441 api_class: true,
1442 custom_all: true,
1443 },
1444 {
1445 name: "snap-height",
1446 api_class: true,
1447 custom_all: true,
1448 inherited: true,
1449 runtime_flag: "CSSSnapSize",
1450 },
1451 {
1452 name: "speak",
1453 inherited: true,
1454 },
1455 {
1456 name: "stop-color",
1457 api_class: "CSSPropertyAPIColor",
1458 converter: "convertColor",
1459 interpolable: true,
1460 svg: true,
1461 },
1462 {
1463 name: "stop-opacity",
1464 api_class: "CSSPropertyAPIOpacity",
1465 converter: "convertNumberOrPercentage",
1466 interpolable: true,
1467 svg: true,
1468 },
1469 {
1470 name: "stroke",
1471 api_class: "CSSPropertyAPIPaintStroke",
1472 custom_all: true,
1473 inherited: true,
1474 interpolable: true,
1475 setter: "setStrokePaint",
1476 svg: true,
1477 },
1478 {
1479 name: "stroke-dasharray",
1480 api_class: true,
1481 converter: "convertStrokeDasharray",
1482 inherited: true,
1483 interpolable: true,
1484 name_for_methods: "StrokeDashArray",
1485 svg: true,
1486 },
1487 {
1488 name: "stroke-dashoffset",
1489 converter: "convertLength",
1490 inherited: true,
1491 interpolable: true,
1492 name_for_methods: "StrokeDashOffset",
1493 svg: true,
1494 },
1495 {
1496 name: "stroke-linecap",
1497 inherited: true,
1498 name_for_methods: "CapStyle",
1499 svg: true,
1500 type_name: "LineCap",
1501 },
1502 {
1503 name: "stroke-linejoin",
1504 inherited: true,
1505 name_for_methods: "JoinStyle",
1506 svg: true,
1507 type_name: "LineJoin",
1508 },
1509 {
1510 name: "stroke-miterlimit",
1511 api_class: true,
1512 inherited: true,
1513 interpolable: true,
1514 name_for_methods: "StrokeMiterLimit",
1515 svg: true,
1516 type_name: "float",
1517 },
1518 {
1519 name: "stroke-opacity",
1520 api_class: "CSSPropertyAPIOpacity",
1521 converter: "convertNumberOrPercentage",
1522 inherited: true,
1523 interpolable: true,
1524 svg: true,
1525 },
1526 {
1527 name: "stroke-width",
1528 converter: "convertUnzoomedLength",
1529 inherited: true,
1530 interpolable: true,
1531 svg: true,
1532 },
1533 "table-layout",
1534 {
1535 name: "tab-size",
1536 api_class: true,
1537 converter: "convertLengthOrTabSpaces",
1538 inherited: true,
1539 type_name: "TabSize",
1540 },
1541 {
1542 name: "text-align",
1543 custom_value: true,
1544 inherited: true,
1545 initial_keyword: "start",
1546 keyword_only: true,
1547 keywords: [
1548 "left", "right", "center", "justify", "webkitLeft", "webkitRight", "webk itCenter", "start", "end",
1549 ],
1550 },
1551 {
1552 name: "text-align-last",
1553 inherited: true,
1554 type_name: "TextAlignLast",
1555 },
1556 {
1557 name: "text-anchor",
1558 inherited: true,
1559 svg: true,
1560 },
1561 {
1562 name: "text-combine-upright",
1563 inherited: true,
1564 name_for_methods: "TextCombine",
1565 type_name: "TextCombine",
1566 },
1567 // FIXME: We shouldn't switch between shorthand/not shorthand based on a run time flag
1568 {
1569 name: "text-decoration",
1570 longhands: "text-decoration-line;text-decoration-style;text-decoration-col or",
1571 use_handlers_for: "CSSPropertyTextDecorationLine",
1572 },
1573 {
1574 name: "text-decoration-color",
1575 api_class: true,
1576 custom_all: true,
1577 interpolable: true,
1578 runtime_flag: "CSS3TextDecorations",
1579 },
1580 {
1581 name: "text-decoration-line",
1582 converter: "convertFlags<TextDecoration>",
1583 name_for_methods: "TextDecoration",
1584 runtime_flag: "CSS3TextDecorations",
1585 type_name: "TextDecoration",
1586 },
1587 {
1588 name: "text-decoration-skip",
1589 api_class: true,
1590 converter: "convertFlags<TextDecorationSkip>",
1591 inherited: true,
1592 runtime_flag: "CSS3TextDecorations",
1593 type_name: "TextDecorationSkip",
1594 },
1595 {
1596 name: "text-decoration-style",
1597 runtime_flag: "CSS3TextDecorations",
1598 type_name: "TextDecorationStyle",
1599 },
1600 {
1601 name: "text-indent",
1602 api_class: true,
1603 custom_all: true,
1604 inherited: true,
1605 interpolable: true,
1606 },
1607 {
1608 name: "text-justify",
1609 inherited: true,
1610 runtime_flag: "CSS3Text",
1611 type_name: "TextJustify",
1612 },
1613 {
1614 name: "text-overflow",
1615 type_name: "TextOverflow",
1616 },
1617 {
1618 name: "text-shadow",
1619 converter: "convertShadowList",
1620 inherited: true,
1621 interpolable: true,
1622 },
1623 {
1624 name: "text-size-adjust",
1625 api_class: true,
1626 converter: "convertTextSizeAdjust",
1627 inherited: true,
1628 type_name: "TextSizeAdjust",
1629 },
1630 {
1631 name: "text-transform",
1632 independent: true,
1633 inherited: true,
1634 initial_keyword: "none",
1635 keyword_only: true,
1636 keywords: ["capitalize", "uppercase", "lowercase", "none"],
1637 },
1638 {
1639 name: "text-underline-position",
1640 api_class: true,
1641 inherited: true,
1642 runtime_flag: "CSS3TextDecorations",
1643 type_name: "TextUnderlinePosition",
1644 },
1645 {
1646 name: "top",
1647 converter: "convertLengthOrAuto",
1648 initial: "initialOffset",
1649 interpolable: true,
1650 keywords: ["auto"],
1651 supports_percentage: true,
1652 typedom_types: ["Length"],
1653 },
1654 {
1655 name: "touch-action",
1656 api_class: true,
1657 converter: "convertFlags<TouchAction>",
1658 type_name: "TouchAction",
1659 },
1660 {
1661 name: "transform",
1662 converter: "convertTransformOperations",
1663 interpolable: true,
1664 keywords: ["none"],
1665 typedom_types: ["Transform"],
1666 },
1667 {
1668 name: "transform-origin",
1669 api_class: true,
1670 converter: "convertTransformOrigin",
1671 interpolable: true,
1672 },
1673 {
1674 name: "transform-style",
1675 name_for_methods: "TransformStyle3D",
1676 },
1677 {
1678 name: "translate",
1679 api_class: true,
1680 converter: "convertTranslate",
1681 interpolable: true,
1682 runtime_flag: "CSSIndependentTransformProperties",
1683 },
1684 {
1685 name: "rotate",
1686 api_class: true,
1687 converter: "convertRotate",
1688 interpolable: true,
1689 runtime_flag: "CSSIndependentTransformProperties",
1690 },
1691 {
1692 name: "scale",
1693 api_class: true,
1694 converter: "convertScale",
1695 interpolable: true,
1696 runtime_flag: "CSSIndependentTransformProperties",
1697 },
1698 {
1699 name: "unicode-bidi",
1700 field_storage_type: "platform/text/UnicodeBidi",
1701 initial_keyword: "normal",
1702 keyword_only: true,
1703 keywords: [
1704 "normal", "embed", "bidi-override", "isolate", "plaintext", "isolate-ove rride",
1705 ],
1706 type_name: "UnicodeBidi",
1707 },
1708 {
1709 name: "vector-effect",
1710 svg: true,
1711 },
1712 {
1713 name: "vertical-align",
1714 api_class: true,
1715 custom_inherit: true,
1716 custom_value: true,
1717 interpolable: true,
1718 },
1719 {
1720 name: "visibility",
1721 independent: true,
1722 inherited: true,
1723 initial_keyword: "visible",
1724 interpolable: true,
1725 keyword_only: true,
1726 keywords: ["visible", "hidden", "collapse"],
1727 },
1728 {
1729 name: "x",
1730 converter: "convertLength",
1731 interpolable: true,
1732 svg: true,
1733 },
1734 {
1735 name: "y",
1736 converter: "convertLength",
1737 interpolable: true,
1738 svg: true,
1739 },
1740 {
1741 name: "-webkit-appearance",
1742 type_name: "ControlPart",
1743 },
1744 {
1745 name: "-webkit-app-region",
1746 custom_all: true,
1747 },
1748 {
1749 name: "-webkit-background-clip",
1750 use_handlers_for: "CSSPropertyBackgroundClip",
1751 },
1752 {
1753 name: "-webkit-background-origin",
1754 use_handlers_for: "CSSPropertyBackgroundOrigin",
1755 },
1756 {
1757 name: "-webkit-border-horizontal-spacing",
1758 converter: "convertComputedLength<short>",
1759 inherited: true,
1760 interpolable: true,
1761 name_for_methods: "HorizontalBorderSpacing",
1762 },
1763 {
1764 name: "-webkit-border-image",
1765 custom_value: true,
1766 initial: "initialNinePieceImage",
1767 },
1768 {
1769 name: "-webkit-border-vertical-spacing",
1770 converter: "convertComputedLength<short>",
1771 inherited: true,
1772 interpolable: true,
1773 name_for_methods: "VerticalBorderSpacing",
1774 },
1775 {
1776 name: "-webkit-box-align",
1777 type_name: "EBoxAlignment",
1778 },
1779 "-webkit-box-decoration-break",
1780 {
1781 name: "-webkit-box-direction",
1782 independent: true,
1783 inherited: true,
1784 initial_keyword: "normal",
1785 keyword_only: true,
1786 keywords: ["normal", "reverse"],
1787 },
1788 {
1789 name: "-webkit-box-flex",
1790 type_name: "float",
1791 },
1792 {
1793 name: "-webkit-box-flex-group",
1794 api_class: true,
1795 type_name: "unsigned int",
1796 },
1797 "-webkit-box-lines",
1798 {
1799 name: "-webkit-box-ordinal-group",
1800 type_name: "unsigned int",
1801 },
1802 "-webkit-box-orient",
1803 "-webkit-box-pack",
1804 {
1805 name: "-webkit-box-reflect",
1806 converter: "convertBoxReflect",
1807 },
1808 {
1809 name: "column-count",
1810 custom_all: true,
1811 interpolable: true,
1812 type_name: "unsigned short",
1813 },
1814 {
1815 name: "column-gap",
1816 api_class: true,
1817 converter: "convertComputedLength<float>",
1818 custom_all: true,
1819 interpolable: true,
1820 },
1821 {
1822 name: "column-rule-color",
1823 api_class: "CSSPropertyAPIColor",
1824 custom_all: true,
1825 interpolable: true,
1826 },
1827 {
1828 name: "column-rule-style",
1829 initial: "initialBorderStyle",
1830 type_name: "EBorderStyle",
1831 },
1832 {
1833 name: "column-rule-width",
1834 api_class: true,
1835 converter: "convertLineWidth<unsigned short>",
1836 interpolable: true,
1837 },
1838 {
1839 name: "column-span",
1840 api_class: true,
1841 type_name: "ColumnSpan",
1842 },
1843 {
1844 name: "column-width",
1845 converter: "convertComputedLength<float>",
1846 custom_all: true,
1847 interpolable: true,
1848 },
1849 {
1850 name: "-webkit-highlight",
1851 api_class: true,
1852 converter: "convertString<CSSValueNone>",
1853 inherited: true,
1854 },
1855 {
1856 name: "-webkit-hyphenate-character",
1857 converter: "convertString<CSSValueAuto>",
1858 inherited: true,
1859 name_for_methods: "HyphenationString",
1860 },
1861 {
1862 name: "-webkit-line-break",
1863 inherited: true,
1864 type_name: "LineBreak",
1865 },
1866 {
1867 name: "-webkit-line-clamp",
1868 api_class: true,
1869 type_name: "LineClampValue",
1870 },
1871 {
1872 name: "-webkit-margin-after-collapse",
1873 type_name: "EMarginCollapse",
1874 },
1875 {
1876 name: "-webkit-margin-before-collapse",
1877 type_name: "EMarginCollapse",
1878 },
1879 {
1880 name: "-webkit-margin-bottom-collapse",
1881 name_for_methods: "MarginAfterCollapse",
1882 type_name: "EMarginCollapse",
1883 },
1884 {
1885 name: "-webkit-margin-top-collapse",
1886 name_for_methods: "MarginBeforeCollapse",
1887 type_name: "EMarginCollapse",
1888 },
1889 {
1890 name: "-webkit-mask-box-image-outset",
1891 custom_all: true,
1892 interpolable: true,
1893 },
1894 {
1895 name: "-webkit-mask-box-image-repeat",
1896 custom_all: true,
1897 },
1898 {
1899 name: "-webkit-mask-box-image-slice",
1900 custom_all: true,
1901 interpolable: true,
1902 },
1903 {
1904 name: "-webkit-mask-box-image-source",
1905 api_class: "CSSPropertyAPIImage",
1906 custom_value: true,
1907 interpolable: true,
1908 },
1909 {
1910 name: "-webkit-mask-box-image-width",
1911 custom_all: true,
1912 interpolable: true,
1913 },
1914 {
1915 name: "-webkit-mask-clip",
1916 custom_all: true,
1917 },
1918 {
1919 name: "-webkit-mask-composite",
1920 custom_all: true,
1921 },
1922 {
1923 name: "-webkit-mask-image",
1924 custom_all: true,
1925 interpolable: true,
1926 },
1927 {
1928 name: "-webkit-mask-origin",
1929 custom_all: true,
1930 },
1931 {
1932 name: "-webkit-mask-position-x",
1933 custom_all: true,
1934 interpolable: true,
1935 },
1936 {
1937 name: "-webkit-mask-position-y",
1938 custom_all: true,
1939 interpolable: true,
1940 },
1941 {
1942 name: "-webkit-mask-repeat-x",
1943 custom_all: true,
1944 },
1945 {
1946 name: "-webkit-mask-repeat-y",
1947 custom_all: true,
1948 },
1949 {
1950 name: "-webkit-mask-size",
1951 custom_all: true,
1952 interpolable: true,
1953 },
1954 {
1955 name: "-webkit-perspective-origin-x",
1956 converter: "convertLength",
1957 interpolable: true,
1958 },
1959 {
1960 name: "-webkit-perspective-origin-y",
1961 converter: "convertLength",
1962 interpolable: true,
1963 },
1964 {
1965 name: "-webkit-print-color-adjust",
1966 independent: true,
1967 inherited: true,
1968 initial_keyword: "economy",
1969 keyword_only: true,
1970 keywords: ["economy", "exact"],
1971 },
1972 {
1973 name: "-webkit-rtl-ordering",
1974 independent: true,
1975 inherited: true,
1976 initial: "initialRtlOrdering",
1977 initial_keyword: "logical",
1978 keyword_only: true,
1979 keywords: ["logical", "visual"],
1980 setter: "setRtlOrdering",
1981 type_name: "EOrder",
1982 },
1983 {
1984 name: "-webkit-ruby-position",
1985 inherited: true,
1986 type_name: "RubyPosition",
1987 },
1988 {
1989 name: "-webkit-tap-highlight-color",
1990 api_class: "CSSPropertyAPIColor",
1991 converter: "convertColor",
1992 inherited: true,
1993 },
1994 {
1995 name: "-webkit-text-combine",
1996 inherited: true,
1997 name_for_methods: "TextCombine",
1998 type_name: "TextCombine",
1999 },
2000 {
2001 name: "-webkit-text-emphasis-color",
2002 api_class: "CSSPropertyAPIColor",
2003 custom_all: true,
2004 inherited: true,
2005 },
2006 {
2007 name: "-webkit-text-emphasis-position",
2008 inherited: true,
2009 type_name: "TextEmphasisPosition",
2010 },
2011 {
2012 name: "-webkit-text-emphasis-style",
2013 api_class: true,
2014 custom_all: true,
2015 inherited: true,
2016 },
2017 {
2018 name: "-webkit-text-fill-color",
2019 api_class: "CSSPropertyAPIColor",
2020 custom_all: true,
2021 inherited: true,
2022 },
2023 {
2024 name: "-webkit-text-security",
2025 inherited: true,
2026 },
2027 {
2028 name: "-webkit-text-stroke-color",
2029 api_class: "CSSPropertyAPIColor",
2030 custom_all: true,
2031 inherited: true,
2032 interpolable: true,
2033 },
2034 {
2035 name: "-webkit-text-stroke-width",
2036 api_class: true,
2037 converter: "convertTextStrokeWidth",
2038 inherited: true,
2039 },
2040 {
2041 name: "-webkit-transform-origin-x",
2042 converter: "convertLength",
2043 interpolable: true,
2044 },
2045 {
2046 name: "-webkit-transform-origin-y",
2047 converter: "convertLength",
2048 interpolable: true,
2049 },
2050 {
2051 name: "-webkit-transform-origin-z",
2052 api_class: true,
2053 converter: "convertComputedLength<float>",
2054 interpolable: true,
2055 },
2056 "-webkit-user-drag",
2057 {
2058 name: "-webkit-user-modify",
2059 inherited: true,
2060 },
2061 {
2062 name: "user-select",
2063 inherited: true,
2064 },
2065 {
2066 name: "white-space",
2067 independent: true,
2068 inherited: true,
2069 initial_keyword: "normal",
2070 keyword_only: true,
2071 keywords: ["normal", "pre", "pre-wrap", "pre-line", "nowrap", "-webkit-now rap"],
2072 },
2073 {
2074 name: "widows",
2075 inherited: true,
2076 interpolable: true,
2077 type_name: "short",
2078 },
2079 {
2080 name: "width",
2081 converter: "convertLengthSizing",
2082 initial: "initialSize",
2083 interpolable: true,
2084 keywords: ["auto"],
2085 supports_percentage: true,
2086 typedom_types: ["Length"],
2087 },
2088 {
2089 name: "will-change",
2090 api_class: true,
2091 custom_all: true,
2092 },
2093 {
2094 name: "word-break",
2095 inherited: true,
2096 },
2097 {
2098 name: "word-spacing",
2099 api_class: "CSSPropertyAPILetterAndWordSpacing",
2100 converter: "convertSpacing",
2101 inherited: true,
2102 initial: "initialLetterWordSpacing",
2103 interpolable: true,
2104 },
2105 // UAs must treat 'word-wrap' as an alternate name for the 'overflow-wrap' p roperty. So using the same handlers.
2106 {
2107 name: "word-wrap",
2108 inherited: true,
2109 name_for_methods: "OverflowWrap",
2110 },
2111 {
2112 name: "z-index",
2113 api_class: true,
2114 custom_all: true,
2115 interpolable: true,
2116 type_name: "int",
2117 },
2118
2119 // CSS logical props
2120 {
2121 name: "inline-size",
2122 direction_aware: true,
2123 },
2124 {
2125 name: "block-size",
2126 direction_aware: true,
2127 },
2128 {
2129 name: "min-inline-size",
2130 direction_aware: true,
2131 },
2132 {
2133 name: "min-block-size",
2134 direction_aware: true,
2135 },
2136 {
2137 name: "max-inline-size",
2138 api_class: "CSSPropertyAPIWebkitMaxLogicalWidthOrHeight",
2139 direction_aware: true,
2140 },
2141 {
2142 name: "max-block-size",
2143 api_class: "CSSPropertyAPIWebkitMaxLogicalWidthOrHeight",
2144 direction_aware: true,
2145 },
2146
2147 // Non-standard direction aware properties
2148
2149 {
2150 name: "-webkit-border-end-color",
2151 api_class: "CSSPropertyAPIColor",
2152 direction_aware: true,
2153 },
2154 {
2155 name: "-webkit-border-end-style",
2156 direction_aware: true,
2157 },
2158 {
2159 name: "-webkit-border-end-width",
2160 direction_aware: true,
2161 },
2162 {
2163 name: "-webkit-border-start-color",
2164 api_class: "CSSPropertyAPIColor",
2165 direction_aware: true,
2166 },
2167 {
2168 name: "-webkit-border-start-style",
2169 direction_aware: true,
2170 },
2171 {
2172 name: "-webkit-border-start-width",
2173 direction_aware: true,
2174 },
2175 {
2176 name: "-webkit-border-before-color",
2177 api_class: "CSSPropertyAPIColor",
2178 direction_aware: true,
2179 },
2180 {
2181 name: "-webkit-border-before-style",
2182 direction_aware: true,
2183 },
2184 {
2185 name: "-webkit-border-before-width",
2186 direction_aware: true,
2187 },
2188 {
2189 name: "-webkit-border-after-color",
2190 api_class: "CSSPropertyAPIColor",
2191 direction_aware: true,
2192 },
2193 {
2194 name: "-webkit-border-after-style",
2195 direction_aware: true,
2196 },
2197 {
2198 name: "-webkit-border-after-width",
2199 direction_aware: true,
2200 },
2201 {
2202 name: "-webkit-margin-end",
2203 direction_aware: true,
2204 },
2205 {
2206 name: "-webkit-margin-start",
2207 direction_aware: true,
2208 },
2209 {
2210 name: "-webkit-margin-before",
2211 direction_aware: true,
2212 },
2213 {
2214 name: "-webkit-margin-after",
2215 direction_aware: true,
2216 },
2217 {
2218 name: "-webkit-padding-end",
2219 api_class: "CSSPropertyAPIWebkitPadding",
2220 direction_aware: true,
2221 },
2222 {
2223 name: "-webkit-padding-start",
2224 api_class: "CSSPropertyAPIWebkitPadding",
2225 direction_aware: true,
2226 },
2227 {
2228 name: "-webkit-padding-before",
2229 api_class: "CSSPropertyAPIWebkitPadding",
2230 direction_aware: true,
2231 },
2232 {
2233 name: "-webkit-padding-after",
2234 api_class: "CSSPropertyAPIWebkitPadding",
2235 direction_aware: true,
2236 },
2237 {
2238 name: "-webkit-logical-width",
2239 direction_aware: true,
2240 },
2241 {
2242 name: "-webkit-logical-height",
2243 direction_aware: true,
2244 },
2245 {
2246 name: "-webkit-min-logical-width",
2247 direction_aware: true,
2248 },
2249 {
2250 name: "-webkit-min-logical-height",
2251 direction_aware: true,
2252 },
2253 {
2254 name: "-webkit-max-logical-width",
2255 api_class: "CSSPropertyAPIWebkitMaxLogicalWidthOrHeight",
2256 direction_aware: true,
2257 },
2258 {
2259 name: "-webkit-max-logical-height",
2260 api_class: "CSSPropertyAPIWebkitMaxLogicalWidthOrHeight",
2261 direction_aware: true,
2262 },
2263
2264 // Properties that we ignore in the StyleBuilder.
2265 // TODO(timloh): This seems wrong, most of these shouldn't reach the StyleBu ilder
2266
2267 {
2268 name: "all",
2269 builder_skip: true,
2270 },
2271 {
2272 name: "page",
2273 api_class: true,
2274 builder_skip: true,
2275 },
2276 {
2277 name: "-webkit-font-size-delta",
2278 api_class: true,
2279 builder_skip: true,
2280 },
2281 {
2282 name: "-webkit-text-decorations-in-effect",
2283 builder_skip: true,
2284 inherited: true,
2285 },
2286
2287 // Descriptors
2288
2289 {
2290 name: "font-display",
2291 descriptor_only: true,
2292 runtime_flag: "CSSFontDisplay",
2293 },
2294 {
2295 name: "max-zoom",
2296 descriptor_only: true,
2297 },
2298 {
2299 name: "min-zoom",
2300 descriptor_only: true,
2301 },
2302 {
2303 name: "orientation",
2304 descriptor_only: true,
2305 },
2306 {
2307 name: "src",
2308 descriptor_only: true,
2309 },
2310 {
2311 name: "unicode-range",
2312 descriptor_only: true,
2313 },
2314 {
2315 name: "user-zoom",
2316 descriptor_only: true,
2317 },
2318
2319 // Shorthands
2320
2321 {
2322 name: "animation",
2323 longhands: "animation-name;animation-duration;animation-timing-function;an imation-delay;animation-iteration-count;animation-direction;animation-fill-mode; animation-play-state",
2324 },
2325 {
2326 name: "background",
2327 longhands: "background-image;background-position-x;background-position-y;b ackground-size;background-repeat-x;background-repeat-y;background-attachment;bac kground-origin;background-clip;background-color",
2328 },
2329 {
2330 name: "background-position",
2331 longhands: "background-position-x;background-position-y",
2332 },
2333 {
2334 name: "background-repeat",
2335 longhands: "background-repeat-x;background-repeat-y",
2336 },
2337 {
2338 name: "border",
2339 longhands: "border-top-color;border-top-style;border-top-width;border-righ t-color;border-right-style;border-right-width;border-bottom-color;border-bottom- style;border-bottom-width;border-left-color;border-left-style;border-left-width; border-image-source;border-image-slice;border-image-width;border-image-outset;bo rder-image-repeat",
2340 },
2341 {
2342 name: "border-bottom",
2343 longhands: "border-bottom-width;border-bottom-style;border-bottom-color",
2344 },
2345 {
2346 name: "border-color",
2347 longhands: "border-top-color;border-right-color;border-bottom-color;border -left-color",
2348 },
2349 {
2350 name: "border-image",
2351 longhands: "border-image-source;border-image-slice;border-image-width;bord er-image-outset;border-image-repeat",
2352 },
2353 {
2354 name: "border-left",
2355 longhands: "border-left-width;border-left-style;border-left-color",
2356 },
2357 {
2358 name: "border-radius",
2359 longhands: "border-top-left-radius;border-top-right-radius;border-bottom-r ight-radius;border-bottom-left-radius",
2360 },
2361 {
2362 name: "border-right",
2363 longhands: "border-right-width;border-right-style;border-right-color",
2364 },
2365 {
2366 name: "border-spacing",
2367 longhands: "-webkit-border-horizontal-spacing;-webkit-border-vertical-spac ing",
2368 },
2369 {
2370 name: "border-style",
2371 longhands: "border-top-style;border-right-style;border-bottom-style;border -left-style",
2372 },
2373 {
2374 name: "border-top",
2375 longhands: "border-top-width;border-top-style;border-top-color",
2376 },
2377 {
2378 name: "border-width",
2379 longhands: "border-top-width;border-right-width;border-bottom-width;border -left-width",
2380 },
2381 {
2382 name: "flex",
2383 longhands: "flex-grow;flex-shrink;flex-basis",
2384 },
2385 {
2386 name: "flex-flow",
2387 longhands: "flex-direction;flex-wrap",
2388 },
2389 {
2390 name: "font",
2391 longhands: "font-style;font-variant-ligatures;font-variant-caps;font-varia nt-numeric;font-weight;font-stretch;font-size;line-height;font-family",
2392 },
2393 {
2394 name: "font-variant",
2395 longhands: "font-variant-ligatures;font-variant-caps;font-variant-numeric" ,
2396 },
2397 {
2398 name: "grid",
2399 longhands: "grid-template-rows;grid-template-columns;grid-template-areas;g rid-auto-flow;grid-auto-rows;grid-auto-columns;grid-column-gap;grid-row-gap",
2400 runtime_flag: "CSSGridLayout",
2401 },
2402 {
2403 name: "grid-area",
2404 longhands: "grid-row-start;grid-column-start;grid-row-end;grid-column-end" ,
2405 runtime_flag: "CSSGridLayout",
2406 },
2407 {
2408 name: "grid-column",
2409 longhands: "grid-column-start;grid-column-end",
2410 runtime_flag: "CSSGridLayout",
2411 },
2412 {
2413 name: "grid-gap",
2414 longhands: "grid-row-gap;grid-column-gap",
2415 runtime_flag: "CSSGridLayout",
2416 },
2417 {
2418 name: "grid-row",
2419 longhands: "grid-row-start;grid-row-end",
2420 runtime_flag: "CSSGridLayout",
2421 },
2422 {
2423 name: "grid-template",
2424 longhands: "grid-template-rows;grid-template-columns;grid-template-areas",
2425 runtime_flag: "CSSGridLayout",
2426 },
2427 {
2428 name: "list-style",
2429 longhands: "list-style-type;list-style-position;list-style-image",
2430 },
2431 {
2432 name: "margin",
2433 longhands: "margin-top;margin-right;margin-bottom;margin-left",
2434 },
2435 {
2436 name: "marker",
2437 longhands: "marker-start;marker-mid;marker-end",
2438 },
2439 {
2440 name: "motion",
2441 longhands: "offset-path;offset-distance;offset-rotation",
2442 },
2443 {
2444 name: "offset",
2445 longhands: "offset-path;offset-distance;offset-rotation",
2446 },
2447 {
2448 name: "outline",
2449 longhands: "outline-color;outline-style;outline-width",
2450 },
2451 {
2452 name: "overflow",
2453 longhands: "overflow-x;overflow-y",
2454 },
2455 {
2456 name: "padding",
2457 longhands: "padding-top;padding-right;padding-bottom;padding-left",
2458 },
2459 {
2460 name: "page-break-after",
2461 longhands: "break-after",
2462 },
2463 {
2464 name: "page-break-before",
2465 longhands: "break-before",
2466 },
2467 {
2468 name: "page-break-inside",
2469 longhands: "break-inside",
2470 },
2471 {
2472 name: "transition",
2473 longhands: "transition-property;transition-duration;transition-timing-func tion;transition-delay",
2474 },
2475 {
2476 name: "-webkit-border-after",
2477 longhands: "-webkit-border-after-width;-webkit-border-after-style;-webkit- border-after-color",
2478 },
2479 {
2480 name: "-webkit-border-before",
2481 longhands: "-webkit-border-before-width;-webkit-border-before-style;-webki t-border-before-color",
2482 },
2483 {
2484 name: "-webkit-border-end",
2485 longhands: "-webkit-border-end-width;-webkit-border-end-style;-webkit-bord er-end-color",
2486 },
2487 {
2488 name: "-webkit-border-start",
2489 longhands: "-webkit-border-start-width;-webkit-border-start-style;-webkit- border-start-color",
2490 },
2491 {
2492 name: "-webkit-column-break-after",
2493 longhands: "break-after",
2494 },
2495 {
2496 name: "-webkit-column-break-before",
2497 longhands: "break-before",
2498 },
2499 {
2500 name: "-webkit-column-break-inside",
2501 longhands: "break-inside",
2502 },
2503 {
2504 name: "column-rule",
2505 longhands: "column-rule-width;column-rule-style;column-rule-color",
2506 },
2507 {
2508 name: "columns",
2509 longhands: "column-width;column-count",
2510 },
2511 {
2512 name: "-webkit-margin-collapse",
2513 longhands: "-webkit-margin-before-collapse;-webkit-margin-after-collapse",
2514 },
2515 {
2516 name: "-webkit-mask",
2517 longhands: "-webkit-mask-image;-webkit-mask-position-x;-webkit-mask-positi on-y;-webkit-mask-size;-webkit-mask-repeat-x;-webkit-mask-repeat-y;-webkit-mask- origin;-webkit-mask-clip",
2518 },
2519 {
2520 name: "-webkit-mask-box-image",
2521 longhands: "-webkit-mask-box-image-source;-webkit-mask-box-image-slice;-we bkit-mask-box-image-width;-webkit-mask-box-image-outset;-webkit-mask-box-image-r epeat",
2522 },
2523 {
2524 name: "-webkit-mask-position",
2525 longhands: "-webkit-mask-position-x;-webkit-mask-position-y",
2526 },
2527 {
2528 name: "-webkit-mask-repeat",
2529 longhands: "-webkit-mask-repeat-x;-webkit-mask-repeat-y",
2530 },
2531 {
2532 name: "-webkit-text-emphasis",
2533 longhands: "-webkit-text-emphasis-style;-webkit-text-emphasis-color",
2534 },
2535 {
2536 name: "-webkit-text-stroke",
2537 longhands: "-webkit-text-stroke-width;-webkit-text-stroke-color",
2538 },
2539
2540 // Aliases; these map to the same CSSPropertyID
2541
2542 {
2543 name: "-epub-caption-side",
2544 alias_for: "caption-side",
2545 },
2546 {
2547 name: "-epub-text-combine",
2548 alias_for: "-webkit-text-combine",
2549 },
2550 {
2551 name: "-epub-text-emphasis",
2552 alias_for: "-webkit-text-emphasis",
2553 },
2554 {
2555 name: "-epub-text-emphasis-color",
2556 alias_for: "-webkit-text-emphasis-color",
2557 },
2558 {
2559 name: "-epub-text-emphasis-style",
2560 alias_for: "-webkit-text-emphasis-style",
2561 },
2562 {
2563 name: "-epub-text-orientation",
2564 alias_for: "-webkit-text-orientation",
2565 },
2566 {
2567 name: "-epub-text-transform",
2568 alias_for: "text-transform",
2569 },
2570 {
2571 name: "-epub-word-break",
2572 alias_for: "word-break",
2573 },
2574 {
2575 name: "-epub-writing-mode",
2576 alias_for: "-webkit-writing-mode",
2577 },
2578 {
2579 name: "-webkit-align-content",
2580 alias_for: "align-content",
2581 },
2582 {
2583 name: "-webkit-align-items",
2584 alias_for: "align-items",
2585 },
2586 {
2587 name: "-webkit-align-self",
2588 alias_for: "align-self",
2589 },
2590 {
2591 name: "-webkit-animation",
2592 alias_for: "animation",
2593 },
2594 {
2595 name: "-webkit-animation-delay",
2596 alias_for: "animation-delay",
2597 },
2598 {
2599 name: "-webkit-animation-direction",
2600 alias_for: "animation-direction",
2601 },
2602 {
2603 name: "-webkit-animation-duration",
2604 alias_for: "animation-duration",
2605 },
2606 {
2607 name: "-webkit-animation-fill-mode",
2608 alias_for: "animation-fill-mode",
2609 },
2610 {
2611 name: "-webkit-animation-iteration-count",
2612 alias_for: "animation-iteration-count",
2613 },
2614 {
2615 name: "-webkit-animation-name",
2616 alias_for: "animation-name",
2617 },
2618 {
2619 name: "-webkit-animation-play-state",
2620 alias_for: "animation-play-state",
2621 },
2622 {
2623 name: "-webkit-animation-timing-function",
2624 alias_for: "animation-timing-function",
2625 },
2626 {
2627 name: "-webkit-backface-visibility",
2628 alias_for: "backface-visibility",
2629 },
2630 // "-webkit-background-size: 10px" behaves as "background-size: 10px 10px"
2631 {
2632 name: "-webkit-background-size",
2633 alias_for: "background-size",
2634 },
2635 {
2636 name: "-webkit-border-bottom-left-radius",
2637 alias_for: "border-bottom-left-radius",
2638 },
2639 {
2640 name: "-webkit-border-bottom-right-radius",
2641 alias_for: "border-bottom-right-radius",
2642 },
2643 // "-webkit-border-radius: 1px 2px" behaves as "border-radius: 1px / 2px"
2644 {
2645 name: "-webkit-border-radius",
2646 alias_for: "border-radius",
2647 },
2648 {
2649 name: "-webkit-border-top-left-radius",
2650 alias_for: "border-top-left-radius",
2651 },
2652 {
2653 name: "-webkit-border-top-right-radius",
2654 alias_for: "border-top-right-radius",
2655 },
2656 {
2657 name: "-webkit-box-shadow",
2658 alias_for: "box-shadow",
2659 },
2660 {
2661 name: "-webkit-box-sizing",
2662 alias_for: "box-sizing",
2663 },
2664 {
2665 name: "-webkit-clip-path",
2666 alias_for: "clip-path",
2667 },
2668 {
2669 name: "-webkit-column-count",
2670 alias_for: "column-count",
2671 },
2672 {
2673 name: "-webkit-column-gap",
2674 alias_for: "column-gap",
2675 },
2676 {
2677 name: "-webkit-column-rule",
2678 alias_for: "column-rule",
2679 },
2680 {
2681 name: "-webkit-column-rule-color",
2682 alias_for: "column-rule-color",
2683 },
2684 {
2685 name: "-webkit-column-rule-style",
2686 alias_for: "column-rule-style",
2687 },
2688 {
2689 name: "-webkit-column-rule-width",
2690 alias_for: "column-rule-width",
2691 },
2692 {
2693 name: "-webkit-column-span",
2694 alias_for: "column-span",
2695 },
2696 {
2697 name: "-webkit-column-width",
2698 alias_for: "column-width",
2699 },
2700 {
2701 name: "-webkit-columns",
2702 alias_for: "columns",
2703 },
2704 {
2705 name: "-webkit-filter",
2706 alias_for: "filter",
2707 },
2708 {
2709 name: "-webkit-flex",
2710 alias_for: "flex",
2711 },
2712 {
2713 name: "-webkit-flex-basis",
2714 alias_for: "flex-basis",
2715 },
2716 {
2717 name: "-webkit-flex-direction",
2718 alias_for: "flex-direction",
2719 },
2720 {
2721 name: "-webkit-flex-flow",
2722 alias_for: "flex-flow",
2723 },
2724 {
2725 name: "-webkit-flex-grow",
2726 alias_for: "flex-grow",
2727 },
2728 {
2729 name: "-webkit-flex-shrink",
2730 alias_for: "flex-shrink",
2731 },
2732 {
2733 name: "-webkit-flex-wrap",
2734 alias_for: "flex-wrap",
2735 },
2736 {
2737 name: "-webkit-font-feature-settings",
2738 alias_for: "font-feature-settings",
2739 },
2740 {
2741 name: "-webkit-justify-content",
2742 alias_for: "justify-content",
2743 },
2744 {
2745 name: "-webkit-opacity",
2746 alias_for: "opacity",
2747 },
2748 {
2749 name: "-webkit-order",
2750 alias_for: "order",
2751 },
2752 {
2753 name: "-webkit-perspective",
2754 alias_for: "perspective",
2755 },
2756 {
2757 name: "-webkit-perspective-origin",
2758 alias_for: "perspective-origin",
2759 },
2760 {
2761 name: "-webkit-shape-image-threshold",
2762 alias_for: "shape-image-threshold",
2763 },
2764 {
2765 name: "-webkit-shape-margin",
2766 alias_for: "shape-margin",
2767 },
2768 {
2769 name: "-webkit-shape-outside",
2770 alias_for: "shape-outside",
2771 },
2772 {
2773 name: "-webkit-text-size-adjust",
2774 alias_for: "text-size-adjust",
2775 },
2776 {
2777 name: "-webkit-transform",
2778 alias_for: "transform",
2779 },
2780 {
2781 name: "-webkit-transform-origin",
2782 alias_for: "transform-origin",
2783 },
2784 {
2785 name: "-webkit-transform-style",
2786 alias_for: "transform-style",
2787 },
2788 {
2789 name: "-webkit-transition",
2790 alias_for: "transition",
2791 },
2792 {
2793 name: "-webkit-transition-delay",
2794 alias_for: "transition-delay",
2795 },
2796 {
2797 name: "-webkit-transition-duration",
2798 alias_for: "transition-duration",
2799 },
2800 {
2801 name: "-webkit-transition-property",
2802 alias_for: "transition-property",
2803 },
2804 {
2805 name: "-webkit-transition-timing-function",
2806 alias_for: "transition-timing-function",
2807 },
2808 {
2809 name: "-webkit-user-select",
2810 alias_for: "user-select",
2811 },
2812 ],
2813 }
OLDNEW
« no previous file with comments | « third_party/WebKit/Source/core/css/CSSProperties.in ('k') | third_party/WebKit/Source/devtools/BUILD.gn » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698