Files
indiekit-endpoint-microsub/locales/en.json
Ricardo c830ad5df6 feat: add show/hide read items and fix individual mark-read
- Add countReadItems function to storage/items.js
- Update getTimelineItems to filter out read items by default
- Add showRead query param support to channel controller
- Update channel.njk with show/hide read toggle buttons
- Add "All caught up!" state when all items are read
- Add JavaScript handler for individual mark-read buttons
- Mark-read now hides the item with smooth animation
- Add locale strings: showRead, hideRead, allRead

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-06 21:24:33 +01:00

97 lines
2.9 KiB
JSON

{
"microsub": {
"reader": {
"title": "Reader",
"empty": "No items to display",
"markAllRead": "Mark all as read",
"showRead": "Show read ({{count}})",
"hideRead": "Hide read items",
"allRead": "All caught up!",
"newer": "Newer",
"older": "Older"
},
"channels": {
"title": "Channels",
"name": "Channel name",
"new": "New channel",
"create": "Create channel",
"delete": "Delete channel",
"settings": "Channel settings",
"empty": "No channels yet. Create one to get started.",
"notifications": "Notifications"
},
"timeline": {
"title": "Timeline",
"empty": "No items in this channel",
"markRead": "Mark as read",
"markUnread": "Mark as unread",
"remove": "Remove"
},
"feeds": {
"title": "Feeds",
"follow": "Follow",
"subscribe": "Subscribe to a feed",
"unfollow": "Unfollow",
"empty": "No feeds followed in this channel",
"url": "Feed URL",
"urlPlaceholder": "https://example.com/feed.xml"
},
"item": {
"reply": "Reply",
"like": "Like",
"repost": "Repost",
"bookmark": "Bookmark",
"viewOriginal": "View original"
},
"compose": {
"title": "Compose",
"content": "What's on your mind?",
"comment": "Add a comment (optional)",
"commentHint": "Your comment will be included when this is syndicated",
"syndicateTo": "Syndicate to",
"syndicateHint": "Select where to cross-post this",
"submit": "Post",
"cancel": "Cancel",
"replyTo": "Replying to",
"likeOf": "Liking",
"repostOf": "Reposting",
"bookmarkOf": "Bookmarking"
},
"settings": {
"title": "{{channel}} settings",
"excludeTypes": "Exclude interaction types",
"excludeTypesHelp": "Select types of posts to hide from this channel",
"excludeRegex": "Exclude pattern",
"excludeRegexHelp": "Regular expression to filter out matching content",
"save": "Save settings",
"dangerZone": "Danger zone",
"deleteWarning": "Deleting this channel will permanently remove all feeds and items. This action cannot be undone.",
"deleteConfirm": "Are you sure you want to delete this channel and all its content?",
"delete": "Delete channel",
"types": {
"like": "Likes",
"repost": "Reposts",
"bookmark": "Bookmarks",
"reply": "Replies",
"checkin": "Check-ins"
}
},
"search": {
"title": "Search",
"placeholder": "Enter URL or search term",
"submit": "Search",
"noResults": "No results found"
},
"preview": {
"title": "Preview",
"subscribe": "Subscribe to this feed"
},
"error": {
"channelNotFound": "Channel not found",
"feedNotFound": "Feed not found",
"invalidUrl": "Invalid URL",
"invalidAction": "Invalid action"
}
}
}