This commit is contained in:
mashirozx 2021-08-01 10:13:33 +08:00
parent ad9d20a2d2
commit f49af153f5
7 changed files with 258 additions and 228 deletions

1
.eslintignore Normal file
View File

@ -0,0 +1 @@
src/locales/*.json

1
.prettierignore Normal file
View File

@ -0,0 +1 @@
src/locales/*.json

View File

@ -98,7 +98,7 @@ const options: Options = {
defaultMessage: 'Quote', defaultMessage: 'Quote',
}), }),
desc: intl.formatMessage({ desc: intl.formatMessage({
id: 'options.homepage.signature.desc', id: 'options.homepage.quote.desc',
defaultMessage: 'The quote text (behinds the slogan).', defaultMessage: 'The quote text (behinds the slogan).',
}), }),
type: 'longString', type: 'longString',

View File

@ -1,75 +1,82 @@
{ {
'admin.restore.title': 'Restore this option to default.', "admin.restore.title": "Restore this option to default.",
'app.common.units.year': '{num, plural, =0 {just now} =1 {1 second} other {{num, number, ::compact-short} seconds}}', "app.common.units.day": "{num, plural, =0 {just now} =1 {1 day} other {{num, number, ::compact-short} days}}",
'messages.admin.invalidUrl': 'Invalid URL', "app.common.units.hour": "{num, plural, =0 {just now} =1 {1 hour} other {{num, number, ::compact-short} hours}}",
'messages.admin.uplicateUrls': 'Duplicate URLs', "app.common.units.minute": "{num, plural, =0 {just now} =1 {1 minute} other {{num, number, ::compact-short} minutes}}",
'messages.comment.submit.error': 'Comment post failure.', "app.common.units.month": "{num, plural, =0 {just now} =1 {1 month} other {{num, number, ::compact-short} monthes}}",
'messages.comment.submit.success': 'Comment post successfully.', "app.common.units.second": "{num, plural, =0 {just now} =1 {1 second} other {{num, number, ::compact-short} seconds}}",
'messages.commonMessages.javascriptErrorTitle': 'Opps, something when wrong!', "app.common.units.year": "{num, plural, =0 {just now} =1 {1 year} other {{num, number, ::compact-short} years}}",
'messages.popup.close': 'Close', "messages.admin.invalidUrl": "Invalid URL",
'messages.popup.dismiss': 'Dismiss', "messages.admin.uplicateUrls": "Duplicate URLs",
'messages.popup.showDetails': 'Show details', "messages.comment.submit.error": "Comment post failure.",
'messages.postContent.cache.found': 'Fetching the latest post content...', "messages.comment.submit.success": "Comment post successfully.",
'messages.postList.cache.found': 'Fetching the latest post list...', "messages.commonMessages.javascriptErrorTitle": "Opps, something when wrong!",
'messages.postList.reachLastPage': 'No more...', "messages.popup.close": "Close",
'messages.posts.fetchPageError': 'Failed to fetch page content.', "messages.popup.dismiss": "Dismiss",
'messages.posts.fetchPostError': 'Failed to fetch post content.', "messages.popup.showDetails": "Show details",
'messages.wordpress.applicationPasswordsEndpointNotAvailable': 'ApplicationPasswords is not avaliabe in your WordPress installation, please upgrade WordPress to v5.6.0 above, or enable the ApplicationPasswords feature in v5.6.0 above installation.', "messages.postContent.cache.found": "Fetching the latest post content...",
'messages.wordpress.permalink.shouldIncludeFieldsInPost': 'WordPress pages should use %slug% as the permalink.', "messages.postList.cache.found": "Fetching the latest post list...",
'messages.wordpress.permalink.shouldIncludeFieldsInSingle': 'WordPress permalink should include at least one of %post_id%, %postname%. You may set them here: {baseUrl}/wp-admin/options-permalink.php', "messages.postList.reachLastPage": "No more...",
'options.basic.site.logo.binds.button': 'Use this image', "messages.posts.fetchPageError": "Failed to fetch page content.",
'options.basic.site.logo.binds.title': 'Select image for site logo.', "messages.posts.fetchPostError": "Failed to fetch post content.",
'options.basic.site.logo.desc': 'The site\'s Logo image, will display on navigation bar.', "messages.wordpress.applicationPasswordsEndpointNotAvailable": "ApplicationPasswords is not avaliabe in your WordPress installation, please upgrade WordPress to v5.6.0 above, or enable the ApplicationPasswords feature in v5.6.0 above installation.",
'options.basic.site.logo.title': 'Site logo', "messages.wordpress.permalink.shouldIncludeFieldsInPost": "WordPress pages should use %slug% as the permalink.",
'options.basic.site.title.desc': 'The site title', "messages.wordpress.permalink.shouldIncludeFieldsInSingle": "WordPress permalink should include at least one of %post_id%, %postname%. You may set them here: {baseUrl}/wp-admin/options-permalink.php",
'options.basic.site.title.title': 'Site title', "options.basic.site.logo.binds.button": "Use this image",
'options.basicDesc': 'The basic options', "options.basic.site.logo.binds.title": "Select image for site logo.",
'options.basicTitle': 'Basic', "options.basic.site.logo.desc": "The site's Logo image, will display on navigation bar.",
'options.homepage.cover.image.binds.button': 'Use this image', "options.basic.site.logo.title": "Site logo",
'options.homepage.cover.image.binds.title': 'Select image for homepage cover.', "options.basic.site.title.desc": "The site title",
'options.homepage.cover.image.desc': 'Homepage cover images. Will enable slide show with multiple selections.', "options.basic.site.title.title": "Site title",
'options.homepage.cover.image.title': 'Cover images', "options.basicDesc": "The basic options",
'options.homepage.quote.title': 'Quote', "options.basicTitle": "Basic",
'options.homepage.signature.desc': 'The signature text (follows the quote).', "options.homepage.cover.image.binds.button": "Use this image",
'options.homepage.signature.title': 'Signature', "options.homepage.cover.image.binds.title": "Select image for homepage cover.",
'options.homepage.slogan.desc': 'The slogan text (with typewriter effect), recommend 10-20 characters.', "options.homepage.cover.image.desc": "Homepage cover images. Will enable slide show with multiple selections.",
'options.homepage.slogan.title': 'Slogan', "options.homepage.cover.image.title": "Cover images",
'options.homepageDesc': 'Homepage options', "options.homepage.quote.desc": "The quote text (behinds the slogan).",
'options.homepageTitle': 'Homepage', "options.homepage.quote.title": "Quote",
'options.social.facebook.desc': 'Your \'<a href="https://facebook.com" target="_blank">Facebook</a>\' username', "options.homepage.signature.desc": "The signature text (follows the quote).",
'options.social.facebook.title': 'Facebook username', "options.homepage.signature.title": "Signature",
'options.social.github.desc': 'Your \'<a href="https://github.com" target="_blank">Github</a>\' username', "options.homepage.slogan.desc": "The slogan text (with typewriter effect), recommend 10-20 characters.",
'options.social.github.title': 'Github username', "options.homepage.slogan.title": "Slogan",
'options.social.gitlab.desc': 'Your \'<a href="https://gitlab.com" target="_blank">Gitlab</a>\' username', "options.homepageDesc": "Homepage options",
'options.social.gitlab.title': 'Gitlab username', "options.homepageTitle": "Homepage",
'options.social.stackoverflow.desc': 'Your \'<a href="https://stackoverflow.com" target="_blank">Stackoverflow</a>\' username', "options.social.facebook.desc": "Your '<a href=\"https://facebook.com\" target=\"_blank\">Facebook</a>' username",
'options.social.stackoverflow.title': 'Stackoverflow username', "options.social.facebook.title": "Facebook username",
'options.social.twitter.desc': 'Your \'<a href="https://twitter.com" target="_blank">Twitter</a>\' username', "options.social.github.desc": "Your '<a href=\"https://github.com\" target=\"_blank\">Github</a>' username",
'options.social.twitter.title': 'Twitter username', "options.social.github.title": "Github username",
'options.social.weibo.desc': 'Your \'<a href="https://weibo.com" target="_blank">Weibo</a>\' username', "options.social.gitlab.desc": "Your '<a href=\"https://gitlab.com\" target=\"_blank\">Gitlab</a>' username",
'options.social.weibo.title': 'Weibo username', "options.social.gitlab.title": "Gitlab username",
'options.thirdParty.reCaptcha.enable.desc': 'Use reCAPTCHA for anti-spam check.', "options.social.stackoverflow.desc": "Your '<a href=\"https://stackoverflow.com\" target=\"_blank\">Stackoverflow</a>' username",
'options.thirdParty.reCaptcha.enable.negativeLabel': 'Disabled', "options.social.stackoverflow.title": "Stackoverflow username",
'options.thirdParty.reCaptcha.enable.positiveLabel': 'Enabled', "options.social.twitter.desc": "Your '<a href=\"https://twitter.com\" target=\"_blank\">Twitter</a>' username",
'options.thirdParty.reCaptcha.enable.title': 'Enable reCAPTCHA', "options.social.twitter.title": "Twitter username",
'options.thirdParty.reCaptcha.secretKey.title': 'reCAPTCHA secret key', "options.social.weibo.desc": "Your '<a href=\"https://weibo.com\" target=\"_blank\">Weibo</a>' username",
'options.thirdParty.reCaptcha.siteKey.title': 'reCAPTCHA site key', "options.social.weibo.title": "Weibo username",
'options.thirdParty.reCaptcha.version.desc': 'Register your reCAPTCHA app \'<a href="https://www.google.com/recaptcha/about/" target="_blank">here</a>\', and choose a version.', "options.thirdParty.reCaptcha.enable.desc": "Use reCAPTCHA for anti-spam check.",
'options.thirdParty.reCaptcha.version.label.v2': 'reCAPTCHA version 2', "options.thirdParty.reCaptcha.enable.negativeLabel": "Disabled",
'options.thirdParty.reCaptcha.version.label.v3': 'reCAPTCHA version 3', "options.thirdParty.reCaptcha.enable.positiveLabel": "Enabled",
'options.thirdParty.reCaptcha.version.title': 'reCAPTCHA version', "options.thirdParty.reCaptcha.enable.title": "Enable reCAPTCHA",
'posts.comment.composer.authorEmail.label': 'Email *', "options.thirdParty.reCaptcha.secretKey.title": "reCAPTCHA secret key",
'posts.comment.composer.authorName.label': 'Nickname *', "options.thirdParty.reCaptcha.siteKey.title": "reCAPTCHA site key",
'posts.comment.composer.authorUrl.label': 'Link', "options.thirdParty.reCaptcha.version.desc": "Register your reCAPTCHA app '<a href=\"https://www.google.com/recaptcha/about/\" target=\"_blank\">here</a>', and choose a version.",
'posts.comment.composer.captcha.toggleButton': 'Captcha', "options.thirdParty.reCaptcha.version.label.v2": "reCAPTCHA version 2",
'posts.comment.composer.content.label': 'You are a surprise that I will only meet once in my life', "options.thirdParty.reCaptcha.version.label.v3": "reCAPTCHA version 3",
'posts.comment.composer.submit.button': 'Submit', "options.thirdParty.reCaptcha.version.title": "reCAPTCHA version",
'posts.comment.composer.tips.markdownSupported': 'Markdown Supported', "posts.comment.composer.authorEmail.label": "Email *",
'posts.commentCount': '{commentCount, plural, =0 {No comment} =1 {One comment} other {{commentCount, number, ::compact-short} Comments}}', "posts.comment.composer.authorName.label": "Nickname *",
'posts.postTimeOn.brief': '{publistTimeDate, date, long}', "posts.comment.composer.authorUrl.label": "Link",
'posts.postTimeOn.full': 'Post on {publistTimeDate, date, long}', "posts.comment.composer.captcha.toggleButton": "Captcha",
'posts.postTimeSince': 'Post {duration} ago', "posts.comment.composer.content.label": "You are a surprise that I will only meet once in my life",
'posts.readCount': '{readCount, plural, =0 {No one ever read} =1 {One read} other {{readCount, number, ::compact-short} Reads}}', "posts.comment.composer.submit.button": "Submit",
'posts.readMore': 'Read More', "posts.comment.composer.tips.markdownSupported": "Markdown Supported",
'posts.wordCount': '{wordCount, plural, =0 {No content} =1 {One word} other {{wordCount, number, ::compact-short} Words}}' "posts.commentCount": "{commentCount, plural, =0 {No comment} =1 {One comment} other {{commentCount, number, ::compact-short} Comments}}",
} "posts.postTimeOn.brief": "{publistTimeDate, date, long}",
"posts.postTimeOn.full": "Post on {publistTimeDate, date, long}",
"posts.postTimeSince.brief": "{duration} ago",
"posts.postTimeSince.full": "Post {duration} ago",
"posts.readCount": "{readCount, plural, =0 {No one ever read} =1 {One read} other {{readCount, number, ::compact-short} Reads}}",
"posts.readMore": "Read More",
"posts.wordCount": "{wordCount, plural, =0 {No content} =1 {One word} other {{wordCount, number, ::compact-short} Words}}"
}

View File

@ -1,221 +1,242 @@
{ {
'admin.restore.title': { "admin.restore.title": {
'defaultMessage': 'Restore this option to default.' "defaultMessage": "Restore this option to default."
}, },
'app.common.units.year': { "app.common.units.day": {
'defaultMessage': '{num, plural, =0 {just now} =1 {1 second} other {{num, number, ::compact-short} seconds}}' "defaultMessage": "{num, plural, =0 {just now} =1 {1 day} other {{num, number, ::compact-short} days}}"
}, },
'messages.admin.invalidUrl': { "app.common.units.hour": {
'defaultMessage': 'Invalid URL' "defaultMessage": "{num, plural, =0 {just now} =1 {1 hour} other {{num, number, ::compact-short} hours}}"
}, },
'messages.admin.uplicateUrls': { "app.common.units.minute": {
'defaultMessage': 'Duplicate URLs' "defaultMessage": "{num, plural, =0 {just now} =1 {1 minute} other {{num, number, ::compact-short} minutes}}"
}, },
'messages.comment.submit.error': { "app.common.units.month": {
'defaultMessage': 'Comment post failure.' "defaultMessage": "{num, plural, =0 {just now} =1 {1 month} other {{num, number, ::compact-short} monthes}}"
}, },
'messages.comment.submit.success': { "app.common.units.second": {
'defaultMessage': 'Comment post successfully.' "defaultMessage": "{num, plural, =0 {just now} =1 {1 second} other {{num, number, ::compact-short} seconds}}"
}, },
'messages.commonMessages.javascriptErrorTitle': { "app.common.units.year": {
'defaultMessage': 'Opps, something when wrong!' "defaultMessage": "{num, plural, =0 {just now} =1 {1 year} other {{num, number, ::compact-short} years}}"
}, },
'messages.popup.close': { "messages.admin.invalidUrl": {
'defaultMessage': 'Close' "defaultMessage": "Invalid URL"
}, },
'messages.popup.dismiss': { "messages.admin.uplicateUrls": {
'defaultMessage': 'Dismiss' "defaultMessage": "Duplicate URLs"
}, },
'messages.popup.showDetails': { "messages.comment.submit.error": {
'defaultMessage': 'Show details' "defaultMessage": "Comment post failure."
}, },
'messages.postContent.cache.found': { "messages.comment.submit.success": {
'defaultMessage': 'Fetching the latest post content...' "defaultMessage": "Comment post successfully."
}, },
'messages.postList.cache.found': { "messages.commonMessages.javascriptErrorTitle": {
'defaultMessage': 'Fetching the latest post list...' "defaultMessage": "Opps, something when wrong!"
}, },
'messages.postList.reachLastPage': { "messages.popup.close": {
'defaultMessage': 'No more...' "defaultMessage": "Close"
}, },
'messages.posts.fetchPageError': { "messages.popup.dismiss": {
'defaultMessage': 'Failed to fetch page content.' "defaultMessage": "Dismiss"
}, },
'messages.posts.fetchPostError': { "messages.popup.showDetails": {
'defaultMessage': 'Failed to fetch post content.' "defaultMessage": "Show details"
}, },
'messages.wordpress.applicationPasswordsEndpointNotAvailable': { "messages.postContent.cache.found": {
'defaultMessage': 'ApplicationPasswords is not avaliabe in your WordPress installation, please upgrade WordPress to v5.6.0 above, or enable the ApplicationPasswords feature in v5.6.0 above installation.' "defaultMessage": "Fetching the latest post content..."
}, },
'messages.wordpress.permalink.shouldIncludeFieldsInPost': { "messages.postList.cache.found": {
'defaultMessage': 'WordPress pages should use %slug% as the permalink.' "defaultMessage": "Fetching the latest post list..."
}, },
'messages.wordpress.permalink.shouldIncludeFieldsInSingle': { "messages.postList.reachLastPage": {
'defaultMessage': 'WordPress permalink should include at least one of %post_id%, %postname%. You may set them here: {baseUrl}/wp-admin/options-permalink.php' "defaultMessage": "No more..."
}, },
'options.basic.site.logo.binds.button': { "messages.posts.fetchPageError": {
'defaultMessage': 'Use this image' "defaultMessage": "Failed to fetch page content."
}, },
'options.basic.site.logo.binds.title': { "messages.posts.fetchPostError": {
'defaultMessage': 'Select image for site logo.' "defaultMessage": "Failed to fetch post content."
}, },
'options.basic.site.logo.desc': { "messages.wordpress.applicationPasswordsEndpointNotAvailable": {
'defaultMessage': 'The site\'s Logo image, will display on navigation bar.' "defaultMessage": "ApplicationPasswords is not avaliabe in your WordPress installation, please upgrade WordPress to v5.6.0 above, or enable the ApplicationPasswords feature in v5.6.0 above installation."
}, },
'options.basic.site.logo.title': { "messages.wordpress.permalink.shouldIncludeFieldsInPost": {
'defaultMessage': 'Site logo' "defaultMessage": "WordPress pages should use %slug% as the permalink."
}, },
'options.basic.site.title.desc': { "messages.wordpress.permalink.shouldIncludeFieldsInSingle": {
'defaultMessage': 'The site title' "defaultMessage": "WordPress permalink should include at least one of %post_id%, %postname%. You may set them here: {baseUrl}/wp-admin/options-permalink.php"
}, },
'options.basic.site.title.title': { "options.basic.site.logo.binds.button": {
'defaultMessage': 'Site title' "defaultMessage": "Use this image"
}, },
'options.basicDesc': { "options.basic.site.logo.binds.title": {
'defaultMessage': 'The basic options' "defaultMessage": "Select image for site logo."
}, },
'options.basicTitle': { "options.basic.site.logo.desc": {
'defaultMessage': 'Basic' "defaultMessage": "The site's Logo image, will display on navigation bar."
}, },
'options.homepage.cover.image.binds.button': { "options.basic.site.logo.title": {
'defaultMessage': 'Use this image' "defaultMessage": "Site logo"
}, },
'options.homepage.cover.image.binds.title': { "options.basic.site.title.desc": {
'defaultMessage': 'Select image for homepage cover.' "defaultMessage": "The site title"
}, },
'options.homepage.cover.image.desc': { "options.basic.site.title.title": {
'defaultMessage': 'Homepage cover images. Will enable slide show with multiple selections.' "defaultMessage": "Site title"
}, },
'options.homepage.cover.image.title': { "options.basicDesc": {
'defaultMessage': 'Cover images' "defaultMessage": "The basic options"
}, },
'options.homepage.quote.title': { "options.basicTitle": {
'defaultMessage': 'Quote' "defaultMessage": "Basic"
}, },
'options.homepage.signature.desc': { "options.homepage.cover.image.binds.button": {
'defaultMessage': 'The signature text (follows the quote).' "defaultMessage": "Use this image"
}, },
'options.homepage.signature.title': { "options.homepage.cover.image.binds.title": {
'defaultMessage': 'Signature' "defaultMessage": "Select image for homepage cover."
}, },
'options.homepage.slogan.desc': { "options.homepage.cover.image.desc": {
'defaultMessage': 'The slogan text (with typewriter effect), recommend 10-20 characters.' "defaultMessage": "Homepage cover images. Will enable slide show with multiple selections."
}, },
'options.homepage.slogan.title': { "options.homepage.cover.image.title": {
'defaultMessage': 'Slogan' "defaultMessage": "Cover images"
}, },
'options.homepageDesc': { "options.homepage.quote.desc": {
'defaultMessage': 'Homepage options' "defaultMessage": "The quote text (behinds the slogan)."
}, },
'options.homepageTitle': { "options.homepage.quote.title": {
'defaultMessage': 'Homepage' "defaultMessage": "Quote"
}, },
'options.social.facebook.desc': { "options.homepage.signature.desc": {
'defaultMessage': 'Your \'<a href="https://facebook.com" target="_blank">Facebook</a>\' username' "defaultMessage": "The signature text (follows the quote)."
}, },
'options.social.facebook.title': { "options.homepage.signature.title": {
'defaultMessage': 'Facebook username' "defaultMessage": "Signature"
}, },
'options.social.github.desc': { "options.homepage.slogan.desc": {
'defaultMessage': 'Your \'<a href="https://github.com" target="_blank">Github</a>\' username' "defaultMessage": "The slogan text (with typewriter effect), recommend 10-20 characters."
}, },
'options.social.github.title': { "options.homepage.slogan.title": {
'defaultMessage': 'Github username' "defaultMessage": "Slogan"
}, },
'options.social.gitlab.desc': { "options.homepageDesc": {
'defaultMessage': 'Your \'<a href="https://gitlab.com" target="_blank">Gitlab</a>\' username' "defaultMessage": "Homepage options"
}, },
'options.social.gitlab.title': { "options.homepageTitle": {
'defaultMessage': 'Gitlab username' "defaultMessage": "Homepage"
}, },
'options.social.stackoverflow.desc': { "options.social.facebook.desc": {
'defaultMessage': 'Your \'<a href="https://stackoverflow.com" target="_blank">Stackoverflow</a>\' username' "defaultMessage": "Your '<a href=\"https://facebook.com\" target=\"_blank\">Facebook</a>' username"
}, },
'options.social.stackoverflow.title': { "options.social.facebook.title": {
'defaultMessage': 'Stackoverflow username' "defaultMessage": "Facebook username"
}, },
'options.social.twitter.desc': { "options.social.github.desc": {
'defaultMessage': 'Your \'<a href="https://twitter.com" target="_blank">Twitter</a>\' username' "defaultMessage": "Your '<a href=\"https://github.com\" target=\"_blank\">Github</a>' username"
}, },
'options.social.twitter.title': { "options.social.github.title": {
'defaultMessage': 'Twitter username' "defaultMessage": "Github username"
}, },
'options.social.weibo.desc': { "options.social.gitlab.desc": {
'defaultMessage': 'Your \'<a href="https://weibo.com" target="_blank">Weibo</a>\' username' "defaultMessage": "Your '<a href=\"https://gitlab.com\" target=\"_blank\">Gitlab</a>' username"
}, },
'options.social.weibo.title': { "options.social.gitlab.title": {
'defaultMessage': 'Weibo username' "defaultMessage": "Gitlab username"
}, },
'options.thirdParty.reCaptcha.enable.desc': { "options.social.stackoverflow.desc": {
'defaultMessage': 'Use reCAPTCHA for anti-spam check.' "defaultMessage": "Your '<a href=\"https://stackoverflow.com\" target=\"_blank\">Stackoverflow</a>' username"
}, },
'options.thirdParty.reCaptcha.enable.negativeLabel': { "options.social.stackoverflow.title": {
'defaultMessage': 'Disabled' "defaultMessage": "Stackoverflow username"
}, },
'options.thirdParty.reCaptcha.enable.positiveLabel': { "options.social.twitter.desc": {
'defaultMessage': 'Enabled' "defaultMessage": "Your '<a href=\"https://twitter.com\" target=\"_blank\">Twitter</a>' username"
}, },
'options.thirdParty.reCaptcha.enable.title': { "options.social.twitter.title": {
'defaultMessage': 'Enable reCAPTCHA' "defaultMessage": "Twitter username"
}, },
'options.thirdParty.reCaptcha.secretKey.title': { "options.social.weibo.desc": {
'defaultMessage': 'reCAPTCHA secret key' "defaultMessage": "Your '<a href=\"https://weibo.com\" target=\"_blank\">Weibo</a>' username"
}, },
'options.thirdParty.reCaptcha.siteKey.title': { "options.social.weibo.title": {
'defaultMessage': 'reCAPTCHA site key' "defaultMessage": "Weibo username"
}, },
'options.thirdParty.reCaptcha.version.desc': { "options.thirdParty.reCaptcha.enable.desc": {
'defaultMessage': 'Register your reCAPTCHA app \'<a href="https://www.google.com/recaptcha/about/" target="_blank">here</a>\', and choose a version.' "defaultMessage": "Use reCAPTCHA for anti-spam check."
}, },
'options.thirdParty.reCaptcha.version.label.v2': { "options.thirdParty.reCaptcha.enable.negativeLabel": {
'defaultMessage': 'reCAPTCHA version 2' "defaultMessage": "Disabled"
}, },
'options.thirdParty.reCaptcha.version.label.v3': { "options.thirdParty.reCaptcha.enable.positiveLabel": {
'defaultMessage': 'reCAPTCHA version 3' "defaultMessage": "Enabled"
}, },
'options.thirdParty.reCaptcha.version.title': { "options.thirdParty.reCaptcha.enable.title": {
'defaultMessage': 'reCAPTCHA version' "defaultMessage": "Enable reCAPTCHA"
}, },
'posts.comment.composer.authorEmail.label': { "options.thirdParty.reCaptcha.secretKey.title": {
'defaultMessage': 'Email *' "defaultMessage": "reCAPTCHA secret key"
}, },
'posts.comment.composer.authorName.label': { "options.thirdParty.reCaptcha.siteKey.title": {
'defaultMessage': 'Nickname *' "defaultMessage": "reCAPTCHA site key"
}, },
'posts.comment.composer.authorUrl.label': { "options.thirdParty.reCaptcha.version.desc": {
'defaultMessage': 'Link' "defaultMessage": "Register your reCAPTCHA app '<a href=\"https://www.google.com/recaptcha/about/\" target=\"_blank\">here</a>', and choose a version."
}, },
'posts.comment.composer.captcha.toggleButton': { "options.thirdParty.reCaptcha.version.label.v2": {
'defaultMessage': 'Captcha' "defaultMessage": "reCAPTCHA version 2"
}, },
'posts.comment.composer.content.label': { "options.thirdParty.reCaptcha.version.label.v3": {
'defaultMessage': 'You are a surprise that I will only meet once in my life' "defaultMessage": "reCAPTCHA version 3"
}, },
'posts.comment.composer.submit.button': { "options.thirdParty.reCaptcha.version.title": {
'defaultMessage': 'Submit' "defaultMessage": "reCAPTCHA version"
}, },
'posts.comment.composer.tips.markdownSupported': { "posts.comment.composer.authorEmail.label": {
'defaultMessage': 'Markdown Supported' "defaultMessage": "Email *"
}, },
'posts.commentCount': { "posts.comment.composer.authorName.label": {
'defaultMessage': '{commentCount, plural, =0 {No comment} =1 {One comment} other {{commentCount, number, ::compact-short} Comments}}' "defaultMessage": "Nickname *"
}, },
'posts.postTimeOn.brief': { "posts.comment.composer.authorUrl.label": {
'defaultMessage': '{publistTimeDate, date, long}' "defaultMessage": "Link"
}, },
'posts.postTimeOn.full': { "posts.comment.composer.captcha.toggleButton": {
'defaultMessage': 'Post on {publistTimeDate, date, long}' "defaultMessage": "Captcha"
}, },
'posts.postTimeSince': { "posts.comment.composer.content.label": {
'defaultMessage': 'Post {duration} ago' "defaultMessage": "You are a surprise that I will only meet once in my life"
}, },
'posts.readCount': { "posts.comment.composer.submit.button": {
'defaultMessage': '{readCount, plural, =0 {No one ever read} =1 {One read} other {{readCount, number, ::compact-short} Reads}}' "defaultMessage": "Submit"
}, },
'posts.readMore': { "posts.comment.composer.tips.markdownSupported": {
'defaultMessage': 'Read More' "defaultMessage": "Markdown Supported"
}, },
'posts.wordCount': { "posts.commentCount": {
'defaultMessage': '{wordCount, plural, =0 {No content} =1 {One word} other {{wordCount, number, ::compact-short} Words}}' "defaultMessage": "{commentCount, plural, =0 {No comment} =1 {One comment} other {{commentCount, number, ::compact-short} Comments}}"
},
"posts.postTimeOn.brief": {
"defaultMessage": "{publistTimeDate, date, long}"
},
"posts.postTimeOn.full": {
"defaultMessage": "Post on {publistTimeDate, date, long}"
},
"posts.postTimeSince.brief": {
"defaultMessage": "{duration} ago"
},
"posts.postTimeSince.full": {
"defaultMessage": "Post {duration} ago"
},
"posts.readCount": {
"defaultMessage": "{readCount, plural, =0 {No one ever read} =1 {One read} other {{readCount, number, ::compact-short} Reads}}"
},
"posts.readMore": {
"defaultMessage": "Read More"
},
"posts.wordCount": {
"defaultMessage": "{wordCount, plural, =0 {No content} =1 {One word} other {{wordCount, number, ::compact-short} Words}}"
} }
} }

View File

@ -14,7 +14,7 @@ export default function (publishTime: string, brief = false) {
) )
: intl.formatMessage( : intl.formatMessage(
{ {
id: 'posts.postTimeSince', id: 'posts.postTimeSince.brief',
defaultMessage: '{duration} ago', defaultMessage: '{duration} ago',
}, },
{ duration: publistTimeDate.getReadableTimeFromNowBrief() } { duration: publistTimeDate.getReadableTimeFromNowBrief() }
@ -30,7 +30,7 @@ export default function (publishTime: string, brief = false) {
) )
: intl.formatMessage( : intl.formatMessage(
{ {
id: 'posts.postTimeSince', id: 'posts.postTimeSince.full',
defaultMessage: 'Post {duration} ago', defaultMessage: 'Post {duration} ago',
}, },
{ duration: publistTimeDate.getReadableTimeFromNow() } { duration: publistTimeDate.getReadableTimeFromNow() }

View File

@ -83,7 +83,7 @@ export default class timeFormater {
) )
const month = intl.formatMessage( const month = intl.formatMessage(
{ {
id: 'app.common.units.year', id: 'app.common.units.month',
defaultMessage: defaultMessage:
'{num, plural, =0 {just now} =1 {1 month} other {{num, number, ::compact-short} monthes}}', '{num, plural, =0 {just now} =1 {1 month} other {{num, number, ::compact-short} monthes}}',
}, },
@ -91,7 +91,7 @@ export default class timeFormater {
) )
const day = intl.formatMessage( const day = intl.formatMessage(
{ {
id: 'app.common.units.year', id: 'app.common.units.day',
defaultMessage: defaultMessage:
'{num, plural, =0 {just now} =1 {1 day} other {{num, number, ::compact-short} days}}', '{num, plural, =0 {just now} =1 {1 day} other {{num, number, ::compact-short} days}}',
}, },
@ -99,7 +99,7 @@ export default class timeFormater {
) )
const hour = intl.formatMessage( const hour = intl.formatMessage(
{ {
id: 'app.common.units.year', id: 'app.common.units.hour',
defaultMessage: defaultMessage:
'{num, plural, =0 {just now} =1 {1 hour} other {{num, number, ::compact-short} hours}}', '{num, plural, =0 {just now} =1 {1 hour} other {{num, number, ::compact-short} hours}}',
}, },
@ -107,7 +107,7 @@ export default class timeFormater {
) )
const minute = intl.formatMessage( const minute = intl.formatMessage(
{ {
id: 'app.common.units.year', id: 'app.common.units.minute',
defaultMessage: defaultMessage:
'{num, plural, =0 {just now} =1 {1 minute} other {{num, number, ::compact-short} minutes}}', '{num, plural, =0 {just now} =1 {1 minute} other {{num, number, ::compact-short} minutes}}',
}, },
@ -115,7 +115,7 @@ export default class timeFormater {
) )
const second = intl.formatMessage( const second = intl.formatMessage(
{ {
id: 'app.common.units.year', id: 'app.common.units.second',
defaultMessage: defaultMessage:
'{num, plural, =0 {just now} =1 {1 second} other {{num, number, ::compact-short} seconds}}', '{num, plural, =0 {just now} =1 {1 second} other {{num, number, ::compact-short} seconds}}',
}, },