mirror of
https://github.com/penpot/penpot.git
synced 2026-09-28 09:32:57 +08:00
Drop 277 keys nothing references from en.po (verified against frontend/src and common/src) and let sync propagate the deletions to every locale. Clear all 10 fuzzy entries: fill the 5 empty translations, keep the 4 valid ones, and drop the duplicated max-quote-reached in favor of max-quota-reached (the backend code stays, the UI maps it to the quota text). Recover 22 used-but-missing keys with translations: the 19 shortcuts section/subsection labels plus connected-to, pixel-grid-color and tokens.add-set. Make the rest statically visible to rehash instead: :label fns on shortcut commands, sections and subsections (one debug-only and one colorpicker-local id exempt); case branches in place of dm/str-built keys (export modal, text decoration and transform, undo history with raw-key fallback); hoist conditionals out of tr calls; pre-translate modal props and role labels; replace the lone (i18n/tr ...) site with tr. Turn static :error/code data into eager :error/fn calls in the common schemas and the auth/password forms. Rename the two keys containing spaces and point team leave at max-quota-reached. Backend-driven keys stay dynamic by design, declared with (tr ...) comments: the five weak-password details, team and organization notifications. Tooling: rehash also scans common/src and no longer treats a missing -l as no locale; new clj-kondo tr-dynamic warning flags non-literal tr args (lint scripts use --fail-level error so it never fails CI); tr docstring states the literal-only rule. Tests cover the shortcut label wiring, the undo-history fallback and the :error/fn schemas. Translations memory rewritten to match; es check word list gains three entries. Rebased onto develop: adopt the register field-error UX (the weak-password declarations move onto the :options code), keep develop's newer keys (connection-error, account-locked, save-retrying, tokens-source strings) with fresh references, and reword the shortcuts.cljs prose comment so rehash does not invent a "literal" key. AI-assisted-by: muse-spark-1.3-contributor
37 lines
1.3 KiB
JSON
37 lines
1.3 KiB
JSON
{
|
|
"name": "common",
|
|
"version": "1.0.0",
|
|
"license": "MPL-2.0",
|
|
"author": "Kaleidos INC Sucursal en España SL",
|
|
"private": true,
|
|
"packageManager": "pnpm@12.5.1+sha512.e3f305bc784a2bc89f5ad3b6138889470fae8d2af5f36b61216ec91c2c3d64089775f9de38aac331044ea40f245cb0d5666392dfdf65824e1907ef6a2c62de5f",
|
|
"type": "module",
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "https://github.com/penpot/penpot"
|
|
},
|
|
"devDependencies": {
|
|
"concurrently": "^10.0.5",
|
|
"nodemon": "^3.1.14",
|
|
"prettier": "3.9.6",
|
|
"source-map-support": "^0.5.21",
|
|
"ws": "^8.21.3"
|
|
},
|
|
"dependencies": {
|
|
"date-fns": "^4.4.0"
|
|
},
|
|
"scripts": {
|
|
"lint:clj": "clj-kondo --fail-level error --config-dir ../.clj-kondo --lint src/",
|
|
"lint:js": "exit 0",
|
|
"check-fmt:clj": "cljfmt check --parallel=true src/ test/",
|
|
"check-fmt:js": "prettier -c src/**/*.js",
|
|
"fmt:clj": "cljfmt fix --parallel=true src/ test/",
|
|
"fmt:js": "prettier -c src/**/*.js -w",
|
|
"lint": "pnpm run lint:clj",
|
|
"watch:test": "concurrently \"clojure -M:dev:shadow-cljs watch test\" \"nodemon -C -d 2 -w target/tests/ --exec 'node target/tests/test.js'\"",
|
|
"build:test": "clojure -M:dev:shadow-cljs compile test",
|
|
"test": "pnpm run build:test && node target/tests/test.js",
|
|
"test:quiet": "node ./scripts/test-quiet.js"
|
|
}
|
|
}
|