v1.3.6-beta — localization and labelling fixes#34
Merged
Merged
Conversation
… untitled placeholders
There was a problem hiding this comment.
Pull request overview
This PR prepares the v1.3.6-beta patch release focused on user-facing localization/labeling fixes and correctness of object “used in N steps” counts by scoping them to the active project. It also adds regression tests to pin the new i18n behavior and the per-project counting logic.
Changes:
- Scope object step-reference counts to the active project via a
steps → storiesjoin, and add server helpers + tests for the query/mapping. - Fully localize activity feed labels (verbs/entity types + entity label resolution) and replace several raw identifiers with translated “Untitled”.
- Expand EN/ES locale coverage for onboarding, sync dialogs, accessibility labels, and assorted UI strings; bump visible version strings/docs.
Reviewed changes
Copilot reviewed 60 out of 60 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| tests/objects-step-counts.test.ts | Adds regression tests for per-project object step counts query + mapping. |
| tests/object-picker-dialog.test.tsx | Ensures untitled objects display translated “untitled” and not raw IDs. |
| tests/i18n-activity.test.ts | Guards i18n parity for activity verb/entity enums in EN/ES. |
| tests/activity-display.test.ts | Pins activity entity label resolution (no raw ids/keys). |
| README.md | Bumps displayed version to 1.3.6-beta (EN + ES sections). |
| CHANGELOG.md | Adds v1.3.6-beta release notes. |
| app/routes/_app.upgrade.tsx | Localizes upgrade UI strings (“waiting build”, “view on GitHub”) and bumps version annotation. |
| app/routes/_app.start.tsx | Loads config namespace for Start tab + localizes a11y label for the rail. |
| app/routes/_app.objects.tsx | Replaces global object usage count with project-scoped helper call. |
| app/routes/_app.objects.$objectId.tsx | Localizes “Object ID” label + “used in step” display with translated untitled fallback. |
| app/routes/_app.dashboard.tsx | Loads config namespace to support config-field label resolution in sync UI. |
| app/routes/_app.config.tsx | Localizes empty-state copy for “no project connected”. |
| app/lib/objects.server.ts | New server helper for project-scoped object step counts (query + mapping). |
| app/lib/activity-display.ts | New client-safe helpers for activity feed entity label + config-field label mapping. |
| app/i18n/locales/es/upgrade.json | Adds ES strings for “view on GitHub” and build-wait message. |
| app/i18n/locales/es/start.json | Adds ES activity verb/entity translations + “someone/untitled”. |
| app/i18n/locales/es/onboarding.json | Adds ES strings for private repo label + inline URL help. |
| app/i18n/locales/es/objects.json | Adds/normalizes many ES strings (sync diff labels, used_in_step, computing diff, etc.). |
| app/i18n/locales/es/homepage.json | Adds ES homepage editor labels/placeholders + “no image”. |
| app/i18n/locales/es/glossary.json | Adds ES “used in …” label templates. |
| app/i18n/locales/es/editor.json | Adds ES “preview clip”. |
| app/i18n/locales/es/dashboard.json | Adds ES sync modal labels/strings for new/changed/removed items. |
| app/i18n/locales/es/config.json | Adds ES “no themes”, empty-state strings, CTA copy. |
| app/i18n/locales/es/common.json | Adds ES common “untitled”, a11y labels, cancel/sign out/no image. |
| app/i18n/locales/en/upgrade.json | Adds EN strings for “view on GitHub” and build-wait message. |
| app/i18n/locales/en/start.json | Adds EN activity verb/entity translations + “someone/untitled”. |
| app/i18n/locales/en/onboarding.json | Adds EN strings for private repo label + inline URL help. |
| app/i18n/locales/en/objects.json | Adds/normalizes many EN strings (sync diff labels, used_in_step, computing diff, etc.). |
| app/i18n/locales/en/homepage.json | Adds EN homepage editor labels/placeholders + “no image”. |
| app/i18n/locales/en/glossary.json | Adds EN “used in …” label templates. |
| app/i18n/locales/en/editor.json | Adds EN “preview clip”. |
| app/i18n/locales/en/dashboard.json | Adds EN sync modal labels/strings for new/changed/removed items. |
| app/i18n/locales/en/config.json | Adds EN “no themes”, empty-state strings, CTA copy. |
| app/i18n/locales/en/common.json | Adds EN common “untitled”, a11y labels, cancel/sign out/no image. |
| app/components/ui/Toast.tsx | Localizes notification region/close button a11y labels. |
| app/components/ui/SlugField.tsx | Localizes “Edit URL slug” a11y label. |
| app/components/ui/markdown-editor/ImageInsertDialog.tsx | Prevents raw object IDs showing for untitled objects; uses translated “untitled”. |
| app/components/ui/markdown-editor/GlossaryLinkButton.tsx | Uses translated “untitled” for missing term titles + localizes Cancel button. |
| app/components/layout/TabNav.tsx | Localizes main nav a11y label. |
| app/components/layout/Header.tsx | Localizes “Sign out”. |
| app/components/layout/Footer.tsx | Bumps displayed version constant. |
| app/components/features/stories/StoryRow.tsx | Uses translated “untitled” instead of raw story_id. |
| app/components/features/start/ActivityFeed.tsx | Localizes activity verb/entity types + uses safe entity label resolver. |
| app/components/features/pages/PagesEmptyState.tsx | Uses translated “untitled” instead of page slug. |
| app/components/features/pages/HomepageEditor.tsx | Localizes homepage editor labels/placeholders + no-image/untitled handling. |
| app/components/features/onboarding/StepSync.tsx | Localizes import progress a11y label. |
| app/components/features/onboarding/StepConnect.tsx | Localizes “Private” repo badge. |
| app/components/features/onboarding/ProgressBar.tsx | Localizes onboarding progress a11y label. |
| app/components/features/onboarding/InlineConfig.tsx | Localizes inline URL help text. |
| app/components/features/objects/SyncDiffDialog.tsx | Localizes sync diff UI strings + field labels + untitled handling. |
| app/components/features/objects/ObjectRow.tsx | Uses translated “untitled” for object labels/alt text. |
| app/components/features/objects/AddObjectDialog.tsx | Localizes “Object ID” label. |
| app/components/features/objects/AddIiifDialog.tsx | Localizes “Object ID” label. |
| app/components/features/glossary/UsedInPanel.tsx | Localizes “used in” row labels via interpolation templates + untitled fallback. |
| app/components/features/editor/ViewerColumn.tsx | Localizes “Preview clip”. |
| app/components/features/editor/ObjectPickerDialog.tsx | Uses translated “untitled” for missing object titles. |
| app/components/features/dashboard/SyncConfirmModal.tsx | Localizes section/item labels and resolves config field keys to friendly labels. |
| app/components/features/dashboard/StoryCard.tsx | Localizes “No image” + uses translated “untitled” for titles/alt text. |
| app/components/features/dashboard/OrphanStoryBanner.tsx | Localizes orphan banner a11y label. |
| app/components/features/config/ThemeSwatches.tsx | Localizes “no themes” message + uses translated “untitled” for unnamed themes. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Comment on lines
+20
to
+24
| import { eq, count } from "drizzle-orm"; | ||
| import { steps, stories } from "~/db/schema"; | ||
| import type { getDb } from "~/lib/db.server"; | ||
|
|
||
| type DbInstance = ReturnType<typeof getDb>; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Patch release fixing user-facing localization and labelling issues:
No schema changes — fully backwards-compatible and worker-rollback-safe. See the v1.3.6-beta entry in CHANGELOG.md for details.
Note: the locale JSON files were normalized to literal UTF-8 (existing escaped characters like — became their literal form); this is a content-preserving formatting change — English/Spanish key parity is unchanged.