4b94e9c65e
> Good lord what is happening in there Previously the contents of the Web Push API payloads closely resembled the structure of JavaScript's [Notification](https://developer.mozilla.org/en-US/docs/Web/API/Notification). But now that the API is open to non-browser apps, and given that there is no required coupling between contents of the payload and a Notification object, here is how I changed the payload: ```json { "access_token": "...", "preferred_locale": "en", "notification_id": "12345", "notification_type": "follow", "title": "So and so followed you", "body": "This is my bio", "icon": "https://example.com/avatar.png" } ``` The title, body and icon attributes are included as a fallback so you can construct a minimal notification if you cannot perform a network request to the API to get more data.
298 lines
16 KiB
JSON
298 lines
16 KiB
JSON
{
|
||
"account.badges.bot": "Bot",
|
||
"account.block": "Блокирай",
|
||
"account.block_domain": "Hide everything from {domain}",
|
||
"account.blocked": "Blocked",
|
||
"account.direct": "Direct Message @{name}",
|
||
"account.disclaimer_full": "Information below may reflect the user's profile incompletely.",
|
||
"account.domain_blocked": "Domain hidden",
|
||
"account.edit_profile": "Редактирай профила си",
|
||
"account.follow": "Последвай",
|
||
"account.followers": "Последователи",
|
||
"account.follows": "Следвам",
|
||
"account.follows_you": "Твой последовател",
|
||
"account.hide_reblogs": "Hide boosts from @{name}",
|
||
"account.media": "Media",
|
||
"account.mention": "Споменаване",
|
||
"account.moved_to": "{name} has moved to:",
|
||
"account.mute": "Mute @{name}",
|
||
"account.mute_notifications": "Mute notifications from @{name}",
|
||
"account.muted": "Muted",
|
||
"account.posts": "Публикации",
|
||
"account.posts_with_replies": "Toots with replies",
|
||
"account.report": "Report @{name}",
|
||
"account.requested": "В очакване на одобрение",
|
||
"account.share": "Share @{name}'s profile",
|
||
"account.show_reblogs": "Show boosts from @{name}",
|
||
"account.unblock": "Не блокирай",
|
||
"account.unblock_domain": "Unhide {domain}",
|
||
"account.unfollow": "Не следвай",
|
||
"account.unmute": "Unmute @{name}",
|
||
"account.unmute_notifications": "Unmute notifications from @{name}",
|
||
"account.view_full_profile": "View full profile",
|
||
"alert.unexpected.message": "An unexpected error occurred.",
|
||
"alert.unexpected.title": "Oops!",
|
||
"boost_modal.combo": "You can press {combo} to skip this next time",
|
||
"bundle_column_error.body": "Something went wrong while loading this component.",
|
||
"bundle_column_error.retry": "Try again",
|
||
"bundle_column_error.title": "Network error",
|
||
"bundle_modal_error.close": "Close",
|
||
"bundle_modal_error.message": "Something went wrong while loading this component.",
|
||
"bundle_modal_error.retry": "Try again",
|
||
"column.blocks": "Blocked users",
|
||
"column.community": "Local timeline",
|
||
"column.direct": "Direct messages",
|
||
"column.domain_blocks": "Hidden domains",
|
||
"column.favourites": "Favourites",
|
||
"column.follow_requests": "Follow requests",
|
||
"column.home": "Начало",
|
||
"column.lists": "Lists",
|
||
"column.mutes": "Muted users",
|
||
"column.notifications": "Известия",
|
||
"column.pins": "Pinned toot",
|
||
"column.public": "Публичен канал",
|
||
"column_back_button.label": "Назад",
|
||
"column_header.hide_settings": "Hide settings",
|
||
"column_header.moveLeft_settings": "Move column to the left",
|
||
"column_header.moveRight_settings": "Move column to the right",
|
||
"column_header.pin": "Pin",
|
||
"column_header.show_settings": "Show settings",
|
||
"column_header.unpin": "Unpin",
|
||
"column_subheading.navigation": "Navigation",
|
||
"column_subheading.settings": "Settings",
|
||
"compose_form.direct_message_warning": "This toot will only be visible to all the mentioned users.",
|
||
"compose_form.hashtag_warning": "This toot won't be listed under any hashtag as it is unlisted. Only public toots can be searched by hashtag.",
|
||
"compose_form.lock_disclaimer": "Your account is not {locked}. Anyone can follow you to view your follower-only posts.",
|
||
"compose_form.lock_disclaimer.lock": "locked",
|
||
"compose_form.placeholder": "Какво си мислиш?",
|
||
"compose_form.publish": "Раздумай",
|
||
"compose_form.publish_loud": "{publish}!",
|
||
"compose_form.sensitive.marked": "Media is marked as sensitive",
|
||
"compose_form.sensitive.unmarked": "Media is not marked as sensitive",
|
||
"compose_form.spoiler.marked": "Text is hidden behind warning",
|
||
"compose_form.spoiler.unmarked": "Text is not hidden",
|
||
"compose_form.spoiler_placeholder": "Content warning",
|
||
"confirmation_modal.cancel": "Cancel",
|
||
"confirmations.block.confirm": "Block",
|
||
"confirmations.block.message": "Are you sure you want to block {name}?",
|
||
"confirmations.delete.confirm": "Delete",
|
||
"confirmations.delete.message": "Are you sure you want to delete this status?",
|
||
"confirmations.delete_list.confirm": "Delete",
|
||
"confirmations.delete_list.message": "Are you sure you want to permanently delete this list?",
|
||
"confirmations.domain_block.confirm": "Hide entire domain",
|
||
"confirmations.domain_block.message": "Are you really, really sure you want to block the entire {domain}? In most cases a few targeted blocks or mutes are sufficient and preferable.",
|
||
"confirmations.mute.confirm": "Mute",
|
||
"confirmations.mute.message": "Are you sure you want to mute {name}?",
|
||
"confirmations.unfollow.confirm": "Unfollow",
|
||
"confirmations.unfollow.message": "Are you sure you want to unfollow {name}?",
|
||
"embed.instructions": "Embed this status on your website by copying the code below.",
|
||
"embed.preview": "Here is what it will look like:",
|
||
"emoji_button.activity": "Activity",
|
||
"emoji_button.custom": "Custom",
|
||
"emoji_button.flags": "Flags",
|
||
"emoji_button.food": "Food & Drink",
|
||
"emoji_button.label": "Insert emoji",
|
||
"emoji_button.nature": "Nature",
|
||
"emoji_button.not_found": "No emojos!! (╯°□°)╯︵ ┻━┻",
|
||
"emoji_button.objects": "Objects",
|
||
"emoji_button.people": "People",
|
||
"emoji_button.recent": "Frequently used",
|
||
"emoji_button.search": "Search...",
|
||
"emoji_button.search_results": "Search results",
|
||
"emoji_button.symbols": "Symbols",
|
||
"emoji_button.travel": "Travel & Places",
|
||
"empty_column.community": "The local timeline is empty. Write something publicly to get the ball rolling!",
|
||
"empty_column.direct": "You don't have any direct messages yet. When you send or receive one, it will show up here.",
|
||
"empty_column.hashtag": "There is nothing in this hashtag yet.",
|
||
"empty_column.home": "Your home timeline is empty! Visit {public} or use search to get started and meet other users.",
|
||
"empty_column.home.public_timeline": "the public timeline",
|
||
"empty_column.list": "There is nothing in this list yet.",
|
||
"empty_column.notifications": "You don't have any notifications yet. Interact with others to start the conversation.",
|
||
"empty_column.public": "There is nothing here! Write something publicly, or manually follow users from other instances to fill it up",
|
||
"follow_request.authorize": "Authorize",
|
||
"follow_request.reject": "Reject",
|
||
"getting_started.appsshort": "Apps",
|
||
"getting_started.faq": "FAQ",
|
||
"getting_started.heading": "Първи стъпки",
|
||
"getting_started.open_source_notice": "Mastodon е софтуер с отворен код. Можеш да помогнеш или да докладваш за проблеми в Github: {github}.",
|
||
"getting_started.userguide": "User Guide",
|
||
"home.column_settings.advanced": "Advanced",
|
||
"home.column_settings.basic": "Basic",
|
||
"home.column_settings.filter_regex": "Filter out by regular expressions",
|
||
"home.column_settings.show_reblogs": "Show boosts",
|
||
"home.column_settings.show_replies": "Show replies",
|
||
"home.settings": "Column settings",
|
||
"keyboard_shortcuts.back": "to navigate back",
|
||
"keyboard_shortcuts.boost": "to boost",
|
||
"keyboard_shortcuts.column": "to focus a status in one of the columns",
|
||
"keyboard_shortcuts.compose": "to focus the compose textarea",
|
||
"keyboard_shortcuts.description": "Description",
|
||
"keyboard_shortcuts.down": "to move down in the list",
|
||
"keyboard_shortcuts.enter": "to open status",
|
||
"keyboard_shortcuts.favourite": "to favourite",
|
||
"keyboard_shortcuts.heading": "Keyboard Shortcuts",
|
||
"keyboard_shortcuts.hotkey": "Hotkey",
|
||
"keyboard_shortcuts.legend": "to display this legend",
|
||
"keyboard_shortcuts.mention": "to mention author",
|
||
"keyboard_shortcuts.reply": "to reply",
|
||
"keyboard_shortcuts.search": "to focus search",
|
||
"keyboard_shortcuts.toggle_hidden": "to show/hide text behind CW",
|
||
"keyboard_shortcuts.toot": "to start a brand new toot",
|
||
"keyboard_shortcuts.unfocus": "to un-focus compose textarea/search",
|
||
"keyboard_shortcuts.up": "to move up in the list",
|
||
"lightbox.close": "Затвори",
|
||
"lightbox.next": "Next",
|
||
"lightbox.previous": "Previous",
|
||
"lists.account.add": "Add to list",
|
||
"lists.account.remove": "Remove from list",
|
||
"lists.delete": "Delete list",
|
||
"lists.edit": "Edit list",
|
||
"lists.new.create": "Add list",
|
||
"lists.new.title_placeholder": "New list title",
|
||
"lists.search": "Search among people you follow",
|
||
"lists.subheading": "Your lists",
|
||
"loading_indicator.label": "Зареждане...",
|
||
"media_gallery.toggle_visible": "Toggle visibility",
|
||
"missing_indicator.label": "Not found",
|
||
"missing_indicator.sublabel": "This resource could not be found",
|
||
"mute_modal.hide_notifications": "Hide notifications from this user?",
|
||
"navigation_bar.blocks": "Blocked users",
|
||
"navigation_bar.community_timeline": "Local timeline",
|
||
"navigation_bar.direct": "Direct messages",
|
||
"navigation_bar.domain_blocks": "Hidden domains",
|
||
"navigation_bar.edit_profile": "Редактирай профил",
|
||
"navigation_bar.favourites": "Favourites",
|
||
"navigation_bar.follow_requests": "Follow requests",
|
||
"navigation_bar.info": "Extended information",
|
||
"navigation_bar.keyboard_shortcuts": "Keyboard shortcuts",
|
||
"navigation_bar.lists": "Lists",
|
||
"navigation_bar.logout": "Излизане",
|
||
"navigation_bar.mutes": "Muted users",
|
||
"navigation_bar.pins": "Pinned toots",
|
||
"navigation_bar.preferences": "Предпочитания",
|
||
"navigation_bar.public_timeline": "Публичен канал",
|
||
"notification.favourite": "{name} хареса твоята публикация",
|
||
"notification.follow": "{name} те последва",
|
||
"notification.mention": "{name} те спомена",
|
||
"notification.reblog": "{name} сподели твоята публикация",
|
||
"notifications.clear": "Clear notifications",
|
||
"notifications.clear_confirmation": "Are you sure you want to permanently clear all your notifications?",
|
||
"notifications.column_settings.alert": "Десктоп известия",
|
||
"notifications.column_settings.favourite": "Предпочитани:",
|
||
"notifications.column_settings.follow": "Нови последователи:",
|
||
"notifications.column_settings.mention": "Споменавания:",
|
||
"notifications.column_settings.push": "Push notifications",
|
||
"notifications.column_settings.push_meta": "This device",
|
||
"notifications.column_settings.reblog": "Споделяния:",
|
||
"notifications.column_settings.show": "Покажи в колона",
|
||
"notifications.column_settings.sound": "Play sound",
|
||
"notifications.group": "{count} notifications",
|
||
"onboarding.done": "Done",
|
||
"onboarding.next": "Next",
|
||
"onboarding.page_five.public_timelines": "The local timeline shows public posts from everyone on {domain}. The federated timeline shows public posts from everyone who people on {domain} follow. These are the Public Timelines, a great way to discover new people.",
|
||
"onboarding.page_four.home": "The home timeline shows posts from people you follow.",
|
||
"onboarding.page_four.notifications": "The notifications column shows when someone interacts with you.",
|
||
"onboarding.page_one.federation": "Mastodon is a network of independent servers joining up to make one larger social network. We call these servers instances.",
|
||
"onboarding.page_one.full_handle": "Your full handle",
|
||
"onboarding.page_one.handle_hint": "This is what you would tell your friends to search for.",
|
||
"onboarding.page_one.welcome": "Welcome to Mastodon!",
|
||
"onboarding.page_six.admin": "Your instance's admin is {admin}.",
|
||
"onboarding.page_six.almost_done": "Almost done...",
|
||
"onboarding.page_six.appetoot": "Bon Appetoot!",
|
||
"onboarding.page_six.apps_available": "There are {apps} available for iOS, Android and other platforms.",
|
||
"onboarding.page_six.github": "Mastodon is free open-source software. You can report bugs, request features, or contribute to the code on {github}.",
|
||
"onboarding.page_six.guidelines": "community guidelines",
|
||
"onboarding.page_six.read_guidelines": "Please read {domain}'s {guidelines}!",
|
||
"onboarding.page_six.various_app": "mobile apps",
|
||
"onboarding.page_three.profile": "Edit your profile to change your avatar, bio, and display name. There, you will also find other preferences.",
|
||
"onboarding.page_three.search": "Use the search bar to find people and look at hashtags, such as {illustration} and {introductions}. To look for a person who is not on this instance, use their full handle.",
|
||
"onboarding.page_two.compose": "Write posts from the compose column. You can upload images, change privacy settings, and add content warnings with the icons below.",
|
||
"onboarding.skip": "Skip",
|
||
"privacy.change": "Adjust status privacy",
|
||
"privacy.direct.long": "Post to mentioned users only",
|
||
"privacy.direct.short": "Direct",
|
||
"privacy.private.long": "Post to followers only",
|
||
"privacy.private.short": "Followers-only",
|
||
"privacy.public.long": "Post to public timelines",
|
||
"privacy.public.short": "Public",
|
||
"privacy.unlisted.long": "Do not show in public timelines",
|
||
"privacy.unlisted.short": "Unlisted",
|
||
"regeneration_indicator.label": "Loading…",
|
||
"regeneration_indicator.sublabel": "Your home feed is being prepared!",
|
||
"relative_time.days": "{number}d",
|
||
"relative_time.hours": "{number}h",
|
||
"relative_time.just_now": "now",
|
||
"relative_time.minutes": "{number}m",
|
||
"relative_time.seconds": "{number}s",
|
||
"reply_indicator.cancel": "Отказ",
|
||
"report.forward": "Forward to {target}",
|
||
"report.forward_hint": "The account is from another server. Send an anonymized copy of the report there as well?",
|
||
"report.hint": "The report will be sent to your instance moderators. You can provide an explanation of why you are reporting this account below:",
|
||
"report.placeholder": "Additional comments",
|
||
"report.submit": "Submit",
|
||
"report.target": "Reporting",
|
||
"search.placeholder": "Търсене",
|
||
"search_popout.search_format": "Advanced search format",
|
||
"search_popout.tips.full_text": "Simple text returns statuses you have written, favourited, boosted, or have been mentioned in, as well as matching usernames, display names, and hashtags.",
|
||
"search_popout.tips.hashtag": "hashtag",
|
||
"search_popout.tips.status": "status",
|
||
"search_popout.tips.text": "Simple text returns matching display names, usernames and hashtags",
|
||
"search_popout.tips.user": "user",
|
||
"search_results.accounts": "People",
|
||
"search_results.hashtags": "Hashtags",
|
||
"search_results.statuses": "Toots",
|
||
"search_results.total": "{count, number} {count, plural, one {result} other {results}}",
|
||
"standalone.public_title": "A look inside...",
|
||
"status.block": "Block @{name}",
|
||
"status.cancel_reblog_private": "Unboost",
|
||
"status.cannot_reblog": "This post cannot be boosted",
|
||
"status.delete": "Изтриване",
|
||
"status.direct": "Direct message @{name}",
|
||
"status.embed": "Embed",
|
||
"status.favourite": "Предпочитани",
|
||
"status.load_more": "Load more",
|
||
"status.media_hidden": "Media hidden",
|
||
"status.mention": "Споменаване",
|
||
"status.more": "More",
|
||
"status.mute": "Mute @{name}",
|
||
"status.mute_conversation": "Mute conversation",
|
||
"status.open": "Expand this status",
|
||
"status.pin": "Pin on profile",
|
||
"status.pinned": "Pinned toot",
|
||
"status.reblog": "Споделяне",
|
||
"status.reblog_private": "Boost to original audience",
|
||
"status.reblogged_by": "{name} сподели",
|
||
"status.reply": "Отговор",
|
||
"status.replyAll": "Reply to thread",
|
||
"status.report": "Report @{name}",
|
||
"status.sensitive_toggle": "Покажи",
|
||
"status.sensitive_warning": "Деликатно съдържание",
|
||
"status.share": "Share",
|
||
"status.show_less": "Show less",
|
||
"status.show_less_all": "Show less for all",
|
||
"status.show_more": "Show more",
|
||
"status.show_more_all": "Show more for all",
|
||
"status.unmute_conversation": "Unmute conversation",
|
||
"status.unpin": "Unpin from profile",
|
||
"tabs_bar.federated_timeline": "Federated",
|
||
"tabs_bar.home": "Начало",
|
||
"tabs_bar.local_timeline": "Local",
|
||
"tabs_bar.notifications": "Известия",
|
||
"tabs_bar.search": "Search",
|
||
"ui.beforeunload": "Your draft will be lost if you leave Mastodon.",
|
||
"upload_area.title": "Drag & drop to upload",
|
||
"upload_button.label": "Добави медия",
|
||
"upload_form.description": "Describe for the visually impaired",
|
||
"upload_form.focus": "Crop",
|
||
"upload_form.undo": "Отмяна",
|
||
"upload_progress.label": "Uploading...",
|
||
"video.close": "Close video",
|
||
"video.exit_fullscreen": "Exit full screen",
|
||
"video.expand": "Expand video",
|
||
"video.fullscreen": "Full screen",
|
||
"video.hide": "Hide video",
|
||
"video.mute": "Mute sound",
|
||
"video.pause": "Pause",
|
||
"video.play": "Play",
|
||
"video.unmute": "Unmute sound"
|
||
}
|