@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 "{count, plural, one {Found # result} other {Found # results}}"
|
|
|
38
38
|
msgid "{count} images couldn't be saved to your library — their original links were kept."
|
|
39
39
|
msgstr "{count} images couldn't be saved to your library — their original links were kept."
|
|
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 "{count} of {total} threads"
|
|
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 "A calmer accent makes"
|
|
|
70
75
|
msgid "A calmer, warmer accent makes the default theme feel quieter and more intentional."
|
|
71
76
|
msgstr "A calmer, warmer accent makes the default theme feel quieter and more intentional."
|
|
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 "A collection needs a title and a link."
|
|
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 "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."
|
|
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 "A good default accent in Jant should feel like editorial structure, not
|
|
|
89
104
|
msgid "A long-form article sample for checking the default palette in a true reading context."
|
|
90
105
|
msgstr "A long-form article sample for checking the default palette in a true reading context."
|
|
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 "A longer introduction to feeds and readers, at aboutfeeds.com"
|
|
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 "A reference link for checking whether the accent feels editorial instead
|
|
|
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 "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."
|
|
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 "A smart collection needs a title and a link."
|
|
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 "Add a custom shortcut to any page or site."
|
|
|
143
168
|
msgid "Add a label and URL."
|
|
144
169
|
msgstr "Add a label and URL."
|
|
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 "Add a link to your main RSS feed. Change what /feed returns in General."
|
|
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 "Add column after"
|
|
|
178
198
|
msgid "Add column before"
|
|
179
199
|
msgstr "Add column before"
|
|
180
200
|
|
|
201
|
+
#. @context: Smart collection dialog button
|
|
202
|
+
#: src/ui/shared/smart-collection-labels.ts
|
|
203
|
+
msgid "Add condition"
|
|
204
|
+
msgstr "Add condition"
|
|
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 "Add to Navigation"
|
|
|
203
228
|
msgid "Adding…"
|
|
204
229
|
msgstr "Adding…"
|
|
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 "All"
|
|
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 "All"
|
|
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 "All collections"
|
|
|
213
249
|
msgid "All formats"
|
|
214
250
|
msgstr "All formats"
|
|
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 "All posts"
|
|
220
258
|
|
|
@@ -228,6 +266,11 @@ msgstr "All visibility"
|
|
|
228
266
|
msgid "All years"
|
|
229
267
|
msgstr "All years"
|
|
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 "Also available in"
|
|
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 "Apple touch icon"
|
|
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 "Archive"
|
|
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 "Archive"
|
|
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 "Article detail page"
|
|
275
310
|
|
|
276
311
|
#. @context: Archive media filter - audio
|
|
277
|
-
#: src/
|
|
312
|
+
#: src/lib/filter-dimensions.ts
|
|
278
313
|
msgid "Audio"
|
|
279
314
|
msgstr "Audio"
|
|
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 "Auth secret is missing. Check your environment variables."
|
|
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 "Author (optional)"
|
|
|
298
328
|
msgid "Auto"
|
|
299
329
|
msgstr "Auto"
|
|
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 "Automatically collects every post."
|
|
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 "Automatically collects: {conditions}"
|
|
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 "Brand pack"
|
|
|
334
374
|
msgid "Brand tile"
|
|
335
375
|
msgstr "Brand tile"
|
|
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 "Breadcrumb"
|
|
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 "Built-in background"
|
|
|
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 "Buttons can stay steady, but links, thread markers, and subtle emphasis should feel closer to ink on paper than dashboard chrome."
|
|
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 "Cancel"
|
|
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 "Changing the link breaks the old one immediately."
|
|
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,10 +452,10 @@ msgstr "Circle tile"
|
|
|
416
452
|
msgid "Clear filter"
|
|
417
453
|
msgstr "Clear filter"
|
|
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
|
|
422
|
-
msgstr "Close
|
|
457
|
+
msgid "Close"
|
|
458
|
+
msgstr "Close"
|
|
423
459
|
|
|
424
460
|
#. @context: Close drawer button label
|
|
425
461
|
#: src/ui/layouts/SiteLayout.tsx
|
|
@@ -432,6 +468,8 @@ msgid "collection"
|
|
|
432
468
|
msgstr "collection"
|
|
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 "Collection"
|
|
@@ -471,14 +509,14 @@ msgstr "Collection saved."
|
|
|
471
509
|
msgid "collections"
|
|
472
510
|
msgstr "collections"
|
|
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 "Collections"
|
|
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 "Collections and filtered archive views have their own feeds. Look for this icon on those pages."
|
|
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 "Combined Collections"
|
|
|
507
550
|
msgid "Compare it against the theme controls"
|
|
508
551
|
msgstr "Compare it against the theme controls"
|
|
509
552
|
|
|
510
|
-
#. @context: Setup form submit button
|
|
511
|
-
#: src/routes/auth/setup.tsx
|
|
512
|
-
msgid "Complete Setup"
|
|
513
|
-
msgstr "Complete Setup"
|
|
514
|
-
|
|
515
553
|
#. @context: Accessible name for the compose dialog
|
|
516
554
|
#: src/ui/compose/ComposeDialog.tsx
|
|
517
555
|
msgid "Compose"
|
|
518
556
|
msgstr "Compose"
|
|
519
557
|
|
|
558
|
+
#. @context: Smart collection dialog section heading
|
|
559
|
+
#: src/ui/shared/smart-collection-labels.ts
|
|
560
|
+
msgid "Conditions"
|
|
561
|
+
msgstr "Conditions"
|
|
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 "Conditions choose what belongs here, not you. Posts you write later join on their own."
|
|
567
|
+
|
|
520
568
|
#. @context: Password reset form field
|
|
521
569
|
#: src/routes/auth/reset.tsx
|
|
522
570
|
msgid "Confirm Password"
|
|
@@ -537,20 +585,36 @@ msgstr "Continue writing this draft"
|
|
|
537
585
|
msgid "Controls"
|
|
538
586
|
msgstr "Controls"
|
|
539
587
|
|
|
588
|
+
#. @context: Button that copies a feed address to the clipboard
|
|
589
|
+
#: src/ui/pages/SubscribePage.tsx
|
|
590
|
+
msgid "Copy"
|
|
591
|
+
msgstr "Copy"
|
|
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 "Could not copy. Select the address and copy it."
|
|
597
|
+
|
|
598
|
+
#. @context: Collection dialog load failure
|
|
599
|
+
#: src/ui/shared/collection-management-labels.ts
|
|
600
|
+
msgid "Could not open this collection. Try again."
|
|
601
|
+
msgstr "Could not open this collection. Try again."
|
|
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."
|
|
606
|
+
msgstr "Could not open this smart collection. Try again."
|
|
607
|
+
|
|
608
|
+
#. @context: Smart collection dialog save failure
|
|
609
|
+
#: src/ui/shared/smart-collection-labels.ts
|
|
610
|
+
msgid "Could not save. Try again."
|
|
611
|
+
msgstr "Could not save. Try again."
|
|
612
|
+
|
|
540
613
|
#. @context: Error after a Collection could not be added to site navigation
|
|
541
614
|
#: src/ui/shared/collection-management-labels.ts
|
|
542
615
|
msgid "Couldn't add this collection to navigation. Try again."
|
|
543
616
|
msgstr "Couldn't add this collection to navigation. Try again."
|
|
544
617
|
|
|
545
|
-
#. @context: Error toast when account creation fails
|
|
546
|
-
#. @context: Error toast when account creation fails
|
|
547
|
-
#. @context: Error toast when account creation fails
|
|
548
|
-
#: src/routes/auth/setup.tsx
|
|
549
|
-
#: src/routes/auth/setup.tsx
|
|
550
|
-
#: src/routes/auth/setup.tsx
|
|
551
|
-
msgid "Couldn't create your account. Check the details and try again."
|
|
552
|
-
msgstr "Couldn't create your account. Check the details and try again."
|
|
553
|
-
|
|
554
618
|
#. @context: Toast shown when edit mode fails to load a post
|
|
555
619
|
#: src/ui/compose/ComposeDialog.tsx
|
|
556
620
|
msgid "Couldn't load this post. Try again."
|
|
@@ -561,21 +625,31 @@ msgstr "Couldn't load this post. Try again."
|
|
|
561
625
|
msgid "Couldn't publish. Saved as draft."
|
|
562
626
|
msgstr "Couldn't publish. Saved as draft."
|
|
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 "Couldn't publish. Try again."
|
|
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 "Couldn't reach the server. Try again."
|
|
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 "Couldn't save. Try again in a moment."
|
|
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 "Counting…"
|
|
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 "Create a collection to get started."
|
|
573
652
|
|
|
574
|
-
#. @context: Setup page description
|
|
575
|
-
#: src/routes/auth/setup.tsx
|
|
576
|
-
msgid "Create your admin account."
|
|
577
|
-
msgstr "Create your admin account."
|
|
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 "Default preview image for social shares and link unfurls."
|
|
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 "Delete"
|
|
632
708
|
|
|
@@ -660,6 +736,11 @@ msgstr "Delete table"
|
|
|
660
736
|
msgid "Delete this collection permanently? Threads inside won't be removed."
|
|
661
737
|
msgstr "Delete this collection permanently? Threads inside won't be removed."
|
|
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 "Delete this smart collection? Its link stops working."
|
|
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 "Demo credentials are pre-filled — hit Sign In to continue."
|
|
|
670
751
|
msgid "Describe this for people with visual impairments..."
|
|
671
752
|
msgstr "Describe this for people with visual impairments..."
|
|
672
753
|
|
|
754
|
+
#. @context: Smart collection dialog field
|
|
755
|
+
#: src/ui/shared/smart-collection-labels.ts
|
|
756
|
+
msgid "Description"
|
|
757
|
+
msgstr "Description"
|
|
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 "Design"
|
|
|
691
777
|
msgid "Designing a calmer default accent for Jant"
|
|
692
778
|
msgstr "Designing a calmer default accent for Jant"
|
|
693
779
|
|
|
780
|
+
#. @context: Compose language option that leaves detection to Jant
|
|
781
|
+
#: src/ui/compose/ComposeDialog.tsx
|
|
782
|
+
msgid "Detect"
|
|
783
|
+
msgstr "Detect"
|
|
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 "Discard"
|
|
|
703
794
|
msgid "Discard changes?"
|
|
704
795
|
msgstr "Discard changes?"
|
|
705
796
|
|
|
797
|
+
#. @context: Smart collection dialog section heading
|
|
798
|
+
#: src/ui/shared/smart-collection-labels.ts
|
|
799
|
+
msgid "Display"
|
|
800
|
+
msgstr "Display"
|
|
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 "Drag collections, links, and dividers into the order you want."
|
|
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 "Edit"
|
|
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 "Edit Collection"
|
|
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 "Edit post"
|
|
|
856
953
|
msgid "Edit publish date"
|
|
857
954
|
msgstr "Edit publish date"
|
|
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 "Edit Smart Collection"
|
|
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,8 +969,6 @@ msgid "Editorial interfaces worth borrowing from"
|
|
|
867
969
|
msgstr "Editorial interfaces worth borrowing from"
|
|
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
974
|
msgstr "Email"
|
|
@@ -888,6 +988,11 @@ msgstr "Enter a valid date."
|
|
|
888
988
|
msgid "Enter a valid URL starting with http://, https://, or mailto:."
|
|
889
989
|
msgstr "Enter a valid URL starting with http://, https://, or mailto:."
|
|
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 "Every published post, including those kept off the home page."
|
|
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 "Favicon"
|
|
|
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,11 +1051,10 @@ msgstr "Featured on {date} at {time}"
|
|
|
944
1051
|
msgid "Featured posts"
|
|
945
1052
|
msgstr "Featured posts"
|
|
946
1053
|
|
|
947
|
-
#. @context:
|
|
948
|
-
#: src/ui/
|
|
949
|
-
|
|
950
|
-
|
|
951
|
-
msgstr "Feed"
|
|
1054
|
+
#. @context: Toast after copying a feed URL to the clipboard
|
|
1055
|
+
#: src/ui/pages/SubscribePage.tsx
|
|
1056
|
+
msgid "Feed URL copied."
|
|
1057
|
+
msgstr "Feed URL copied."
|
|
952
1058
|
|
|
953
1059
|
#. @context: Search snippet suffix on sample page
|
|
954
1060
|
#: src/ui/pages/ThemeSamplePage.tsx
|
|
@@ -981,15 +1087,25 @@ msgid "File uploaded."
|
|
|
981
1087
|
msgstr "File uploaded."
|
|
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 "Files"
|
|
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 "Follow site default"
|
|
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 "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."
|
|
992
1103
|
|
|
1104
|
+
#. @context: Post filter dimension name - note, link, or quote
|
|
1105
|
+
#: src/lib/filter-dimensions.ts
|
|
1106
|
+
msgid "Format"
|
|
1107
|
+
msgstr "Format"
|
|
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 "Generating a link..."
|
|
|
1010
1126
|
msgid "Give it a title..."
|
|
1011
1127
|
msgstr "Give it a title..."
|
|
1012
1128
|
|
|
1129
|
+
#. @context: Smart collection layout option
|
|
1130
|
+
#: src/ui/shared/smart-collection-labels.ts
|
|
1131
|
+
msgid "Grid"
|
|
1132
|
+
msgstr "Grid"
|
|
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 "Helps screen readers describe the image"
|
|
|
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 "Hidden from Latest"
|
|
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 "Hide"
|
|
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 "Hide from Latest"
|
|
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 "Hide the original"
|
|
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 "Highest rated"
|
|
@@ -1080,7 +1213,7 @@ msgid "Image unavailable"
|
|
|
1080
1213
|
msgstr "Image unavailable"
|
|
1081
1214
|
|
|
1082
1215
|
#. @context: Archive media filter - images
|
|
1083
|
-
#: src/
|
|
1216
|
+
#: src/lib/filter-dimensions.ts
|
|
1084
1217
|
msgid "Images"
|
|
1085
1218
|
msgstr "Images"
|
|
1086
1219
|
|
|
@@ -1146,6 +1279,11 @@ msgstr "Jant looks best when the accent feels editorial. Buttons can stay sturdy
|
|
|
1146
1279
|
msgid "Journal"
|
|
1147
1280
|
msgstr "Journal"
|
|
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 "Keep editing"
|
|
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 "Label"
|
|
|
1166
1304
|
msgid "Label (optional)"
|
|
1167
1305
|
msgstr "Label (optional)"
|
|
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 "Language"
|
|
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 "Language: {language}"
|
|
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 "Last edited on {date} at {time}"
|
|
|
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 "Latest"
|
|
|
1193
1347
|
msgid "Latest posts"
|
|
1194
1348
|
msgstr "Latest posts"
|
|
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 "Layout"
|
|
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 "Link added."
|
|
|
1229
1390
|
msgid "Link removed."
|
|
1230
1391
|
msgstr "Link removed."
|
|
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 "Link to posts you've marked as featured."
|
|
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 "Link to the post archive"
|
|
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 "Link to your collections page"
|
|
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 "Link to your latest posts. Your homepage shows this feed."
|
|
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 "Link updated."
|
|
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 "Links"
|
|
1263
1402
|
|
|
@@ -1266,6 +1405,11 @@ msgstr "Links"
|
|
|
1266
1405
|
msgid "Links should read clearly without glowing against the page."
|
|
1267
1406
|
msgstr "Links should read clearly without glowing against the page."
|
|
1268
1407
|
|
|
1408
|
+
#. @context: Smart collection layout option
|
|
1409
|
+
#: src/ui/shared/smart-collection-labels.ts
|
|
1410
|
+
msgid "List"
|
|
1411
|
+
msgstr "List"
|
|
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 "Look at the footer metadata last, to make sure the accent is not fighting the typography."
|
|
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 "Main feed"
|
|
@@ -1315,6 +1461,8 @@ msgid "March 15"
|
|
|
1315
1461
|
msgstr "March 15"
|
|
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 "Media"
|
|
@@ -1342,6 +1490,16 @@ msgstr "More actions"
|
|
|
1342
1490
|
msgid "More options are available after you create it."
|
|
1343
1491
|
msgstr "More options are available after you create it."
|
|
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 "Move attachment earlier"
|
|
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 "Move attachment later"
|
|
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 "Navigation and reading states"
|
|
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 "New Collection"
|
|
@@ -1394,14 +1550,21 @@ msgstr "New Password"
|
|
|
1394
1550
|
msgid "New post"
|
|
1395
1551
|
msgstr "New post"
|
|
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 "New Smart Collection"
|
|
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 "newest changes first"
|
|
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 "Newest first"
|
|
@@ -1429,6 +1592,11 @@ msgstr "No collections match that search. Try a different name."
|
|
|
1429
1592
|
msgid "No collections yet. Start one to organize threads by topic."
|
|
1430
1593
|
msgstr "No collections yet. Start one to organize threads by topic."
|
|
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 "No conditions yet. Add one to choose what lands here."
|
|
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 "No results. Try different keywords."
|
|
|
1449
1617
|
msgid "No threads match these filters. Try adjusting your selection or clear all filters."
|
|
1450
1618
|
msgstr "No threads match these filters. Try adjusting your selection or clear all filters."
|
|
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 "Not enough text to tell yet — publishes in {language}"
|
|
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 "Note"
|
|
|
1468
1641
|
msgid "note treatment"
|
|
1469
1642
|
msgstr "note treatment"
|
|
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 "Notes"
|
|
1477
1648
|
|
|
@@ -1480,23 +1651,45 @@ msgstr "Notes"
|
|
|
1480
1651
|
msgid "Nothing here yet. Add threads to one of these collections to fill this view."
|
|
1481
1652
|
msgstr "Nothing here yet. Add threads to one of these collections to fill this view."
|
|
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 "Nothing in {language} here yet."
|
|
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 "Nothing in Featured yet. Mark a post as featured to show it here."
|
|
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 "Nothing matches these conditions yet."
|
|
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 "Now"
|
|
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 "of {total} {unit}"
|
|
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 "Oldest first"
|
|
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 "Only the posts marked as featured."
|
|
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 "Open raw PNG"
|
|
|
1532
1725
|
msgid "Open raw SVG"
|
|
1533
1726
|
msgstr "Open raw SVG"
|
|
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 "Open the original in a new tab"
|
|
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 "Open the page this feed carries"
|
|
1737
|
+
|
|
1738
|
+
#. @context: Collection editing dialog field
|
|
1739
|
+
#: src/ui/shared/collection-management-labels.ts
|
|
1740
|
+
msgid "Order by"
|
|
1741
|
+
msgstr "Order by"
|
|
1742
|
+
|
|
1535
1743
|
#. @context: Menu action to organize collections
|
|
1536
1744
|
#: src/ui/shared/CollectionsManager.tsx
|
|
1537
1745
|
msgid "Organize"
|
|
@@ -1543,8 +1751,6 @@ msgid "Outline"
|
|
|
1543
1751
|
msgstr "Outline"
|
|
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
1756
|
msgstr "Password"
|
|
@@ -1595,6 +1801,11 @@ msgstr "Post hidden"
|
|
|
1595
1801
|
msgid "Post privately"
|
|
1596
1802
|
msgstr "Post privately"
|
|
1597
1803
|
|
|
1804
|
+
#. @context: Smart collection dialog — conditions are combined with AND
|
|
1805
|
+
#: src/ui/shared/smart-collection-labels.ts
|
|
1806
|
+
msgid "Posts matching all of these"
|
|
1807
|
+
msgstr "Posts matching all of these"
|
|
1808
|
+
|
|
1598
1809
|
#. @context: Hover hint for the homepage compose shortcut
|
|
1599
1810
|
#: src/ui/compose/ComposePrompt.tsx
|
|
1600
1811
|
msgid "Press N to write"
|
|
@@ -1639,16 +1850,16 @@ msgstr "Primary logo files"
|
|
|
1639
1850
|
#. @context: Archive visibility filter - private posts
|
|
1640
1851
|
#. @context: Compose publish settings visibility option
|
|
1641
1852
|
#. @context: Post status badge for a private post
|
|
1853
|
+
#: src/lib/filter-dimensions.ts
|
|
1642
1854
|
#: src/ui/compose/ComposeDialog.tsx
|
|
1643
1855
|
#: src/ui/feed/PostStatusBadges.tsx
|
|
1644
|
-
#: src/ui/pages/ArchivePage.tsx
|
|
1645
1856
|
msgid "Private"
|
|
1646
1857
|
msgstr "Private"
|
|
1647
1858
|
|
|
1648
1859
|
#. @context: Archive visibility filter - public posts
|
|
1649
1860
|
#. @context: Compose publish settings visibility option
|
|
1861
|
+
#: src/lib/filter-dimensions.ts
|
|
1650
1862
|
#: src/ui/compose/ComposeDialog.tsx
|
|
1651
|
-
#: src/ui/pages/ArchivePage.tsx
|
|
1652
1863
|
msgid "Public"
|
|
1653
1864
|
msgstr "Public"
|
|
1654
1865
|
|
|
@@ -1681,6 +1892,11 @@ msgstr "Published on {date} at {time}"
|
|
|
1681
1892
|
msgid "Published!"
|
|
1682
1893
|
msgstr "Published!"
|
|
1683
1894
|
|
|
1895
|
+
#. @context: Toast shown while a post is being published
|
|
1896
|
+
#: src/ui/compose/ComposeDialog.tsx
|
|
1897
|
+
msgid "Publishing..."
|
|
1898
|
+
msgstr "Publishing..."
|
|
1899
|
+
|
|
1684
1900
|
#. @context: Search highlight text on sample page
|
|
1685
1901
|
#: src/ui/pages/ThemeSamplePage.tsx
|
|
1686
1902
|
msgid "quiet design"
|
|
@@ -1708,11 +1924,9 @@ msgstr "Quote"
|
|
|
1708
1924
|
msgid "Quoted or highlighted passages should feel like annotations, not warnings."
|
|
1709
1925
|
msgstr "Quoted or highlighted passages should feel like annotations, not warnings."
|
|
1710
1926
|
|
|
1711
|
-
#. @context: Archive feed title segment for quote format filter
|
|
1712
1927
|
#. @context: Placeholder for the custom collections link label
|
|
1713
1928
|
#. @context: Post format label plural - quotes
|
|
1714
|
-
#: src/
|
|
1715
|
-
#: src/ui/pages/ArchivePage.tsx
|
|
1929
|
+
#: src/lib/filter-dimensions.ts
|
|
1716
1930
|
#: src/ui/shared/collection-management-labels.ts
|
|
1717
1931
|
msgid "Quotes"
|
|
1718
1932
|
msgstr "Quotes"
|
|
@@ -1722,6 +1936,21 @@ msgstr "Quotes"
|
|
|
1722
1936
|
msgid "Rate"
|
|
1723
1937
|
msgstr "Rate"
|
|
1724
1938
|
|
|
1939
|
+
#. @context: Help text under the compose language field
|
|
1940
|
+
#: src/ui/compose/ComposeDialog.tsx
|
|
1941
|
+
msgid "Read from what you write"
|
|
1942
|
+
msgstr "Read from what you write"
|
|
1943
|
+
|
|
1944
|
+
#. @context: Help text under the compose language field once a language has been detected
|
|
1945
|
+
#: src/ui/compose/ComposeDialog.tsx
|
|
1946
|
+
msgid "Read from what you write — looks like {language}"
|
|
1947
|
+
msgstr "Read from what you write — looks like {language}"
|
|
1948
|
+
|
|
1949
|
+
#. @context: Link out of an empty language view of a collection
|
|
1950
|
+
#: src/ui/pages/CollectionPage.tsx
|
|
1951
|
+
msgid "Read it in {language}"
|
|
1952
|
+
msgstr "Read it in {language}"
|
|
1953
|
+
|
|
1725
1954
|
#. @context: Collapse an expanded untitled note back to its preview in the feed
|
|
1726
1955
|
#: src/ui/feed/NoteCard.tsx
|
|
1727
1956
|
msgid "Read less"
|
|
@@ -1762,6 +1991,11 @@ msgstr "References"
|
|
|
1762
1991
|
msgid "Remove attachment"
|
|
1763
1992
|
msgstr "Remove attachment"
|
|
1764
1993
|
|
|
1994
|
+
#. @context: Smart collection dialog condition row button
|
|
1995
|
+
#: src/ui/shared/smart-collection-labels.ts
|
|
1996
|
+
msgid "Remove condition"
|
|
1997
|
+
msgstr "Remove condition"
|
|
1998
|
+
|
|
1765
1999
|
#. @context: Tooltip for divider delete button
|
|
1766
2000
|
#: src/ui/shared/CollectionsManager.tsx
|
|
1767
2001
|
msgid "Remove Divider"
|
|
@@ -1783,6 +2017,8 @@ msgid "Replace image"
|
|
|
1783
2017
|
msgstr "Replace image"
|
|
1784
2018
|
|
|
1785
2019
|
#. @context: Archive tile label for multiple thread replies
|
|
2020
|
+
#. @context: Post filter dimension name - whether a thread has replies
|
|
2021
|
+
#: src/lib/filter-dimensions.ts
|
|
1786
2022
|
#: src/ui/pages/ArchivePage.tsx
|
|
1787
2023
|
msgid "Replies"
|
|
1788
2024
|
msgstr "Replies"
|
|
@@ -1826,8 +2062,18 @@ msgstr "Reset Password"
|
|
|
1826
2062
|
msgid "Reverse logo"
|
|
1827
2063
|
msgstr "Reverse logo"
|
|
1828
2064
|
|
|
2065
|
+
#. @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.
|
|
2066
|
+
#: src/ui/shared/navigation-labels.ts
|
|
2067
|
+
msgctxt "nav"
|
|
2068
|
+
msgid "RSS"
|
|
2069
|
+
msgstr "RSS"
|
|
2070
|
+
|
|
2071
|
+
#. @context: Tooltip for the RSS feed icon beside a collection in the collections directory
|
|
2072
|
+
#. @context: Tooltip for the RSS feed link on a collection page
|
|
1829
2073
|
#. @context: Tooltip for the RSS feed link on a collection page
|
|
1830
2074
|
#: src/ui/pages/CollectionPage.tsx
|
|
2075
|
+
#: src/ui/pages/SmartCollectionPage.tsx
|
|
2076
|
+
#: src/ui/shared/CollectionDirectory.tsx
|
|
1831
2077
|
msgid "RSS feed"
|
|
1832
2078
|
msgstr "RSS feed"
|
|
1833
2079
|
|
|
@@ -1885,6 +2131,11 @@ msgstr "Save to drafts to edit and post at a later time."
|
|
|
1885
2131
|
msgid "Save to drafts?"
|
|
1886
2132
|
msgstr "Save to drafts?"
|
|
1887
2133
|
|
|
2134
|
+
#. @context: Toast shown while a draft or an edited post is being saved
|
|
2135
|
+
#: src/ui/compose/ComposeDialog.tsx
|
|
2136
|
+
msgid "Saving..."
|
|
2137
|
+
msgstr "Saving..."
|
|
2138
|
+
|
|
1888
2139
|
#. @context: Search page title
|
|
1889
2140
|
#. @context: Search submit button
|
|
1890
2141
|
#: src/ui/pages/SearchPage.tsx
|
|
@@ -1924,6 +2175,11 @@ msgstr "Settings"
|
|
|
1924
2175
|
msgid "Shared links"
|
|
1925
2176
|
msgstr "Shared links"
|
|
1926
2177
|
|
|
2178
|
+
#. @context: Button that brings back the folded-away original while writing its translation
|
|
2179
|
+
#: src/ui/compose/ComposeDialog.tsx
|
|
2180
|
+
msgid "Show"
|
|
2181
|
+
msgstr "Show"
|
|
2182
|
+
|
|
1927
2183
|
#. @context: Archive view option - grid
|
|
1928
2184
|
#: src/ui/pages/ArchivePage.tsx
|
|
1929
2185
|
msgid "Show as a grid of tiles"
|
|
@@ -1952,10 +2208,10 @@ msgstr "Show less"
|
|
|
1952
2208
|
msgid "Show more"
|
|
1953
2209
|
msgstr "Show more"
|
|
1954
2210
|
|
|
1955
|
-
#. @context:
|
|
1956
|
-
#: src/ui/
|
|
1957
|
-
msgid "
|
|
1958
|
-
msgstr "
|
|
2211
|
+
#. @context: Accessible name of the button that brings back the folded-away post being translated
|
|
2212
|
+
#: src/ui/compose/ComposeDialog.tsx
|
|
2213
|
+
msgid "Show the original"
|
|
2214
|
+
msgstr "Show the original"
|
|
1959
2215
|
|
|
1960
2216
|
#. @context: Built-in navigation label shown when auth is required
|
|
1961
2217
|
#: src/ui/shared/navigation-labels.ts
|
|
@@ -1977,12 +2233,9 @@ msgstr "Sign In"
|
|
|
1977
2233
|
msgid "Sign in to start writing."
|
|
1978
2234
|
msgstr "Sign in to start writing."
|
|
1979
2235
|
|
|
1980
|
-
#. @context: Archive feed title segment for hasReplies=0 filter
|
|
1981
|
-
#: src/routes/pages/archive.tsx
|
|
1982
|
-
msgid "single posts"
|
|
1983
|
-
msgstr "single posts"
|
|
1984
|
-
|
|
1985
2236
|
#. @context: Archive thread filter - posts without replies
|
|
2237
|
+
#. @context: Archive thread filter - posts without replies
|
|
2238
|
+
#: src/lib/filter-dimensions.ts
|
|
1986
2239
|
#: src/ui/pages/ArchivePage.tsx
|
|
1987
2240
|
msgid "Single posts"
|
|
1988
2241
|
msgstr "Single posts"
|
|
@@ -1992,16 +2245,28 @@ msgstr "Single posts"
|
|
|
1992
2245
|
msgid "Site accent"
|
|
1993
2246
|
msgstr "Site accent"
|
|
1994
2247
|
|
|
1995
|
-
#. @context: Setup form field - site name
|
|
1996
|
-
#: src/routes/auth/setup.tsx
|
|
1997
|
-
msgid "Site Name"
|
|
1998
|
-
msgstr "Site Name"
|
|
1999
|
-
|
|
2000
2248
|
#. @context: Description for the favicon asset card
|
|
2001
2249
|
#: src/ui/pages/BrandPage.tsx
|
|
2002
2250
|
msgid "Small browser icon used in tabs and bookmarks."
|
|
2003
2251
|
msgstr "Small browser icon used in tabs and bookmarks."
|
|
2004
2252
|
|
|
2253
|
+
#. @context: Name of a collection whose members come from conditions
|
|
2254
|
+
#: src/ui/shared/smart-collection-labels.ts
|
|
2255
|
+
msgid "Smart Collection"
|
|
2256
|
+
msgstr "Smart Collection"
|
|
2257
|
+
|
|
2258
|
+
#. @context: Confirmation after deleting a smart collection
|
|
2259
|
+
#. @context: Confirmation after deleting a smart collection
|
|
2260
|
+
#: src/ui/pages/SmartCollectionPage.tsx
|
|
2261
|
+
#: src/ui/shared/CollectionsManager.tsx
|
|
2262
|
+
msgid "Smart collection deleted."
|
|
2263
|
+
msgstr "Smart collection deleted."
|
|
2264
|
+
|
|
2265
|
+
#. @context: Confirmation after saving a smart collection
|
|
2266
|
+
#: src/ui/shared/smart-collection-labels.ts
|
|
2267
|
+
msgid "Smart collection saved."
|
|
2268
|
+
msgstr "Smart collection saved."
|
|
2269
|
+
|
|
2005
2270
|
#. @context: Asset keyword on the public brand asset page
|
|
2006
2271
|
#: src/ui/pages/BrandPage.tsx
|
|
2007
2272
|
msgid "Social preview"
|
|
@@ -2019,19 +2284,19 @@ msgstr "Some uploads failed. Saved as draft."
|
|
|
2019
2284
|
|
|
2020
2285
|
#. @context: Fallback validation error for compose form
|
|
2021
2286
|
#. @context: Fallback validation error for password reset form
|
|
2022
|
-
#. @context: Fallback validation error for setup form
|
|
2023
2287
|
#. @context: Fallback validation error for sign-in form
|
|
2024
2288
|
#. @context: Fallback validation error for thread compose form
|
|
2025
2289
|
#: src/routes/auth/reset.tsx
|
|
2026
|
-
#: src/routes/auth/setup.tsx
|
|
2027
2290
|
#: src/routes/auth/signin.tsx
|
|
2028
2291
|
#: src/routes/compose.tsx
|
|
2029
2292
|
#: src/routes/compose.tsx
|
|
2030
2293
|
msgid "Something doesn't look right. Check the form and try again."
|
|
2031
2294
|
msgstr "Something doesn't look right. Check the form and try again."
|
|
2032
2295
|
|
|
2296
|
+
#. @context: Sort menu label on collection detail page
|
|
2033
2297
|
#. @context: Sort menu label on collection detail page
|
|
2034
2298
|
#: src/ui/pages/CollectionPage.tsx
|
|
2299
|
+
#: src/ui/pages/SmartCollectionPage.tsx
|
|
2035
2300
|
msgid "Sort"
|
|
2036
2301
|
msgstr "Sort"
|
|
2037
2302
|
|
|
@@ -2050,11 +2315,6 @@ msgstr "Sort by when each thread was published"
|
|
|
2050
2315
|
msgid "Sort order"
|
|
2051
2316
|
msgstr "Sort order"
|
|
2052
2317
|
|
|
2053
|
-
#. @context: Collection form field
|
|
2054
|
-
#: src/ui/shared/collection-management-labels.ts
|
|
2055
|
-
msgid "Sort Order"
|
|
2056
|
-
msgstr "Sort Order"
|
|
2057
|
-
|
|
2058
2318
|
#. @context: Compose quote source link placeholder
|
|
2059
2319
|
#: src/ui/compose/ComposeDialog.tsx
|
|
2060
2320
|
msgid "Source link (optional)"
|
|
@@ -2090,6 +2350,24 @@ msgstr "Start here"
|
|
|
2090
2350
|
msgid "Stay sturdy and readable."
|
|
2091
2351
|
msgstr "Stay sturdy and readable."
|
|
2092
2352
|
|
|
2353
|
+
#. @context: Browser page title for the subscribe page
|
|
2354
|
+
#. @context: Page title for the feed subscription page
|
|
2355
|
+
#: src/routes/pages/subscribe.tsx
|
|
2356
|
+
#: src/ui/pages/SubscribePage.tsx
|
|
2357
|
+
msgid "Subscribe"
|
|
2358
|
+
msgstr "Subscribe"
|
|
2359
|
+
|
|
2360
|
+
#. @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.
|
|
2361
|
+
#: src/ui/shared/navigation-labels.ts
|
|
2362
|
+
msgctxt "nav"
|
|
2363
|
+
msgid "Subscribe"
|
|
2364
|
+
msgstr "Subscribe"
|
|
2365
|
+
|
|
2366
|
+
#. @context: Subscribe page note that subscribing is one-sided and how to undo it
|
|
2367
|
+
#: src/ui/pages/SubscribePage.tsx
|
|
2368
|
+
msgid "Subscribing creates no account here. To stop, delete the address from your reader."
|
|
2369
|
+
msgstr "Subscribing creates no account here. To stop, delete the address from your reader."
|
|
2370
|
+
|
|
2093
2371
|
#. @context: Compose custom slug helper label for the suggested slug
|
|
2094
2372
|
#: src/ui/compose/ComposeDialog.tsx
|
|
2095
2373
|
msgid "Suggested link"
|
|
@@ -2144,8 +2422,8 @@ msgstr "Text"
|
|
|
2144
2422
|
|
|
2145
2423
|
#. @context: Archive media filter - text file attachments
|
|
2146
2424
|
#. @context: Attached text panel title
|
|
2425
|
+
#: src/lib/filter-dimensions.ts
|
|
2147
2426
|
#: src/ui/compose/ComposeDialog.tsx
|
|
2148
|
-
#: src/ui/pages/ArchivePage.tsx
|
|
2149
2427
|
msgid "Text attachment"
|
|
2150
2428
|
msgstr "Text attachment"
|
|
2151
2429
|
|
|
@@ -2179,11 +2457,21 @@ msgstr "The default accent works best when it reads like a fountain-pen underlin
|
|
|
2179
2457
|
msgid "The image should sit quietly inside the article instead of feeling like a card preview."
|
|
2180
2458
|
msgstr "The image should sit quietly inside the article instead of feeling like a card preview."
|
|
2181
2459
|
|
|
2460
|
+
#. @context: Accessible name of the scrollable panel holding the post being translated
|
|
2461
|
+
#: src/ui/compose/ComposeDialog.tsx
|
|
2462
|
+
msgid "The original"
|
|
2463
|
+
msgstr "The original"
|
|
2464
|
+
|
|
2182
2465
|
#. @context: Blockquote on the theme sample page
|
|
2183
2466
|
#: src/ui/pages/ThemeSamplePage.tsx
|
|
2184
2467
|
msgid "The right accent should disappear into the writing until you need it."
|
|
2185
2468
|
msgstr "The right accent should disappear into the writing until you need it."
|
|
2186
2469
|
|
|
2470
|
+
#. @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.
|
|
2471
|
+
#: src/routes/pages/subscribe.tsx
|
|
2472
|
+
msgid "The same posts as the home page."
|
|
2473
|
+
msgstr "The same posts as the home page."
|
|
2474
|
+
|
|
2187
2475
|
#. @context: Section heading for theme picker pills
|
|
2188
2476
|
#: src/ui/pages/ThemeSamplePage.tsx
|
|
2189
2477
|
msgid "Theme"
|
|
@@ -2206,6 +2494,11 @@ msgstr "These are actual feed components with real footers, summaries, and inlin
|
|
|
2206
2494
|
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?"
|
|
2207
2495
|
msgstr "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?"
|
|
2208
2496
|
|
|
2497
|
+
#. @context: Toast shown when the composer cannot write its local draft to browser storage
|
|
2498
|
+
#: src/ui/compose/ComposeDialog.tsx
|
|
2499
|
+
msgid "This browser can't keep a local copy. Save as a draft."
|
|
2500
|
+
msgstr "This browser can't keep a local copy. Save as a draft."
|
|
2501
|
+
|
|
2209
2502
|
#. @context: Empty state message
|
|
2210
2503
|
#: src/ui/pages/CollectionPage.tsx
|
|
2211
2504
|
msgid "This collection is empty. Add threads from the editor."
|
|
@@ -2242,6 +2535,11 @@ msgstr "This link is already in use. Choose something else."
|
|
|
2242
2535
|
msgid "This link is reserved. Choose something else."
|
|
2243
2536
|
msgstr "This link is reserved. Choose something else."
|
|
2244
2537
|
|
|
2538
|
+
#. @context: Collection editing dialog — the typed collection link is already in use
|
|
2539
|
+
#: src/ui/shared/collection-management-labels.ts
|
|
2540
|
+
msgid "This link is taken. Choose another."
|
|
2541
|
+
msgstr "This link is taken. Choose another."
|
|
2542
|
+
|
|
2245
2543
|
#. @context: Explanation in the draft preview status bar
|
|
2246
2544
|
#: src/ui/shared/DraftPreviewBar.tsx
|
|
2247
2545
|
msgid "This post isn’t published."
|
|
@@ -2262,6 +2560,11 @@ msgstr "This reset link is no longer valid. Request a new one to continue."
|
|
|
2262
2560
|
msgid "This sign-in link has expired. Return to "
|
|
2263
2561
|
msgstr "This sign-in link has expired. Return to "
|
|
2264
2562
|
|
|
2563
|
+
#. @context: Subscribe page introduction, above the feed addresses. States the format the site serves, then the one action to take.
|
|
2564
|
+
#: src/ui/pages/SubscribePage.tsx
|
|
2565
|
+
msgid "This site publishes Atom feeds. Copy one of these addresses into a feed reader."
|
|
2566
|
+
msgstr "This site publishes Atom feeds. Copy one of these addresses into a feed reader."
|
|
2567
|
+
|
|
2265
2568
|
#. @context: Error shown when a hosted upload would exceed the shared account media limit
|
|
2266
2569
|
#. @context: Error shown when a hosted upload would exceed the shared account media limit
|
|
2267
2570
|
#: src/routes/api/upload-multipart.ts
|
|
@@ -2278,10 +2581,14 @@ msgstr "This uses the real single-post detail rendering with a longer article, i
|
|
|
2278
2581
|
#. @context: Archive page summary unit for a single matching thread
|
|
2279
2582
|
#. @context: Singular thread count label
|
|
2280
2583
|
#. @context: Singular thread count label
|
|
2584
|
+
#. @context: Singular thread count label
|
|
2585
|
+
#. @context: Singular thread count label on collection detail page
|
|
2281
2586
|
#. @context: Singular thread count label on collection detail page
|
|
2282
2587
|
#: src/ui/pages/ArchivePage.tsx
|
|
2283
2588
|
#: src/ui/pages/ArchivePage.tsx
|
|
2284
2589
|
#: src/ui/pages/CollectionPage.tsx
|
|
2590
|
+
#: src/ui/pages/SmartCollectionPage.tsx
|
|
2591
|
+
#: src/ui/shared/CollectionDirectory.tsx
|
|
2285
2592
|
#: src/ui/shared/CollectionDirectory.tsx
|
|
2286
2593
|
#: src/ui/shared/CollectionsManager.tsx
|
|
2287
2594
|
msgid "thread"
|
|
@@ -2297,22 +2604,26 @@ msgstr "Thread accent"
|
|
|
2297
2604
|
msgid "Thread accents"
|
|
2298
2605
|
msgstr "Thread accents"
|
|
2299
2606
|
|
|
2300
|
-
#. @context: Archive feed title segment for hasReplies=1 filter
|
|
2301
2607
|
#. @context: Archive month header count unit for multiple threads
|
|
2302
2608
|
#. @context: Archive page summary unit for multiple matching threads
|
|
2303
2609
|
#. @context: Plural thread count label
|
|
2304
2610
|
#. @context: Plural thread count label
|
|
2611
|
+
#. @context: Plural thread count label
|
|
2612
|
+
#. @context: Plural thread count label on collection detail page
|
|
2305
2613
|
#. @context: Plural thread count label on collection detail page
|
|
2306
|
-
#: src/routes/pages/archive.tsx
|
|
2307
2614
|
#: src/ui/pages/ArchivePage.tsx
|
|
2308
2615
|
#: src/ui/pages/ArchivePage.tsx
|
|
2309
2616
|
#: src/ui/pages/CollectionPage.tsx
|
|
2617
|
+
#: src/ui/pages/SmartCollectionPage.tsx
|
|
2618
|
+
#: src/ui/shared/CollectionDirectory.tsx
|
|
2310
2619
|
#: src/ui/shared/CollectionDirectory.tsx
|
|
2311
2620
|
#: src/ui/shared/CollectionsManager.tsx
|
|
2312
2621
|
msgid "threads"
|
|
2313
2622
|
msgstr "threads"
|
|
2314
2623
|
|
|
2315
2624
|
#. @context: Archive thread filter - thread roots with replies
|
|
2625
|
+
#. @context: Archive thread filter - thread roots with replies
|
|
2626
|
+
#: src/lib/filter-dimensions.ts
|
|
2316
2627
|
#: src/ui/pages/ArchivePage.tsx
|
|
2317
2628
|
msgid "Threads"
|
|
2318
2629
|
msgstr "Threads"
|
|
@@ -2325,14 +2636,20 @@ msgstr "Threads can include up to {count} posts."
|
|
|
2325
2636
|
#. @context: Collection form field
|
|
2326
2637
|
#. @context: Compose toolbar - show or hide the title field
|
|
2327
2638
|
#. @context: Input label on sample page
|
|
2639
|
+
#. @context: Post filter dimension name - whether a post is titled
|
|
2640
|
+
#. @context: Smart collection dialog field
|
|
2641
|
+
#: src/lib/filter-dimensions.ts
|
|
2328
2642
|
#: src/ui/compose/ComposeDialog.tsx
|
|
2329
2643
|
#: src/ui/pages/ThemeSamplePage.tsx
|
|
2330
2644
|
#: src/ui/shared/collection-management-labels.ts
|
|
2645
|
+
#: src/ui/shared/smart-collection-labels.ts
|
|
2331
2646
|
msgid "Title"
|
|
2332
2647
|
msgstr "Title"
|
|
2333
2648
|
|
|
2334
2649
|
#. @context: Archive filter - notes that have a title
|
|
2335
2650
|
#. @context: Archive filter - notes that have a title
|
|
2651
|
+
#. @context: Archive filter - notes that have a title
|
|
2652
|
+
#: src/lib/filter-dimensions.ts
|
|
2336
2653
|
#: src/ui/pages/ArchivePage.tsx
|
|
2337
2654
|
#: src/ui/pages/ArchivePage.tsx
|
|
2338
2655
|
msgid "Titled"
|
|
@@ -2348,6 +2665,21 @@ msgstr "to make sure both still feel like they belong to the same product."
|
|
|
2348
2665
|
msgid "Toggle header row"
|
|
2349
2666
|
msgstr "Toggle header row"
|
|
2350
2667
|
|
|
2668
|
+
#. @context: Divider between the original post and the editor writing its translation, when the target language is not known yet
|
|
2669
|
+
#: src/ui/compose/ComposeDialog.tsx
|
|
2670
|
+
msgid "Translating"
|
|
2671
|
+
msgstr "Translating"
|
|
2672
|
+
|
|
2673
|
+
#. @context: Divider between the original post above and the editor below, naming the language being written
|
|
2674
|
+
#: src/ui/compose/ComposeDialog.tsx
|
|
2675
|
+
msgid "Translating into {language}"
|
|
2676
|
+
msgstr "Translating into {language}"
|
|
2677
|
+
|
|
2678
|
+
#. @context: Compose banner shown while writing a translation of an existing post
|
|
2679
|
+
#: src/ui/compose/ComposeDialog.tsx
|
|
2680
|
+
msgid "Translation of “{title}”"
|
|
2681
|
+
msgstr "Translation of “{title}”"
|
|
2682
|
+
|
|
2351
2683
|
#. @context: Usage label for the square logo PNG asset card
|
|
2352
2684
|
#: src/ui/pages/BrandPage.tsx
|
|
2353
2685
|
msgid "Transparent square"
|
|
@@ -2368,9 +2700,11 @@ msgstr "Type / for commands"
|
|
|
2368
2700
|
msgid "Type the quote..."
|
|
2369
2701
|
msgstr "Type the quote..."
|
|
2370
2702
|
|
|
2703
|
+
#. @context: Archive filter - notes without a title
|
|
2371
2704
|
#. @context: Archive filter - notes without a title
|
|
2372
2705
|
#. @context: Archive filter - notes without a title
|
|
2373
2706
|
#. @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.
|
|
2707
|
+
#: src/lib/filter-dimensions.ts
|
|
2374
2708
|
#: src/ui/compose/ComposeDialog.tsx
|
|
2375
2709
|
#: src/ui/pages/ArchivePage.tsx
|
|
2376
2710
|
#: src/ui/pages/ArchivePage.tsx
|
|
@@ -2440,7 +2774,7 @@ msgid "Use this page to judge buttons, links, cards, forms, thread accents, and
|
|
|
2440
2774
|
msgstr "Use this page to judge buttons, links, cards, forms, thread accents, and quiet surfaces before changing a theme globally."
|
|
2441
2775
|
|
|
2442
2776
|
#. @context: Archive media filter - video
|
|
2443
|
-
#: src/
|
|
2777
|
+
#: src/lib/filter-dimensions.ts
|
|
2444
2778
|
msgid "Video"
|
|
2445
2779
|
msgstr "Video"
|
|
2446
2780
|
|
|
@@ -2454,20 +2788,17 @@ msgstr "View"
|
|
|
2454
2788
|
msgid "View earlier notes in this thread"
|
|
2455
2789
|
msgstr "View earlier notes in this thread"
|
|
2456
2790
|
|
|
2457
|
-
#. @context: Archive grid/list toggle group label
|
|
2458
|
-
#: src/ui/pages/ArchivePage.tsx
|
|
2459
|
-
msgid "View mode"
|
|
2460
|
-
msgstr "View mode"
|
|
2461
|
-
|
|
2462
2791
|
#. @context: Compose publish settings section label
|
|
2792
|
+
#. @context: Post filter dimension name - who can see a post
|
|
2793
|
+
#: src/lib/filter-dimensions.ts
|
|
2463
2794
|
#: src/ui/compose/ComposeDialog.tsx
|
|
2464
2795
|
msgid "Visibility"
|
|
2465
2796
|
msgstr "Visibility"
|
|
2466
2797
|
|
|
2467
|
-
#. @context:
|
|
2468
|
-
#: src/
|
|
2469
|
-
msgid "
|
|
2470
|
-
msgstr "
|
|
2798
|
+
#. @context: Subscribe page heading over the explanation of feed readers, for readers who have not used one
|
|
2799
|
+
#: src/ui/pages/SubscribePage.tsx
|
|
2800
|
+
msgid "What a feed reader does"
|
|
2801
|
+
msgstr "What a feed reader does"
|
|
2471
2802
|
|
|
2472
2803
|
#. @context: Table header in the sample detail article
|
|
2473
2804
|
#: src/ui/pages/ThemeSamplePage.tsx
|
|
@@ -2524,25 +2855,21 @@ msgstr "White logo on the Jant green square tile for platforms and layouts that
|
|
|
2524
2855
|
msgid "Why the default accent should feel written, not branded"
|
|
2525
2856
|
msgstr "Why the default accent should feel written, not branded"
|
|
2526
2857
|
|
|
2527
|
-
#. @context: Archive
|
|
2528
|
-
|
|
2529
|
-
|
|
2530
|
-
|
|
2531
|
-
|
|
2532
|
-
|
|
2533
|
-
|
|
2534
|
-
|
|
2535
|
-
msgstr "with title"
|
|
2536
|
-
|
|
2537
|
-
#. @context: Archive feed title segment for hasMedia=0 filter
|
|
2538
|
-
#: src/routes/pages/archive.tsx
|
|
2539
|
-
msgid "without media"
|
|
2540
|
-
msgstr "without media"
|
|
2858
|
+
#. @context: Archive filter - posts carrying any media attachment
|
|
2859
|
+
#. @context: Archive filter - posts carrying any media attachment
|
|
2860
|
+
#. @context: Archive filter - posts carrying any media attachment
|
|
2861
|
+
#: src/lib/filter-dimensions.ts
|
|
2862
|
+
#: src/ui/pages/ArchivePage.tsx
|
|
2863
|
+
#: src/ui/shared/smart-collection-labels.ts
|
|
2864
|
+
msgid "With media"
|
|
2865
|
+
msgstr "With media"
|
|
2541
2866
|
|
|
2542
|
-
#. @context: Archive
|
|
2543
|
-
|
|
2544
|
-
|
|
2545
|
-
|
|
2867
|
+
#. @context: Archive filter - posts with no media attachment
|
|
2868
|
+
#. @context: Archive filter - posts with no media attachment
|
|
2869
|
+
#: src/lib/filter-dimensions.ts
|
|
2870
|
+
#: src/ui/shared/smart-collection-labels.ts
|
|
2871
|
+
msgid "Without media"
|
|
2872
|
+
msgstr "Without media"
|
|
2546
2873
|
|
|
2547
2874
|
#. @context: Compose publish settings hint for quiet reply switch
|
|
2548
2875
|
#: src/ui/compose/ComposeDialog.tsx
|
|
@@ -2559,6 +2886,11 @@ msgstr "Write your first post to get started."
|
|
|
2559
2886
|
msgid "Wrong email or password. Check your credentials and try again."
|
|
2560
2887
|
msgstr "Wrong email or password. Check your credentials and try again."
|
|
2561
2888
|
|
|
2889
|
+
#. @context: Post filter dimension name - year of publication
|
|
2890
|
+
#: src/lib/filter-dimensions.ts
|
|
2891
|
+
msgid "Year"
|
|
2892
|
+
msgstr "Year"
|
|
2893
|
+
|
|
2562
2894
|
#. @context: Confirm close action sheet title when editing a published post
|
|
2563
2895
|
#: src/ui/compose/ComposeDialog.tsx
|
|
2564
2896
|
msgid "You have unsaved changes"
|