@jant/core 0.6.16 → 0.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +11 -11
- package/bin/commands/assets/upload.js +192 -15
- package/bin/commands/import-site.js +60 -4
- package/bin/commands/reset-password.js +21 -8
- package/bin/commands/site/snapshot/export.js +1 -1
- package/bin/commands/site/snapshot/import.js +1 -1
- package/bin/lib/d1-query.js +5 -16
- package/bin/lib/node-env.js +40 -4
- package/bin/lib/site-selection.js +85 -29
- package/bin/lib/wrangler-cli.js +28 -2
- package/bin/lib/wrangler-json.js +35 -0
- package/dist/{app-C7_4oab9.js → app-K_Aa1MMn.js} +52476 -13330
- package/dist/client/.vite/manifest.json +255 -90
- package/dist/client/_assets/chunks/confirm-D7GrwsCN.js +45 -0
- package/dist/client/_assets/chunks/create-editor-CD3FhrOB.js +257 -0
- package/dist/client/_assets/chunks/{native-DpcrFAPh.js → emoji-mart-C4RpRKcU.js} +716 -1
- package/dist/client/_assets/chunks/footnote-rail-CmeoVtnU.js +1 -0
- package/dist/client/_assets/chunks/heic-to-CuP2Qlsw.js +1 -0
- package/dist/client/_assets/chunks/jant-locale-picker-DL6mIOT5.js +69 -0
- package/dist/client/_assets/chunks/lit-DW8VmJAT.js +2 -0
- package/dist/client/_assets/chunks/mediabunny-DRaCQ1r-.js +31 -0
- package/dist/client/_assets/chunks/rolldown-runtime-hePW80VL.js +1 -0
- package/dist/client/_assets/chunks/settings-paths-BcdySNx6.js +84 -0
- package/dist/client/_assets/chunks/site-header-nav-DzXsFk05.js +1 -0
- package/dist/client/_assets/chunks/slug-format-CRXO1AL5.js +1 -0
- package/dist/client/_assets/chunks/slugify-373citbs.js +1 -0
- package/dist/client/_assets/chunks/sortable-list-CgaL2jCs.js +2 -0
- package/dist/client/_assets/chunks/types-D5iF3H1a.js +1 -0
- package/dist/client/_assets/chunks/unsafe-html-B5ZEXaxg.js +1 -0
- package/dist/client/_assets/chunks/unsafe-svg-0QCkP0vZ.js +2 -0
- package/dist/client/_assets/client-GiYENVw8.css +2 -0
- package/dist/client/_assets/client-VnFxJN7G.js +295 -0
- package/dist/client/_assets/client-auth-k8gJ6QJj.js +828 -0
- package/dist/client/_assets/client-author-DQ8R-8KR.css +2 -0
- package/dist/client/_assets/client-compose-B_kDtWkW.js +2004 -0
- package/dist/client/_assets/client-manage-M90aSTOk.js +2170 -0
- package/dist/client/_assets/client-settings-DfYs9n1F.js +1112 -0
- package/dist/{export-Dl5KCiEs.js → github-sync-BPAvT999.js} +2254 -107
- package/dist/index.js +2 -5
- package/dist/node.js +5 -7
- package/package.json +3 -3
- package/src/__tests__/auth-session-freshness.test.ts +57 -0
- package/src/__tests__/basecoat-variants.test.ts +121 -0
- package/src/__tests__/bin/assets-upload.test.ts +68 -0
- package/src/__tests__/export-hugo-build.test.ts +260 -0
- package/src/__tests__/export-service.test.ts +231 -0
- package/src/__tests__/helpers/component-css.ts +91 -0
- package/src/__tests__/helpers/db.ts +33 -0
- package/src/__tests__/helpers/export-fixtures.ts +3 -0
- package/src/__tests__/stylesheet-audience.test.ts +159 -0
- package/src/__tests__/stylesheet-breakpoints.test.ts +183 -0
- package/src/app.tsx +71 -16
- package/src/auth.ts +18 -1
- package/src/client/__tests__/collection-page-actions.test.ts +51 -2
- package/src/client/__tests__/compose-bridge-image-upload.test.ts +196 -0
- package/src/client/__tests__/compose-bridge-video-poster.test.ts +159 -0
- package/src/client/__tests__/compose-bridge.test.ts +272 -0
- package/src/client/__tests__/compose-launch.test.ts +62 -1
- package/src/client/__tests__/compose-shortcuts.test.ts +38 -9
- package/src/client/__tests__/compose-triggers.test.ts +90 -0
- package/src/client/__tests__/copy-field.test.ts +162 -0
- package/src/client/__tests__/custom-url-menu.test.ts +127 -6
- package/src/client/__tests__/image-processor.test.ts +324 -2
- package/src/client/__tests__/lazy-entries.test.ts +92 -0
- package/src/client/__tests__/media-scroll-hint.test.ts +155 -0
- package/src/client/__tests__/runtime-paths.test.ts +84 -0
- package/src/client/__tests__/smart-collection-page-actions.test.ts +158 -0
- package/src/client/__tests__/toast.test.ts +23 -0
- package/src/client/__tests__/video-processor-probe.test.ts +175 -0
- package/src/client/__tests__/video-processor.test.ts +181 -0
- package/src/client/audio-processor.ts +24 -15
- package/src/client/audio-waveform.ts +49 -0
- package/src/client/collection-dialog-host.ts +72 -0
- package/src/client/collection-navigation.ts +51 -16
- package/src/client/collection-page-actions.ts +26 -0
- package/src/client/components/__tests__/jant-collection-dialog.test.ts +329 -0
- package/src/client/components/__tests__/jant-collection-directory.test.ts +274 -10
- package/src/client/components/__tests__/jant-collection-form.test.ts +59 -178
- package/src/client/components/__tests__/jant-command-palette.test.ts +28 -0
- package/src/client/components/__tests__/jant-compose-dialog-draft-storage.test.ts +340 -0
- package/src/client/components/__tests__/jant-compose-dialog.test.ts +1250 -53
- package/src/client/components/__tests__/jant-compose-editor.test.ts +544 -40
- package/src/client/components/__tests__/jant-compose-fullscreen.test.ts +0 -1
- package/src/client/components/__tests__/jant-locale-picker.test.ts +207 -0
- package/src/client/components/__tests__/jant-nav-manager.test.ts +234 -15
- package/src/client/components/__tests__/jant-post-menu.test.ts +413 -2
- package/src/client/components/__tests__/jant-post-picker.test.ts +197 -0
- package/src/client/components/__tests__/jant-settings-avatar.test.ts +15 -12
- package/src/client/components/__tests__/jant-settings-general.test.ts +541 -172
- package/src/client/components/__tests__/jant-settings-language.test.ts +851 -0
- package/src/client/components/__tests__/jant-smart-collection-dialog.test.ts +665 -0
- package/src/client/components/collection-dialog-types.ts +49 -0
- package/src/client/components/collection-manager-types.ts +32 -1
- package/src/client/components/collection-types.ts +1 -15
- package/src/client/components/compose-types.ts +75 -1
- package/src/client/components/jant-collection-dialog.ts +722 -0
- package/src/client/components/jant-collection-directory.ts +567 -182
- package/src/client/components/jant-collection-form.ts +53 -232
- package/src/client/components/jant-command-palette.ts +100 -49
- package/src/client/components/jant-compose-dialog.ts +1486 -707
- package/src/client/components/jant-compose-editor.ts +673 -336
- package/src/client/components/jant-compose-fullscreen.ts +51 -43
- package/src/client/components/jant-config-editor.ts +65 -53
- package/src/client/components/jant-confirm-dialog.ts +13 -11
- package/src/client/components/jant-locale-picker.ts +418 -0
- package/src/client/components/jant-media-lightbox.ts +146 -136
- package/src/client/components/jant-nav-manager.ts +690 -366
- package/src/client/components/jant-post-menu.ts +1086 -282
- package/src/client/components/jant-post-picker.ts +324 -0
- package/src/client/components/jant-repo-picker.ts +138 -106
- package/src/client/components/jant-settings-avatar.ts +31 -27
- package/src/client/components/jant-settings-general.ts +617 -543
- package/src/client/components/jant-settings-language.ts +1087 -0
- package/src/client/components/jant-smart-collection-dialog.ts +1021 -0
- package/src/client/components/jant-text-preview.ts +94 -86
- package/src/client/components/nav-manager-types.ts +62 -1
- package/src/client/components/settings-types.ts +14 -29
- package/src/client/components/smart-collection-conditions.ts +285 -0
- package/src/client/components/smart-collection-dialog-types.ts +68 -0
- package/src/client/compose-bridge.ts +214 -141
- package/src/client/compose-launch.ts +76 -2
- package/src/client/compose-shortcuts.ts +6 -8
- package/src/client/compose-triggers.ts +50 -0
- package/src/client/copy-field.ts +108 -0
- package/src/client/custom-url-menu.ts +60 -4
- package/src/client/icons.ts +14 -0
- package/src/client/image-plan.ts +165 -0
- package/src/client/image-processor.ts +195 -117
- package/src/client/image-worker-client.ts +45 -0
- package/src/client/image-worker.ts +135 -0
- package/src/client/lazy-entries.ts +95 -0
- package/src/client/lazy-slugify.ts +2 -2
- package/src/client/media-scroll-hint.ts +43 -2
- package/src/client/mediabunny.ts +29 -0
- package/src/client/post-picker.ts +41 -0
- package/src/client/runtime-paths.ts +74 -1
- package/src/client/settings-bridge.ts +4 -10
- package/src/client/site-header-nav.js +18 -6
- package/src/client/smart-collection-dialog-host.ts +116 -0
- package/src/client/smart-collection-page-actions.ts +208 -0
- package/src/client/tiptap/__tests__/bubble-menu.test.ts +110 -0
- package/src/client/tiptap/__tests__/floating-position.test.ts +136 -1
- package/src/client/tiptap/__tests__/inline-image-upload.test.ts +37 -0
- package/src/client/tiptap/bubble-menu.ts +47 -16
- package/src/client/tiptap/floating-position.ts +216 -2
- package/src/client/tiptap/inline-image-upload.ts +7 -3
- package/src/client/tiptap/link-toolbar.ts +22 -9
- package/src/client/toast.ts +13 -0
- package/src/client/types/vite-worker.d.ts +12 -0
- package/src/client/upload-with-metadata.ts +3 -13
- package/src/client/video-processor.ts +351 -107
- package/src/client-auth.ts +14 -31
- package/src/client-compose.ts +19 -0
- package/src/client-manage.ts +13 -0
- package/src/client-settings.ts +14 -0
- package/src/client-site.ts +10 -3
- package/src/client.ts +4 -0
- package/src/db/__tests__/backfill-nav-label-mirrors.test.ts +149 -0
- package/src/db/__tests__/schema-enum-sources.test.ts +33 -0
- package/src/db/__tests__/smart-collection-placement.test.ts +402 -0
- package/src/db/backfills/0006_clear_mirrored_page_nav_labels.sql +31 -0
- package/src/db/migrations/0032_married_tomas.sql +3 -0
- package/src/db/migrations/0033_busy_johnny_storm.sql +198 -0
- package/src/db/migrations/0034_cheerful_rumiko_fujikawa.sql +35 -0
- package/src/db/migrations/meta/0032_snapshot.json +2582 -0
- package/src/db/migrations/meta/0033_snapshot.json +2816 -0
- package/src/db/migrations/meta/0034_snapshot.json +2816 -0
- package/src/db/migrations/meta/_journal.json +21 -0
- package/src/db/migrations/pg/0030_abandoned_nighthawk.sql +3 -0
- package/src/db/migrations/pg/0031_strong_ultimatum.sql +128 -0
- package/src/db/migrations/pg/0032_furry_multiple_man.sql +6 -0
- package/src/db/migrations/pg/meta/0030_snapshot.json +3329 -0
- package/src/db/migrations/pg/meta/0031_snapshot.json +3660 -0
- package/src/db/migrations/pg/meta/0032_snapshot.json +3660 -0
- package/src/db/migrations/pg/meta/_journal.json +21 -0
- package/src/db/pg/schema.ts +195 -27
- package/src/db/post-visibility.ts +117 -0
- package/src/db/schema.ts +222 -27
- package/src/i18n/__tests__/detect.test.ts +26 -81
- package/src/i18n/__tests__/supported-locales.test.ts +83 -0
- package/src/i18n/context.tsx +12 -2
- package/src/i18n/detect.ts +7 -66
- package/src/i18n/locales/glossary.zh-Hans.yml +44 -4
- package/src/i18n/locales/glossary.zh-Hant.yml +44 -4
- package/src/i18n/locales/public/en.po +490 -158
- package/src/i18n/locales/public/en.ts +1 -1
- package/src/i18n/locales/public/zh-Hans.po +487 -155
- package/src/i18n/locales/public/zh-Hans.ts +1 -1
- package/src/i18n/locales/public/zh-Hant.po +487 -155
- package/src/i18n/locales/public/zh-Hant.ts +1 -1
- package/src/i18n/locales/settings/en.po +551 -69
- package/src/i18n/locales/settings/en.ts +1 -1
- package/src/i18n/locales/settings/zh-Hans.po +597 -115
- package/src/i18n/locales/settings/zh-Hans.ts +1 -1
- package/src/i18n/locales/settings/zh-Hant.po +610 -128
- package/src/i18n/locales/settings/zh-Hant.ts +1 -1
- package/src/i18n/locales.ts +94 -0
- package/src/i18n/middleware.ts +12 -2
- package/src/i18n/supported-locales.ts +80 -0
- package/src/lib/__tests__/api-settings.test.ts +11 -2
- package/src/lib/__tests__/asset-path.test.ts +92 -0
- package/src/lib/__tests__/deferred.test.ts +90 -0
- package/src/lib/__tests__/discover-ping.test.ts +89 -0
- package/src/lib/__tests__/discover.test.ts +410 -0
- package/src/lib/__tests__/feed-policy.test.ts +26 -0
- package/src/lib/__tests__/feed.test.ts +1526 -15
- package/src/lib/__tests__/filter-dimensions.test.ts +341 -0
- package/src/lib/__tests__/hosted-signin.test.ts +1 -1
- package/src/lib/__tests__/http-cache.test.ts +162 -0
- package/src/lib/__tests__/jant-docs-dev.test.ts +21 -0
- package/src/lib/__tests__/jant-docs.test.ts +23 -0
- package/src/lib/__tests__/lang-detect.test.ts +231 -0
- package/src/lib/__tests__/media-helpers.test.ts +81 -0
- package/src/lib/__tests__/navigation.test.ts +135 -1
- package/src/lib/__tests__/resolve-config.test.ts +64 -3
- package/src/lib/__tests__/schemas.test.ts +42 -4
- package/src/lib/__tests__/site-unavailable-page.test.ts +25 -0
- package/src/lib/__tests__/slug.test.ts +70 -0
- package/src/lib/__tests__/slugify.test.ts +85 -0
- package/src/lib/__tests__/storage.test.ts +32 -0
- package/src/lib/__tests__/thread-fold.test.ts +113 -0
- package/src/lib/__tests__/upload-sideload.test.ts +14 -0
- package/src/lib/__tests__/url-fetch.test.ts +1 -2
- package/src/lib/__tests__/url.test.ts +78 -72
- package/src/lib/__tests__/view-language.test.ts +413 -0
- package/src/lib/__tests__/worker-response-cache.test.ts +90 -0
- package/src/lib/address.ts +57 -0
- package/src/lib/api-posts.ts +12 -0
- package/src/lib/asset-path.ts +98 -1
- package/src/lib/build-env.ts +16 -0
- package/src/lib/collection-groups.ts +5 -1
- package/src/lib/collection-paths.ts +3 -10
- package/src/lib/constants.ts +28 -3
- package/src/lib/copy-field.ts +36 -0
- package/src/lib/crypto.ts +40 -0
- package/src/lib/csp-builder.ts +2 -1
- package/src/lib/deferred.ts +79 -0
- package/src/lib/discover-ping.ts +141 -0
- package/src/lib/discover.ts +437 -0
- package/src/lib/env.ts +134 -0
- package/src/lib/errors.ts +33 -0
- package/src/lib/feed-policy.ts +236 -2
- package/src/lib/feed.ts +926 -73
- package/src/lib/filter-dimensions.ts +1349 -0
- package/src/lib/github-sync-site-config.ts +3 -0
- package/src/lib/hosted-signin.ts +1 -1
- package/src/lib/http-cache.ts +148 -0
- package/src/lib/hugo-markdown.ts +16 -0
- package/src/lib/icons.ts +9 -2
- package/src/lib/ids.ts +3 -0
- package/src/lib/jant-docs.ts +42 -0
- package/src/lib/lang-detect.ts +308 -0
- package/src/lib/media-helpers.ts +13 -1
- package/src/lib/navigation.ts +78 -11
- package/src/lib/pagination.ts +28 -24
- package/src/lib/per-language-surfaces.ts +67 -0
- package/src/lib/post-meta.ts +19 -0
- package/src/lib/render.tsx +55 -7
- package/src/lib/resolve-config.ts +53 -5
- package/src/lib/schemas.ts +201 -10
- package/src/lib/site-header-fragment.tsx +2 -1
- package/src/lib/site-unavailable-page.ts +47 -0
- package/src/lib/slug.ts +51 -7
- package/src/lib/slugify.ts +113 -0
- package/src/lib/startup-config.ts +4 -6
- package/src/lib/storage.ts +7 -0
- package/src/lib/summary.ts +50 -0
- package/src/lib/thread-fold.ts +161 -0
- package/src/lib/time.ts +32 -0
- package/src/lib/timeline.ts +42 -1
- package/src/lib/tiptap-render.ts +1 -2
- package/src/lib/upload.ts +16 -13
- package/src/lib/url.ts +139 -86
- package/src/lib/version.ts +10 -8
- package/src/lib/view-language.ts +436 -0
- package/src/lib/view.ts +51 -23
- package/src/lib/viewer-context.ts +62 -0
- package/src/middleware/__tests__/auth.test.ts +70 -2
- package/src/middleware/__tests__/cache-control.test.ts +71 -3
- package/src/middleware/__tests__/onboarding.test.ts +76 -5
- package/src/middleware/__tests__/secure-headers.test.ts +1 -1
- package/src/middleware/__tests__/session.test.ts +181 -33
- package/src/middleware/auth.ts +50 -31
- package/src/middleware/cache-control.ts +75 -10
- package/src/middleware/config.ts +6 -6
- package/src/middleware/error-handler.ts +12 -0
- package/src/middleware/onboarding.ts +32 -10
- package/src/middleware/secure-headers.ts +1 -1
- package/src/middleware/session.ts +96 -8
- package/src/node/__tests__/cli-migrate.test.ts +21 -19
- package/src/node/__tests__/cli-reset-password.test.ts +81 -8
- package/src/node/__tests__/cli-runtime-target.test.ts +48 -1
- package/src/node/__tests__/cli-site-selection.test.ts +128 -38
- package/src/node/__tests__/runtime.test.ts +37 -0
- package/src/node/index.ts +1 -0
- package/src/preset.css +76 -22
- package/src/routes/__tests__/feed-validator.test.ts +156 -0
- package/src/routes/api/__tests__/collections.test.ts +114 -0
- package/src/routes/api/__tests__/discover.test.ts +222 -0
- package/src/routes/api/__tests__/nav-items.test.ts +212 -2
- package/src/routes/api/__tests__/post-translations.test.ts +829 -0
- package/src/routes/api/__tests__/settings.test.ts +24 -3
- package/src/routes/api/__tests__/telegram.test.ts +6 -5
- package/src/routes/api/collections.ts +49 -6
- package/src/routes/api/custom-urls.ts +0 -1
- package/src/routes/api/discover.ts +95 -0
- package/src/routes/api/export.ts +3 -0
- package/src/routes/api/internal/__tests__/sites.test.ts +42 -2
- package/src/routes/api/nav-items.ts +55 -8
- package/src/routes/api/posts.ts +159 -0
- package/src/routes/api/public/__tests__/archive.test.ts +111 -0
- package/src/routes/api/public/archive.ts +77 -81
- package/src/routes/api/public/posts.ts +23 -6
- package/src/routes/api/smart-collections.ts +132 -0
- package/src/routes/api/telegram.ts +2 -40
- package/src/routes/api/uploads.ts +1 -2
- package/src/routes/auth/__tests__/setup-auth.test.ts +137 -0
- package/src/routes/auth/__tests__/setup-discover.test.ts +204 -0
- package/src/routes/auth/__tests__/setup-flow.test.ts +270 -0
- package/src/routes/auth/__tests__/setup-page.test.tsx +329 -0
- package/src/routes/auth/__tests__/setup-steps.test.ts +310 -0
- package/src/routes/auth/__tests__/setup.test.ts +278 -26
- package/src/routes/auth/__tests__/signin.test.ts +135 -0
- package/src/routes/auth/setup.tsx +934 -186
- package/src/routes/auth/signin.tsx +10 -8
- package/src/routes/compose.tsx +5 -0
- package/src/routes/dash/__tests__/custom-urls-archive.test.ts +44 -0
- package/src/routes/dash/__tests__/custom-urls-page.test.ts +49 -0
- package/src/routes/dash/__tests__/delete-account.test.ts +106 -0
- package/src/routes/dash/__tests__/settings-discover.test.ts +213 -0
- package/src/routes/dash/custom-urls.tsx +1 -37
- package/src/routes/dash/settings.tsx +502 -41
- package/src/routes/discover-announce.ts +96 -0
- package/src/routes/feed/__tests__/feed.test.ts +165 -2
- package/src/routes/feed/feed.ts +69 -40
- package/src/routes/feed/sitemap.ts +95 -11
- package/src/routes/pages/__tests__/archive-indexing.test.ts +200 -0
- package/src/routes/pages/__tests__/archive-params.test.ts +370 -6
- package/src/routes/pages/__tests__/collection-routing.test.ts +16 -0
- package/src/routes/pages/__tests__/collections-feed-links.test.ts +72 -0
- package/src/routes/pages/__tests__/collections.test.ts +9 -3
- package/src/routes/pages/__tests__/custom-archive-url.test.ts +119 -0
- package/src/routes/pages/__tests__/feed-autodiscovery.test.ts +148 -0
- package/src/routes/pages/__tests__/language-routing.test.ts +679 -0
- package/src/routes/pages/__tests__/post-preview-partial.test.ts +96 -0
- package/src/routes/pages/__tests__/smart-collection.test.ts +298 -0
- package/src/routes/pages/__tests__/subscribe.test.ts +248 -0
- package/src/routes/pages/archive.tsx +471 -369
- package/src/routes/pages/collection.tsx +94 -96
- package/src/routes/pages/collections.tsx +38 -50
- package/src/routes/pages/featured.tsx +32 -13
- package/src/routes/pages/home.tsx +25 -6
- package/src/routes/pages/language.tsx +113 -0
- package/src/routes/pages/latest.tsx +26 -16
- package/src/routes/pages/new.tsx +3 -0
- package/src/routes/pages/page.tsx +178 -17
- package/src/routes/pages/partials.tsx +41 -0
- package/src/routes/pages/search.tsx +18 -3
- package/src/routes/pages/smart-collection.tsx +340 -0
- package/src/routes/pages/subscribe.tsx +182 -0
- package/src/runtime/__tests__/index.test.ts +19 -0
- package/src/runtime/__tests__/node.test.ts +129 -4
- package/src/runtime/cloudflare.ts +21 -2
- package/src/runtime/index.ts +27 -1
- package/src/runtime/node.ts +18 -1
- package/src/runtime/site.ts +95 -24
- package/src/services/__tests__/auth.test.ts +116 -7
- package/src/services/__tests__/collection.test.ts +108 -4
- package/src/services/__tests__/language.test.ts +495 -0
- package/src/services/__tests__/navigation.test.ts +213 -10
- package/src/services/__tests__/path.test.ts +180 -0
- package/src/services/__tests__/post-language.test.ts +830 -0
- package/src/services/__tests__/post.test.ts +46 -9
- package/src/services/__tests__/settings.test.ts +228 -17
- package/src/services/__tests__/site-admin.test.ts +5 -5
- package/src/services/__tests__/smart-collection.test.ts +651 -0
- package/src/services/about-page.ts +22 -1
- package/src/services/auth.ts +51 -49
- package/src/services/bootstrap.ts +188 -38
- package/src/services/collection-directory-position.ts +76 -0
- package/src/services/collection.ts +331 -46
- package/src/services/custom-url.ts +27 -22
- package/src/services/export-theme/assets/client-site.css +1 -1
- package/src/services/export-theme/assets/client-site.js +123 -123
- package/src/services/export-theme/layouts/_default/rss.xml +77 -1
- package/src/services/export-theme/layouts/partials/feed-post-content.xml +105 -2
- package/src/services/export-theme/layouts/partials/media-gallery.html +35 -21
- package/src/services/export-theme/layouts/partials/pagination.html +14 -13
- package/src/services/export-theme/layouts/partials/post-card.html +8 -4
- package/src/services/export-theme/layouts/partials/reply.html +2 -1
- package/src/services/export-theme/layouts/partials/thread-preview.html +40 -30
- package/src/services/export-theme/styles/main.css +13 -1
- package/src/services/export.ts +278 -19
- package/src/services/index.ts +34 -3
- package/src/services/language.ts +412 -0
- package/src/services/mcp.ts +3 -1
- package/src/services/media.ts +14 -6
- package/src/services/navigation.ts +429 -67
- package/src/services/path.ts +221 -6
- package/src/services/post.ts +1021 -152
- package/src/services/search.ts +39 -2
- package/src/services/settings.ts +238 -43
- package/src/services/site-admin.ts +24 -7
- package/src/services/site.ts +77 -1
- package/src/services/smart-collection.ts +636 -0
- package/src/services/telegram.ts +20 -22
- package/src/services/upload-session.ts +1 -3
- package/src/style-author.css +27 -0
- package/src/styles/components-author.css +1622 -0
- package/src/styles/components.css +24 -1571
- package/src/styles/site-media.css +16 -2
- package/src/styles/tokens.css +82 -12
- package/src/styles/ui-author.css +7602 -0
- package/src/styles/ui.css +1087 -7219
- package/src/types/app-context.ts +7 -0
- package/src/types/bindings.ts +3 -0
- package/src/types/config.ts +94 -15
- package/src/types/constants.ts +188 -16
- package/src/types/entities.ts +87 -1
- package/src/types/operations.ts +64 -2
- package/src/types/props.ts +157 -31
- package/src/types/views.ts +55 -1
- package/src/ui/__tests__/font-themes.test.ts +52 -12
- package/src/ui/compose/ComposeDialog.tsx +201 -7
- package/src/ui/compose/ComposePrompt.tsx +1 -5
- package/src/ui/compose/__tests__/ComposeDialog.test.tsx +125 -0
- package/src/ui/dash/appearance/AdvancedContent.tsx +2 -2
- package/src/ui/dash/appearance/CodeInjectionContent.tsx +12 -16
- package/src/ui/dash/appearance/NavigationContent.tsx +117 -16
- package/src/ui/dash/appearance/__tests__/NavigationContent.test.tsx +33 -11
- package/src/ui/dash/appearance/__tests__/system-nav-descriptions.test.ts +44 -0
- package/src/ui/dash/appearance/system-nav-descriptions.ts +75 -0
- package/src/ui/dash/settings/AccountMenuContent.tsx +2 -2
- package/src/ui/dash/settings/ApiTokensContent.tsx +2 -1
- package/src/ui/dash/settings/ConfigEditorContent.tsx +35 -16
- package/src/ui/dash/settings/GeneralContent.tsx +275 -113
- package/src/ui/dash/settings/LanguageContent.tsx +409 -0
- package/src/ui/dash/settings/SettingsRootContent.tsx +19 -1
- package/src/ui/dash/settings/__tests__/GeneralContent.test.tsx +324 -4
- package/src/ui/dash/settings/__tests__/LanguageContent.test.tsx +144 -0
- package/src/ui/dash/settings/__tests__/discover-copy.test.ts +66 -0
- package/src/ui/dash/settings/discover-copy.ts +116 -0
- package/src/ui/feed/LinkCard.tsx +55 -45
- package/src/ui/feed/NoteCard.tsx +9 -4
- package/src/ui/feed/PostStatusBadges.tsx +90 -43
- package/src/ui/feed/QuoteCard.tsx +55 -30
- package/src/ui/feed/ThreadPreview.tsx +6 -2
- package/src/ui/feed/__tests__/thread-preview.test.ts +13 -16
- package/src/ui/feed/__tests__/timeline-cards.test.ts +314 -49
- package/src/ui/feed/thread-preview-state.ts +20 -6
- package/src/ui/font-themes.ts +39 -29
- package/src/ui/layouts/BaseLayout.tsx +155 -10
- package/src/ui/layouts/SiteLayout.tsx +192 -34
- package/src/ui/layouts/__tests__/BaseLayout.test.tsx +196 -17
- package/src/ui/layouts/__tests__/SiteLayout.test.tsx +109 -85
- package/src/ui/pages/ArchivePage.tsx +282 -289
- package/src/ui/pages/CollectionPage.tsx +86 -76
- package/src/ui/pages/CollectionsPage.tsx +5 -0
- package/src/ui/pages/ComposePage.tsx +8 -0
- package/src/ui/pages/PostPage.tsx +47 -0
- package/src/ui/pages/SearchPage.tsx +3 -3
- package/src/ui/pages/SmartCollectionPage.tsx +434 -0
- package/src/ui/pages/SubscribePage.tsx +236 -0
- package/src/ui/pages/__tests__/ArchivePage.test.tsx +65 -9
- package/src/ui/pages/__tests__/collections-directory-rows.test.tsx +92 -0
- package/src/ui/pages/__tests__/collections-view-links.test.tsx +81 -0
- package/src/ui/shared/CollectionDirectory.tsx +178 -3
- package/src/ui/shared/CollectionsManager.tsx +70 -17
- package/src/ui/shared/CopyField.tsx +127 -0
- package/src/ui/shared/EmptyPostContent.tsx +23 -0
- package/src/ui/shared/MediaGallery.tsx +125 -46
- package/src/ui/shared/Pagination.tsx +20 -5
- package/src/ui/shared/PostFooter.tsx +20 -11
- package/src/ui/shared/__tests__/archive-labels.test.ts +100 -0
- package/src/ui/shared/__tests__/media-gallery.test.ts +210 -2
- package/src/ui/shared/__tests__/navigation-labels.test.ts +16 -22
- package/src/ui/shared/__tests__/pagination.test.ts +38 -24
- package/src/ui/shared/__tests__/post-footer.test.ts +32 -0
- package/src/ui/shared/archive-labels.ts +98 -0
- package/src/ui/shared/collection-management-labels.ts +94 -16
- package/src/ui/shared/navigation-labels.ts +45 -71
- package/src/ui/shared/post-article-attributes.ts +2 -0
- package/src/ui/shared/smart-collection-labels.ts +343 -0
- package/dist/app-C75Zc8dD.js +0 -6
- package/dist/client/_assets/chunks/heic-to-DUUaO23q.js +0 -1
- package/dist/client/_assets/chunks/module-DcsAZQZ_.js +0 -716
- package/dist/client/_assets/chunks/url-CU9pEbk5.js +0 -1
- package/dist/client/_assets/client-Bq0vre8Y.js +0 -296
- package/dist/client/_assets/client-D3VZyG4L.css +0 -2
- package/dist/client/_assets/client-auth-F2rb9WfF.js +0 -5571
- package/dist/env-BPYViDJJ.js +0 -281
- package/dist/github-api-BNF35Lkx.js +0 -176
- package/dist/github-app-DdiD-bC4.js +0 -275
- package/dist/github-sync-Bqg62IvV.js +0 -4
- package/dist/github-sync-HdK2EgvJ.js +0 -431
- package/dist/url-CbLAtlZe.js +0 -900
- package/src/client/__tests__/collection-created-notice.test.ts +0 -36
- package/src/client/__tests__/collection-form-bridge.test.ts +0 -216
- package/src/client/__tests__/post-form-bridge.test.ts +0 -82
- package/src/client/collection-created-notice.ts +0 -66
- package/src/client/collection-form-bridge.ts +0 -191
- package/src/client/components/__tests__/jant-post-form.test.ts +0 -193
- package/src/client/components/jant-post-form.ts +0 -422
- package/src/client/components/post-form-template.ts +0 -352
- package/src/client/components/post-form-types.ts +0 -96
- package/src/client/media-metadata.ts +0 -247
- package/src/client/post-form-bridge.ts +0 -193
- package/src/ui/pages/CollectionEditorPage.tsx +0 -175
|
@@ -38,6 +38,11 @@ msgstr ""
|
|
|
38
38
|
msgid "{count} images couldn't be saved to your library — their original links were kept."
|
|
39
39
|
msgstr "有 {count} 张图片无法转存到你的媒体库,已保留原链接。"
|
|
40
40
|
|
|
41
|
+
#. @context: Smart collection dialog live count — how many threads the conditions gather out of the site total
|
|
42
|
+
#: src/ui/shared/smart-collection-labels.ts
|
|
43
|
+
msgid "{count} of {total} threads"
|
|
44
|
+
msgstr ""
|
|
45
|
+
|
|
41
46
|
#. @context: Value shown on a post's permalink control when the link is generated automatically — a stand-in for the path the server will assign. Sits next to real permalinks rendered as /my-post, so keep the leading slash
|
|
42
47
|
#: src/ui/compose/ComposeDialog.tsx
|
|
43
48
|
msgid "/…"
|
|
@@ -70,6 +75,16 @@ msgstr ""
|
|
|
70
75
|
msgid "A calmer, warmer accent makes the default theme feel quieter and more intentional."
|
|
71
76
|
msgstr ""
|
|
72
77
|
|
|
78
|
+
#. @context: Collection dialog validation message
|
|
79
|
+
#: src/ui/shared/collection-management-labels.ts
|
|
80
|
+
msgid "A collection needs a title and a link."
|
|
81
|
+
msgstr ""
|
|
82
|
+
|
|
83
|
+
#. @context: Subscribe page explanation of what a feed reader is and where it runs
|
|
84
|
+
#: src/ui/pages/SubscribePage.tsx
|
|
85
|
+
msgid "A feed reader checks these addresses for new posts and collects them in one place. Most are an app on your phone or computer; some are a website you sign in to."
|
|
86
|
+
msgstr ""
|
|
87
|
+
|
|
73
88
|
#. @context: Section title for the usage guidance section on the brand asset page
|
|
74
89
|
#: src/ui/pages/BrandPage.tsx
|
|
75
90
|
msgid "A few simple rules."
|
|
@@ -89,6 +104,11 @@ msgstr ""
|
|
|
89
104
|
msgid "A long-form article sample for checking the default palette in a true reading context."
|
|
90
105
|
msgstr ""
|
|
91
106
|
|
|
107
|
+
#. @context: Subscribe page link to the independent aboutfeeds.com explainer. The whole sentence is the link text.
|
|
108
|
+
#: src/ui/pages/SubscribePage.tsx
|
|
109
|
+
msgid "A longer introduction to feeds and readers, at aboutfeeds.com"
|
|
110
|
+
msgstr ""
|
|
111
|
+
|
|
92
112
|
#. @context: Subheading in the sample detail article
|
|
93
113
|
#: src/ui/pages/ThemeSamplePage.tsx
|
|
94
114
|
msgid "A practical checklist"
|
|
@@ -118,6 +138,11 @@ msgstr ""
|
|
|
118
138
|
msgid "A single ZIP with the main logo, reverse logo, square PNG, rounded, square, and circle tiles, plus favicon, Apple touch icon, and social preview image."
|
|
119
139
|
msgstr ""
|
|
120
140
|
|
|
141
|
+
#. @context: Smart collection dialog validation message
|
|
142
|
+
#: src/ui/shared/smart-collection-labels.ts
|
|
143
|
+
msgid "A smart collection needs a title and a link."
|
|
144
|
+
msgstr ""
|
|
145
|
+
|
|
121
146
|
#. @context: Main sample article title
|
|
122
147
|
#: src/ui/pages/ThemeSamplePage.tsx
|
|
123
148
|
msgid "A softer blue feels more like ink than product chrome."
|
|
@@ -143,11 +168,6 @@ msgstr ""
|
|
|
143
168
|
msgid "Add a label and URL."
|
|
144
169
|
msgstr ""
|
|
145
170
|
|
|
146
|
-
#. @context: Description for the RSS system navigation toggle
|
|
147
|
-
#: src/ui/shared/navigation-labels.ts
|
|
148
|
-
msgid "Add a link to your main RSS feed. Change what /feed returns in General."
|
|
149
|
-
msgstr ""
|
|
150
|
-
|
|
151
171
|
#. @context: Compose link title required error
|
|
152
172
|
#: src/ui/compose/ComposeDialog.tsx
|
|
153
173
|
msgid "Add a title before posting this link."
|
|
@@ -178,6 +198,11 @@ msgstr ""
|
|
|
178
198
|
msgid "Add column before"
|
|
179
199
|
msgstr ""
|
|
180
200
|
|
|
201
|
+
#. @context: Smart collection dialog button
|
|
202
|
+
#: src/ui/shared/smart-collection-labels.ts
|
|
203
|
+
msgid "Add condition"
|
|
204
|
+
msgstr ""
|
|
205
|
+
|
|
181
206
|
#. @context: Primary action to add a custom link on collections page
|
|
182
207
|
#: src/ui/shared/collection-management-labels.ts
|
|
183
208
|
msgid "Add Link"
|
|
@@ -203,6 +228,17 @@ msgstr ""
|
|
|
203
228
|
msgid "Adding…"
|
|
204
229
|
msgstr ""
|
|
205
230
|
|
|
231
|
+
#. @context: Subscribe page name for the full archive feed. Matches the Archive page's own nav label.
|
|
232
|
+
#: src/routes/pages/subscribe.tsx
|
|
233
|
+
msgid "All"
|
|
234
|
+
msgstr ""
|
|
235
|
+
|
|
236
|
+
#. @context: Built-in navigation label for the archive page. Reads as the widest of Featured / Latest / All rather than 'old posts' — the page is the complete index, and its URL stays /archive.
|
|
237
|
+
#: src/ui/shared/navigation-labels.ts
|
|
238
|
+
msgctxt "nav"
|
|
239
|
+
msgid "All"
|
|
240
|
+
msgstr ""
|
|
241
|
+
|
|
206
242
|
#. @context: Archive filter - collection dropdown default
|
|
207
243
|
#: src/ui/pages/ArchivePage.tsx
|
|
208
244
|
msgid "All collections"
|
|
@@ -213,8 +249,10 @@ msgstr ""
|
|
|
213
249
|
msgid "All formats"
|
|
214
250
|
msgstr ""
|
|
215
251
|
|
|
252
|
+
#. @context: Archive page heading and document title when no filter is active. Names the surface, not the current selection — the nav calls the same destination 'All'.
|
|
216
253
|
#. @context: Archive thread filter - threads and single posts
|
|
217
254
|
#: src/ui/pages/ArchivePage.tsx
|
|
255
|
+
#: src/ui/shared/archive-labels.ts
|
|
218
256
|
msgid "All posts"
|
|
219
257
|
msgstr ""
|
|
220
258
|
|
|
@@ -228,6 +266,11 @@ msgstr ""
|
|
|
228
266
|
msgid "All years"
|
|
229
267
|
msgstr ""
|
|
230
268
|
|
|
269
|
+
#. @context: Label before links to this post's translations
|
|
270
|
+
#: src/ui/pages/PostPage.tsx
|
|
271
|
+
msgid "Also available in"
|
|
272
|
+
msgstr ""
|
|
273
|
+
|
|
231
274
|
#. @context: Alt text for the sample detail article image
|
|
232
275
|
#: src/ui/pages/ThemeSamplePage.tsx
|
|
233
276
|
msgid "An abstract editorial layout in warm paper colors"
|
|
@@ -254,35 +297,22 @@ msgid "Apple touch icon"
|
|
|
254
297
|
msgstr ""
|
|
255
298
|
|
|
256
299
|
#. @context: Archive feed title prefix
|
|
257
|
-
#. @context: Archive page title
|
|
258
300
|
#. @context: Inactive nav link label on sample page
|
|
259
301
|
#: src/routes/pages/archive.tsx
|
|
260
|
-
#: src/ui/pages/ArchivePage.tsx
|
|
261
302
|
#: src/ui/pages/ThemeSamplePage.tsx
|
|
262
303
|
msgid "Archive"
|
|
263
304
|
msgstr ""
|
|
264
305
|
|
|
265
|
-
#. @context: Built-in navigation label for the archive page
|
|
266
|
-
#: src/ui/shared/navigation-labels.ts
|
|
267
|
-
msgctxt "nav"
|
|
268
|
-
msgid "Archive"
|
|
269
|
-
msgstr ""
|
|
270
|
-
|
|
271
306
|
#. @context: Section heading for the detail article sample on the theme sample page
|
|
272
307
|
#: src/ui/pages/ThemeSamplePage.tsx
|
|
273
308
|
msgid "Article detail page"
|
|
274
309
|
msgstr ""
|
|
275
310
|
|
|
276
311
|
#. @context: Archive media filter - audio
|
|
277
|
-
#: src/
|
|
312
|
+
#: src/lib/filter-dimensions.ts
|
|
278
313
|
msgid "Audio"
|
|
279
314
|
msgstr ""
|
|
280
315
|
|
|
281
|
-
#. @context: Error toast when authentication secret is missing from server config
|
|
282
|
-
#: src/routes/auth/setup.tsx
|
|
283
|
-
msgid "Auth secret is missing. Check your environment variables."
|
|
284
|
-
msgstr ""
|
|
285
|
-
|
|
286
316
|
#. @context: Error toast when authentication system is unavailable
|
|
287
317
|
#: src/routes/auth/signin.tsx
|
|
288
318
|
msgid "Authentication isn't set up. Check your server config."
|
|
@@ -298,6 +328,16 @@ msgstr ""
|
|
|
298
328
|
msgid "Auto"
|
|
299
329
|
msgstr ""
|
|
300
330
|
|
|
331
|
+
#. @context: Smart collection page — what it gathers, when no condition narrows it
|
|
332
|
+
#: src/ui/shared/smart-collection-labels.ts
|
|
333
|
+
msgid "Automatically collects every post."
|
|
334
|
+
msgstr ""
|
|
335
|
+
|
|
336
|
+
#. @context: Smart collection page — what it gathers. {conditions} is the list of conditions, already joined. A label and a list, not a sentence: the conditions are named in the archive's own words, which are noun fragments like "Titled" or "With media".
|
|
337
|
+
#: src/ui/shared/smart-collection-labels.ts
|
|
338
|
+
msgid "Automatically collects: {conditions}"
|
|
339
|
+
msgstr ""
|
|
340
|
+
|
|
301
341
|
#. @context: Usage label for the circle tile asset card
|
|
302
342
|
#: src/ui/pages/BrandPage.tsx
|
|
303
343
|
msgid "Avatar-ready"
|
|
@@ -334,13 +374,6 @@ msgstr ""
|
|
|
334
374
|
msgid "Brand tile"
|
|
335
375
|
msgstr ""
|
|
336
376
|
|
|
337
|
-
#. @context: Breadcrumb label on collection detail page
|
|
338
|
-
#. @context: Breadcrumb label on collection editor page
|
|
339
|
-
#: src/ui/pages/CollectionEditorPage.tsx
|
|
340
|
-
#: src/ui/pages/CollectionPage.tsx
|
|
341
|
-
msgid "Breadcrumb"
|
|
342
|
-
msgstr ""
|
|
343
|
-
|
|
344
377
|
#. @context: Secondary hero button label to jump to the file list
|
|
345
378
|
#: src/ui/pages/BrandPage.tsx
|
|
346
379
|
msgid "Browse files"
|
|
@@ -361,17 +394,20 @@ msgstr ""
|
|
|
361
394
|
msgid "Buttons can stay steady, but links, thread markers, and subtle emphasis should feel closer to ink on paper than dashboard chrome."
|
|
362
395
|
msgstr ""
|
|
363
396
|
|
|
397
|
+
#. @context: Back out of the attached-text sub-editor, paired with Done. Leaving the composer itself says Close instead — it may keep the work as a draft, so nothing is being cancelled.
|
|
364
398
|
#. @context: Button label to dismiss a dialog or action
|
|
365
399
|
#. @context: Button to cancel form
|
|
366
|
-
#. @context: Close compose dialog
|
|
367
|
-
#. @context: Confirm close action sheet - cancel and return to editor
|
|
368
|
-
#: src/ui/compose/ComposeDialog.tsx
|
|
369
400
|
#: src/ui/compose/ComposeDialog.tsx
|
|
370
401
|
#: src/ui/shared/collection-management-labels.ts
|
|
371
402
|
#: src/ui/shared/collection-management-labels.ts
|
|
372
403
|
msgid "Cancel"
|
|
373
404
|
msgstr ""
|
|
374
405
|
|
|
406
|
+
#. @context: Collection editing dialog warning shown when editing moves an existing collection link
|
|
407
|
+
#: src/ui/shared/collection-management-labels.ts
|
|
408
|
+
msgid "Changing the link breaks the old one immediately."
|
|
409
|
+
msgstr ""
|
|
410
|
+
|
|
375
411
|
#. @context: Compose custom slug helper while checking whether a manual slug is available
|
|
376
412
|
#: src/ui/compose/ComposeDialog.tsx
|
|
377
413
|
msgid "Checking link..."
|
|
@@ -416,9 +452,9 @@ msgstr ""
|
|
|
416
452
|
msgid "Clear filter"
|
|
417
453
|
msgstr ""
|
|
418
454
|
|
|
419
|
-
#. @context:
|
|
455
|
+
#. @context: Leaves the composer — the × on a single post, and the button in a thread. Prompts to save a draft first if there is unsaved work.
|
|
420
456
|
#: src/ui/compose/ComposeDialog.tsx
|
|
421
|
-
msgid "Close
|
|
457
|
+
msgid "Close"
|
|
422
458
|
msgstr ""
|
|
423
459
|
|
|
424
460
|
#. @context: Close drawer button label
|
|
@@ -432,6 +468,8 @@ msgid "collection"
|
|
|
432
468
|
msgstr ""
|
|
433
469
|
|
|
434
470
|
#. @context: Compose collection selector trigger label
|
|
471
|
+
#. @context: Post filter dimension name - collection membership
|
|
472
|
+
#: src/lib/filter-dimensions.ts
|
|
435
473
|
#: src/ui/compose/ComposeDialog.tsx
|
|
436
474
|
msgid "Collection"
|
|
437
475
|
msgstr ""
|
|
@@ -471,14 +509,14 @@ msgstr ""
|
|
|
471
509
|
msgid "collections"
|
|
472
510
|
msgstr ""
|
|
473
511
|
|
|
474
|
-
#. @context: Breadcrumb link to collections page
|
|
475
|
-
#. @context: Breadcrumb link to collections page
|
|
476
512
|
#. @context: Collections page heading
|
|
477
513
|
#. @context: Collections page heading
|
|
478
514
|
#. @context: Inactive nav link label on sample page
|
|
479
|
-
|
|
515
|
+
#. @context: Link back to the collections directory from a collection page
|
|
516
|
+
#. @context: Link back to the collections directory from a collection page
|
|
480
517
|
#: src/ui/pages/CollectionPage.tsx
|
|
481
518
|
#: src/ui/pages/CollectionsPage.tsx
|
|
519
|
+
#: src/ui/pages/SmartCollectionPage.tsx
|
|
482
520
|
#: src/ui/pages/ThemeSamplePage.tsx
|
|
483
521
|
#: src/ui/shared/CollectionsManager.tsx
|
|
484
522
|
msgid "Collections"
|
|
@@ -490,6 +528,11 @@ msgctxt "nav"
|
|
|
490
528
|
msgid "Collections"
|
|
491
529
|
msgstr ""
|
|
492
530
|
|
|
531
|
+
#. @context: Subscribe page closing note, next to a small feed icon standing in for the ones on collection and archive pages
|
|
532
|
+
#: src/ui/pages/SubscribePage.tsx
|
|
533
|
+
msgid "Collections and filtered archive views have their own feeds. Look for this icon on those pages."
|
|
534
|
+
msgstr ""
|
|
535
|
+
|
|
493
536
|
#. @context: Alert title on theme sample page
|
|
494
537
|
#: src/ui/pages/ThemeSamplePage.tsx
|
|
495
538
|
msgid "Color check"
|
|
@@ -507,16 +550,21 @@ msgstr ""
|
|
|
507
550
|
msgid "Compare it against the theme controls"
|
|
508
551
|
msgstr ""
|
|
509
552
|
|
|
510
|
-
#. @context: Setup form submit button
|
|
511
|
-
#: src/routes/auth/setup.tsx
|
|
512
|
-
msgid "Complete Setup"
|
|
513
|
-
msgstr ""
|
|
514
|
-
|
|
515
553
|
#. @context: Accessible name for the compose dialog
|
|
516
554
|
#: src/ui/compose/ComposeDialog.tsx
|
|
517
555
|
msgid "Compose"
|
|
518
556
|
msgstr ""
|
|
519
557
|
|
|
558
|
+
#. @context: Smart collection dialog section heading
|
|
559
|
+
#: src/ui/shared/smart-collection-labels.ts
|
|
560
|
+
msgid "Conditions"
|
|
561
|
+
msgstr ""
|
|
562
|
+
|
|
563
|
+
#. @context: One line under the New Smart Collection heading, saying how it differs from an ordinary collection
|
|
564
|
+
#: src/ui/shared/smart-collection-labels.ts
|
|
565
|
+
msgid "Conditions choose what belongs here, not you. Posts you write later join on their own."
|
|
566
|
+
msgstr ""
|
|
567
|
+
|
|
520
568
|
#. @context: Password reset form field
|
|
521
569
|
#: src/routes/auth/reset.tsx
|
|
522
570
|
msgid "Confirm Password"
|
|
@@ -537,18 +585,34 @@ msgstr ""
|
|
|
537
585
|
msgid "Controls"
|
|
538
586
|
msgstr ""
|
|
539
587
|
|
|
540
|
-
#. @context:
|
|
588
|
+
#. @context: Button that copies a feed address to the clipboard
|
|
589
|
+
#: src/ui/pages/SubscribePage.tsx
|
|
590
|
+
msgid "Copy"
|
|
591
|
+
msgstr ""
|
|
592
|
+
|
|
593
|
+
#. @context: Toast when the clipboard is unavailable, pointing at selecting the address by hand
|
|
594
|
+
#: src/ui/pages/SubscribePage.tsx
|
|
595
|
+
msgid "Could not copy. Select the address and copy it."
|
|
596
|
+
msgstr ""
|
|
597
|
+
|
|
598
|
+
#. @context: Collection dialog load failure
|
|
541
599
|
#: src/ui/shared/collection-management-labels.ts
|
|
542
|
-
msgid "
|
|
600
|
+
msgid "Could not open this collection. Try again."
|
|
601
|
+
msgstr ""
|
|
602
|
+
|
|
603
|
+
#. @context: Smart collection dialog load failure
|
|
604
|
+
#: src/ui/shared/smart-collection-labels.ts
|
|
605
|
+
msgid "Could not open this smart collection. Try again."
|
|
543
606
|
msgstr ""
|
|
544
607
|
|
|
545
|
-
#. @context:
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
608
|
+
#. @context: Smart collection dialog save failure
|
|
609
|
+
#: src/ui/shared/smart-collection-labels.ts
|
|
610
|
+
msgid "Could not save. Try again."
|
|
611
|
+
msgstr ""
|
|
612
|
+
|
|
613
|
+
#. @context: Error after a Collection could not be added to site navigation
|
|
614
|
+
#: src/ui/shared/collection-management-labels.ts
|
|
615
|
+
msgid "Couldn't add this collection to navigation. Try again."
|
|
552
616
|
msgstr ""
|
|
553
617
|
|
|
554
618
|
#. @context: Toast shown when edit mode fails to load a post
|
|
@@ -561,21 +625,31 @@ msgstr ""
|
|
|
561
625
|
msgid "Couldn't publish. Saved as draft."
|
|
562
626
|
msgstr ""
|
|
563
627
|
|
|
628
|
+
#. @context: Toast when publish fails and the server gave no reason
|
|
629
|
+
#: src/ui/compose/ComposeDialog.tsx
|
|
630
|
+
msgid "Couldn't publish. Try again."
|
|
631
|
+
msgstr ""
|
|
632
|
+
|
|
633
|
+
#. @context: Toast when a publish request never reached the server
|
|
634
|
+
#: src/ui/compose/ComposeDialog.tsx
|
|
635
|
+
msgid "Couldn't reach the server. Try again."
|
|
636
|
+
msgstr ""
|
|
637
|
+
|
|
564
638
|
#. @context: Toast when save fails
|
|
565
639
|
#: src/ui/shared/collection-management-labels.ts
|
|
566
640
|
msgid "Couldn't save. Try again in a moment."
|
|
567
641
|
msgstr ""
|
|
568
642
|
|
|
643
|
+
#. @context: Smart collection dialog while the count is loading
|
|
644
|
+
#: src/ui/shared/smart-collection-labels.ts
|
|
645
|
+
msgid "Counting…"
|
|
646
|
+
msgstr ""
|
|
647
|
+
|
|
569
648
|
#. @context: Compose collection combobox empty state when no collections exist
|
|
570
649
|
#: src/ui/compose/ComposeDialog.tsx
|
|
571
650
|
msgid "Create a collection to get started."
|
|
572
651
|
msgstr ""
|
|
573
652
|
|
|
574
|
-
#. @context: Setup page description
|
|
575
|
-
#: src/routes/auth/setup.tsx
|
|
576
|
-
msgid "Create your admin account."
|
|
577
|
-
msgstr ""
|
|
578
|
-
|
|
579
653
|
#. @context: Thread item label on sample page
|
|
580
654
|
#: src/ui/pages/ThemeSamplePage.tsx
|
|
581
655
|
msgid "Current post"
|
|
@@ -626,7 +700,9 @@ msgid "Default preview image for social shares and link unfurls."
|
|
|
626
700
|
msgstr ""
|
|
627
701
|
|
|
628
702
|
#. @context: Delete collection action
|
|
703
|
+
#. @context: Destructive menu item on a smart collection's row and page. The row says which one; the confirmation names what is lost.
|
|
629
704
|
#: src/ui/shared/collection-management-labels.ts
|
|
705
|
+
#: src/ui/shared/smart-collection-labels.ts
|
|
630
706
|
msgid "Delete"
|
|
631
707
|
msgstr ""
|
|
632
708
|
|
|
@@ -660,6 +736,11 @@ msgstr ""
|
|
|
660
736
|
msgid "Delete this collection permanently? Threads inside won't be removed."
|
|
661
737
|
msgstr ""
|
|
662
738
|
|
|
739
|
+
#. @context: Confirmation before deleting a smart collection, naming what is lost
|
|
740
|
+
#: src/ui/shared/smart-collection-labels.ts
|
|
741
|
+
msgid "Delete this smart collection? Its link stops working."
|
|
742
|
+
msgstr ""
|
|
743
|
+
|
|
663
744
|
#. @context: Hint shown on signin page when demo credentials are pre-filled
|
|
664
745
|
#: src/routes/auth/signin.tsx
|
|
665
746
|
msgid "Demo credentials are pre-filled — hit Sign In to continue."
|
|
@@ -670,6 +751,11 @@ msgstr ""
|
|
|
670
751
|
msgid "Describe this for people with visual impairments..."
|
|
671
752
|
msgstr ""
|
|
672
753
|
|
|
754
|
+
#. @context: Smart collection dialog field
|
|
755
|
+
#: src/ui/shared/smart-collection-labels.ts
|
|
756
|
+
msgid "Description"
|
|
757
|
+
msgstr ""
|
|
758
|
+
|
|
673
759
|
#. @context: Collection form field
|
|
674
760
|
#. @context: Field label for a custom collections link description
|
|
675
761
|
#: src/ui/shared/collection-management-labels.ts
|
|
@@ -691,6 +777,11 @@ msgstr ""
|
|
|
691
777
|
msgid "Designing a calmer default accent for Jant"
|
|
692
778
|
msgstr ""
|
|
693
779
|
|
|
780
|
+
#. @context: Compose language option that leaves detection to Jant
|
|
781
|
+
#: src/ui/compose/ComposeDialog.tsx
|
|
782
|
+
msgid "Detect"
|
|
783
|
+
msgstr ""
|
|
784
|
+
|
|
694
785
|
#. @context: Confirm close action sheet - discard changes button for editing published post
|
|
695
786
|
#. @context: More menu - discard post
|
|
696
787
|
#: src/ui/compose/ComposeDialog.tsx
|
|
@@ -703,6 +794,11 @@ msgstr ""
|
|
|
703
794
|
msgid "Discard changes?"
|
|
704
795
|
msgstr ""
|
|
705
796
|
|
|
797
|
+
#. @context: Smart collection dialog section heading
|
|
798
|
+
#: src/ui/shared/smart-collection-labels.ts
|
|
799
|
+
msgid "Display"
|
|
800
|
+
msgstr ""
|
|
801
|
+
|
|
706
802
|
#. @context: Label for a divider item while organizing collections
|
|
707
803
|
#: src/ui/shared/CollectionsManager.tsx
|
|
708
804
|
msgid "Divider"
|
|
@@ -818,14 +914,15 @@ msgid "Drag collections, links, and dividers into the order you want."
|
|
|
818
914
|
msgstr ""
|
|
819
915
|
|
|
820
916
|
#. @context: Per-collection edit action
|
|
821
|
-
#. @context: Per-collection edit action
|
|
822
|
-
#. @context: Per-collection edit action
|
|
823
|
-
#: src/ui/pages/CollectionEditorPage.tsx
|
|
824
|
-
#: src/ui/pages/CollectionEditorPage.tsx
|
|
825
917
|
#: src/ui/shared/collection-management-labels.ts
|
|
826
918
|
msgid "Edit"
|
|
827
919
|
msgstr ""
|
|
828
920
|
|
|
921
|
+
#. @context: Title of the dialog that edits an existing collection
|
|
922
|
+
#: src/ui/shared/collection-management-labels.ts
|
|
923
|
+
msgid "Edit Collection"
|
|
924
|
+
msgstr ""
|
|
925
|
+
|
|
829
926
|
#. @context: Compose action to reopen the custom link field from the action row summary
|
|
830
927
|
#: src/ui/compose/ComposeDialog.tsx
|
|
831
928
|
msgid "Edit custom link"
|
|
@@ -856,6 +953,11 @@ msgstr ""
|
|
|
856
953
|
msgid "Edit publish date"
|
|
857
954
|
msgstr ""
|
|
858
955
|
|
|
956
|
+
#. @context: Dialog title when editing an existing smart collection
|
|
957
|
+
#: src/ui/shared/smart-collection-labels.ts
|
|
958
|
+
msgid "Edit Smart Collection"
|
|
959
|
+
msgstr ""
|
|
960
|
+
|
|
859
961
|
#. @context: Marker above the composer when changing a post that is already published
|
|
860
962
|
#: src/ui/compose/ComposeDialog.tsx
|
|
861
963
|
msgid "Editing"
|
|
@@ -867,11 +969,9 @@ msgid "Editorial interfaces worth borrowing from"
|
|
|
867
969
|
msgstr ""
|
|
868
970
|
|
|
869
971
|
#. @context: Setup/signin form field - email
|
|
870
|
-
#. @context: Setup/signin form field - email
|
|
871
|
-
#: src/routes/auth/setup.tsx
|
|
872
972
|
#: src/routes/auth/signin.tsx
|
|
873
973
|
msgid "Email"
|
|
874
|
-
msgstr ""
|
|
974
|
+
msgstr "邮箱"
|
|
875
975
|
|
|
876
976
|
#. @context: Compose toolbar - emoji picker tooltip
|
|
877
977
|
#: src/ui/compose/ComposeDialog.tsx
|
|
@@ -888,6 +988,11 @@ msgstr ""
|
|
|
888
988
|
msgid "Enter a valid URL starting with http://, https://, or mailto:."
|
|
889
989
|
msgstr ""
|
|
890
990
|
|
|
991
|
+
#. @context: Subscribe page description of the full archive feed. Says what it adds over the other two rather than sounding like the default pick.
|
|
992
|
+
#: src/routes/pages/subscribe.tsx
|
|
993
|
+
msgid "Every published post, including those kept off the home page."
|
|
994
|
+
msgstr ""
|
|
995
|
+
|
|
891
996
|
#. @context: Usage label for the brand pack card
|
|
892
997
|
#: src/ui/pages/BrandPage.tsx
|
|
893
998
|
msgid "Everything in one download"
|
|
@@ -917,9 +1022,11 @@ msgstr ""
|
|
|
917
1022
|
#. @context: Browser page title for the featured feed
|
|
918
1023
|
#. @context: Inactive browse tab label on sample page
|
|
919
1024
|
#. @context: Page heading for the featured posts feed
|
|
1025
|
+
#. @context: Subscribe page name for the featured posts feed
|
|
920
1026
|
#. @context: Tooltip and screen reader label for the featured-post icon in the post footer when no featured date is available
|
|
1027
|
+
#: src/lib/filter-dimensions.ts
|
|
921
1028
|
#: src/routes/pages/featured.tsx
|
|
922
|
-
#: src/
|
|
1029
|
+
#: src/routes/pages/subscribe.tsx
|
|
923
1030
|
#: src/ui/pages/FeaturedPage.tsx
|
|
924
1031
|
#: src/ui/pages/ThemeSamplePage.tsx
|
|
925
1032
|
#: src/ui/shared/PostFooter.tsx
|
|
@@ -944,10 +1051,9 @@ msgstr ""
|
|
|
944
1051
|
msgid "Featured posts"
|
|
945
1052
|
msgstr ""
|
|
946
1053
|
|
|
947
|
-
#. @context:
|
|
948
|
-
#: src/ui/
|
|
949
|
-
|
|
950
|
-
msgid "Feed"
|
|
1054
|
+
#. @context: Toast after copying a feed URL to the clipboard
|
|
1055
|
+
#: src/ui/pages/SubscribePage.tsx
|
|
1056
|
+
msgid "Feed URL copied."
|
|
951
1057
|
msgstr ""
|
|
952
1058
|
|
|
953
1059
|
#. @context: Search snippet suffix on sample page
|
|
@@ -981,15 +1087,25 @@ msgid "File uploaded."
|
|
|
981
1087
|
msgstr ""
|
|
982
1088
|
|
|
983
1089
|
#. @context: Archive media filter - files/documents
|
|
984
|
-
#: src/
|
|
1090
|
+
#: src/lib/filter-dimensions.ts
|
|
985
1091
|
msgid "Files"
|
|
986
1092
|
msgstr ""
|
|
987
1093
|
|
|
1094
|
+
#. @context: Smart collection layout option — use the site's configured archive layout
|
|
1095
|
+
#: src/ui/shared/smart-collection-labels.ts
|
|
1096
|
+
msgid "Follow site default"
|
|
1097
|
+
msgstr ""
|
|
1098
|
+
|
|
988
1099
|
#. @context: Paragraph mentioning code on the sample detail article
|
|
989
1100
|
#: src/ui/pages/ThemeSamplePage.tsx
|
|
990
1101
|
msgid "For the same reason, inline code should stay neutral. Something like theme.siteAccent = soften(green, 12%) should not suddenly become the loudest thing on the page."
|
|
991
1102
|
msgstr ""
|
|
992
1103
|
|
|
1104
|
+
#. @context: Post filter dimension name - note, link, or quote
|
|
1105
|
+
#: src/lib/filter-dimensions.ts
|
|
1106
|
+
msgid "Format"
|
|
1107
|
+
msgstr ""
|
|
1108
|
+
|
|
993
1109
|
#. @context: Compose dialog - open fullscreen editor
|
|
994
1110
|
#: src/ui/compose/ComposeDialog.tsx
|
|
995
1111
|
msgid "Fullscreen"
|
|
@@ -1010,6 +1126,11 @@ msgstr ""
|
|
|
1010
1126
|
msgid "Give it a title..."
|
|
1011
1127
|
msgstr ""
|
|
1012
1128
|
|
|
1129
|
+
#. @context: Smart collection layout option
|
|
1130
|
+
#: src/ui/shared/smart-collection-labels.ts
|
|
1131
|
+
msgid "Grid"
|
|
1132
|
+
msgstr ""
|
|
1133
|
+
|
|
1013
1134
|
#. @context: Table cell in the sample detail article
|
|
1014
1135
|
#: src/ui/pages/ThemeSamplePage.tsx
|
|
1015
1136
|
msgid "Guide the eye without taking over the layout."
|
|
@@ -1037,19 +1158,31 @@ msgstr ""
|
|
|
1037
1158
|
|
|
1038
1159
|
#. @context: Archive visibility filter for posts hidden from Latest
|
|
1039
1160
|
#. @context: Compose publish settings visibility option
|
|
1161
|
+
#: src/lib/filter-dimensions.ts
|
|
1040
1162
|
#: src/ui/compose/ComposeDialog.tsx
|
|
1041
|
-
#: src/ui/pages/ArchivePage.tsx
|
|
1042
1163
|
msgid "Hidden from Latest"
|
|
1043
1164
|
msgstr ""
|
|
1044
1165
|
|
|
1166
|
+
#. @context: Button that folds away the original while writing its translation. Sits right after the words “Translating into …”, which is what makes it clear what gets hidden — the accessible name spells it out
|
|
1167
|
+
#: src/ui/compose/ComposeDialog.tsx
|
|
1168
|
+
msgid "Hide"
|
|
1169
|
+
msgstr ""
|
|
1170
|
+
|
|
1045
1171
|
#. @context: Compose dropdown option for hiding a post from the Latest view
|
|
1046
1172
|
#: src/ui/compose/ComposeDialog.tsx
|
|
1047
1173
|
msgid "Hide from Latest"
|
|
1048
1174
|
msgstr ""
|
|
1049
1175
|
|
|
1176
|
+
#. @context: Accessible name of the button that folds away the post being translated
|
|
1177
|
+
#: src/ui/compose/ComposeDialog.tsx
|
|
1178
|
+
msgid "Hide the original"
|
|
1179
|
+
msgstr ""
|
|
1180
|
+
|
|
1181
|
+
#. @context: Collection sort order option
|
|
1050
1182
|
#. @context: Collection sort order option
|
|
1051
1183
|
#. @context: Collection sort order option
|
|
1052
1184
|
#: src/ui/pages/CollectionPage.tsx
|
|
1185
|
+
#: src/ui/pages/SmartCollectionPage.tsx
|
|
1053
1186
|
#: src/ui/shared/collection-management-labels.ts
|
|
1054
1187
|
msgid "Highest rated"
|
|
1055
1188
|
msgstr ""
|
|
@@ -1080,7 +1213,7 @@ msgid "Image unavailable"
|
|
|
1080
1213
|
msgstr ""
|
|
1081
1214
|
|
|
1082
1215
|
#. @context: Archive media filter - images
|
|
1083
|
-
#: src/
|
|
1216
|
+
#: src/lib/filter-dimensions.ts
|
|
1084
1217
|
msgid "Images"
|
|
1085
1218
|
msgstr ""
|
|
1086
1219
|
|
|
@@ -1146,6 +1279,11 @@ msgstr ""
|
|
|
1146
1279
|
msgid "Journal"
|
|
1147
1280
|
msgstr ""
|
|
1148
1281
|
|
|
1282
|
+
#. @context: Confirm close action sheet - dismiss the sheet and return to the editor. Says what it does rather than 'Cancel', which the composer already spends on leaving.
|
|
1283
|
+
#: src/ui/compose/ComposeDialog.tsx
|
|
1284
|
+
msgid "Keep editing"
|
|
1285
|
+
msgstr ""
|
|
1286
|
+
|
|
1149
1287
|
#. @context: Guidance title on the brand asset page
|
|
1150
1288
|
#: src/ui/pages/BrandPage.tsx
|
|
1151
1289
|
msgid "Keep the artwork unchanged."
|
|
@@ -1166,6 +1304,20 @@ msgstr ""
|
|
|
1166
1304
|
msgid "Label (optional)"
|
|
1167
1305
|
msgstr ""
|
|
1168
1306
|
|
|
1307
|
+
#. @context: Accessible label for the site language switcher
|
|
1308
|
+
#. @context: Compose field for the post's content language
|
|
1309
|
+
#: src/ui/compose/ComposeDialog.tsx
|
|
1310
|
+
#: src/ui/layouts/SiteLayout.tsx
|
|
1311
|
+
msgid "Language"
|
|
1312
|
+
msgstr ""
|
|
1313
|
+
|
|
1314
|
+
#. @context: Accessible label for the site language switcher when it names the language on screen
|
|
1315
|
+
#. @context: Accessible name of the composer's language button, which sits beside Post and names the language this post would publish in
|
|
1316
|
+
#: src/ui/compose/ComposeDialog.tsx
|
|
1317
|
+
#: src/ui/layouts/SiteLayout.tsx
|
|
1318
|
+
msgid "Language: {language}"
|
|
1319
|
+
msgstr ""
|
|
1320
|
+
|
|
1169
1321
|
#. @context: Tooltip text for the timestamp on an unpublished draft
|
|
1170
1322
|
#: src/ui/shared/PostFooter.tsx
|
|
1171
1323
|
msgid "Last edited on {date} at {time}"
|
|
@@ -1174,7 +1326,9 @@ msgstr ""
|
|
|
1174
1326
|
#. @context: Active browse tab label on sample page
|
|
1175
1327
|
#. @context: Browser page title for the latest feed
|
|
1176
1328
|
#. @context: Page heading for the latest posts feed
|
|
1329
|
+
#. @context: Subscribe page name for the latest public posts feed
|
|
1177
1330
|
#: src/routes/pages/home.tsx
|
|
1331
|
+
#: src/routes/pages/subscribe.tsx
|
|
1178
1332
|
#: src/ui/pages/HomePage.tsx
|
|
1179
1333
|
#: src/ui/pages/ThemeSamplePage.tsx
|
|
1180
1334
|
msgid "Latest"
|
|
@@ -1193,6 +1347,13 @@ msgstr ""
|
|
|
1193
1347
|
msgid "Latest posts"
|
|
1194
1348
|
msgstr ""
|
|
1195
1349
|
|
|
1350
|
+
#. @context: Archive grid/list toggle group label
|
|
1351
|
+
#. @context: Smart collection dialog field
|
|
1352
|
+
#: src/ui/pages/ArchivePage.tsx
|
|
1353
|
+
#: src/ui/shared/smart-collection-labels.ts
|
|
1354
|
+
msgid "Layout"
|
|
1355
|
+
msgstr ""
|
|
1356
|
+
|
|
1196
1357
|
#. @context: Compose publish settings slug help text
|
|
1197
1358
|
#: src/ui/compose/ComposeDialog.tsx
|
|
1198
1359
|
msgid "Leave blank to generate one automatically."
|
|
@@ -1229,35 +1390,13 @@ msgstr ""
|
|
|
1229
1390
|
msgid "Link removed."
|
|
1230
1391
|
msgstr ""
|
|
1231
1392
|
|
|
1232
|
-
#. @context: Description for the featured system navigation toggle
|
|
1233
|
-
#: src/ui/shared/navigation-labels.ts
|
|
1234
|
-
msgid "Link to posts you've marked as featured."
|
|
1235
|
-
msgstr ""
|
|
1236
|
-
|
|
1237
|
-
#. @context: Description for the archive system navigation toggle
|
|
1238
|
-
#: src/ui/shared/navigation-labels.ts
|
|
1239
|
-
msgid "Link to the post archive"
|
|
1240
|
-
msgstr ""
|
|
1241
|
-
|
|
1242
|
-
#. @context: Description for the collections system navigation toggle
|
|
1243
|
-
#: src/ui/shared/navigation-labels.ts
|
|
1244
|
-
msgid "Link to your collections page"
|
|
1245
|
-
msgstr ""
|
|
1246
|
-
|
|
1247
|
-
#. @context: Description for the latest system navigation toggle
|
|
1248
|
-
#: src/ui/shared/navigation-labels.ts
|
|
1249
|
-
msgid "Link to your latest posts. Your homepage shows this feed."
|
|
1250
|
-
msgstr ""
|
|
1251
|
-
|
|
1252
1393
|
#. @context: Toast after saving a custom collections link
|
|
1253
1394
|
#: src/ui/shared/collection-management-labels.ts
|
|
1254
1395
|
msgid "Link updated."
|
|
1255
1396
|
msgstr ""
|
|
1256
1397
|
|
|
1257
|
-
#. @context: Archive feed title segment for link format filter
|
|
1258
1398
|
#. @context: Post format label plural - links
|
|
1259
|
-
#: src/
|
|
1260
|
-
#: src/ui/pages/ArchivePage.tsx
|
|
1399
|
+
#: src/lib/filter-dimensions.ts
|
|
1261
1400
|
msgid "Links"
|
|
1262
1401
|
msgstr ""
|
|
1263
1402
|
|
|
@@ -1266,6 +1405,11 @@ msgstr ""
|
|
|
1266
1405
|
msgid "Links should read clearly without glowing against the page."
|
|
1267
1406
|
msgstr ""
|
|
1268
1407
|
|
|
1408
|
+
#. @context: Smart collection layout option
|
|
1409
|
+
#: src/ui/shared/smart-collection-labels.ts
|
|
1410
|
+
msgid "List"
|
|
1411
|
+
msgstr ""
|
|
1412
|
+
|
|
1269
1413
|
#. @context: Inline link label in the sample note post body
|
|
1270
1414
|
#. @context: Inline link label in the sample note summary
|
|
1271
1415
|
#: src/ui/pages/ThemeSamplePage.tsx
|
|
@@ -1305,6 +1449,8 @@ msgid "Look at the footer metadata last, to make sure the accent is not fighting
|
|
|
1305
1449
|
msgstr ""
|
|
1306
1450
|
|
|
1307
1451
|
#. @context: Feed autodiscovery title for the site's main feed
|
|
1452
|
+
#. @context: Subscribe page name for the site's main feed
|
|
1453
|
+
#: src/routes/pages/subscribe.tsx
|
|
1308
1454
|
#: src/ui/layouts/BaseLayout.tsx
|
|
1309
1455
|
msgid "Main feed"
|
|
1310
1456
|
msgstr ""
|
|
@@ -1315,6 +1461,8 @@ msgid "March 15"
|
|
|
1315
1461
|
msgstr ""
|
|
1316
1462
|
|
|
1317
1463
|
#. @context: Compose toolbar - media tooltip
|
|
1464
|
+
#. @context: Post filter dimension name - attached media
|
|
1465
|
+
#: src/lib/filter-dimensions.ts
|
|
1318
1466
|
#: src/ui/compose/ComposeDialog.tsx
|
|
1319
1467
|
msgid "Media"
|
|
1320
1468
|
msgstr ""
|
|
@@ -1342,6 +1490,16 @@ msgstr ""
|
|
|
1342
1490
|
msgid "More options are available after you create it."
|
|
1343
1491
|
msgstr ""
|
|
1344
1492
|
|
|
1493
|
+
#. @context: Button that moves an attachment one place toward the start in compose
|
|
1494
|
+
#: src/ui/compose/ComposeDialog.tsx
|
|
1495
|
+
msgid "Move attachment earlier"
|
|
1496
|
+
msgstr ""
|
|
1497
|
+
|
|
1498
|
+
#. @context: Button that moves an attachment one place toward the end in compose
|
|
1499
|
+
#: src/ui/compose/ComposeDialog.tsx
|
|
1500
|
+
msgid "Move attachment later"
|
|
1501
|
+
msgstr ""
|
|
1502
|
+
|
|
1345
1503
|
#. @context: Secondary badge label on sample page
|
|
1346
1504
|
#. @context: Token label on sample page
|
|
1347
1505
|
#: src/ui/pages/ThemeSamplePage.tsx
|
|
@@ -1360,10 +1518,8 @@ msgid "Navigation and reading states"
|
|
|
1360
1518
|
msgstr ""
|
|
1361
1519
|
|
|
1362
1520
|
#. @context: Button to create a collection from collections page
|
|
1363
|
-
#. @context:
|
|
1364
|
-
|
|
1365
|
-
#: src/ui/pages/CollectionEditorPage.tsx
|
|
1366
|
-
#: src/ui/pages/CollectionEditorPage.tsx
|
|
1521
|
+
#. @context: Title of the dialog that creates a collection
|
|
1522
|
+
#: src/ui/shared/collection-management-labels.ts
|
|
1367
1523
|
#: src/ui/shared/CollectionsManager.tsx
|
|
1368
1524
|
msgid "New Collection"
|
|
1369
1525
|
msgstr ""
|
|
@@ -1394,14 +1550,21 @@ msgstr ""
|
|
|
1394
1550
|
msgid "New post"
|
|
1395
1551
|
msgstr ""
|
|
1396
1552
|
|
|
1553
|
+
#. @context: Menu item on the collections page that opens the smart collection dialog
|
|
1554
|
+
#: src/ui/shared/smart-collection-labels.ts
|
|
1555
|
+
msgid "New Smart Collection"
|
|
1556
|
+
msgstr ""
|
|
1557
|
+
|
|
1397
1558
|
#. @context: Archive page meta note explaining the active sort order
|
|
1398
1559
|
#: src/ui/pages/ArchivePage.tsx
|
|
1399
1560
|
msgid "newest changes first"
|
|
1400
1561
|
msgstr ""
|
|
1401
1562
|
|
|
1563
|
+
#. @context: Collection sort order option
|
|
1402
1564
|
#. @context: Collection sort order option
|
|
1403
1565
|
#. @context: Collection sort order option
|
|
1404
1566
|
#: src/ui/pages/CollectionPage.tsx
|
|
1567
|
+
#: src/ui/pages/SmartCollectionPage.tsx
|
|
1405
1568
|
#: src/ui/shared/collection-management-labels.ts
|
|
1406
1569
|
msgid "Newest first"
|
|
1407
1570
|
msgstr ""
|
|
@@ -1429,6 +1592,11 @@ msgstr ""
|
|
|
1429
1592
|
msgid "No collections yet. Start one to organize threads by topic."
|
|
1430
1593
|
msgstr ""
|
|
1431
1594
|
|
|
1595
|
+
#. @context: Smart collection dialog with no conditions set
|
|
1596
|
+
#: src/ui/shared/smart-collection-labels.ts
|
|
1597
|
+
msgid "No conditions yet. Add one to choose what lands here."
|
|
1598
|
+
msgstr ""
|
|
1599
|
+
|
|
1432
1600
|
#. @context: Drafts panel empty state
|
|
1433
1601
|
#: src/ui/compose/ComposeDialog.tsx
|
|
1434
1602
|
msgid "No drafts yet. Save a draft to find it here."
|
|
@@ -1449,6 +1617,11 @@ msgstr ""
|
|
|
1449
1617
|
msgid "No threads match these filters. Try adjusting your selection or clear all filters."
|
|
1450
1618
|
msgstr ""
|
|
1451
1619
|
|
|
1620
|
+
#. @context: Help text under the compose language field before there is enough writing to read a language out of; {language} is the one it would publish in meanwhile, which is the language of the page the composer was opened from
|
|
1621
|
+
#: src/ui/compose/ComposeDialog.tsx
|
|
1622
|
+
msgid "Not enough text to tell yet — publishes in {language}"
|
|
1623
|
+
msgstr ""
|
|
1624
|
+
|
|
1452
1625
|
#. @context: Action to dismiss the post-create Collection navigation prompt
|
|
1453
1626
|
#: src/ui/shared/CollectionsManager.tsx
|
|
1454
1627
|
msgid "Not now"
|
|
@@ -1468,10 +1641,8 @@ msgstr ""
|
|
|
1468
1641
|
msgid "note treatment"
|
|
1469
1642
|
msgstr ""
|
|
1470
1643
|
|
|
1471
|
-
#. @context: Archive feed title segment for note format filter
|
|
1472
1644
|
#. @context: Post format label plural - notes
|
|
1473
|
-
#: src/
|
|
1474
|
-
#: src/ui/pages/ArchivePage.tsx
|
|
1645
|
+
#: src/lib/filter-dimensions.ts
|
|
1475
1646
|
msgid "Notes"
|
|
1476
1647
|
msgstr ""
|
|
1477
1648
|
|
|
@@ -1480,23 +1651,45 @@ msgstr ""
|
|
|
1480
1651
|
msgid "Nothing here yet. Add threads to one of these collections to fill this view."
|
|
1481
1652
|
msgstr ""
|
|
1482
1653
|
|
|
1654
|
+
#. @context: Empty state when a collection has no posts in the language being browsed
|
|
1655
|
+
#: src/ui/pages/CollectionPage.tsx
|
|
1656
|
+
msgid "Nothing in {language} here yet."
|
|
1657
|
+
msgstr ""
|
|
1658
|
+
|
|
1483
1659
|
#. @context: Empty state message on featured page
|
|
1484
1660
|
#: src/ui/pages/FeaturedPage.tsx
|
|
1485
1661
|
msgid "Nothing in Featured yet. Mark a post as featured to show it here."
|
|
1486
1662
|
msgstr ""
|
|
1487
1663
|
|
|
1664
|
+
#. @context: Smart collection page when no post matches
|
|
1665
|
+
#: src/ui/shared/smart-collection-labels.ts
|
|
1666
|
+
msgid "Nothing matches these conditions yet."
|
|
1667
|
+
msgstr ""
|
|
1668
|
+
|
|
1488
1669
|
#. @context: Value shown on a post's date control when it will publish at the current time
|
|
1489
1670
|
#: src/ui/compose/ComposeDialog.tsx
|
|
1490
1671
|
msgid "Now"
|
|
1491
1672
|
msgstr ""
|
|
1492
1673
|
|
|
1674
|
+
#. @context: Archive page count when a filter narrows the view, following the matching count — reads as '42 of 1,240 threads'
|
|
1675
|
+
#: src/ui/pages/ArchivePage.tsx
|
|
1676
|
+
msgid "of {total} {unit}"
|
|
1677
|
+
msgstr ""
|
|
1678
|
+
|
|
1679
|
+
#. @context: Collection sort order option
|
|
1493
1680
|
#. @context: Collection sort order option
|
|
1494
1681
|
#. @context: Collection sort order option
|
|
1495
1682
|
#: src/ui/pages/CollectionPage.tsx
|
|
1683
|
+
#: src/ui/pages/SmartCollectionPage.tsx
|
|
1496
1684
|
#: src/ui/shared/collection-management-labels.ts
|
|
1497
1685
|
msgid "Oldest first"
|
|
1498
1686
|
msgstr ""
|
|
1499
1687
|
|
|
1688
|
+
#. @context: Subscribe page description of the featured posts feed
|
|
1689
|
+
#: src/routes/pages/subscribe.tsx
|
|
1690
|
+
msgid "Only the posts marked as featured."
|
|
1691
|
+
msgstr ""
|
|
1692
|
+
|
|
1500
1693
|
#. @context: Compose publish settings help text for private visibility
|
|
1501
1694
|
#: src/ui/compose/ComposeDialog.tsx
|
|
1502
1695
|
msgid "Only visible when signed in."
|
|
@@ -1532,6 +1725,21 @@ msgstr ""
|
|
|
1532
1725
|
msgid "Open raw SVG"
|
|
1533
1726
|
msgstr ""
|
|
1534
1727
|
|
|
1728
|
+
#. @context: Tooltip on the source post link above the compose editor while writing a translation
|
|
1729
|
+
#: src/ui/compose/ComposeDialog.tsx
|
|
1730
|
+
msgid "Open the original in a new tab"
|
|
1731
|
+
msgstr ""
|
|
1732
|
+
|
|
1733
|
+
#. @context: Tooltip on the subscribe page feed names, which link to the page whose posts that feed carries
|
|
1734
|
+
#: src/ui/pages/SubscribePage.tsx
|
|
1735
|
+
msgid "Open the page this feed carries"
|
|
1736
|
+
msgstr ""
|
|
1737
|
+
|
|
1738
|
+
#. @context: Collection editing dialog field
|
|
1739
|
+
#: src/ui/shared/collection-management-labels.ts
|
|
1740
|
+
msgid "Order by"
|
|
1741
|
+
msgstr ""
|
|
1742
|
+
|
|
1535
1743
|
#. @context: Menu action to organize collections
|
|
1536
1744
|
#: src/ui/shared/CollectionsManager.tsx
|
|
1537
1745
|
msgid "Organize"
|
|
@@ -1543,11 +1751,9 @@ msgid "Outline"
|
|
|
1543
1751
|
msgstr ""
|
|
1544
1752
|
|
|
1545
1753
|
#. @context: Setup/signin form field - password
|
|
1546
|
-
#. @context: Setup/signin form field - password
|
|
1547
|
-
#: src/routes/auth/setup.tsx
|
|
1548
1754
|
#: src/routes/auth/signin.tsx
|
|
1549
1755
|
msgid "Password"
|
|
1550
|
-
msgstr ""
|
|
1756
|
+
msgstr "密码"
|
|
1551
1757
|
|
|
1552
1758
|
#. @context: Error shown when password reset is blocked in demo mode
|
|
1553
1759
|
#: src/routes/auth/reset.tsx
|
|
@@ -1592,6 +1798,11 @@ msgstr ""
|
|
|
1592
1798
|
msgid "Post privately"
|
|
1593
1799
|
msgstr ""
|
|
1594
1800
|
|
|
1801
|
+
#. @context: Smart collection dialog — conditions are combined with AND
|
|
1802
|
+
#: src/ui/shared/smart-collection-labels.ts
|
|
1803
|
+
msgid "Posts matching all of these"
|
|
1804
|
+
msgstr ""
|
|
1805
|
+
|
|
1595
1806
|
#. @context: Hover hint for the homepage compose shortcut
|
|
1596
1807
|
#: src/ui/compose/ComposePrompt.tsx
|
|
1597
1808
|
msgid "Press N to write"
|
|
@@ -1636,16 +1847,16 @@ msgstr ""
|
|
|
1636
1847
|
#. @context: Archive visibility filter - private posts
|
|
1637
1848
|
#. @context: Compose publish settings visibility option
|
|
1638
1849
|
#. @context: Post status badge for a private post
|
|
1850
|
+
#: src/lib/filter-dimensions.ts
|
|
1639
1851
|
#: src/ui/compose/ComposeDialog.tsx
|
|
1640
1852
|
#: src/ui/feed/PostStatusBadges.tsx
|
|
1641
|
-
#: src/ui/pages/ArchivePage.tsx
|
|
1642
1853
|
msgid "Private"
|
|
1643
1854
|
msgstr ""
|
|
1644
1855
|
|
|
1645
1856
|
#. @context: Archive visibility filter - public posts
|
|
1646
1857
|
#. @context: Compose publish settings visibility option
|
|
1858
|
+
#: src/lib/filter-dimensions.ts
|
|
1647
1859
|
#: src/ui/compose/ComposeDialog.tsx
|
|
1648
|
-
#: src/ui/pages/ArchivePage.tsx
|
|
1649
1860
|
msgid "Public"
|
|
1650
1861
|
msgstr ""
|
|
1651
1862
|
|
|
@@ -1678,6 +1889,11 @@ msgstr ""
|
|
|
1678
1889
|
msgid "Published!"
|
|
1679
1890
|
msgstr ""
|
|
1680
1891
|
|
|
1892
|
+
#. @context: Toast shown while a post is being published
|
|
1893
|
+
#: src/ui/compose/ComposeDialog.tsx
|
|
1894
|
+
msgid "Publishing..."
|
|
1895
|
+
msgstr ""
|
|
1896
|
+
|
|
1681
1897
|
#. @context: Search highlight text on sample page
|
|
1682
1898
|
#: src/ui/pages/ThemeSamplePage.tsx
|
|
1683
1899
|
msgid "quiet design"
|
|
@@ -1705,11 +1921,9 @@ msgstr ""
|
|
|
1705
1921
|
msgid "Quoted or highlighted passages should feel like annotations, not warnings."
|
|
1706
1922
|
msgstr ""
|
|
1707
1923
|
|
|
1708
|
-
#. @context: Archive feed title segment for quote format filter
|
|
1709
1924
|
#. @context: Placeholder for the custom collections link label
|
|
1710
1925
|
#. @context: Post format label plural - quotes
|
|
1711
|
-
#: src/
|
|
1712
|
-
#: src/ui/pages/ArchivePage.tsx
|
|
1926
|
+
#: src/lib/filter-dimensions.ts
|
|
1713
1927
|
#: src/ui/shared/collection-management-labels.ts
|
|
1714
1928
|
msgid "Quotes"
|
|
1715
1929
|
msgstr ""
|
|
@@ -1719,6 +1933,21 @@ msgstr ""
|
|
|
1719
1933
|
msgid "Rate"
|
|
1720
1934
|
msgstr ""
|
|
1721
1935
|
|
|
1936
|
+
#. @context: Help text under the compose language field
|
|
1937
|
+
#: src/ui/compose/ComposeDialog.tsx
|
|
1938
|
+
msgid "Read from what you write"
|
|
1939
|
+
msgstr ""
|
|
1940
|
+
|
|
1941
|
+
#. @context: Help text under the compose language field once a language has been detected
|
|
1942
|
+
#: src/ui/compose/ComposeDialog.tsx
|
|
1943
|
+
msgid "Read from what you write — looks like {language}"
|
|
1944
|
+
msgstr ""
|
|
1945
|
+
|
|
1946
|
+
#. @context: Link out of an empty language view of a collection
|
|
1947
|
+
#: src/ui/pages/CollectionPage.tsx
|
|
1948
|
+
msgid "Read it in {language}"
|
|
1949
|
+
msgstr ""
|
|
1950
|
+
|
|
1722
1951
|
#. @context: Collapse an expanded untitled note back to its preview in the feed
|
|
1723
1952
|
#: src/ui/feed/NoteCard.tsx
|
|
1724
1953
|
msgid "Read less"
|
|
@@ -1759,6 +1988,11 @@ msgstr ""
|
|
|
1759
1988
|
msgid "Remove attachment"
|
|
1760
1989
|
msgstr ""
|
|
1761
1990
|
|
|
1991
|
+
#. @context: Smart collection dialog condition row button
|
|
1992
|
+
#: src/ui/shared/smart-collection-labels.ts
|
|
1993
|
+
msgid "Remove condition"
|
|
1994
|
+
msgstr ""
|
|
1995
|
+
|
|
1762
1996
|
#. @context: Tooltip for divider delete button
|
|
1763
1997
|
#: src/ui/shared/CollectionsManager.tsx
|
|
1764
1998
|
msgid "Remove Divider"
|
|
@@ -1780,6 +2014,8 @@ msgid "Replace image"
|
|
|
1780
2014
|
msgstr ""
|
|
1781
2015
|
|
|
1782
2016
|
#. @context: Archive tile label for multiple thread replies
|
|
2017
|
+
#. @context: Post filter dimension name - whether a thread has replies
|
|
2018
|
+
#: src/lib/filter-dimensions.ts
|
|
1783
2019
|
#: src/ui/pages/ArchivePage.tsx
|
|
1784
2020
|
msgid "Replies"
|
|
1785
2021
|
msgstr ""
|
|
@@ -1823,8 +2059,18 @@ msgstr ""
|
|
|
1823
2059
|
msgid "Reverse logo"
|
|
1824
2060
|
msgstr ""
|
|
1825
2061
|
|
|
2062
|
+
#. @context: Built-in navigation label for the feed. Keep the acronym in every locale — it is what readers scan for. The document /feed serves is Atom, but RSS is the category name readers and feed apps use, and it matches the vocabulary the rest of the product already speaks (systemKey `rss`, `mainRssFeed`). 'Feed' would collide with Featured/Latest/All, which are feeds too.
|
|
2063
|
+
#: src/ui/shared/navigation-labels.ts
|
|
2064
|
+
msgctxt "nav"
|
|
2065
|
+
msgid "RSS"
|
|
2066
|
+
msgstr ""
|
|
2067
|
+
|
|
2068
|
+
#. @context: Tooltip for the RSS feed icon beside a collection in the collections directory
|
|
2069
|
+
#. @context: Tooltip for the RSS feed link on a collection page
|
|
1826
2070
|
#. @context: Tooltip for the RSS feed link on a collection page
|
|
1827
2071
|
#: src/ui/pages/CollectionPage.tsx
|
|
2072
|
+
#: src/ui/pages/SmartCollectionPage.tsx
|
|
2073
|
+
#: src/ui/shared/CollectionDirectory.tsx
|
|
1828
2074
|
msgid "RSS feed"
|
|
1829
2075
|
msgstr ""
|
|
1830
2076
|
|
|
@@ -1882,6 +2128,11 @@ msgstr ""
|
|
|
1882
2128
|
msgid "Save to drafts?"
|
|
1883
2129
|
msgstr ""
|
|
1884
2130
|
|
|
2131
|
+
#. @context: Toast shown while a draft or an edited post is being saved
|
|
2132
|
+
#: src/ui/compose/ComposeDialog.tsx
|
|
2133
|
+
msgid "Saving..."
|
|
2134
|
+
msgstr ""
|
|
2135
|
+
|
|
1885
2136
|
#. @context: Search page title
|
|
1886
2137
|
#. @context: Search submit button
|
|
1887
2138
|
#: src/ui/pages/SearchPage.tsx
|
|
@@ -1921,6 +2172,11 @@ msgstr ""
|
|
|
1921
2172
|
msgid "Shared links"
|
|
1922
2173
|
msgstr ""
|
|
1923
2174
|
|
|
2175
|
+
#. @context: Button that brings back the folded-away original while writing its translation
|
|
2176
|
+
#: src/ui/compose/ComposeDialog.tsx
|
|
2177
|
+
msgid "Show"
|
|
2178
|
+
msgstr ""
|
|
2179
|
+
|
|
1924
2180
|
#. @context: Archive view option - grid
|
|
1925
2181
|
#: src/ui/pages/ArchivePage.tsx
|
|
1926
2182
|
msgid "Show as a grid of tiles"
|
|
@@ -1949,9 +2205,9 @@ msgstr ""
|
|
|
1949
2205
|
msgid "Show more"
|
|
1950
2206
|
msgstr ""
|
|
1951
2207
|
|
|
1952
|
-
#. @context:
|
|
1953
|
-
#: src/ui/
|
|
1954
|
-
msgid "
|
|
2208
|
+
#. @context: Accessible name of the button that brings back the folded-away post being translated
|
|
2209
|
+
#: src/ui/compose/ComposeDialog.tsx
|
|
2210
|
+
msgid "Show the original"
|
|
1955
2211
|
msgstr ""
|
|
1956
2212
|
|
|
1957
2213
|
#. @context: Built-in navigation label shown when auth is required
|
|
@@ -1974,12 +2230,9 @@ msgstr ""
|
|
|
1974
2230
|
msgid "Sign in to start writing."
|
|
1975
2231
|
msgstr ""
|
|
1976
2232
|
|
|
1977
|
-
#. @context: Archive feed title segment for hasReplies=0 filter
|
|
1978
|
-
#: src/routes/pages/archive.tsx
|
|
1979
|
-
msgid "single posts"
|
|
1980
|
-
msgstr ""
|
|
1981
|
-
|
|
1982
2233
|
#. @context: Archive thread filter - posts without replies
|
|
2234
|
+
#. @context: Archive thread filter - posts without replies
|
|
2235
|
+
#: src/lib/filter-dimensions.ts
|
|
1983
2236
|
#: src/ui/pages/ArchivePage.tsx
|
|
1984
2237
|
msgid "Single posts"
|
|
1985
2238
|
msgstr ""
|
|
@@ -1989,16 +2242,28 @@ msgstr ""
|
|
|
1989
2242
|
msgid "Site accent"
|
|
1990
2243
|
msgstr ""
|
|
1991
2244
|
|
|
1992
|
-
#. @context: Setup form field - site name
|
|
1993
|
-
#: src/routes/auth/setup.tsx
|
|
1994
|
-
msgid "Site Name"
|
|
1995
|
-
msgstr ""
|
|
1996
|
-
|
|
1997
2245
|
#. @context: Description for the favicon asset card
|
|
1998
2246
|
#: src/ui/pages/BrandPage.tsx
|
|
1999
2247
|
msgid "Small browser icon used in tabs and bookmarks."
|
|
2000
2248
|
msgstr ""
|
|
2001
2249
|
|
|
2250
|
+
#. @context: Name of a collection whose members come from conditions
|
|
2251
|
+
#: src/ui/shared/smart-collection-labels.ts
|
|
2252
|
+
msgid "Smart Collection"
|
|
2253
|
+
msgstr ""
|
|
2254
|
+
|
|
2255
|
+
#. @context: Confirmation after deleting a smart collection
|
|
2256
|
+
#. @context: Confirmation after deleting a smart collection
|
|
2257
|
+
#: src/ui/pages/SmartCollectionPage.tsx
|
|
2258
|
+
#: src/ui/shared/CollectionsManager.tsx
|
|
2259
|
+
msgid "Smart collection deleted."
|
|
2260
|
+
msgstr ""
|
|
2261
|
+
|
|
2262
|
+
#. @context: Confirmation after saving a smart collection
|
|
2263
|
+
#: src/ui/shared/smart-collection-labels.ts
|
|
2264
|
+
msgid "Smart collection saved."
|
|
2265
|
+
msgstr ""
|
|
2266
|
+
|
|
2002
2267
|
#. @context: Asset keyword on the public brand asset page
|
|
2003
2268
|
#: src/ui/pages/BrandPage.tsx
|
|
2004
2269
|
msgid "Social preview"
|
|
@@ -2016,19 +2281,19 @@ msgstr ""
|
|
|
2016
2281
|
|
|
2017
2282
|
#. @context: Fallback validation error for compose form
|
|
2018
2283
|
#. @context: Fallback validation error for password reset form
|
|
2019
|
-
#. @context: Fallback validation error for setup form
|
|
2020
2284
|
#. @context: Fallback validation error for sign-in form
|
|
2021
2285
|
#. @context: Fallback validation error for thread compose form
|
|
2022
2286
|
#: src/routes/auth/reset.tsx
|
|
2023
|
-
#: src/routes/auth/setup.tsx
|
|
2024
2287
|
#: src/routes/auth/signin.tsx
|
|
2025
2288
|
#: src/routes/compose.tsx
|
|
2026
2289
|
#: src/routes/compose.tsx
|
|
2027
2290
|
msgid "Something doesn't look right. Check the form and try again."
|
|
2028
|
-
msgstr ""
|
|
2291
|
+
msgstr "有内容填写不正确,检查后重试。"
|
|
2029
2292
|
|
|
2293
|
+
#. @context: Sort menu label on collection detail page
|
|
2030
2294
|
#. @context: Sort menu label on collection detail page
|
|
2031
2295
|
#: src/ui/pages/CollectionPage.tsx
|
|
2296
|
+
#: src/ui/pages/SmartCollectionPage.tsx
|
|
2032
2297
|
msgid "Sort"
|
|
2033
2298
|
msgstr ""
|
|
2034
2299
|
|
|
@@ -2047,11 +2312,6 @@ msgstr ""
|
|
|
2047
2312
|
msgid "Sort order"
|
|
2048
2313
|
msgstr ""
|
|
2049
2314
|
|
|
2050
|
-
#. @context: Collection form field
|
|
2051
|
-
#: src/ui/shared/collection-management-labels.ts
|
|
2052
|
-
msgid "Sort Order"
|
|
2053
|
-
msgstr ""
|
|
2054
|
-
|
|
2055
2315
|
#. @context: Compose quote source link placeholder
|
|
2056
2316
|
#: src/ui/compose/ComposeDialog.tsx
|
|
2057
2317
|
msgid "Source link (optional)"
|
|
@@ -2087,6 +2347,24 @@ msgstr ""
|
|
|
2087
2347
|
msgid "Stay sturdy and readable."
|
|
2088
2348
|
msgstr ""
|
|
2089
2349
|
|
|
2350
|
+
#. @context: Browser page title for the subscribe page
|
|
2351
|
+
#. @context: Page title for the feed subscription page
|
|
2352
|
+
#: src/routes/pages/subscribe.tsx
|
|
2353
|
+
#: src/ui/pages/SubscribePage.tsx
|
|
2354
|
+
msgid "Subscribe"
|
|
2355
|
+
msgstr ""
|
|
2356
|
+
|
|
2357
|
+
#. @context: Built-in navigation label for the page that explains the site's feeds. Names what the reader wants to do, unlike the sibling RSS entry which names the format and links at the Atom document itself.
|
|
2358
|
+
#: src/ui/shared/navigation-labels.ts
|
|
2359
|
+
msgctxt "nav"
|
|
2360
|
+
msgid "Subscribe"
|
|
2361
|
+
msgstr ""
|
|
2362
|
+
|
|
2363
|
+
#. @context: Subscribe page note that subscribing is one-sided and how to undo it
|
|
2364
|
+
#: src/ui/pages/SubscribePage.tsx
|
|
2365
|
+
msgid "Subscribing creates no account here. To stop, delete the address from your reader."
|
|
2366
|
+
msgstr ""
|
|
2367
|
+
|
|
2090
2368
|
#. @context: Compose custom slug helper label for the suggested slug
|
|
2091
2369
|
#: src/ui/compose/ComposeDialog.tsx
|
|
2092
2370
|
msgid "Suggested link"
|
|
@@ -2141,8 +2419,8 @@ msgstr ""
|
|
|
2141
2419
|
|
|
2142
2420
|
#. @context: Archive media filter - text file attachments
|
|
2143
2421
|
#. @context: Attached text panel title
|
|
2422
|
+
#: src/lib/filter-dimensions.ts
|
|
2144
2423
|
#: src/ui/compose/ComposeDialog.tsx
|
|
2145
|
-
#: src/ui/pages/ArchivePage.tsx
|
|
2146
2424
|
msgid "Text attachment"
|
|
2147
2425
|
msgstr ""
|
|
2148
2426
|
|
|
@@ -2176,11 +2454,21 @@ msgstr ""
|
|
|
2176
2454
|
msgid "The image should sit quietly inside the article instead of feeling like a card preview."
|
|
2177
2455
|
msgstr ""
|
|
2178
2456
|
|
|
2457
|
+
#. @context: Accessible name of the scrollable panel holding the post being translated
|
|
2458
|
+
#: src/ui/compose/ComposeDialog.tsx
|
|
2459
|
+
msgid "The original"
|
|
2460
|
+
msgstr ""
|
|
2461
|
+
|
|
2179
2462
|
#. @context: Blockquote on the theme sample page
|
|
2180
2463
|
#: src/ui/pages/ThemeSamplePage.tsx
|
|
2181
2464
|
msgid "The right accent should disappear into the writing until you need it."
|
|
2182
2465
|
msgstr ""
|
|
2183
2466
|
|
|
2467
|
+
#. @context: Subscribe page description of the latest posts feed. The home page and this feed run the same query, so they carry the same posts.
|
|
2468
|
+
#: src/routes/pages/subscribe.tsx
|
|
2469
|
+
msgid "The same posts as the home page."
|
|
2470
|
+
msgstr ""
|
|
2471
|
+
|
|
2184
2472
|
#. @context: Section heading for theme picker pills
|
|
2185
2473
|
#: src/ui/pages/ThemeSamplePage.tsx
|
|
2186
2474
|
msgid "Theme"
|
|
@@ -2203,6 +2491,11 @@ msgstr ""
|
|
|
2203
2491
|
msgid "This article is here to answer a specific question: does the default accent still feel calm once it has to carry a full reading experience?"
|
|
2204
2492
|
msgstr ""
|
|
2205
2493
|
|
|
2494
|
+
#. @context: Toast shown when the composer cannot write its local draft to browser storage
|
|
2495
|
+
#: src/ui/compose/ComposeDialog.tsx
|
|
2496
|
+
msgid "This browser can't keep a local copy. Save as a draft."
|
|
2497
|
+
msgstr ""
|
|
2498
|
+
|
|
2206
2499
|
#. @context: Empty state message
|
|
2207
2500
|
#: src/ui/pages/CollectionPage.tsx
|
|
2208
2501
|
msgid "This collection is empty. Add threads from the editor."
|
|
@@ -2239,6 +2532,11 @@ msgstr ""
|
|
|
2239
2532
|
msgid "This link is reserved. Choose something else."
|
|
2240
2533
|
msgstr ""
|
|
2241
2534
|
|
|
2535
|
+
#. @context: Collection editing dialog — the typed collection link is already in use
|
|
2536
|
+
#: src/ui/shared/collection-management-labels.ts
|
|
2537
|
+
msgid "This link is taken. Choose another."
|
|
2538
|
+
msgstr ""
|
|
2539
|
+
|
|
2242
2540
|
#. @context: Explanation in the draft preview status bar
|
|
2243
2541
|
#: src/ui/shared/DraftPreviewBar.tsx
|
|
2244
2542
|
msgid "This post isn’t published."
|
|
@@ -2259,6 +2557,11 @@ msgstr ""
|
|
|
2259
2557
|
msgid "This sign-in link has expired. Return to "
|
|
2260
2558
|
msgstr ""
|
|
2261
2559
|
|
|
2560
|
+
#. @context: Subscribe page introduction, above the feed addresses. States the format the site serves, then the one action to take.
|
|
2561
|
+
#: src/ui/pages/SubscribePage.tsx
|
|
2562
|
+
msgid "This site publishes Atom feeds. Copy one of these addresses into a feed reader."
|
|
2563
|
+
msgstr ""
|
|
2564
|
+
|
|
2262
2565
|
#. @context: Error shown when a hosted upload would exceed the shared account media limit
|
|
2263
2566
|
#. @context: Error shown when a hosted upload would exceed the shared account media limit
|
|
2264
2567
|
#: src/routes/api/upload-multipart.ts
|
|
@@ -2275,10 +2578,14 @@ msgstr ""
|
|
|
2275
2578
|
#. @context: Archive page summary unit for a single matching thread
|
|
2276
2579
|
#. @context: Singular thread count label
|
|
2277
2580
|
#. @context: Singular thread count label
|
|
2581
|
+
#. @context: Singular thread count label
|
|
2582
|
+
#. @context: Singular thread count label on collection detail page
|
|
2278
2583
|
#. @context: Singular thread count label on collection detail page
|
|
2279
2584
|
#: src/ui/pages/ArchivePage.tsx
|
|
2280
2585
|
#: src/ui/pages/ArchivePage.tsx
|
|
2281
2586
|
#: src/ui/pages/CollectionPage.tsx
|
|
2587
|
+
#: src/ui/pages/SmartCollectionPage.tsx
|
|
2588
|
+
#: src/ui/shared/CollectionDirectory.tsx
|
|
2282
2589
|
#: src/ui/shared/CollectionDirectory.tsx
|
|
2283
2590
|
#: src/ui/shared/CollectionsManager.tsx
|
|
2284
2591
|
msgid "thread"
|
|
@@ -2294,22 +2601,26 @@ msgstr ""
|
|
|
2294
2601
|
msgid "Thread accents"
|
|
2295
2602
|
msgstr ""
|
|
2296
2603
|
|
|
2297
|
-
#. @context: Archive feed title segment for hasReplies=1 filter
|
|
2298
2604
|
#. @context: Archive month header count unit for multiple threads
|
|
2299
2605
|
#. @context: Archive page summary unit for multiple matching threads
|
|
2300
2606
|
#. @context: Plural thread count label
|
|
2301
2607
|
#. @context: Plural thread count label
|
|
2608
|
+
#. @context: Plural thread count label
|
|
2609
|
+
#. @context: Plural thread count label on collection detail page
|
|
2302
2610
|
#. @context: Plural thread count label on collection detail page
|
|
2303
|
-
#: src/routes/pages/archive.tsx
|
|
2304
2611
|
#: src/ui/pages/ArchivePage.tsx
|
|
2305
2612
|
#: src/ui/pages/ArchivePage.tsx
|
|
2306
2613
|
#: src/ui/pages/CollectionPage.tsx
|
|
2614
|
+
#: src/ui/pages/SmartCollectionPage.tsx
|
|
2615
|
+
#: src/ui/shared/CollectionDirectory.tsx
|
|
2307
2616
|
#: src/ui/shared/CollectionDirectory.tsx
|
|
2308
2617
|
#: src/ui/shared/CollectionsManager.tsx
|
|
2309
2618
|
msgid "threads"
|
|
2310
2619
|
msgstr ""
|
|
2311
2620
|
|
|
2312
2621
|
#. @context: Archive thread filter - thread roots with replies
|
|
2622
|
+
#. @context: Archive thread filter - thread roots with replies
|
|
2623
|
+
#: src/lib/filter-dimensions.ts
|
|
2313
2624
|
#: src/ui/pages/ArchivePage.tsx
|
|
2314
2625
|
msgid "Threads"
|
|
2315
2626
|
msgstr ""
|
|
@@ -2322,14 +2633,20 @@ msgstr ""
|
|
|
2322
2633
|
#. @context: Collection form field
|
|
2323
2634
|
#. @context: Compose toolbar - show or hide the title field
|
|
2324
2635
|
#. @context: Input label on sample page
|
|
2636
|
+
#. @context: Post filter dimension name - whether a post is titled
|
|
2637
|
+
#. @context: Smart collection dialog field
|
|
2638
|
+
#: src/lib/filter-dimensions.ts
|
|
2325
2639
|
#: src/ui/compose/ComposeDialog.tsx
|
|
2326
2640
|
#: src/ui/pages/ThemeSamplePage.tsx
|
|
2327
2641
|
#: src/ui/shared/collection-management-labels.ts
|
|
2642
|
+
#: src/ui/shared/smart-collection-labels.ts
|
|
2328
2643
|
msgid "Title"
|
|
2329
2644
|
msgstr ""
|
|
2330
2645
|
|
|
2331
2646
|
#. @context: Archive filter - notes that have a title
|
|
2332
2647
|
#. @context: Archive filter - notes that have a title
|
|
2648
|
+
#. @context: Archive filter - notes that have a title
|
|
2649
|
+
#: src/lib/filter-dimensions.ts
|
|
2333
2650
|
#: src/ui/pages/ArchivePage.tsx
|
|
2334
2651
|
#: src/ui/pages/ArchivePage.tsx
|
|
2335
2652
|
msgid "Titled"
|
|
@@ -2345,6 +2662,21 @@ msgstr ""
|
|
|
2345
2662
|
msgid "Toggle header row"
|
|
2346
2663
|
msgstr ""
|
|
2347
2664
|
|
|
2665
|
+
#. @context: Divider between the original post and the editor writing its translation, when the target language is not known yet
|
|
2666
|
+
#: src/ui/compose/ComposeDialog.tsx
|
|
2667
|
+
msgid "Translating"
|
|
2668
|
+
msgstr ""
|
|
2669
|
+
|
|
2670
|
+
#. @context: Divider between the original post above and the editor below, naming the language being written
|
|
2671
|
+
#: src/ui/compose/ComposeDialog.tsx
|
|
2672
|
+
msgid "Translating into {language}"
|
|
2673
|
+
msgstr ""
|
|
2674
|
+
|
|
2675
|
+
#. @context: Compose banner shown while writing a translation of an existing post
|
|
2676
|
+
#: src/ui/compose/ComposeDialog.tsx
|
|
2677
|
+
msgid "Translation of “{title}”"
|
|
2678
|
+
msgstr ""
|
|
2679
|
+
|
|
2348
2680
|
#. @context: Usage label for the square logo PNG asset card
|
|
2349
2681
|
#: src/ui/pages/BrandPage.tsx
|
|
2350
2682
|
msgid "Transparent square"
|
|
@@ -2365,9 +2697,11 @@ msgstr ""
|
|
|
2365
2697
|
msgid "Type the quote..."
|
|
2366
2698
|
msgstr ""
|
|
2367
2699
|
|
|
2700
|
+
#. @context: Archive filter - notes without a title
|
|
2368
2701
|
#. @context: Archive filter - notes without a title
|
|
2369
2702
|
#. @context: Archive filter - notes without a title
|
|
2370
2703
|
#. @context: Compose note title placeholder. States what the note is while the field is empty rather than asking for a title — untitled notes are a normal kind of note here, and Archive files them under this same word.
|
|
2704
|
+
#: src/lib/filter-dimensions.ts
|
|
2371
2705
|
#: src/ui/compose/ComposeDialog.tsx
|
|
2372
2706
|
#: src/ui/pages/ArchivePage.tsx
|
|
2373
2707
|
#: src/ui/pages/ArchivePage.tsx
|
|
@@ -2437,7 +2771,7 @@ msgid "Use this page to judge buttons, links, cards, forms, thread accents, and
|
|
|
2437
2771
|
msgstr ""
|
|
2438
2772
|
|
|
2439
2773
|
#. @context: Archive media filter - video
|
|
2440
|
-
#: src/
|
|
2774
|
+
#: src/lib/filter-dimensions.ts
|
|
2441
2775
|
msgid "Video"
|
|
2442
2776
|
msgstr ""
|
|
2443
2777
|
|
|
@@ -2451,19 +2785,16 @@ msgstr ""
|
|
|
2451
2785
|
msgid "View earlier notes in this thread"
|
|
2452
2786
|
msgstr ""
|
|
2453
2787
|
|
|
2454
|
-
#. @context: Archive grid/list toggle group label
|
|
2455
|
-
#: src/ui/pages/ArchivePage.tsx
|
|
2456
|
-
msgid "View mode"
|
|
2457
|
-
msgstr ""
|
|
2458
|
-
|
|
2459
2788
|
#. @context: Compose publish settings section label
|
|
2789
|
+
#. @context: Post filter dimension name - who can see a post
|
|
2790
|
+
#: src/lib/filter-dimensions.ts
|
|
2460
2791
|
#: src/ui/compose/ComposeDialog.tsx
|
|
2461
2792
|
msgid "Visibility"
|
|
2462
2793
|
msgstr ""
|
|
2463
2794
|
|
|
2464
|
-
#. @context:
|
|
2465
|
-
#: src/
|
|
2466
|
-
msgid "
|
|
2795
|
+
#. @context: Subscribe page heading over the explanation of feed readers, for readers who have not used one
|
|
2796
|
+
#: src/ui/pages/SubscribePage.tsx
|
|
2797
|
+
msgid "What a feed reader does"
|
|
2467
2798
|
msgstr ""
|
|
2468
2799
|
|
|
2469
2800
|
#. @context: Table header in the sample detail article
|
|
@@ -2521,24 +2852,20 @@ msgstr ""
|
|
|
2521
2852
|
msgid "Why the default accent should feel written, not branded"
|
|
2522
2853
|
msgstr ""
|
|
2523
2854
|
|
|
2524
|
-
#. @context: Archive
|
|
2525
|
-
|
|
2526
|
-
|
|
2527
|
-
|
|
2528
|
-
|
|
2529
|
-
|
|
2530
|
-
|
|
2531
|
-
msgid "with title"
|
|
2532
|
-
msgstr ""
|
|
2533
|
-
|
|
2534
|
-
#. @context: Archive feed title segment for hasMedia=0 filter
|
|
2535
|
-
#: src/routes/pages/archive.tsx
|
|
2536
|
-
msgid "without media"
|
|
2855
|
+
#. @context: Archive filter - posts carrying any media attachment
|
|
2856
|
+
#. @context: Archive filter - posts carrying any media attachment
|
|
2857
|
+
#. @context: Archive filter - posts carrying any media attachment
|
|
2858
|
+
#: src/lib/filter-dimensions.ts
|
|
2859
|
+
#: src/ui/pages/ArchivePage.tsx
|
|
2860
|
+
#: src/ui/shared/smart-collection-labels.ts
|
|
2861
|
+
msgid "With media"
|
|
2537
2862
|
msgstr ""
|
|
2538
2863
|
|
|
2539
|
-
#. @context: Archive
|
|
2540
|
-
|
|
2541
|
-
|
|
2864
|
+
#. @context: Archive filter - posts with no media attachment
|
|
2865
|
+
#. @context: Archive filter - posts with no media attachment
|
|
2866
|
+
#: src/lib/filter-dimensions.ts
|
|
2867
|
+
#: src/ui/shared/smart-collection-labels.ts
|
|
2868
|
+
msgid "Without media"
|
|
2542
2869
|
msgstr ""
|
|
2543
2870
|
|
|
2544
2871
|
#. @context: Compose publish settings hint for quiet reply switch
|
|
@@ -2556,6 +2883,11 @@ msgstr ""
|
|
|
2556
2883
|
msgid "Wrong email or password. Check your credentials and try again."
|
|
2557
2884
|
msgstr ""
|
|
2558
2885
|
|
|
2886
|
+
#. @context: Post filter dimension name - year of publication
|
|
2887
|
+
#: src/lib/filter-dimensions.ts
|
|
2888
|
+
msgid "Year"
|
|
2889
|
+
msgstr ""
|
|
2890
|
+
|
|
2559
2891
|
#. @context: Confirm close action sheet title when editing a published post
|
|
2560
2892
|
#: src/ui/compose/ComposeDialog.tsx
|
|
2561
2893
|
msgid "You have unsaved changes"
|