Bluesky's "Application Layout Framework"
at main 1052 lines 18 kB view raw
1import {type ViewStyle} from 'react-native' 2 3import * as tokens from '../tokens' 4import {type ShadowStyle} from './types' 5 6export const atoms = { 7 debug: { 8 borderColor: 'red', 9 borderWidth: 1, 10 }, 11 12 /* 13 * Positioning 14 */ 15 fixed: { 16 position: 'fixed' as ViewStyle['position'], 17 }, 18 absolute: { 19 position: 'absolute', 20 }, 21 relative: { 22 position: 'relative', 23 }, 24 static: { 25 position: 'static', 26 }, 27 sticky: { 28 position: 'sticky' as ViewStyle['position'], 29 }, 30 inset_0: { 31 top: 0, 32 left: 0, 33 right: 0, 34 bottom: 0, 35 }, 36 top_0: { 37 top: 0, 38 }, 39 right_0: { 40 right: 0, 41 }, 42 bottom_0: { 43 bottom: 0, 44 }, 45 left_0: { 46 left: 0, 47 }, 48 z_10: { 49 zIndex: 10, 50 }, 51 z_20: { 52 zIndex: 20, 53 }, 54 z_30: { 55 zIndex: 30, 56 }, 57 z_40: { 58 zIndex: 40, 59 }, 60 z_50: { 61 zIndex: 50, 62 }, 63 64 overflow_visible: { 65 overflow: 'visible', 66 }, 67 overflow_x_visible: { 68 overflowX: 'visible', 69 }, 70 overflow_y_visible: { 71 overflowY: 'visible', 72 }, 73 overflow_hidden: { 74 overflow: 'hidden', 75 }, 76 overflow_x_hidden: { 77 overflowX: 'hidden', 78 }, 79 overflow_y_hidden: { 80 overflowY: 'hidden', 81 }, 82 overflow_auto: { 83 overflow: 'auto', 84 }, 85 86 /* 87 * Width & Height 88 */ 89 w_full: { 90 width: '100%', 91 }, 92 h_full: { 93 height: '100%', 94 }, 95 h_full_vh: { 96 height: '100vh', 97 }, 98 max_w_full: { 99 maxWidth: '100%', 100 }, 101 max_h_full: { 102 maxHeight: '100%', 103 }, 104 105 /* 106 * Border radius 107 */ 108 rounded_0: { 109 borderRadius: 0, 110 }, 111 rounded_2xs: { 112 borderRadius: tokens.borderRadius._2xs, 113 }, 114 rounded_xs: { 115 borderRadius: tokens.borderRadius.xs, 116 }, 117 rounded_sm: { 118 borderRadius: tokens.borderRadius.sm, 119 }, 120 rounded_md: { 121 borderRadius: tokens.borderRadius.md, 122 }, 123 rounded_lg: { 124 borderRadius: tokens.borderRadius.lg, 125 }, 126 rounded_xl: { 127 borderRadius: tokens.borderRadius.xl, 128 }, 129 rounded_full: { 130 borderRadius: tokens.borderRadius.full, 131 }, 132 133 /* 134 * Flex 135 */ 136 gap_0: { 137 gap: 0, 138 }, 139 gap_2xs: { 140 gap: tokens.space._2xs, 141 }, 142 gap_xs: { 143 gap: tokens.space.xs, 144 }, 145 gap_sm: { 146 gap: tokens.space.sm, 147 }, 148 gap_md: { 149 gap: tokens.space.md, 150 }, 151 gap_lg: { 152 gap: tokens.space.lg, 153 }, 154 gap_xl: { 155 gap: tokens.space.xl, 156 }, 157 gap_2xl: { 158 gap: tokens.space._2xl, 159 }, 160 gap_3xl: { 161 gap: tokens.space._3xl, 162 }, 163 gap_4xl: { 164 gap: tokens.space._4xl, 165 }, 166 gap_5xl: { 167 gap: tokens.space._5xl, 168 }, 169 flex: { 170 display: 'flex', 171 }, 172 flex_col: { 173 flexDirection: 'column', 174 }, 175 flex_row: { 176 flexDirection: 'row', 177 }, 178 flex_col_reverse: { 179 flexDirection: 'column-reverse', 180 }, 181 flex_row_reverse: { 182 flexDirection: 'row-reverse', 183 }, 184 flex_wrap: { 185 flexWrap: 'wrap', 186 }, 187 flex_nowrap: { 188 flexWrap: 'nowrap', 189 }, 190 flex_0: { 191 flex: '0 0 auto' as unknown as ViewStyle['flex'], 192 }, 193 flex_1: { 194 flex: 1, 195 }, 196 flex_grow: { 197 flexGrow: 1, 198 }, 199 flex_grow_0: { 200 flexGrow: 0, 201 }, 202 flex_shrink: { 203 flexShrink: 1, 204 }, 205 flex_shrink_0: { 206 flexShrink: 0, 207 }, 208 justify_start: { 209 justifyContent: 'flex-start', 210 }, 211 justify_center: { 212 justifyContent: 'center', 213 }, 214 justify_between: { 215 justifyContent: 'space-between', 216 }, 217 justify_end: { 218 justifyContent: 'flex-end', 219 }, 220 align_center: { 221 alignItems: 'center', 222 }, 223 align_start: { 224 alignItems: 'flex-start', 225 }, 226 align_end: { 227 alignItems: 'flex-end', 228 }, 229 align_baseline: { 230 alignItems: 'baseline', 231 }, 232 align_stretch: { 233 alignItems: 'stretch', 234 }, 235 self_auto: { 236 alignSelf: 'auto', 237 }, 238 self_start: { 239 alignSelf: 'flex-start', 240 }, 241 self_end: { 242 alignSelf: 'flex-end', 243 }, 244 self_center: { 245 alignSelf: 'center', 246 }, 247 self_stretch: { 248 alignSelf: 'stretch', 249 }, 250 self_baseline: { 251 alignSelf: 'baseline', 252 }, 253 254 /* 255 * Text 256 */ 257 text_left: { 258 textAlign: 'left', 259 }, 260 text_center: { 261 textAlign: 'center', 262 }, 263 text_right: { 264 textAlign: 'right', 265 }, 266 text_2xs: { 267 fontSize: tokens.fontSize._2xs, 268 letterSpacing: tokens.TRACKING, 269 }, 270 text_xs: { 271 fontSize: tokens.fontSize.xs, 272 letterSpacing: tokens.TRACKING, 273 }, 274 text_sm: { 275 fontSize: tokens.fontSize.sm, 276 letterSpacing: tokens.TRACKING, 277 }, 278 text_md: { 279 fontSize: tokens.fontSize.md, 280 letterSpacing: tokens.TRACKING, 281 }, 282 text_lg: { 283 fontSize: tokens.fontSize.lg, 284 letterSpacing: tokens.TRACKING, 285 }, 286 text_xl: { 287 fontSize: tokens.fontSize.xl, 288 letterSpacing: tokens.TRACKING, 289 }, 290 text_2xl: { 291 fontSize: tokens.fontSize._2xl, 292 letterSpacing: tokens.TRACKING, 293 }, 294 text_3xl: { 295 fontSize: tokens.fontSize._3xl, 296 letterSpacing: tokens.TRACKING, 297 }, 298 text_4xl: { 299 fontSize: tokens.fontSize._4xl, 300 letterSpacing: tokens.TRACKING, 301 }, 302 text_5xl: { 303 fontSize: tokens.fontSize._5xl, 304 letterSpacing: tokens.TRACKING, 305 }, 306 leading_tight: { 307 lineHeight: tokens.lineHeight.tight, 308 }, 309 leading_snug: { 310 lineHeight: tokens.lineHeight.snug, 311 }, 312 leading_relaxed: { 313 lineHeight: tokens.lineHeight.relaxed, 314 }, 315 /** 316 * @deprecated use `leading_relaxed` instead 317 */ 318 leading_normal: { 319 lineHeight: tokens.lineHeight.relaxed, 320 }, 321 tracking_normal: { 322 letterSpacing: tokens.TRACKING, 323 }, 324 font_normal: { 325 fontWeight: tokens.fontWeight.normal, 326 }, 327 font_medium: { 328 fontWeight: tokens.fontWeight.medium, 329 }, 330 font_semi_bold: { 331 fontWeight: tokens.fontWeight.semiBold, 332 }, 333 font_bold: { 334 fontWeight: tokens.fontWeight.bold, 335 }, 336 italic: { 337 fontStyle: 'italic', 338 }, 339 340 /* 341 * Border 342 */ 343 border_0: { 344 borderWidth: 0, 345 }, 346 border_t_0: { 347 borderTopWidth: 0, 348 }, 349 border_b_0: { 350 borderBottomWidth: 0, 351 }, 352 border_l_0: { 353 borderLeftWidth: 0, 354 }, 355 border_r_0: { 356 borderRightWidth: 0, 357 }, 358 border_x_0: { 359 borderLeftWidth: 0, 360 borderRightWidth: 0, 361 }, 362 border_y_0: { 363 borderTopWidth: 0, 364 borderBottomWidth: 0, 365 }, 366 border: { 367 borderWidth: 1, 368 }, 369 border_t: { 370 borderTopWidth: 1, 371 }, 372 border_b: { 373 borderBottomWidth: 1, 374 }, 375 border_l: { 376 borderLeftWidth: 1, 377 }, 378 border_r: { 379 borderRightWidth: 1, 380 }, 381 border_x: { 382 borderLeftWidth: 1, 383 borderRightWidth: 1, 384 }, 385 border_y: { 386 borderTopWidth: 1, 387 borderBottomWidth: 1, 388 }, 389 border_transparent: { 390 borderColor: 'transparent', 391 }, 392 curve_circular: {}, 393 curve_continuous: {}, 394 395 shadow_sm: {} as ShadowStyle, 396 shadow_md: {} as ShadowStyle, 397 shadow_lg: {} as ShadowStyle, 398 399 /* 400 * Gutters 401 */ 402 gutter_tight: { 403 padding: tokens.space.sm, 404 }, 405 gutter_x_tight: { 406 paddingLeft: tokens.space.sm, 407 paddingRight: tokens.space.sm, 408 }, 409 gutter_y_tight: { 410 paddingTop: tokens.space.sm, 411 paddingBottom: tokens.space.sm, 412 }, 413 gutter_snug: { 414 padding: tokens.space.md, 415 }, 416 gutter_x_snug: { 417 paddingLeft: tokens.space.md, 418 paddingRight: tokens.space.md, 419 }, 420 gutter_y_snug: { 421 paddingTop: tokens.space.md, 422 paddingBottom: tokens.space.md, 423 }, 424 gutter_default: { 425 padding: tokens.space.lg, 426 }, 427 gutter_x_default: { 428 paddingLeft: tokens.space.lg, 429 paddingRight: tokens.space.lg, 430 }, 431 gutter_y_default: { 432 paddingTop: tokens.space.lg, 433 paddingBottom: tokens.space.lg, 434 }, 435 gutter_wide: { 436 padding: tokens.space.xl, 437 }, 438 gutter_x_wide: { 439 paddingLeft: tokens.space.xl, 440 paddingRight: tokens.space.xl, 441 }, 442 gutter_y_wide: { 443 paddingTop: tokens.space.xl, 444 paddingBottom: tokens.space.xl, 445 }, 446 gutter_extra_wide: { 447 padding: tokens.space._2xl, 448 }, 449 gutter_x_extra_wide: { 450 paddingLeft: tokens.space._2xl, 451 paddingRight: tokens.space._2xl, 452 }, 453 gutter_y_extra_wide: { 454 paddingTop: tokens.space._2xl, 455 paddingBottom: tokens.space._2xl, 456 }, 457 458 /* 459 * Padding 460 */ 461 p_0: { 462 padding: 0, 463 }, 464 p_2xs: { 465 padding: tokens.space._2xs, 466 }, 467 p_xs: { 468 padding: tokens.space.xs, 469 }, 470 p_sm: { 471 padding: tokens.space.sm, 472 }, 473 p_md: { 474 padding: tokens.space.md, 475 }, 476 p_lg: { 477 padding: tokens.space.lg, 478 }, 479 p_xl: { 480 padding: tokens.space.xl, 481 }, 482 p_2xl: { 483 padding: tokens.space._2xl, 484 }, 485 p_3xl: { 486 padding: tokens.space._3xl, 487 }, 488 p_4xl: { 489 padding: tokens.space._4xl, 490 }, 491 p_5xl: { 492 padding: tokens.space._5xl, 493 }, 494 px_0: { 495 paddingLeft: 0, 496 paddingRight: 0, 497 }, 498 px_2xs: { 499 paddingLeft: tokens.space._2xs, 500 paddingRight: tokens.space._2xs, 501 }, 502 px_xs: { 503 paddingLeft: tokens.space.xs, 504 paddingRight: tokens.space.xs, 505 }, 506 px_sm: { 507 paddingLeft: tokens.space.sm, 508 paddingRight: tokens.space.sm, 509 }, 510 px_md: { 511 paddingLeft: tokens.space.md, 512 paddingRight: tokens.space.md, 513 }, 514 px_lg: { 515 paddingLeft: tokens.space.lg, 516 paddingRight: tokens.space.lg, 517 }, 518 px_xl: { 519 paddingLeft: tokens.space.xl, 520 paddingRight: tokens.space.xl, 521 }, 522 px_2xl: { 523 paddingLeft: tokens.space._2xl, 524 paddingRight: tokens.space._2xl, 525 }, 526 px_3xl: { 527 paddingLeft: tokens.space._3xl, 528 paddingRight: tokens.space._3xl, 529 }, 530 px_4xl: { 531 paddingLeft: tokens.space._4xl, 532 paddingRight: tokens.space._4xl, 533 }, 534 px_5xl: { 535 paddingLeft: tokens.space._5xl, 536 paddingRight: tokens.space._5xl, 537 }, 538 py_0: { 539 paddingTop: 0, 540 paddingBottom: 0, 541 }, 542 py_2xs: { 543 paddingTop: tokens.space._2xs, 544 paddingBottom: tokens.space._2xs, 545 }, 546 py_xs: { 547 paddingTop: tokens.space.xs, 548 paddingBottom: tokens.space.xs, 549 }, 550 py_sm: { 551 paddingTop: tokens.space.sm, 552 paddingBottom: tokens.space.sm, 553 }, 554 py_md: { 555 paddingTop: tokens.space.md, 556 paddingBottom: tokens.space.md, 557 }, 558 py_lg: { 559 paddingTop: tokens.space.lg, 560 paddingBottom: tokens.space.lg, 561 }, 562 py_xl: { 563 paddingTop: tokens.space.xl, 564 paddingBottom: tokens.space.xl, 565 }, 566 py_2xl: { 567 paddingTop: tokens.space._2xl, 568 paddingBottom: tokens.space._2xl, 569 }, 570 py_3xl: { 571 paddingTop: tokens.space._3xl, 572 paddingBottom: tokens.space._3xl, 573 }, 574 py_4xl: { 575 paddingTop: tokens.space._4xl, 576 paddingBottom: tokens.space._4xl, 577 }, 578 py_5xl: { 579 paddingTop: tokens.space._5xl, 580 paddingBottom: tokens.space._5xl, 581 }, 582 pt_0: { 583 paddingTop: 0, 584 }, 585 pt_2xs: { 586 paddingTop: tokens.space._2xs, 587 }, 588 pt_xs: { 589 paddingTop: tokens.space.xs, 590 }, 591 pt_sm: { 592 paddingTop: tokens.space.sm, 593 }, 594 pt_md: { 595 paddingTop: tokens.space.md, 596 }, 597 pt_lg: { 598 paddingTop: tokens.space.lg, 599 }, 600 pt_xl: { 601 paddingTop: tokens.space.xl, 602 }, 603 pt_2xl: { 604 paddingTop: tokens.space._2xl, 605 }, 606 pt_3xl: { 607 paddingTop: tokens.space._3xl, 608 }, 609 pt_4xl: { 610 paddingTop: tokens.space._4xl, 611 }, 612 pt_5xl: { 613 paddingTop: tokens.space._5xl, 614 }, 615 pb_0: { 616 paddingBottom: 0, 617 }, 618 pb_2xs: { 619 paddingBottom: tokens.space._2xs, 620 }, 621 pb_xs: { 622 paddingBottom: tokens.space.xs, 623 }, 624 pb_sm: { 625 paddingBottom: tokens.space.sm, 626 }, 627 pb_md: { 628 paddingBottom: tokens.space.md, 629 }, 630 pb_lg: { 631 paddingBottom: tokens.space.lg, 632 }, 633 pb_xl: { 634 paddingBottom: tokens.space.xl, 635 }, 636 pb_2xl: { 637 paddingBottom: tokens.space._2xl, 638 }, 639 pb_3xl: { 640 paddingBottom: tokens.space._3xl, 641 }, 642 pb_4xl: { 643 paddingBottom: tokens.space._4xl, 644 }, 645 pb_5xl: { 646 paddingBottom: tokens.space._5xl, 647 }, 648 pl_0: { 649 paddingLeft: 0, 650 }, 651 pl_2xs: { 652 paddingLeft: tokens.space._2xs, 653 }, 654 pl_xs: { 655 paddingLeft: tokens.space.xs, 656 }, 657 pl_sm: { 658 paddingLeft: tokens.space.sm, 659 }, 660 pl_md: { 661 paddingLeft: tokens.space.md, 662 }, 663 pl_lg: { 664 paddingLeft: tokens.space.lg, 665 }, 666 pl_xl: { 667 paddingLeft: tokens.space.xl, 668 }, 669 pl_2xl: { 670 paddingLeft: tokens.space._2xl, 671 }, 672 pl_3xl: { 673 paddingLeft: tokens.space._3xl, 674 }, 675 pl_4xl: { 676 paddingLeft: tokens.space._4xl, 677 }, 678 pl_5xl: { 679 paddingLeft: tokens.space._5xl, 680 }, 681 pr_0: { 682 paddingRight: 0, 683 }, 684 pr_2xs: { 685 paddingRight: tokens.space._2xs, 686 }, 687 pr_xs: { 688 paddingRight: tokens.space.xs, 689 }, 690 pr_sm: { 691 paddingRight: tokens.space.sm, 692 }, 693 pr_md: { 694 paddingRight: tokens.space.md, 695 }, 696 pr_lg: { 697 paddingRight: tokens.space.lg, 698 }, 699 pr_xl: { 700 paddingRight: tokens.space.xl, 701 }, 702 pr_2xl: { 703 paddingRight: tokens.space._2xl, 704 }, 705 pr_3xl: { 706 paddingRight: tokens.space._3xl, 707 }, 708 pr_4xl: { 709 paddingRight: tokens.space._4xl, 710 }, 711 pr_5xl: { 712 paddingRight: tokens.space._5xl, 713 }, 714 715 /* 716 * Margin 717 */ 718 m_0: { 719 margin: 0, 720 }, 721 m_2xs: { 722 margin: tokens.space._2xs, 723 }, 724 m_xs: { 725 margin: tokens.space.xs, 726 }, 727 m_sm: { 728 margin: tokens.space.sm, 729 }, 730 m_md: { 731 margin: tokens.space.md, 732 }, 733 m_lg: { 734 margin: tokens.space.lg, 735 }, 736 m_xl: { 737 margin: tokens.space.xl, 738 }, 739 m_2xl: { 740 margin: tokens.space._2xl, 741 }, 742 m_3xl: { 743 margin: tokens.space._3xl, 744 }, 745 m_4xl: { 746 margin: tokens.space._4xl, 747 }, 748 m_5xl: { 749 margin: tokens.space._5xl, 750 }, 751 m_auto: { 752 margin: 'auto', 753 }, 754 mx_0: { 755 marginLeft: 0, 756 marginRight: 0, 757 }, 758 mx_2xs: { 759 marginLeft: tokens.space._2xs, 760 marginRight: tokens.space._2xs, 761 }, 762 mx_xs: { 763 marginLeft: tokens.space.xs, 764 marginRight: tokens.space.xs, 765 }, 766 mx_sm: { 767 marginLeft: tokens.space.sm, 768 marginRight: tokens.space.sm, 769 }, 770 mx_md: { 771 marginLeft: tokens.space.md, 772 marginRight: tokens.space.md, 773 }, 774 mx_lg: { 775 marginLeft: tokens.space.lg, 776 marginRight: tokens.space.lg, 777 }, 778 mx_xl: { 779 marginLeft: tokens.space.xl, 780 marginRight: tokens.space.xl, 781 }, 782 mx_2xl: { 783 marginLeft: tokens.space._2xl, 784 marginRight: tokens.space._2xl, 785 }, 786 mx_3xl: { 787 marginLeft: tokens.space._3xl, 788 marginRight: tokens.space._3xl, 789 }, 790 mx_4xl: { 791 marginLeft: tokens.space._4xl, 792 marginRight: tokens.space._4xl, 793 }, 794 mx_5xl: { 795 marginLeft: tokens.space._5xl, 796 marginRight: tokens.space._5xl, 797 }, 798 mx_auto: { 799 marginLeft: 'auto', 800 marginRight: 'auto', 801 }, 802 my_0: { 803 marginTop: 0, 804 marginBottom: 0, 805 }, 806 my_2xs: { 807 marginTop: tokens.space._2xs, 808 marginBottom: tokens.space._2xs, 809 }, 810 my_xs: { 811 marginTop: tokens.space.xs, 812 marginBottom: tokens.space.xs, 813 }, 814 my_sm: { 815 marginTop: tokens.space.sm, 816 marginBottom: tokens.space.sm, 817 }, 818 my_md: { 819 marginTop: tokens.space.md, 820 marginBottom: tokens.space.md, 821 }, 822 my_lg: { 823 marginTop: tokens.space.lg, 824 marginBottom: tokens.space.lg, 825 }, 826 my_xl: { 827 marginTop: tokens.space.xl, 828 marginBottom: tokens.space.xl, 829 }, 830 my_2xl: { 831 marginTop: tokens.space._2xl, 832 marginBottom: tokens.space._2xl, 833 }, 834 my_3xl: { 835 marginTop: tokens.space._3xl, 836 marginBottom: tokens.space._3xl, 837 }, 838 my_4xl: { 839 marginTop: tokens.space._4xl, 840 marginBottom: tokens.space._4xl, 841 }, 842 my_5xl: { 843 marginTop: tokens.space._5xl, 844 marginBottom: tokens.space._5xl, 845 }, 846 my_auto: { 847 marginTop: 'auto', 848 marginBottom: 'auto', 849 }, 850 mt_0: { 851 marginTop: 0, 852 }, 853 mt_2xs: { 854 marginTop: tokens.space._2xs, 855 }, 856 mt_xs: { 857 marginTop: tokens.space.xs, 858 }, 859 mt_sm: { 860 marginTop: tokens.space.sm, 861 }, 862 mt_md: { 863 marginTop: tokens.space.md, 864 }, 865 mt_lg: { 866 marginTop: tokens.space.lg, 867 }, 868 mt_xl: { 869 marginTop: tokens.space.xl, 870 }, 871 mt_2xl: { 872 marginTop: tokens.space._2xl, 873 }, 874 mt_3xl: { 875 marginTop: tokens.space._3xl, 876 }, 877 mt_4xl: { 878 marginTop: tokens.space._4xl, 879 }, 880 mt_5xl: { 881 marginTop: tokens.space._5xl, 882 }, 883 mt_auto: { 884 marginTop: 'auto', 885 }, 886 mb_0: { 887 marginBottom: 0, 888 }, 889 mb_2xs: { 890 marginBottom: tokens.space._2xs, 891 }, 892 mb_xs: { 893 marginBottom: tokens.space.xs, 894 }, 895 mb_sm: { 896 marginBottom: tokens.space.sm, 897 }, 898 mb_md: { 899 marginBottom: tokens.space.md, 900 }, 901 mb_lg: { 902 marginBottom: tokens.space.lg, 903 }, 904 mb_xl: { 905 marginBottom: tokens.space.xl, 906 }, 907 mb_2xl: { 908 marginBottom: tokens.space._2xl, 909 }, 910 mb_3xl: { 911 marginBottom: tokens.space._3xl, 912 }, 913 mb_4xl: { 914 marginBottom: tokens.space._4xl, 915 }, 916 mb_5xl: { 917 marginBottom: tokens.space._5xl, 918 }, 919 mb_auto: { 920 marginBottom: 'auto', 921 }, 922 ml_0: { 923 marginLeft: 0, 924 }, 925 ml_2xs: { 926 marginLeft: tokens.space._2xs, 927 }, 928 ml_xs: { 929 marginLeft: tokens.space.xs, 930 }, 931 ml_sm: { 932 marginLeft: tokens.space.sm, 933 }, 934 ml_md: { 935 marginLeft: tokens.space.md, 936 }, 937 ml_lg: { 938 marginLeft: tokens.space.lg, 939 }, 940 ml_xl: { 941 marginLeft: tokens.space.xl, 942 }, 943 ml_2xl: { 944 marginLeft: tokens.space._2xl, 945 }, 946 ml_3xl: { 947 marginLeft: tokens.space._3xl, 948 }, 949 ml_4xl: { 950 marginLeft: tokens.space._4xl, 951 }, 952 ml_5xl: { 953 marginLeft: tokens.space._5xl, 954 }, 955 ml_auto: { 956 marginLeft: 'auto', 957 }, 958 mr_0: { 959 marginRight: 0, 960 }, 961 mr_2xs: { 962 marginRight: tokens.space._2xs, 963 }, 964 mr_xs: { 965 marginRight: tokens.space.xs, 966 }, 967 mr_sm: { 968 marginRight: tokens.space.sm, 969 }, 970 mr_md: { 971 marginRight: tokens.space.md, 972 }, 973 mr_lg: { 974 marginRight: tokens.space.lg, 975 }, 976 mr_xl: { 977 marginRight: tokens.space.xl, 978 }, 979 mr_2xl: { 980 marginRight: tokens.space._2xl, 981 }, 982 mr_3xl: { 983 marginRight: tokens.space._3xl, 984 }, 985 mr_4xl: { 986 marginRight: tokens.space._4xl, 987 }, 988 mr_5xl: { 989 marginRight: tokens.space._5xl, 990 }, 991 mr_auto: { 992 marginRight: 'auto', 993 }, 994 995 /* 996 * Pointer events & user select 997 */ 998 pointer_events_none: { 999 pointerEvents: 'none', 1000 }, 1001 pointer_events_auto: { 1002 pointerEvents: 'auto', 1003 }, 1004 pointer_events_box_only: { 1005 pointerEvents: 'box-only', 1006 }, 1007 pointer_events_box_none: { 1008 pointerEvents: 'box-none', 1009 }, 1010 user_select_none: { 1011 userSelect: 'none', 1012 }, 1013 user_select_text: { 1014 userSelect: 'text', 1015 }, 1016 user_select_all: { 1017 userSelect: 'all', 1018 }, 1019 outline_inset_1: { 1020 outlineOffset: -1, 1021 }, 1022 1023 /* 1024 * Text decoration 1025 */ 1026 underline: { 1027 textDecorationLine: 'underline', 1028 }, 1029 strike_through: { 1030 textDecorationLine: 'line-through', 1031 }, 1032 1033 /* 1034 * Display 1035 */ 1036 hidden: { 1037 display: 'none', 1038 }, 1039 contents: { 1040 display: 'contents', 1041 }, 1042 inline: { 1043 display: 'inline', 1044 } as unknown as Pick<ViewStyle, 'display'>, 1045 block: { 1046 display: 'block', 1047 } as unknown as Pick<ViewStyle, 'display'>, 1048 1049 pointer: { 1050 cursor: 'pointer', 1051 }, 1052} as const