this repo has no description
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

Respect server's media desc limit

+94 -92
+4 -2
src/components/compose.jsx
··· 253 253 videoSizeLimit, 254 254 videoMatrixLimit, 255 255 videoFrameRateLimit, 256 + descriptionLimit, 256 257 } = {}, 257 258 polls: { 258 259 maxOptions, ··· 1337 1338 attachment={attachment} 1338 1339 disabled={uiState === 'loading'} 1339 1340 lang={language} 1341 + descriptionLimit={descriptionLimit} 1340 1342 onDescriptionChange={(value) => { 1341 1343 setMediaAttachments((attachments) => { 1342 1344 const newAttachments = [...attachments]; ··· 2424 2426 attachment, 2425 2427 disabled, 2426 2428 lang, 2429 + descriptionLimit = 1500, 2427 2430 onDescriptionChange = () => {}, 2428 2431 onRemove = () => {}, 2429 2432 }) { ··· 2565 2568 dir="auto" 2566 2569 disabled={disabled || uiState === 'loading'} 2567 2570 class={uiState === 'loading' ? 'loading' : ''} 2568 - maxlength="1500" // Not unicode-aware :( 2569 - // TODO: Un-hard-code this maxlength, ref: https://github.com/mastodon/mastodon/blob/b59fb28e90bc21d6fd1a6bafd13cfbd81ab5be54/app/models/media_attachment.rb#L39 2571 + maxlength={descriptionLimit} // Not unicode-aware :( 2570 2572 onInput={(e) => { 2571 2573 const { value } = e.target; 2572 2574 setDescription(value);
+90 -90
src/locales/en.po
··· 108 108 109 109 #: src/components/account-info.jsx:444 110 110 #: src/components/account-info.jsx:1202 111 - #: src/components/compose.jsx:2774 111 + #: src/components/compose.jsx:2776 112 112 #: src/components/media-alt-modal.jsx:46 113 113 #: src/components/media-modal.jsx:359 114 114 #: src/components/status.jsx:1826 ··· 420 420 #: src/components/account-info.jsx:2064 421 421 #: src/components/account-info.jsx:2184 422 422 #: src/components/account-sheet.jsx:38 423 - #: src/components/compose.jsx:883 424 - #: src/components/compose.jsx:2730 425 - #: src/components/compose.jsx:3207 426 - #: src/components/compose.jsx:3416 427 - #: src/components/compose.jsx:3646 423 + #: src/components/compose.jsx:884 424 + #: src/components/compose.jsx:2732 425 + #: src/components/compose.jsx:3209 426 + #: src/components/compose.jsx:3418 427 + #: src/components/compose.jsx:3648 428 428 #: src/components/drafts.jsx:59 429 429 #: src/components/embed-modal.jsx:13 430 430 #: src/components/generic-accounts.jsx:143 ··· 606 606 msgid "Schedule post" 607 607 msgstr "Schedule post" 608 608 609 - #: src/components/compose.jsx:415 609 + #: src/components/compose.jsx:416 610 610 msgid "You have unsaved changes. Discard this post?" 611 611 msgstr "You have unsaved changes. Discard this post?" 612 612 613 613 #. placeholder {0}: unsupportedFiles.length 614 614 #. placeholder {1}: unsupportedFiles[0].name 615 615 #. placeholder {2}: lf.format( unsupportedFiles.map((f) => f.name), ) 616 - #: src/components/compose.jsx:646 616 + #: src/components/compose.jsx:647 617 617 msgid "{0, plural, one {File {1} is not supported.} other {Files {2} are not supported.}}" 618 618 msgstr "{0, plural, one {File {1} is not supported.} other {Files {2} are not supported.}}" 619 619 620 - #: src/components/compose.jsx:656 621 - #: src/components/compose.jsx:674 622 - #: src/components/compose.jsx:1779 623 - #: src/components/compose.jsx:1904 620 + #: src/components/compose.jsx:657 621 + #: src/components/compose.jsx:675 622 + #: src/components/compose.jsx:1781 623 + #: src/components/compose.jsx:1906 624 624 msgid "{maxMediaAttachments, plural, one {You can only attach up to 1 file.} other {You can only attach up to # files.}}" 625 625 msgstr "" 626 626 627 - #: src/components/compose.jsx:864 627 + #: src/components/compose.jsx:865 628 628 msgid "Pop out" 629 629 msgstr "Pop out" 630 630 631 - #: src/components/compose.jsx:871 631 + #: src/components/compose.jsx:872 632 632 msgid "Minimize" 633 633 msgstr "Minimize" 634 634 635 - #: src/components/compose.jsx:907 635 + #: src/components/compose.jsx:908 636 636 msgid "Looks like you closed the parent window." 637 637 msgstr "Looks like you closed the parent window." 638 638 639 - #: src/components/compose.jsx:914 639 + #: src/components/compose.jsx:915 640 640 msgid "Looks like you already have a compose field open in the parent window and currently publishing. Please wait for it to be done and try again later." 641 641 msgstr "Looks like you already have a compose field open in the parent window and currently publishing. Please wait for it to be done and try again later." 642 642 643 - #: src/components/compose.jsx:919 643 + #: src/components/compose.jsx:920 644 644 msgid "Looks like you already have a compose field open in the parent window. Popping in this window will discard the changes you made in the parent window. Continue?" 645 645 msgstr "Looks like you already have a compose field open in the parent window. Popping in this window will discard the changes you made in the parent window. Continue?" 646 646 647 - #: src/components/compose.jsx:962 647 + #: src/components/compose.jsx:963 648 648 msgid "Pop in" 649 649 msgstr "Pop in" 650 650 651 651 #. placeholder {0}: replyToStatus.account.acct || replyToStatus.account.username 652 652 #. placeholder {1}: rtf.format(-replyToStatusMonthsAgo, 'month') 653 - #: src/components/compose.jsx:972 653 + #: src/components/compose.jsx:973 654 654 msgid "Replying to @{0}’s post (<0>{1}</0>)" 655 655 msgstr "" 656 656 657 657 #. placeholder {0}: replyToStatus.account.acct || replyToStatus.account.username 658 - #: src/components/compose.jsx:982 658 + #: src/components/compose.jsx:983 659 659 msgid "Replying to @{0}’s post" 660 660 msgstr "" 661 661 662 - #: src/components/compose.jsx:995 662 + #: src/components/compose.jsx:996 663 663 msgid "Editing source post" 664 664 msgstr "" 665 665 666 - #: src/components/compose.jsx:1048 666 + #: src/components/compose.jsx:1049 667 667 msgid "Poll must have at least 2 options" 668 668 msgstr "Poll must have at least 2 options" 669 669 670 - #: src/components/compose.jsx:1052 670 + #: src/components/compose.jsx:1053 671 671 msgid "Some poll choices are empty" 672 672 msgstr "Some poll choices are empty" 673 673 674 - #: src/components/compose.jsx:1065 674 + #: src/components/compose.jsx:1066 675 675 msgid "Some media have no descriptions. Continue?" 676 676 msgstr "Some media have no descriptions. Continue?" 677 677 678 - #: src/components/compose.jsx:1117 678 + #: src/components/compose.jsx:1118 679 679 msgid "Attachment #{i} failed" 680 680 msgstr "Attachment #{i} failed" 681 681 682 - #: src/components/compose.jsx:1213 682 + #: src/components/compose.jsx:1214 683 683 #: src/components/status.jsx:2156 684 684 #: src/components/timeline.jsx:1019 685 685 msgid "Content warning" 686 686 msgstr "" 687 687 688 - #: src/components/compose.jsx:1229 688 + #: src/components/compose.jsx:1230 689 689 msgid "Content warning or sensitive media" 690 690 msgstr "Content warning or sensitive media" 691 691 692 - #: src/components/compose.jsx:1265 692 + #: src/components/compose.jsx:1266 693 693 #: src/components/status.jsx:96 694 694 #: src/pages/settings.jsx:315 695 695 msgid "Public" 696 696 msgstr "" 697 697 698 - #: src/components/compose.jsx:1270 698 + #: src/components/compose.jsx:1271 699 699 #: src/components/nav-menu.jsx:344 700 700 #: src/components/shortcuts-settings.jsx:165 701 701 #: src/components/status.jsx:97 702 702 msgid "Local" 703 703 msgstr "" 704 704 705 - #: src/components/compose.jsx:1274 705 + #: src/components/compose.jsx:1275 706 706 #: src/components/status.jsx:98 707 707 #: src/pages/settings.jsx:318 708 708 msgid "Unlisted" 709 709 msgstr "" 710 710 711 - #: src/components/compose.jsx:1277 711 + #: src/components/compose.jsx:1278 712 712 #: src/components/status.jsx:99 713 713 #: src/pages/settings.jsx:321 714 714 msgid "Followers only" 715 715 msgstr "" 716 716 717 - #: src/components/compose.jsx:1280 717 + #: src/components/compose.jsx:1281 718 718 #: src/components/status.jsx:100 719 719 #: src/components/status.jsx:2032 720 720 msgid "Private mention" 721 721 msgstr "" 722 722 723 - #: src/components/compose.jsx:1289 723 + #: src/components/compose.jsx:1290 724 724 msgid "Post your reply" 725 725 msgstr "Post your reply" 726 726 727 - #: src/components/compose.jsx:1291 727 + #: src/components/compose.jsx:1292 728 728 msgid "Edit your post" 729 729 msgstr "Edit your post" 730 730 731 - #: src/components/compose.jsx:1292 731 + #: src/components/compose.jsx:1293 732 732 msgid "What are you doing?" 733 733 msgstr "What are you doing?" 734 734 735 - #: src/components/compose.jsx:1370 735 + #: src/components/compose.jsx:1372 736 736 msgid "Mark media as sensitive" 737 737 msgstr "" 738 738 739 - #: src/components/compose.jsx:1407 739 + #: src/components/compose.jsx:1409 740 740 msgid "Posting on <0/>" 741 741 msgstr "Posting on <0/>" 742 742 743 - #: src/components/compose.jsx:1438 744 - #: src/components/compose.jsx:3265 743 + #: src/components/compose.jsx:1440 744 + #: src/components/compose.jsx:3267 745 745 #: src/components/shortcuts-settings.jsx:715 746 746 #: src/pages/list.jsx:362 747 747 msgid "Add" 748 748 msgstr "" 749 749 750 - #: src/components/compose.jsx:1664 750 + #: src/components/compose.jsx:1666 751 751 msgid "Schedule" 752 752 msgstr "Schedule" 753 753 754 - #: src/components/compose.jsx:1666 754 + #: src/components/compose.jsx:1668 755 755 #: src/components/keyboard-shortcuts-help.jsx:155 756 756 #: src/components/status.jsx:1025 757 757 #: src/components/status.jsx:1806 ··· 760 760 msgid "Reply" 761 761 msgstr "" 762 762 763 - #: src/components/compose.jsx:1668 763 + #: src/components/compose.jsx:1670 764 764 msgid "Update" 765 765 msgstr "Update" 766 766 767 - #: src/components/compose.jsx:1669 767 + #: src/components/compose.jsx:1671 768 768 msgctxt "Submit button in composer" 769 769 msgid "Post" 770 770 msgstr "Post" 771 771 772 - #: src/components/compose.jsx:1791 772 + #: src/components/compose.jsx:1793 773 773 msgid "Downloading GIF…" 774 774 msgstr "Downloading GIF…" 775 775 776 - #: src/components/compose.jsx:1819 776 + #: src/components/compose.jsx:1821 777 777 msgid "Failed to download GIF" 778 778 msgstr "Failed to download GIF" 779 779 780 - #: src/components/compose.jsx:2034 781 - #: src/components/compose.jsx:2111 780 + #: src/components/compose.jsx:2036 781 + #: src/components/compose.jsx:2113 782 782 #: src/components/nav-menu.jsx:239 783 783 msgid "More…" 784 784 msgstr "" 785 785 786 - #: src/components/compose.jsx:2543 786 + #: src/components/compose.jsx:2546 787 787 msgid "Uploaded" 788 788 msgstr "" 789 789 790 - #: src/components/compose.jsx:2556 790 + #: src/components/compose.jsx:2559 791 791 msgid "Image description" 792 792 msgstr "Image description" 793 793 794 - #: src/components/compose.jsx:2557 794 + #: src/components/compose.jsx:2560 795 795 msgid "Video description" 796 796 msgstr "Video description" 797 797 798 - #: src/components/compose.jsx:2558 798 + #: src/components/compose.jsx:2561 799 799 msgid "Audio description" 800 800 msgstr "Audio description" 801 801 ··· 803 803 #. placeholder {0}: prettyBytes( videoSize, ) 804 804 #. placeholder {1}: prettyBytes(imageSizeLimit) 805 805 #. placeholder {1}: prettyBytes(videoSizeLimit) 806 - #: src/components/compose.jsx:2594 807 - #: src/components/compose.jsx:2614 806 + #: src/components/compose.jsx:2596 807 + #: src/components/compose.jsx:2616 808 808 msgid "File size too large. Uploading might encounter issues. Try reduce the file size from {0} to {1} or lower." 809 809 msgstr "File size too large. Uploading might encounter issues. Try reduce the file size from {0} to {1} or lower." 810 810 ··· 812 812 #. placeholder {1}: i18n.number(height) 813 813 #. placeholder {2}: i18n.number(newWidth) 814 814 #. placeholder {3}: i18n.number( newHeight, ) 815 - #: src/components/compose.jsx:2606 816 - #: src/components/compose.jsx:2626 815 + #: src/components/compose.jsx:2608 816 + #: src/components/compose.jsx:2628 817 817 msgid "Dimension too large. Uploading might encounter issues. Try reduce dimension from {0}×{1}px to {2}×{3}px." 818 818 msgstr "Dimension too large. Uploading might encounter issues. Try reduce dimension from {0}×{1}px to {2}×{3}px." 819 819 820 - #: src/components/compose.jsx:2634 820 + #: src/components/compose.jsx:2636 821 821 msgid "Frame rate too high. Uploading might encounter issues." 822 822 msgstr "Frame rate too high. Uploading might encounter issues." 823 823 824 - #: src/components/compose.jsx:2694 825 - #: src/components/compose.jsx:2944 824 + #: src/components/compose.jsx:2696 825 + #: src/components/compose.jsx:2946 826 826 #: src/components/shortcuts-settings.jsx:726 827 827 #: src/pages/catchup.jsx:1081 828 828 #: src/pages/filters.jsx:413 829 829 msgid "Remove" 830 830 msgstr "" 831 831 832 - #: src/components/compose.jsx:2711 832 + #: src/components/compose.jsx:2713 833 833 #: src/compose.jsx:84 834 834 msgid "Error" 835 835 msgstr "" 836 836 837 - #: src/components/compose.jsx:2736 837 + #: src/components/compose.jsx:2738 838 838 msgid "Edit image description" 839 839 msgstr "Edit image description" 840 840 841 - #: src/components/compose.jsx:2737 841 + #: src/components/compose.jsx:2739 842 842 msgid "Edit video description" 843 843 msgstr "Edit video description" 844 844 845 - #: src/components/compose.jsx:2738 845 + #: src/components/compose.jsx:2740 846 846 msgid "Edit audio description" 847 847 msgstr "Edit audio description" 848 848 849 - #: src/components/compose.jsx:2783 850 - #: src/components/compose.jsx:2832 849 + #: src/components/compose.jsx:2785 850 + #: src/components/compose.jsx:2834 851 851 msgid "Generating description. Please wait…" 852 852 msgstr "Generating description. Please wait…" 853 853 854 854 #. placeholder {0}: e.message 855 - #: src/components/compose.jsx:2803 855 + #: src/components/compose.jsx:2805 856 856 msgid "Failed to generate description: {0}" 857 857 msgstr "Failed to generate description: {0}" 858 858 859 - #: src/components/compose.jsx:2804 859 + #: src/components/compose.jsx:2806 860 860 msgid "Failed to generate description" 861 861 msgstr "Failed to generate description" 862 862 863 - #: src/components/compose.jsx:2816 864 - #: src/components/compose.jsx:2822 865 - #: src/components/compose.jsx:2868 863 + #: src/components/compose.jsx:2818 864 + #: src/components/compose.jsx:2824 865 + #: src/components/compose.jsx:2870 866 866 msgid "Generate description…" 867 867 msgstr "" 868 868 869 869 #. placeholder {0}: e?.message ? `: ${e.message}` : '' 870 - #: src/components/compose.jsx:2855 870 + #: src/components/compose.jsx:2857 871 871 msgid "Failed to generate description{0}" 872 872 msgstr "Failed to generate description{0}" 873 873 874 874 #. placeholder {0}: localeCode2Text(lang) 875 - #: src/components/compose.jsx:2870 875 + #: src/components/compose.jsx:2872 876 876 msgid "({0}) <0>— experimental</0>" 877 877 msgstr "" 878 878 879 - #: src/components/compose.jsx:2889 879 + #: src/components/compose.jsx:2891 880 880 msgid "Done" 881 881 msgstr "" 882 882 883 883 #. placeholder {0}: i + 1 884 - #: src/components/compose.jsx:2925 884 + #: src/components/compose.jsx:2927 885 885 msgid "Choice {0}" 886 886 msgstr "Choice {0}" 887 887 888 - #: src/components/compose.jsx:2972 888 + #: src/components/compose.jsx:2974 889 889 msgid "Multiple choices" 890 890 msgstr "" 891 891 892 - #: src/components/compose.jsx:2975 892 + #: src/components/compose.jsx:2977 893 893 msgid "Duration" 894 894 msgstr "" 895 895 896 - #: src/components/compose.jsx:3006 896 + #: src/components/compose.jsx:3008 897 897 msgid "Remove poll" 898 898 msgstr "" 899 899 900 - #: src/components/compose.jsx:3224 900 + #: src/components/compose.jsx:3226 901 901 msgid "Search accounts" 902 902 msgstr "Search accounts" 903 903 904 - #: src/components/compose.jsx:3278 904 + #: src/components/compose.jsx:3280 905 905 #: src/components/generic-accounts.jsx:228 906 906 msgid "Error loading accounts" 907 907 msgstr "" 908 908 909 - #: src/components/compose.jsx:3422 909 + #: src/components/compose.jsx:3424 910 910 msgid "Custom emojis" 911 911 msgstr "" 912 912 913 - #: src/components/compose.jsx:3442 913 + #: src/components/compose.jsx:3444 914 914 msgid "Search emoji" 915 915 msgstr "Search emoji" 916 916 917 - #: src/components/compose.jsx:3473 917 + #: src/components/compose.jsx:3475 918 918 msgid "Error loading custom emojis" 919 919 msgstr "" 920 920 921 - #: src/components/compose.jsx:3484 921 + #: src/components/compose.jsx:3486 922 922 msgid "Recently used" 923 923 msgstr "Recently used" 924 924 925 - #: src/components/compose.jsx:3485 925 + #: src/components/compose.jsx:3487 926 926 msgid "Others" 927 927 msgstr "Others" 928 928 929 929 #. placeholder {0}: i18n.number(emojis.length - max) 930 - #: src/components/compose.jsx:3523 930 + #: src/components/compose.jsx:3525 931 931 msgid "{0} more…" 932 932 msgstr "" 933 933 934 - #: src/components/compose.jsx:3661 934 + #: src/components/compose.jsx:3663 935 935 msgid "Search GIFs" 936 936 msgstr "Search GIFs" 937 937 938 - #: src/components/compose.jsx:3676 938 + #: src/components/compose.jsx:3678 939 939 msgid "Powered by GIPHY" 940 940 msgstr "Powered by GIPHY" 941 941 942 - #: src/components/compose.jsx:3684 942 + #: src/components/compose.jsx:3686 943 943 msgid "Type to search GIFs" 944 944 msgstr "" 945 945 946 - #: src/components/compose.jsx:3782 946 + #: src/components/compose.jsx:3784 947 947 #: src/components/media-modal.jsx:465 948 948 #: src/components/timeline.jsx:923 949 949 msgid "Previous" 950 950 msgstr "" 951 951 952 - #: src/components/compose.jsx:3800 952 + #: src/components/compose.jsx:3802 953 953 #: src/components/media-modal.jsx:484 954 954 #: src/components/timeline.jsx:940 955 955 msgid "Next" 956 956 msgstr "" 957 957 958 - #: src/components/compose.jsx:3817 958 + #: src/components/compose.jsx:3819 959 959 msgid "Error loading GIFs" 960 960 msgstr "" 961 961