mirror of
https://github.com/penpot/penpot.git
synced 2026-01-20 12:20:16 -05:00
Compare commits
56 Commits
niwinz-vir
...
nitrate-mo
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
7b174c4af3 | ||
|
|
71deb19c76 | ||
|
|
cb9746c716 | ||
|
|
f38b68da97 | ||
|
|
b44ebeda9b | ||
|
|
1825e74327 | ||
|
|
9869176fa6 | ||
|
|
af5d3e0a98 | ||
|
|
c2eef086dd | ||
|
|
d163751296 | ||
|
|
cb55be2378 | ||
|
|
916771ec47 | ||
|
|
8aa18dbf6a | ||
|
|
8821bfd271 | ||
|
|
9d53e6c0f9 | ||
|
|
db70edecff | ||
|
|
214b0efa02 | ||
|
|
661436ecae | ||
|
|
0d5fe6e527 | ||
|
|
e7230d9da4 | ||
|
|
5054f6bc38 | ||
|
|
38396ba299 | ||
|
|
b1997a83b3 | ||
|
|
68f5671eab | ||
|
|
92976143bb | ||
|
|
dd2d03e6a0 | ||
|
|
fd675e0194 | ||
|
|
c98373658e | ||
|
|
01e42b0458 | ||
|
|
7529673812 | ||
|
|
d2dad35d7a | ||
|
|
d71f811dbe | ||
|
|
f7b5266304 | ||
|
|
09c23256b7 | ||
|
|
1ae1c0460e | ||
|
|
291c7349db | ||
|
|
1beb3b86aa | ||
|
|
b605a3b53d | ||
|
|
fe20bdd00e | ||
|
|
5420897b92 | ||
|
|
e430a4c9f3 | ||
|
|
ec6d72bd91 | ||
|
|
cc2dab2756 | ||
|
|
d0c0664338 | ||
|
|
2240f25143 | ||
|
|
93a5ec2f5d | ||
|
|
d6784771a8 | ||
|
|
930c814ded | ||
|
|
1a5a69bca2 | ||
|
|
9ad323a220 | ||
|
|
6ec451b46d | ||
|
|
5fa4368d70 | ||
|
|
2b836f10cb | ||
|
|
1ae0f3fc87 | ||
|
|
e13c203b8d | ||
|
|
97e4f4c424 |
38
.github/ISSUE_TEMPLATE/new-render-bug-report.md
vendored
Normal file
38
.github/ISSUE_TEMPLATE/new-render-bug-report.md
vendored
Normal file
@@ -0,0 +1,38 @@
|
||||
---
|
||||
name: New Render Bug Report
|
||||
about: Create a report about the bugs you have found in the new render
|
||||
title: ''
|
||||
labels: new render
|
||||
assignees: claragvinola
|
||||
|
||||
---
|
||||
|
||||
**Describe the bug**
|
||||
A clear and concise description of what the bug is.
|
||||
|
||||
**Steps to Reproduce**
|
||||
Steps to reproduce the behavior:
|
||||
1. Go to '...'
|
||||
2. Click on '....'
|
||||
3. Scroll down to '....'
|
||||
4. See error
|
||||
|
||||
**Expected behavior**
|
||||
A clear and concise description of what you expected to happen.
|
||||
|
||||
**Screenshots or screen recordings**
|
||||
If applicable, add screenshots or screen recording to help illustrate your problem.
|
||||
|
||||
**Desktop (please complete the following information):**
|
||||
- OS: [e.g. iOS]
|
||||
- Browser [e.g. chrome, safari]
|
||||
- Version [e.g. 22]
|
||||
|
||||
**Smartphone (please complete the following information):**
|
||||
- Device: [e.g. iPhone6]
|
||||
- OS: [e.g. iOS8.1]
|
||||
- Browser [e.g. stock browser, safari]
|
||||
- Version [e.g. 22]
|
||||
|
||||
**Additional context**
|
||||
Add any other context about the problem here.
|
||||
24
.github/workflows/tests.yml
vendored
24
.github/workflows/tests.yml
vendored
@@ -21,7 +21,7 @@ concurrency:
|
||||
jobs:
|
||||
lint:
|
||||
name: "Linter"
|
||||
runs-on: ubuntu-24.04
|
||||
runs-on: penpot-runner-02
|
||||
container: penpotapp/devenv:latest
|
||||
|
||||
steps:
|
||||
@@ -34,7 +34,7 @@ jobs:
|
||||
|
||||
test-common:
|
||||
name: "Common Tests"
|
||||
runs-on: ubuntu-24.04
|
||||
runs-on: penpot-runner-02
|
||||
container: penpotapp/devenv:latest
|
||||
|
||||
steps:
|
||||
@@ -53,7 +53,7 @@ jobs:
|
||||
|
||||
test-plugins:
|
||||
name: Plugins Runtime Linter & Tests
|
||||
runs-on: ubuntu-24.04
|
||||
runs-on: penpot-runner-02
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
@@ -98,7 +98,7 @@ jobs:
|
||||
|
||||
test-frontend:
|
||||
name: "Frontend Tests"
|
||||
runs-on: ubuntu-24.04
|
||||
runs-on: penpot-runner-02
|
||||
container: penpotapp/devenv:latest
|
||||
|
||||
steps:
|
||||
@@ -119,7 +119,7 @@ jobs:
|
||||
|
||||
test-render-wasm:
|
||||
name: "Render WASM Tests"
|
||||
runs-on: ubuntu-24.04
|
||||
runs-on: penpot-runner-02
|
||||
container: penpotapp/devenv:latest
|
||||
|
||||
steps:
|
||||
@@ -143,7 +143,7 @@ jobs:
|
||||
|
||||
test-backend:
|
||||
name: "Backend Tests"
|
||||
runs-on: ubuntu-24.04
|
||||
runs-on: penpot-runner-02
|
||||
container: penpotapp/devenv:latest
|
||||
|
||||
services:
|
||||
@@ -182,7 +182,7 @@ jobs:
|
||||
|
||||
test-library:
|
||||
name: "Library Tests"
|
||||
runs-on: ubuntu-24.04
|
||||
runs-on: penpot-runner-02
|
||||
container: penpotapp/devenv:latest
|
||||
|
||||
steps:
|
||||
@@ -196,7 +196,7 @@ jobs:
|
||||
|
||||
build-integration:
|
||||
name: "Build Integration Bundle"
|
||||
runs-on: ubuntu-24.04
|
||||
runs-on: penpot-runner-02
|
||||
container: penpotapp/devenv:latest
|
||||
|
||||
steps:
|
||||
@@ -217,7 +217,7 @@ jobs:
|
||||
|
||||
test-integration-1:
|
||||
name: "Integration Tests 1/4"
|
||||
runs-on: ubuntu-24.04
|
||||
runs-on: penpot-runner-02
|
||||
container: penpotapp/devenv:latest
|
||||
needs: build-integration
|
||||
|
||||
@@ -247,7 +247,7 @@ jobs:
|
||||
|
||||
test-integration-2:
|
||||
name: "Integration Tests 2/4"
|
||||
runs-on: ubuntu-24.04
|
||||
runs-on: penpot-runner-02
|
||||
container: penpotapp/devenv:latest
|
||||
needs: build-integration
|
||||
|
||||
@@ -277,7 +277,7 @@ jobs:
|
||||
|
||||
test-integration-3:
|
||||
name: "Integration Tests 3/4"
|
||||
runs-on: ubuntu-24.04
|
||||
runs-on: penpot-runner-02
|
||||
container: penpotapp/devenv:latest
|
||||
needs: build-integration
|
||||
|
||||
@@ -307,7 +307,7 @@ jobs:
|
||||
|
||||
test-integration-4:
|
||||
name: "Integration Tests 4/4"
|
||||
runs-on: ubuntu-24.04
|
||||
runs-on: penpot-runner-02
|
||||
container: penpotapp/devenv:latest
|
||||
needs: build-integration
|
||||
|
||||
|
||||
2
.gitignore
vendored
2
.gitignore
vendored
@@ -21,6 +21,7 @@
|
||||
.rebel_readline_history
|
||||
.repl
|
||||
.shadow-cljs
|
||||
.pnpm-store/
|
||||
/*.jpg
|
||||
/*.md
|
||||
/*.png
|
||||
@@ -72,6 +73,7 @@
|
||||
/library/target/
|
||||
/library/*.zip
|
||||
/external
|
||||
/penpot-nitrate
|
||||
|
||||
clj-profiler/
|
||||
node_modules
|
||||
|
||||
@@ -12,9 +12,16 @@
|
||||
|
||||
- Remap references when renaming tokens [Taiga #10202](https://tree.taiga.io/project/penpot/us/10202)
|
||||
- Tokens panel nested path view [Taiga #9966](https://tree.taiga.io/project/penpot/us/9966)
|
||||
- Improve usability of lock and hide buttons in the layer panel. [Taiga #12916](https://tree.taiga.io/project/penpot/issue/12916)
|
||||
- Optimize sidebar performance for deeply nested shapes [Taiga #13017](https://tree.taiga.io/project/penpot/task/13017)
|
||||
|
||||
### :bug: Bugs fixed
|
||||
|
||||
- Fix prototype connections lost when switching between variants [Taiga #12812](https://tree.taiga.io/project/penpot/issue/12812)
|
||||
- Fix wrong image in the onboarding invitation block [Taiga #13040](https://tree.taiga.io/project/penpot/issue/13040)
|
||||
- Fix wrong register image [Taiga #12955](https://tree.taiga.io/project/penpot/task/12955)
|
||||
|
||||
|
||||
## 2.13.0 (Unreleased)
|
||||
|
||||
### :boom: Breaking changes & Deprecations
|
||||
|
||||
@@ -36,7 +36,8 @@ export PENPOT_FLAGS="\
|
||||
enable-file-validation \
|
||||
enable-file-schema-validation \
|
||||
enable-redis-cache \
|
||||
enable-subscriptions";
|
||||
enable-subscriptions \
|
||||
enable-nitrate";
|
||||
|
||||
# Default deletion delay for devenv
|
||||
export PENPOT_DELETION_DELAY="24h"
|
||||
@@ -55,6 +56,8 @@ export PENPOT_OBJECTS_STORAGE_BACKEND=s3
|
||||
export PENPOT_OBJECTS_STORAGE_S3_ENDPOINT=http://minio:9000
|
||||
export PENPOT_OBJECTS_STORAGE_S3_BUCKET=penpot
|
||||
|
||||
export PENPOT_NITRATE_BACKEND_URI=http://localhost:3000/control-center
|
||||
|
||||
export JAVA_OPTS="\
|
||||
-Djava.util.logging.manager=org.apache.logging.log4j.jul.LogManager \
|
||||
-Djdk.attach.allowAttachSelf \
|
||||
|
||||
@@ -225,6 +225,8 @@
|
||||
[:netty-io-threads {:optional true} ::sm/int]
|
||||
[:executor-threads {:optional true} ::sm/int]
|
||||
|
||||
[:nitrate-backend-uri {:optional true} ::sm/uri]
|
||||
|
||||
;; DEPRECATED
|
||||
[:assets-storage-backend {:optional true} :keyword]
|
||||
[:storage-assets-fs-directory {:optional true} :string]
|
||||
|
||||
@@ -323,6 +323,7 @@
|
||||
{::http.client/client (ig/ref ::http.client/client)
|
||||
::db/pool (ig/ref ::db/pool)
|
||||
::rds/pool (ig/ref ::rds/pool)
|
||||
:app.nitrate/client (ig/ref :app.nitrate/client)
|
||||
::wrk/executor (ig/ref ::wrk/netty-executor)
|
||||
::session/manager (ig/ref ::session/manager)
|
||||
::ldap/provider (ig/ref ::ldap/provider)
|
||||
@@ -339,6 +340,9 @@
|
||||
::email/blacklist (ig/ref ::email/blacklist)
|
||||
::email/whitelist (ig/ref ::email/whitelist)}
|
||||
|
||||
:app.nitrate/client
|
||||
{::http.client/client (ig/ref ::http.client/client)}
|
||||
|
||||
:app.rpc/management-methods
|
||||
{::http.client/client (ig/ref ::http.client/client)
|
||||
::db/pool (ig/ref ::db/pool)
|
||||
@@ -348,6 +352,7 @@
|
||||
::sto/storage (ig/ref ::sto/storage)
|
||||
::mtx/metrics (ig/ref ::mtx/metrics)
|
||||
::mbus/msgbus (ig/ref ::mbus/msgbus)
|
||||
:app.nitrate/client (ig/ref :app.nitrate/client)
|
||||
::rds/client (ig/ref ::rds/client)
|
||||
::setup/props (ig/ref ::setup/props)}
|
||||
|
||||
|
||||
133
backend/src/app/nitrate.clj
Normal file
133
backend/src/app/nitrate.clj
Normal file
@@ -0,0 +1,133 @@
|
||||
;; This Source Code Form is subject to the terms of the Mozilla Public
|
||||
;; License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
;; file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
;;
|
||||
;; Copyright (c) KALEIDOS INC
|
||||
|
||||
(ns app.nitrate
|
||||
"Module that make calls to the external nitrate aplication"
|
||||
(:require
|
||||
[app.common.logging :as l]
|
||||
[app.common.schema :as sm]
|
||||
[app.config :as cf]
|
||||
[app.http.client :as http]
|
||||
[app.rpc :as-alias rpc]
|
||||
[app.setup :as-alias setup]
|
||||
[app.util.json :as json]
|
||||
[clojure.core :as c]
|
||||
[integrant.core :as ig]))
|
||||
|
||||
|
||||
(def baseuri (cf/get :nitrate-backend-uri))
|
||||
|
||||
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; HELPERS
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
||||
(defn- coercer
|
||||
[schema & {:as opts}]
|
||||
(let [decode-fn (sm/decoder schema sm/json-transformer)
|
||||
check-fn (sm/check-fn schema opts)]
|
||||
(fn [data]
|
||||
(-> data decode-fn check-fn))))
|
||||
|
||||
|
||||
(defn- request-builder
|
||||
[cfg method uri management-key profile-id]
|
||||
(fn []
|
||||
(http/req! cfg {:method method
|
||||
:headers {"content-type" "application/json"
|
||||
"accept" "application/json"
|
||||
"x-shared-key" management-key
|
||||
"x-profile-id" (str profile-id)}
|
||||
:uri uri
|
||||
:version :http1.1})))
|
||||
|
||||
|
||||
(defn- with-retries
|
||||
[handler max-retries]
|
||||
(fn []
|
||||
(loop [attempt 1]
|
||||
(let [result (try
|
||||
(handler)
|
||||
(catch Exception e
|
||||
(if (< attempt max-retries)
|
||||
::retry
|
||||
(do
|
||||
;; TODO Error handling
|
||||
(l/error :hint "request fail after multiple retries" :cause e)
|
||||
nil))))]
|
||||
(if (= result ::retry)
|
||||
(recur (inc attempt))
|
||||
result)))))
|
||||
|
||||
|
||||
(defn- with-validate [handler uri schema]
|
||||
(fn []
|
||||
(let [coercer-http (coercer schema
|
||||
:type :validation
|
||||
:hint (str "invalid data received calling " uri))]
|
||||
(try
|
||||
(coercer-http (-> (handler) :body json/decode))
|
||||
(catch Exception e
|
||||
;; TODO Error handling
|
||||
(l/error :hint "error validating json response" :cause e)
|
||||
nil)))))
|
||||
|
||||
(defn- request-to-nitrate
|
||||
[{:keys [::management-key] :as cfg} method uri schema {:keys [::rpc/profile-id] :as params}]
|
||||
(let [full-http-call (-> (request-builder cfg method uri management-key profile-id)
|
||||
(with-retries 3)
|
||||
(with-validate uri schema))]
|
||||
(full-http-call)))
|
||||
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; API
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
||||
(defn call
|
||||
[cfg method params]
|
||||
(when (contains? cf/flags :nitrate)
|
||||
(let [client (get cfg ::client)
|
||||
method (get client method)]
|
||||
(method params))))
|
||||
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
||||
(def ^:private schema:organization
|
||||
[:map
|
||||
[:id ::sm/text]
|
||||
[:name ::sm/text]])
|
||||
|
||||
(def ^:private schema:user
|
||||
[:map
|
||||
[:valid ::sm/boolean]])
|
||||
|
||||
(defn- get-team-org
|
||||
[cfg {:keys [team-id] :as params}]
|
||||
(request-to-nitrate cfg :get (str baseuri "/api/teams/" (str team-id)) schema:organization params))
|
||||
|
||||
(defn- is-valid-user
|
||||
[cfg {:keys [profile-id] :as params}]
|
||||
(request-to-nitrate cfg :get (str baseuri "/api/users/" (str profile-id)) schema:user params))
|
||||
|
||||
|
||||
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; INITIALIZATION
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
||||
(defmethod ig/init-key ::client
|
||||
[_ {:keys [::setup/props] :as cfg}]
|
||||
(if (contains? cf/flags :nitrate)
|
||||
(let [management-key (or (cf/get :management-api-key)
|
||||
(get props :management-key))
|
||||
cfg (assoc cfg ::management-key management-key)]
|
||||
{:get-team-org (partial get-team-org cfg)
|
||||
:is-valid-user (partial is-valid-user cfg)})
|
||||
{}))
|
||||
|
||||
(defmethod ig/halt-key! ::client
|
||||
[_ {:keys []}]
|
||||
(do :stuff))
|
||||
@@ -301,6 +301,7 @@
|
||||
(let [cfg (assoc cfg ::type "management" ::metrics-id :rpc-management-timing)]
|
||||
(->> (sv/scan-ns
|
||||
'app.rpc.management.subscription
|
||||
'app.rpc.management.nitrate
|
||||
'app.rpc.management.exporter)
|
||||
(map (partial process-method cfg "management" wrap-management))
|
||||
(into {}))))
|
||||
|
||||
@@ -21,6 +21,7 @@
|
||||
[app.loggers.audit :as audit]
|
||||
[app.main :as-alias main]
|
||||
[app.media :as media]
|
||||
[app.nitrate :as nitrate]
|
||||
[app.rpc :as-alias rpc]
|
||||
[app.rpc.climit :as climit]
|
||||
[app.rpc.doc :as-alias doc]
|
||||
@@ -88,6 +89,17 @@
|
||||
|
||||
;; --- QUERY: Get profile (own)
|
||||
|
||||
(defn- add-nitrate-licence-to-profile
|
||||
[cfg profile]
|
||||
(try
|
||||
(let [nitrate-licence (nitrate/call cfg :is-valid-user {:profile-id (:id profile)})]
|
||||
(assoc profile :nitrate-licence (:valid nitrate-licence)))
|
||||
(catch Throwable cause
|
||||
(prn :hint "failed to get nitrate licence"
|
||||
:profile-id (:id profile)
|
||||
:cause cause)
|
||||
profile)))
|
||||
|
||||
(sv/defmethod ::get-profile
|
||||
{::rpc/auth false
|
||||
::doc/added "1.18"
|
||||
@@ -98,9 +110,13 @@
|
||||
;; no profile-id is in session, and when db call raises not found. In all other
|
||||
;; cases we need to reraise the exception.
|
||||
(try
|
||||
(-> (get-profile pool profile-id)
|
||||
(strip-private-attrs)
|
||||
(update :props filter-props))
|
||||
(let [profile (-> (get-profile pool profile-id)
|
||||
(strip-private-attrs)
|
||||
(update :props filter-props))]
|
||||
(if (contains? cf/flags :nitrate)
|
||||
(add-nitrate-licence-to-profile cfg profile)
|
||||
profile))
|
||||
|
||||
(catch Throwable _
|
||||
{:id uuid/zero :fullname "Anonymous User"})))
|
||||
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
inner join team_profile_rel as tpr on (tpr.team_id = p.team_id)
|
||||
where tpr.profile_id = ?
|
||||
and p.team_id = ?
|
||||
and (p.deleted_at is null or p.deleted_at > now())
|
||||
and (p.deleted_at is null)
|
||||
and (tpr.is_admin = true or
|
||||
tpr.is_owner = true or
|
||||
tpr.can_edit = true)
|
||||
@@ -29,7 +29,7 @@
|
||||
inner join project_profile_rel as ppr on (ppr.project_id = p.id)
|
||||
where ppr.profile_id = ?
|
||||
and p.team_id = ?
|
||||
and (p.deleted_at is null or p.deleted_at > now())
|
||||
and (p.deleted_at is null)
|
||||
and (ppr.is_admin = true or
|
||||
ppr.is_owner = true or
|
||||
ppr.can_edit = true)
|
||||
@@ -47,7 +47,7 @@
|
||||
left join file_thumbnail as ft on (ft.file_id = f.id and ft.revn = f.revn)
|
||||
inner join projects as pr on (f.project_id = pr.id)
|
||||
where f.name ilike ('%' || ? || '%')
|
||||
and (f.deleted_at is null or f.deleted_at > now())
|
||||
and (f.deleted_at is null)
|
||||
order by f.created_at asc")
|
||||
|
||||
(defn search-files
|
||||
|
||||
@@ -23,6 +23,7 @@
|
||||
[app.main :as-alias main]
|
||||
[app.media :as media]
|
||||
[app.msgbus :as mbus]
|
||||
[app.nitrate :as nitrate]
|
||||
[app.rpc :as-alias rpc]
|
||||
[app.rpc.commands.profile :as profile]
|
||||
[app.rpc.doc :as-alias doc]
|
||||
@@ -172,6 +173,12 @@
|
||||
(map decode-row)
|
||||
(map process-permissions)))
|
||||
|
||||
(defn- add-org-to-team
|
||||
[cfg team params]
|
||||
(let [params (assoc (or params {}) :team-id (:id team))
|
||||
org (nitrate/call cfg :get-team-org params)]
|
||||
(assoc team :organization-id (:id org) :organization-name (:name org))))
|
||||
|
||||
(defn get-teams
|
||||
[conn profile-id]
|
||||
(let [profile (profile/get-profile conn profile-id)
|
||||
@@ -190,7 +197,9 @@
|
||||
::sm/params schema:get-teams}
|
||||
[{:keys [::db/pool] :as cfg} {:keys [::rpc/profile-id] :as params}]
|
||||
(dm/with-open [conn (db/open pool)]
|
||||
(get-teams conn profile-id)))
|
||||
(cond->> (get-teams conn profile-id)
|
||||
(contains? cf/flags :nitrate)
|
||||
(map #(add-org-to-team cfg % params)))))
|
||||
|
||||
(def ^:private sql:get-owned-teams
|
||||
"SELECT t.id, t.name,
|
||||
|
||||
112
backend/src/app/rpc/management/nitrate.clj
Normal file
112
backend/src/app/rpc/management/nitrate.clj
Normal file
@@ -0,0 +1,112 @@
|
||||
;; This Source Code Form is subject to the terms of the Mozilla Public
|
||||
;; License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
;; file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
;;
|
||||
;; Copyright (c) KALEIDOS INC
|
||||
|
||||
(ns app.rpc.management.nitrate
|
||||
"Internal Nitrate HTTP API.
|
||||
Provides authenticated access to organization management and token validation endpoints.
|
||||
All requests must include a valid shared key token in the `x-shared-key` header, and
|
||||
a cookie `auth-token` with the user token.
|
||||
They will return `401 Unauthorized` if the shared key or user token are invalid."
|
||||
(:require
|
||||
[app.common.schema :as sm]
|
||||
[app.common.uuid :as uuid]
|
||||
[app.config :as cf]
|
||||
[app.db :as db]
|
||||
[app.msgbus :as mbus]
|
||||
[app.rpc :as-alias rpc]
|
||||
[app.rpc.commands.files :as files]
|
||||
[app.rpc.commands.profile :as profile]
|
||||
[app.rpc.doc :as doc]
|
||||
[app.util.services :as sv]))
|
||||
|
||||
;; ---- API: authenticate
|
||||
(def ^:private schema:profile
|
||||
[:map
|
||||
[:id ::sm/uuid]
|
||||
[:name :string]
|
||||
[:email :string]
|
||||
[:photo-url :string]])
|
||||
|
||||
(sv/defmethod ::authenticate
|
||||
"Authenticate an user
|
||||
@api GET /authenticate
|
||||
@returns
|
||||
200 OK: Returns the authenticated user."
|
||||
{::doc/added "2.12"
|
||||
::sm/result schema:profile}
|
||||
[cfg {:keys [::rpc/profile-id] :as params}]
|
||||
(let [profile (profile/get-profile cfg profile-id)]
|
||||
{:id (get profile :id)
|
||||
:name (get profile :fullname)
|
||||
:email (get profile :email)
|
||||
:photo-url (files/resolve-public-uri (get profile :photo-id))}))
|
||||
|
||||
;; ---- API: get-teams
|
||||
|
||||
(def ^:private sql:get-teams
|
||||
"SELECT t.*
|
||||
FROM team AS t
|
||||
JOIN team_profile_rel AS tpr ON t.id = tpr.team_id
|
||||
WHERE tpr.profile_id = ?
|
||||
AND tpr.is_owner = 't'
|
||||
AND t.is_default = 'f'
|
||||
AND t.deleted_at is null;")
|
||||
|
||||
(def ^:private schema:team
|
||||
[:map
|
||||
[:id ::sm/uuid]
|
||||
[:name :string]])
|
||||
|
||||
(def ^:private schema:get-teams-result
|
||||
[:vector schema:team])
|
||||
|
||||
(sv/defmethod ::get-teams
|
||||
"List teams for which current user is owner.
|
||||
@api GET /get-teams
|
||||
@returns
|
||||
200 OK: Returns the list of teams for the user."
|
||||
{::doc/added "2.12"
|
||||
::sm/result schema:get-teams-result}
|
||||
[cfg {:keys [::rpc/profile-id]}]
|
||||
(when (contains? cf/flags :nitrate)
|
||||
(let [current-user-id (-> (profile/get-profile cfg profile-id) :id)]
|
||||
(->> (db/exec! cfg [sql:get-teams current-user-id])
|
||||
(map #(select-keys % [:id :name]))))))
|
||||
|
||||
;; ---- API: notify-team-change
|
||||
|
||||
(def ^:private schema:notify-team-change
|
||||
[:map
|
||||
[:id ::sm/uuid]
|
||||
[:organization-id ::sm/text]])
|
||||
|
||||
|
||||
(sv/defmethod ::notify-team-change
|
||||
"Notify to Penpot a team change from nitrate
|
||||
@api POST /notify-team-change
|
||||
@returns
|
||||
200 OK"
|
||||
{::doc/added "2.12"
|
||||
::sm/params schema:notify-team-change
|
||||
::rpc/auth false}
|
||||
[cfg {:keys [id organization-id organization-name]}]
|
||||
(when (contains? cf/flags :nitrate)
|
||||
(let [msgbus (::mbus/msgbus cfg)]
|
||||
(mbus/pub! msgbus
|
||||
;;TODO There is a bug on dashboard with teams notifications.
|
||||
;;For now we send it to uuid/zero instead of team-id
|
||||
:topic uuid/zero
|
||||
:message {:type :team-org-change
|
||||
:team-id id
|
||||
:organization-id organization-id
|
||||
:organization-name organization-name}))))
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -526,20 +526,25 @@
|
||||
ids))
|
||||
|
||||
(defn clean-loops
|
||||
"Clean a list of ids from circular references."
|
||||
"Clean a list of ids from circular references. Optimized fast-path for single selections."
|
||||
[objects ids]
|
||||
(let [parent-selected?
|
||||
(fn [id]
|
||||
(let [parents (get-parent-ids objects id)]
|
||||
(some ids parents)))
|
||||
(if (<= (count ids) 1)
|
||||
;; For single selection, there can't be circularity; return as ordered-set.
|
||||
(into (d/ordered-set) ids)
|
||||
(let [ids-set (if (set? ids) ids (set ids))
|
||||
parent-selected?
|
||||
(fn [id]
|
||||
;; Stop early as soon as we find any selected parent
|
||||
(let [parents (get-parent-ids objects id)]
|
||||
(some #(contains? ids-set %) parents)))
|
||||
|
||||
add-element
|
||||
(fn [result id]
|
||||
(cond-> result
|
||||
(not (parent-selected? id))
|
||||
(conj id)))]
|
||||
add-element
|
||||
(fn [result id]
|
||||
(cond-> result
|
||||
(not (parent-selected? id))
|
||||
(conj id)))]
|
||||
|
||||
(reduce add-element (d/ordered-set) ids)))
|
||||
(reduce add-element (d/ordered-set) ids))))
|
||||
|
||||
(defn- indexed-shapes
|
||||
"Retrieves a vector with the indexes for each element in the layer
|
||||
|
||||
@@ -145,7 +145,10 @@
|
||||
|
||||
;; A temporal flag, enables backend code use more extensivelly
|
||||
;; redis for caching data
|
||||
:redis-cache})
|
||||
:redis-cache
|
||||
|
||||
;; Activates the nitrate module
|
||||
:nitrate})
|
||||
|
||||
(def all-flags
|
||||
(set/union email login varia))
|
||||
|
||||
@@ -2497,7 +2497,7 @@
|
||||
(-> changes
|
||||
(cls/generate-delete-shapes
|
||||
file page objects (d/ordered-set (:id shape))
|
||||
{:allow-altering-copies true :ignore-children-fn ignore-swapped-fn :ignore-mask true}))
|
||||
{:allow-altering-copies true :ignore-children-fn ignore-swapped-fn :ignore-mask true :ignore-flows-for #{(:id shape)}}))
|
||||
[new-shape changes]
|
||||
(-> changes
|
||||
(generate-new-shape-for-swap shape file page libraries id-new-component index target-cell keep-props-values))]
|
||||
|
||||
@@ -124,9 +124,11 @@
|
||||
;; on the deletion process. It should receive a shape and
|
||||
;; return a boolean
|
||||
ignore-children-fn
|
||||
ignore-mask]
|
||||
ignore-mask
|
||||
ignore-flows-for]
|
||||
:or {ignore-children-fn (constantly false)
|
||||
ignore-mask false}}]
|
||||
ignore-mask false
|
||||
ignore-flows-for #{}}}]
|
||||
(let [objects (pcb/get-objects changes)
|
||||
data (pcb/get-library-data changes)
|
||||
page-id (pcb/get-page-id changes)
|
||||
@@ -194,7 +196,8 @@
|
||||
(->> (:flows page)
|
||||
(reduce
|
||||
(fn [changes [id flow]]
|
||||
(if (id-to-delete? (:starting-frame flow))
|
||||
(if (and (id-to-delete? (:starting-frame flow))
|
||||
(not (contains? ignore-flows-for (:starting-frame flow))))
|
||||
(-> changes
|
||||
(pcb/with-page page)
|
||||
(pcb/set-flow id nil))
|
||||
|
||||
@@ -140,7 +140,8 @@
|
||||
:layout-item-min-w
|
||||
:layout-item-absolute
|
||||
:layout-item-z-index
|
||||
:layout-item-align-self})
|
||||
:layout-item-align-self
|
||||
:interactions})
|
||||
|
||||
(defn component-attr?
|
||||
"Check if some attribute is one that is involved in component syncrhonization.
|
||||
|
||||
@@ -141,8 +141,14 @@ http {
|
||||
proxy_pass http://127.0.0.1:5000;
|
||||
}
|
||||
|
||||
location /nitrate/ {
|
||||
proxy_pass http://127.0.0.1:3000/;
|
||||
location /control-center {
|
||||
proxy_pass http://127.0.0.1:3000;
|
||||
proxy_http_version 1.1;
|
||||
|
||||
proxy_set_header Host $host;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Forwarded-Proto $scheme;
|
||||
}
|
||||
|
||||
location /wasm-playground {
|
||||
|
||||
@@ -29,8 +29,9 @@ update_flags /var/www/app/js/config.js
|
||||
|
||||
export PENPOT_BACKEND_URI=${PENPOT_BACKEND_URI:-http://penpot-backend:6060}
|
||||
export PENPOT_EXPORTER_URI=${PENPOT_EXPORTER_URI:-http://penpot-exporter:6061}
|
||||
export PENPOT_NITRATE_URI=${PENPOT_NITRATE_URI:-http://penpot-nitrate:3000}
|
||||
export PENPOT_HTTP_SERVER_MAX_MULTIPART_BODY_SIZE=${PENPOT_HTTP_SERVER_MAX_MULTIPART_BODY_SIZE:-367001600} # Default to 350MiB
|
||||
envsubst "\$PENPOT_BACKEND_URI,\$PENPOT_EXPORTER_URI,\$PENPOT_HTTP_SERVER_MAX_MULTIPART_BODY_SIZE" \
|
||||
envsubst "\$PENPOT_BACKEND_URI,\$PENPOT_EXPORTER_URI,\$PENPOT_NITRATE_URI,\$PENPOT_HTTP_SERVER_MAX_MULTIPART_BODY_SIZE" \
|
||||
< /tmp/nginx.conf.template > /etc/nginx/nginx.conf
|
||||
|
||||
PENPOT_DEFAULT_INTERNAL_RESOLVER="$(awk 'BEGIN{ORS=" "} $1=="nameserver" { sub(/%.*$/,"",$2); print ($2 ~ ":")? "["$2"]": $2}' /etc/resolv.conf)"
|
||||
|
||||
@@ -139,6 +139,14 @@ http {
|
||||
proxy_pass $PENPOT_BACKEND_URI/ws/notifications;
|
||||
}
|
||||
|
||||
location /control-center {
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Host $http_host;
|
||||
proxy_set_header X-Real-IP $http_cf_connecting_ip;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_pass $PENPOT_NITRATE_URI$request_uri;
|
||||
}
|
||||
|
||||
include /etc/nginx/overrides/server.d/*.conf;
|
||||
|
||||
location / {
|
||||
|
||||
@@ -1,8 +1,10 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
source ~/.bashrc
|
||||
|
||||
set -ex
|
||||
|
||||
corepack enable;
|
||||
corepack install;
|
||||
|
||||
rm -rf ./_dist
|
||||
yarn
|
||||
yarn install
|
||||
yarn run build
|
||||
|
||||
@@ -20,12 +20,7 @@ test.describe("Dashboard Deleted Page", () => {
|
||||
// Navigate directly to deleted page
|
||||
await dashboardPage.goToDeleted();
|
||||
|
||||
// Check for the restore all and clear trash buttons
|
||||
await expect(
|
||||
page.getByRole("button", { name: "Restore All" }),
|
||||
).toBeVisible();
|
||||
await expect(
|
||||
page.getByRole("button", { name: "Clear trash" }),
|
||||
).toBeVisible();
|
||||
// Check for the delete-page-section element
|
||||
await expect(page.getByTestId("deleted-page-section")).toBeVisible();
|
||||
});
|
||||
});
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
604
frontend/playwright/ui/specs/tokens/apply.spec.js
Normal file
604
frontend/playwright/ui/specs/tokens/apply.spec.js
Normal file
@@ -0,0 +1,604 @@
|
||||
import { test, expect } from "@playwright/test";
|
||||
import { WorkspacePage } from "../../pages/WorkspacePage";
|
||||
import { BaseWebSocketPage } from "../../pages/BaseWebSocketPage";
|
||||
import {
|
||||
setupEmptyTokensFile,
|
||||
setupTokensFile,
|
||||
setupTypographyTokensFile,
|
||||
unfoldTokenTree,
|
||||
} from "./helpers";
|
||||
|
||||
test.beforeEach(async ({ page }) => {
|
||||
await WorkspacePage.init(page);
|
||||
await BaseWebSocketPage.mockRPC(page, "get-teams", "get-teams-tokens.json");
|
||||
});
|
||||
|
||||
test.describe("Tokens: Apply token", () => {
|
||||
test("User applies color token to a shape", async ({ page }) => {
|
||||
const { workspacePage, tokensSidebar, tokenContextMenuForToken } =
|
||||
await setupTokensFile(page);
|
||||
|
||||
await page.getByRole("tab", { name: "Layers" }).click();
|
||||
|
||||
await workspacePage.layers
|
||||
.getByTestId("layer-row")
|
||||
.filter({ hasText: "Button" })
|
||||
.click();
|
||||
|
||||
const tokensTabButton = page.getByRole("tab", { name: "Tokens" });
|
||||
await tokensTabButton.click();
|
||||
|
||||
unfoldTokenTree(tokensSidebar, "color", "colors.black");
|
||||
|
||||
await tokensSidebar
|
||||
.getByRole("button", { name: "black" })
|
||||
.click({ button: "right" });
|
||||
await tokenContextMenuForToken.getByText("Fill").click();
|
||||
|
||||
await expect(
|
||||
workspacePage.page.getByLabel("Name: colors.black"),
|
||||
).toBeVisible();
|
||||
});
|
||||
|
||||
test("User applies border-radius token to a shape from sidebar", async ({
|
||||
page,
|
||||
}) => {
|
||||
const { workspacePage, tokensSidebar, tokenContextMenuForToken } =
|
||||
await setupTokensFile(page);
|
||||
|
||||
await page.getByRole("tab", { name: "Layers" }).click();
|
||||
|
||||
await workspacePage.layers.getByTestId("layer-row").nth(1).click();
|
||||
|
||||
// Open tokens sections on left sidebar
|
||||
const tokensTabButton = page.getByRole("tab", { name: "Tokens" });
|
||||
await tokensTabButton.click();
|
||||
|
||||
// Unfold border radius tokens
|
||||
await page.getByRole("button", { name: "Border Radius 3" }).click();
|
||||
await expect(
|
||||
tokensSidebar.getByRole("button", { name: "borderRadius" }),
|
||||
).toBeVisible();
|
||||
await tokensSidebar.getByRole("button", { name: "borderRadius" }).click();
|
||||
await expect(
|
||||
tokensSidebar.getByRole("button", { name: "borderRadius.sm" }),
|
||||
).toBeVisible();
|
||||
|
||||
// Apply border radius token from token panels
|
||||
await tokensSidebar
|
||||
.getByRole("button", { name: "borderRadius.sm" })
|
||||
.click();
|
||||
|
||||
// Check if border radius sections is visible on right sidebar
|
||||
const borderRadiusSection = page.getByRole("region", {
|
||||
name: "border-radius-section",
|
||||
});
|
||||
await expect(borderRadiusSection).toBeVisible();
|
||||
|
||||
// Check if token pill is visible on design tab on right sidebar
|
||||
const brTokenPillSM = borderRadiusSection.getByRole("button", {
|
||||
name: "borderRadius.sm",
|
||||
});
|
||||
await expect(brTokenPillSM).toBeVisible();
|
||||
await brTokenPillSM.click();
|
||||
|
||||
// Change token from dropdown
|
||||
const brTokenOptionXl = borderRadiusSection.getByLabel("borderRadius.xl");
|
||||
await expect(brTokenOptionXl).toBeVisible();
|
||||
await brTokenOptionXl.click();
|
||||
|
||||
await expect(brTokenPillSM).not.toBeVisible();
|
||||
const brTokenPillXL = borderRadiusSection.getByRole("button", {
|
||||
name: "borderRadius.xl",
|
||||
});
|
||||
await expect(brTokenPillXL).toBeVisible();
|
||||
|
||||
// Detach token from design tab on right sidebar
|
||||
const detachButton = borderRadiusSection.getByRole("button", {
|
||||
name: "Detach token",
|
||||
});
|
||||
await detachButton.click();
|
||||
await expect(brTokenPillXL).not.toBeVisible();
|
||||
});
|
||||
|
||||
test("User applies typography token to a text shape", async ({ page }) => {
|
||||
const { workspacePage, tokensSidebar, tokenContextMenuForToken } =
|
||||
await setupTypographyTokensFile(page);
|
||||
|
||||
await page.getByRole("tab", { name: "Layers" }).click();
|
||||
|
||||
await workspacePage.layers
|
||||
.getByTestId("layer-row")
|
||||
.filter({ hasText: "Some Text" })
|
||||
.click();
|
||||
|
||||
const tokensTabButton = page.getByRole("tab", { name: "Tokens" });
|
||||
await tokensTabButton.click();
|
||||
|
||||
await tokensSidebar
|
||||
.getByRole("button")
|
||||
.filter({ hasText: "Typography" })
|
||||
.click();
|
||||
|
||||
await tokensSidebar.getByRole("button", { name: "Full" }).click();
|
||||
|
||||
const fontSizeInput = workspacePage.rightSidebar.getByRole("textbox", {
|
||||
name: "Font Size",
|
||||
});
|
||||
await expect(fontSizeInput).toBeVisible();
|
||||
await expect(fontSizeInput).toHaveValue("100");
|
||||
});
|
||||
|
||||
test("User edits typography token and all fields are valid", async ({
|
||||
page,
|
||||
}) => {
|
||||
const { tokensUpdateCreateModal, tokenThemesSetsSidebar, tokensSidebar } =
|
||||
await setupTypographyTokensFile(page);
|
||||
|
||||
await tokensSidebar
|
||||
.getByRole("button")
|
||||
.filter({ hasText: "Typography" })
|
||||
.click();
|
||||
|
||||
// Open edit modal for "Full" typography token
|
||||
const token = tokensSidebar.getByRole("button", { name: "Full" });
|
||||
await token.click({ button: "right" });
|
||||
await page.getByText("Edit token").click();
|
||||
|
||||
// Modal opens
|
||||
await expect(tokensUpdateCreateModal).toBeVisible();
|
||||
|
||||
const saveButton = tokensUpdateCreateModal.getByRole("button", {
|
||||
name: /save/i,
|
||||
});
|
||||
|
||||
// Fill font-family to verify to verify that input value doesn't get split into list of characters
|
||||
const fontFamilyField = tokensUpdateCreateModal
|
||||
.getByLabel("Font family")
|
||||
.first();
|
||||
await fontFamilyField.fill("OneWord");
|
||||
|
||||
// Invalidate incorrect values for font size
|
||||
const fontSizeField = tokensUpdateCreateModal.getByLabel(/Font Size/i);
|
||||
await fontSizeField.fill("invalid");
|
||||
await expect(
|
||||
tokensUpdateCreateModal.getByText(/Invalid token value:/),
|
||||
).toBeVisible();
|
||||
await expect(saveButton).toBeDisabled();
|
||||
|
||||
// Show error with line-height depending on invalid font-size
|
||||
await fontSizeField.fill("");
|
||||
await expect(saveButton).toBeDisabled();
|
||||
|
||||
// Fill in values for all fields and verify they persist when switching tabs
|
||||
await fontSizeField.fill("16");
|
||||
await expect(saveButton).toBeEnabled();
|
||||
|
||||
const fontWeightField = tokensUpdateCreateModal.getByLabel(/Font Weight/i);
|
||||
const letterSpacingField =
|
||||
tokensUpdateCreateModal.getByLabel(/Letter Spacing/i);
|
||||
const lineHeightField = tokensUpdateCreateModal.getByLabel(/Line Height/i);
|
||||
const textCaseField = tokensUpdateCreateModal.getByLabel(/Text Case/i);
|
||||
const textDecorationField =
|
||||
tokensUpdateCreateModal.getByLabel(/Text Decoration/i);
|
||||
|
||||
// Capture all values before switching tabs
|
||||
const originalValues = {
|
||||
fontSize: await fontSizeField.inputValue(),
|
||||
fontFamily: await fontFamilyField.inputValue(),
|
||||
fontWeight: await fontWeightField.inputValue(),
|
||||
letterSpacing: await letterSpacingField.inputValue(),
|
||||
lineHeight: await lineHeightField.inputValue(),
|
||||
textCase: await textCaseField.inputValue(),
|
||||
textDecoration: await textDecorationField.inputValue(),
|
||||
};
|
||||
|
||||
// Switch to reference tab and back to composite tab
|
||||
const referenceTabButton =
|
||||
tokensUpdateCreateModal.getByTestId("reference-opt");
|
||||
await referenceTabButton.click();
|
||||
|
||||
// Empty reference tab should be disabled
|
||||
await expect(saveButton).toBeDisabled();
|
||||
|
||||
const compositeTabButton =
|
||||
tokensUpdateCreateModal.getByTestId("composite-opt");
|
||||
await compositeTabButton.click();
|
||||
|
||||
// Filled composite tab should be enabled
|
||||
await expect(saveButton).toBeEnabled();
|
||||
|
||||
// Verify all values are preserved after switching tabs
|
||||
await expect(fontSizeField).toHaveValue(originalValues.fontSize);
|
||||
await expect(fontFamilyField).toHaveValue(originalValues.fontFamily);
|
||||
await expect(fontWeightField).toHaveValue(originalValues.fontWeight);
|
||||
await expect(letterSpacingField).toHaveValue(originalValues.letterSpacing);
|
||||
await expect(lineHeightField).toHaveValue(originalValues.lineHeight);
|
||||
await expect(textCaseField).toHaveValue(originalValues.textCase);
|
||||
await expect(textDecorationField).toHaveValue(
|
||||
originalValues.textDecoration,
|
||||
);
|
||||
|
||||
await saveButton.click();
|
||||
|
||||
// Modal should close, token should be visible (with new name) in sidebar
|
||||
await expect(tokensUpdateCreateModal).not.toBeVisible();
|
||||
});
|
||||
|
||||
test("User cant submit empty typography token or reference", async ({
|
||||
page,
|
||||
}) => {
|
||||
const { tokensUpdateCreateModal, tokenThemesSetsSidebar, tokensSidebar } =
|
||||
await setupTypographyTokensFile(page);
|
||||
|
||||
const tokensTabPanel = page.getByRole("tabpanel", { name: "tokens" });
|
||||
await tokensTabPanel
|
||||
.getByRole("button", { name: "Add Token: Typography" })
|
||||
.click();
|
||||
|
||||
await expect(tokensUpdateCreateModal).toBeVisible();
|
||||
|
||||
const nameField = tokensUpdateCreateModal.getByLabel("Name");
|
||||
await nameField.fill("typography.empty");
|
||||
|
||||
const valueField = tokensUpdateCreateModal.getByLabel("Font Size");
|
||||
|
||||
// Insert a value and then delete it
|
||||
await valueField.fill("1");
|
||||
await valueField.fill("");
|
||||
|
||||
// Submit button should be disabled when field is empty
|
||||
const submitButton = tokensUpdateCreateModal.getByRole("button", {
|
||||
name: "Save",
|
||||
});
|
||||
await expect(submitButton).toBeDisabled();
|
||||
|
||||
// Switch to reference tab, should not be submittable either
|
||||
const referenceTabButton =
|
||||
tokensUpdateCreateModal.getByTestId("reference-opt");
|
||||
await referenceTabButton.click();
|
||||
await expect(submitButton).toBeDisabled();
|
||||
});
|
||||
|
||||
test("User adds typography token with reference", async ({ page }) => {
|
||||
const { tokensUpdateCreateModal, tokenThemesSetsSidebar, tokensSidebar } =
|
||||
await setupTypographyTokensFile(page);
|
||||
|
||||
const newTokenTitle = "NewReference";
|
||||
|
||||
const tokensTabPanel = page.getByRole("tabpanel", { name: "tokens" });
|
||||
await tokensTabPanel
|
||||
.getByRole("button", { name: "Add Token: Typography" })
|
||||
.click();
|
||||
|
||||
await expect(tokensUpdateCreateModal).toBeVisible();
|
||||
|
||||
const nameField = tokensUpdateCreateModal.getByLabel("Name");
|
||||
await nameField.fill(newTokenTitle);
|
||||
|
||||
const referenceTabButton = tokensUpdateCreateModal.getByRole("button", {
|
||||
name: "Use a reference",
|
||||
});
|
||||
referenceTabButton.click();
|
||||
|
||||
const referenceField = tokensUpdateCreateModal.getByRole("textbox", {
|
||||
name: "Reference",
|
||||
});
|
||||
await referenceField.fill("{Full}");
|
||||
|
||||
const submitButton = tokensUpdateCreateModal.getByRole("button", {
|
||||
name: "Save",
|
||||
});
|
||||
|
||||
const resolvedValue =
|
||||
await tokensUpdateCreateModal.getByText("Resolved value:");
|
||||
await expect(resolvedValue).toBeVisible();
|
||||
await expect(resolvedValue).toContainText("Font Family: 42dot Sans");
|
||||
await expect(resolvedValue).toContainText("Font Size: 100");
|
||||
await expect(resolvedValue).toContainText("Font Weight: 300");
|
||||
await expect(resolvedValue).toContainText("Letter Spacing: 2");
|
||||
await expect(resolvedValue).toContainText("Text Case: uppercase");
|
||||
await expect(resolvedValue).toContainText("Text Decoration: underline");
|
||||
|
||||
await expect(submitButton).toBeEnabled();
|
||||
await submitButton.click();
|
||||
|
||||
await expect(tokensUpdateCreateModal).not.toBeVisible();
|
||||
|
||||
const newToken = tokensSidebar.getByRole("button", {
|
||||
name: newTokenTitle,
|
||||
});
|
||||
|
||||
await expect(newToken).toBeVisible();
|
||||
});
|
||||
|
||||
test("User adds shadow token with multiple shadows and applies it to shape", async ({
|
||||
page,
|
||||
}) => {
|
||||
const {
|
||||
tokensUpdateCreateModal,
|
||||
tokensSidebar,
|
||||
workspacePage,
|
||||
tokenContextMenuForToken,
|
||||
} = await setupTokensFile(page, { flags: ["enable-token-shadow"] });
|
||||
|
||||
const tokensTabPanel = page.getByRole("tabpanel", { name: "tokens" });
|
||||
|
||||
await test.step("Stage 1: Basic open", async () => {
|
||||
// User adds shadow via the sidebar
|
||||
await tokensTabPanel
|
||||
.getByRole("button", { name: "Add Token: Shadow" })
|
||||
.click();
|
||||
|
||||
await expect(tokensUpdateCreateModal).toBeVisible();
|
||||
|
||||
const nameField = tokensUpdateCreateModal.getByLabel("Name");
|
||||
await nameField.fill("primary");
|
||||
|
||||
// User adds first shadow with a color from the color ramp
|
||||
const firstShadowFields = tokensUpdateCreateModal.getByTestId(
|
||||
"shadow-input-fields-0",
|
||||
);
|
||||
await expect(firstShadowFields).toBeVisible();
|
||||
|
||||
// Fill in the shadow values
|
||||
const offsetXInput = firstShadowFields.getByLabel("X");
|
||||
const offsetYInput = firstShadowFields.getByLabel("Y");
|
||||
const blurInput = firstShadowFields.getByRole("textbox", {
|
||||
name: "Blur",
|
||||
});
|
||||
const spreadInput = firstShadowFields.getByRole("textbox", {
|
||||
name: "Spread",
|
||||
});
|
||||
|
||||
await offsetXInput.fill("2");
|
||||
await offsetYInput.fill("2");
|
||||
await blurInput.fill("4");
|
||||
await spreadInput.fill("0");
|
||||
|
||||
// Add color using the color picker
|
||||
const colorBullet = firstShadowFields.getByTestId(
|
||||
"token-form-color-bullet",
|
||||
);
|
||||
await colorBullet.click();
|
||||
|
||||
// Click on the color ramp to select a color
|
||||
const valueSaturationSelector = tokensUpdateCreateModal.getByTestId(
|
||||
"value-saturation-selector",
|
||||
);
|
||||
await expect(valueSaturationSelector).toBeVisible();
|
||||
await valueSaturationSelector.click({ position: { x: 50, y: 50 } });
|
||||
|
||||
// Verify that a color value was set
|
||||
const colorInput = firstShadowFields.getByRole("textbox", {
|
||||
name: "Color",
|
||||
});
|
||||
await expect(colorInput).toHaveValue(/^rgb(.*)$/);
|
||||
|
||||
// Wait for validation to complete
|
||||
await expect(
|
||||
tokensUpdateCreateModal.getByText(/Resolved value:/).first(),
|
||||
).toBeVisible();
|
||||
|
||||
// Save button should be enabled
|
||||
const submitButton = tokensUpdateCreateModal.getByRole("button", {
|
||||
name: "Save",
|
||||
});
|
||||
await expect(submitButton).toBeEnabled();
|
||||
});
|
||||
|
||||
await test.step("Stage 2: Shadow adding/removing works", async () => {
|
||||
const firstShadowFields = tokensUpdateCreateModal.getByTestId(
|
||||
"shadow-input-fields-0",
|
||||
);
|
||||
const colorInput = firstShadowFields.getByRole("textbox", {
|
||||
name: "Color",
|
||||
});
|
||||
const firstColorValue = await colorInput.inputValue();
|
||||
|
||||
// User adds a second shadow
|
||||
const addButton = tokensUpdateCreateModal.getByRole("button", {
|
||||
name: "Add Shadow",
|
||||
});
|
||||
await addButton.click();
|
||||
|
||||
const secondShadowFields = tokensUpdateCreateModal.getByTestId(
|
||||
"shadow-input-fields-1",
|
||||
);
|
||||
await expect(secondShadowFields).toBeVisible();
|
||||
|
||||
// User adds a third shadow
|
||||
await addButton.click();
|
||||
|
||||
const thirdShadowFields = tokensUpdateCreateModal.getByTestId(
|
||||
"shadow-input-fields-2",
|
||||
);
|
||||
await expect(thirdShadowFields).toBeVisible();
|
||||
|
||||
// User adds values for the third shadow
|
||||
const thirdOffsetXInput = thirdShadowFields.getByLabel("X");
|
||||
const thirdOffsetYInput = thirdShadowFields.getByLabel("Y");
|
||||
const thirdBlurInput = thirdShadowFields.getByRole("textbox", {
|
||||
name: "Blur",
|
||||
});
|
||||
const thirdSpreadInput = thirdShadowFields.getByRole("textbox", {
|
||||
name: "Spread",
|
||||
});
|
||||
const thirdColorInput = thirdShadowFields.getByRole("textbox", {
|
||||
name: "Color",
|
||||
});
|
||||
|
||||
await thirdOffsetXInput.fill("10");
|
||||
await thirdOffsetYInput.fill("10");
|
||||
await thirdBlurInput.fill("20");
|
||||
await thirdSpreadInput.fill("5");
|
||||
await thirdColorInput.fill("#FF0000");
|
||||
|
||||
// User removes the 2nd shadow
|
||||
const removeButton2 = secondShadowFields.getByRole("button", {
|
||||
name: "Remove Shadow",
|
||||
});
|
||||
await removeButton2.click();
|
||||
|
||||
// Verify that we have only two shadow fields
|
||||
await expect(thirdShadowFields).not.toBeVisible();
|
||||
|
||||
// Verify that the first shadow kept its values
|
||||
const firstOffsetXValue = await firstShadowFields
|
||||
.getByLabel("X")
|
||||
.inputValue();
|
||||
const firstOffsetYValue = await firstShadowFields
|
||||
.getByLabel("Y")
|
||||
.inputValue();
|
||||
const firstBlurValue = await firstShadowFields
|
||||
.getByRole("textbox", { name: "Blur" })
|
||||
.inputValue();
|
||||
const firstSpreadValue = await firstShadowFields
|
||||
.getByRole("textbox", { name: "Spread" })
|
||||
.inputValue();
|
||||
const firstColorValueAfter = await firstShadowFields
|
||||
.getByRole("textbox", { name: "Color" })
|
||||
.inputValue();
|
||||
|
||||
await expect(firstOffsetXValue).toBe("2");
|
||||
await expect(firstOffsetYValue).toBe("2");
|
||||
await expect(firstBlurValue).toBe("4");
|
||||
await expect(firstSpreadValue).toBe("0");
|
||||
await expect(firstColorValueAfter).toBe(firstColorValue);
|
||||
|
||||
// Verify that the second kept its values (after shadow 3)
|
||||
// After removing index 1, the third shadow becomes the second shadow at index 1
|
||||
const newSecondShadowFields = tokensUpdateCreateModal.getByTestId(
|
||||
"shadow-input-fields-1",
|
||||
);
|
||||
await expect(newSecondShadowFields).toBeVisible();
|
||||
|
||||
const secondOffsetXValue = await newSecondShadowFields
|
||||
.getByLabel("X")
|
||||
.inputValue();
|
||||
const secondOffsetYValue = await newSecondShadowFields
|
||||
.getByLabel("Y")
|
||||
.inputValue();
|
||||
const secondBlurValue = await newSecondShadowFields
|
||||
.getByRole("textbox", { name: "Blur" })
|
||||
.inputValue();
|
||||
const secondSpreadValue = await newSecondShadowFields
|
||||
.getByRole("textbox", { name: "Spread" })
|
||||
.inputValue();
|
||||
const secondColorValue = await newSecondShadowFields
|
||||
.getByRole("textbox", { name: "Color" })
|
||||
.inputValue();
|
||||
|
||||
await expect(secondOffsetXValue).toBe("10");
|
||||
await expect(secondOffsetYValue).toBe("10");
|
||||
await expect(secondBlurValue).toBe("20");
|
||||
await expect(secondSpreadValue).toBe("5");
|
||||
await expect(secondColorValue).toBe("#FF0000");
|
||||
});
|
||||
|
||||
await test.step("Stage 3: Restore when switching tabs works", async () => {
|
||||
const firstShadowFields = tokensUpdateCreateModal.getByTestId(
|
||||
"shadow-input-fields-0",
|
||||
);
|
||||
const newSecondShadowFields = tokensUpdateCreateModal.getByTestId(
|
||||
"shadow-input-fields-1",
|
||||
);
|
||||
const colorInput = firstShadowFields.getByRole("textbox", {
|
||||
name: "Color",
|
||||
});
|
||||
const firstColorValue = await colorInput.inputValue();
|
||||
|
||||
// Switch to reference tab
|
||||
const referenceTabButton =
|
||||
tokensUpdateCreateModal.getByTestId("reference-opt");
|
||||
await referenceTabButton.click();
|
||||
|
||||
// Verify we're in reference mode - the composite fields should not be visible
|
||||
await expect(firstShadowFields).not.toBeVisible();
|
||||
|
||||
// Switch back to composite tab
|
||||
const compositeTabButton =
|
||||
tokensUpdateCreateModal.getByTestId("composite-opt");
|
||||
await compositeTabButton.click();
|
||||
|
||||
// Verify that shadows are restored
|
||||
await expect(firstShadowFields).toBeVisible();
|
||||
await expect(newSecondShadowFields).toBeVisible();
|
||||
|
||||
// Verify first shadow values are still there
|
||||
const restoredFirstOffsetX = await firstShadowFields
|
||||
.getByLabel("X")
|
||||
.inputValue();
|
||||
const restoredFirstOffsetY = await firstShadowFields
|
||||
.getByLabel("Y")
|
||||
.inputValue();
|
||||
const restoredFirstBlur = await firstShadowFields
|
||||
.getByRole("textbox", { name: "Blur" })
|
||||
.inputValue();
|
||||
const restoredFirstSpread = await firstShadowFields
|
||||
.getByRole("textbox", { name: "Spread" })
|
||||
.inputValue();
|
||||
const restoredFirstColor = await firstShadowFields
|
||||
.getByRole("textbox", { name: "Color" })
|
||||
.inputValue();
|
||||
|
||||
await expect(restoredFirstOffsetX).toBe("2");
|
||||
await expect(restoredFirstOffsetY).toBe("2");
|
||||
await expect(restoredFirstBlur).toBe("4");
|
||||
await expect(restoredFirstSpread).toBe("0");
|
||||
await expect(restoredFirstColor).toBe(firstColorValue);
|
||||
|
||||
// Verify second shadow values are still there
|
||||
const restoredSecondOffsetX = await newSecondShadowFields
|
||||
.getByLabel("X")
|
||||
.inputValue();
|
||||
const restoredSecondOffsetY = await newSecondShadowFields
|
||||
.getByLabel("Y")
|
||||
.inputValue();
|
||||
const restoredSecondBlur = await newSecondShadowFields
|
||||
.getByRole("textbox", { name: "Blur" })
|
||||
.inputValue();
|
||||
const restoredSecondSpread = await newSecondShadowFields
|
||||
.getByRole("textbox", { name: "Spread" })
|
||||
.inputValue();
|
||||
const restoredSecondColor = await newSecondShadowFields
|
||||
.getByRole("textbox", { name: "Color" })
|
||||
.inputValue();
|
||||
|
||||
await expect(restoredSecondOffsetX).toBe("10");
|
||||
await expect(restoredSecondOffsetY).toBe("10");
|
||||
await expect(restoredSecondBlur).toBe("20");
|
||||
await expect(restoredSecondSpread).toBe("5");
|
||||
await expect(restoredSecondColor).toBe("#FF0000");
|
||||
});
|
||||
|
||||
await test.step("Stage 4: Layer application works", async () => {
|
||||
// Save the token
|
||||
const submitButton = tokensUpdateCreateModal.getByRole("button", {
|
||||
name: "Save",
|
||||
});
|
||||
await submitButton.click();
|
||||
await expect(tokensUpdateCreateModal).not.toBeVisible();
|
||||
|
||||
unfoldTokenTree(tokensSidebar, "shadow", "primary");
|
||||
|
||||
// Verify token appears in sidebar
|
||||
const shadowToken = tokensSidebar.getByRole("button", {
|
||||
name: "primary",
|
||||
});
|
||||
await expect(shadowToken).toBeEnabled();
|
||||
|
||||
// Apply the shadow
|
||||
await workspacePage.clickLayers();
|
||||
await workspacePage.clickLeafLayer("Button");
|
||||
|
||||
const shadowSection = workspacePage.rightSidebar.getByText("Drop shadow");
|
||||
await expect(shadowSection).toHaveCount(0);
|
||||
|
||||
await page.getByRole("tab", { name: "Tokens" }).click();
|
||||
await shadowToken.click();
|
||||
|
||||
await expect(shadowSection).toHaveCount(2);
|
||||
});
|
||||
});
|
||||
});
|
||||
1549
frontend/playwright/ui/specs/tokens/crud.spec.js
Normal file
1549
frontend/playwright/ui/specs/tokens/crud.spec.js
Normal file
File diff suppressed because it is too large
Load Diff
22
frontend/playwright/ui/specs/tokens/general.spec.js
Normal file
22
frontend/playwright/ui/specs/tokens/general.spec.js
Normal file
@@ -0,0 +1,22 @@
|
||||
import { test, expect } from "@playwright/test";
|
||||
import { WorkspacePage } from "../../pages/WorkspacePage";
|
||||
import { BaseWebSocketPage } from "../../pages/BaseWebSocketPage";
|
||||
import { setupEmptyTokensFile } from "./helpers";
|
||||
|
||||
test.beforeEach(async ({ page }) => {
|
||||
await WorkspacePage.init(page);
|
||||
await BaseWebSocketPage.mockRPC(page, "get-teams", "get-teams-tokens.json");
|
||||
});
|
||||
|
||||
test.describe("Tokens tab - common tests", () => {
|
||||
test("Clicking tokens tab button opens tokens sidebar tab", async ({
|
||||
page,
|
||||
}) => {
|
||||
await setupEmptyTokensFile(page);
|
||||
|
||||
const tokensTabPanel = page.getByRole("tabpanel", { name: "tokens" });
|
||||
|
||||
await expect(tokensTabPanel).toHaveText(/TOKENS/);
|
||||
await expect(tokensTabPanel).toHaveText(/Themes/);
|
||||
});
|
||||
});
|
||||
266
frontend/playwright/ui/specs/tokens/helpers.js
Normal file
266
frontend/playwright/ui/specs/tokens/helpers.js
Normal file
@@ -0,0 +1,266 @@
|
||||
import { test, expect } from "@playwright/test";
|
||||
import { WorkspacePage } from "../../pages/WorkspacePage";
|
||||
|
||||
const setupEmptyTokensFile = async (page, options = {}) => {
|
||||
const { flags = [] } = options;
|
||||
|
||||
const workspacePage = new WorkspacePage(page);
|
||||
if (flags.length > 0) {
|
||||
await workspacePage.mockConfigFlags(flags);
|
||||
}
|
||||
|
||||
await workspacePage.setupEmptyFile();
|
||||
await workspacePage.mockRPC(
|
||||
"get-team?id=*",
|
||||
"workspace/get-team-tokens.json",
|
||||
);
|
||||
|
||||
await workspacePage.mockRPC(
|
||||
"update-file?id=*",
|
||||
"workspace/update-file-create-rect.json",
|
||||
);
|
||||
|
||||
await workspacePage.goToWorkspace({
|
||||
fileId: "c7ce0794-0992-8105-8004-38f280443849",
|
||||
pageId: "66697432-c33d-8055-8006-2c62cc084cad",
|
||||
});
|
||||
|
||||
const tokensTabButton = page.getByRole("tab", { name: "Tokens" });
|
||||
await tokensTabButton.click();
|
||||
|
||||
return {
|
||||
workspacePage,
|
||||
tokenThemeUpdateCreateModal: workspacePage.tokenThemeUpdateCreateModal,
|
||||
tokensUpdateCreateModal: workspacePage.tokensUpdateCreateModal,
|
||||
tokenThemesSetsSidebar: workspacePage.tokenThemesSetsSidebar,
|
||||
tokenSetItems: workspacePage.tokenSetItems,
|
||||
tokensSidebar: workspacePage.tokensSidebar,
|
||||
tokenSetGroupItems: workspacePage.tokenSetGroupItems,
|
||||
tokenContextMenuForSet: workspacePage.tokenContextMenuForSet,
|
||||
};
|
||||
};
|
||||
|
||||
const setupTokensFile = async (page, options = {}) => {
|
||||
const {
|
||||
file = "workspace/get-file-tokens.json",
|
||||
fileFragment = "workspace/get-file-fragment-tokens.json",
|
||||
flags = ["enable-feature-token-input"],
|
||||
} = options;
|
||||
|
||||
const workspacePage = new WorkspacePage(page);
|
||||
if (flags.length > 0) {
|
||||
await workspacePage.mockConfigFlags(flags);
|
||||
}
|
||||
|
||||
await workspacePage.setupEmptyFile();
|
||||
await workspacePage.mockRPC(
|
||||
"get-team?id=*",
|
||||
"workspace/get-team-tokens.json",
|
||||
);
|
||||
await workspacePage.mockRPC(/get\-file\?/, file);
|
||||
await workspacePage.mockRPC(/get\-file\-fragment\?/, fileFragment);
|
||||
await workspacePage.mockRPC(
|
||||
"update-file?id=*",
|
||||
"workspace/update-file-create-rect.json",
|
||||
);
|
||||
|
||||
await workspacePage.goToWorkspace({
|
||||
fileId: "c7ce0794-0992-8105-8004-38f280443849",
|
||||
pageId: "66697432-c33d-8055-8006-2c62cc084cad",
|
||||
});
|
||||
|
||||
const tokensTabButton = page.getByRole("tab", { name: "Tokens" });
|
||||
await tokensTabButton.click();
|
||||
|
||||
return {
|
||||
workspacePage,
|
||||
tokensUpdateCreateModal: workspacePage.tokensUpdateCreateModal,
|
||||
tokenThemeUpdateCreateModal: workspacePage.tokenThemeUpdateCreateModal,
|
||||
tokenThemesSetsSidebar: workspacePage.tokenThemesSetsSidebar,
|
||||
tokenSetItems: workspacePage.tokenSetItems,
|
||||
tokenSetGroupItems: workspacePage.tokenSetGroupItems,
|
||||
tokensSidebar: workspacePage.tokensSidebar,
|
||||
tokenContextMenuForToken: workspacePage.tokenContextMenuForToken,
|
||||
tokenContextMenuForSet: workspacePage.tokenContextMenuForSet,
|
||||
};
|
||||
};
|
||||
|
||||
const setupTypographyTokensFile = async (page, options = {}) => {
|
||||
return setupTokensFile(page, {
|
||||
file: "workspace/get-file-typography-tokens.json",
|
||||
fileFragment: "workspace/get-file-fragment-typography-tokens.json",
|
||||
...options,
|
||||
});
|
||||
};
|
||||
|
||||
const testTokenCreationFlow = async (
|
||||
page,
|
||||
{
|
||||
tokenLabel,
|
||||
namePlaceholder,
|
||||
valuePlaceholder,
|
||||
validValue,
|
||||
invalidValue,
|
||||
selfReferenceValue,
|
||||
missingReferenceValue,
|
||||
secondValidValue,
|
||||
resolvedValueText,
|
||||
secondResolvedValueText,
|
||||
},
|
||||
) => {
|
||||
const invalidValueError = "Invalid token value";
|
||||
const emptyNameError = "Name should be at least 1 character";
|
||||
const selfReferenceError = "Token has self reference";
|
||||
const missingReferenceError = "Missing token references";
|
||||
|
||||
const { tokensUpdateCreateModal, tokenThemesSetsSidebar } =
|
||||
await setupEmptyTokensFile(page);
|
||||
|
||||
// Open modal
|
||||
const tokensTabPanel = page.getByRole("tabpanel", { name: "tokens" });
|
||||
|
||||
const addTokenButton = tokensTabPanel.getByRole("button", {
|
||||
name: `Add Token: ${tokenLabel}`,
|
||||
});
|
||||
|
||||
await addTokenButton.click();
|
||||
await expect(tokensUpdateCreateModal).toBeVisible();
|
||||
|
||||
// Placeholder checks
|
||||
await expect(
|
||||
tokensUpdateCreateModal.getByPlaceholder(namePlaceholder),
|
||||
).toBeVisible();
|
||||
await expect(
|
||||
tokensUpdateCreateModal.getByPlaceholder(valuePlaceholder),
|
||||
).toBeVisible();
|
||||
|
||||
const nameField = tokensUpdateCreateModal.getByLabel("Name");
|
||||
const valueField = tokensUpdateCreateModal.getByLabel("Value");
|
||||
const submitButton = tokensUpdateCreateModal.getByRole("button", {
|
||||
name: "Save",
|
||||
});
|
||||
|
||||
// 1. Name filled + empty value → disabled
|
||||
await nameField.fill("my-token");
|
||||
await expect(submitButton).toBeDisabled();
|
||||
|
||||
// 2. Invalid value → disabled + error message
|
||||
await valueField.fill(invalidValue);
|
||||
|
||||
const invalidValueErrorNode =
|
||||
tokensUpdateCreateModal.getByText(invalidValueError);
|
||||
|
||||
await expect(invalidValueErrorNode).toBeVisible();
|
||||
await expect(submitButton).toBeDisabled();
|
||||
|
||||
// 3. Empty name → disabled + error message
|
||||
await nameField.fill("");
|
||||
|
||||
const emptyNameErrorNode = tokensUpdateCreateModal.getByText(emptyNameError);
|
||||
|
||||
await expect(emptyNameErrorNode).toBeVisible();
|
||||
await expect(submitButton).toBeDisabled();
|
||||
|
||||
// 4. Self reference → disabled + error message
|
||||
await nameField.fill("my-token");
|
||||
await valueField.fill(selfReferenceValue);
|
||||
|
||||
const selfRefErrorNode =
|
||||
tokensUpdateCreateModal.getByText(selfReferenceError);
|
||||
|
||||
await expect(selfRefErrorNode).toBeVisible();
|
||||
await expect(submitButton).toBeDisabled();
|
||||
|
||||
// 5. Missing reference → disabled + error message
|
||||
await valueField.fill(missingReferenceValue);
|
||||
|
||||
const missingRefErrorNode = tokensUpdateCreateModal.getByText(
|
||||
missingReferenceError,
|
||||
);
|
||||
|
||||
await expect(missingRefErrorNode).toBeVisible();
|
||||
await expect(submitButton).toBeDisabled();
|
||||
|
||||
//
|
||||
// ------- SUCCESSFUL CREATION -------
|
||||
//
|
||||
|
||||
// 6. Basic valid value → enabled
|
||||
await valueField.fill(validValue);
|
||||
await expect(
|
||||
tokensUpdateCreateModal.getByText(resolvedValueText),
|
||||
).toBeVisible();
|
||||
await expect(submitButton).toBeEnabled();
|
||||
|
||||
await submitButton.click();
|
||||
|
||||
await expect(
|
||||
tokensTabPanel.getByRole("button", { name: "my-token" }),
|
||||
).toBeEnabled();
|
||||
|
||||
//
|
||||
// ------- SECOND TOKEN WITH VALID REFERENCE -------
|
||||
//
|
||||
|
||||
await addTokenButton.click();
|
||||
|
||||
await nameField.fill("my-token-2");
|
||||
await valueField.fill(secondValidValue);
|
||||
|
||||
await expect(
|
||||
tokensUpdateCreateModal.getByText(secondResolvedValueText),
|
||||
).toBeVisible();
|
||||
await expect(submitButton).toBeEnabled();
|
||||
|
||||
await submitButton.click();
|
||||
|
||||
await expect(
|
||||
tokensTabPanel.getByRole("button", { name: "my-token-2" }),
|
||||
).toBeEnabled();
|
||||
};
|
||||
|
||||
const unfoldTokenTree = async (tokensTabPanel, type, tokenName) => {
|
||||
const tokenSegments = tokenName.split(".");
|
||||
const tokenFolderTree = tokenSegments.slice(0, -1);
|
||||
const tokenLeafName = tokenSegments.pop();
|
||||
|
||||
const typeParentWrapper = tokensTabPanel.getByTestId(`section-${type}`);
|
||||
const typeSectionButton = typeParentWrapper
|
||||
.getByRole("button", {
|
||||
name: type,
|
||||
})
|
||||
.first();
|
||||
|
||||
const isSectionExpanded =
|
||||
await typeSectionButton.getAttribute("aria-expanded");
|
||||
|
||||
if (isSectionExpanded === "false") {
|
||||
await typeSectionButton.click();
|
||||
}
|
||||
|
||||
for (const segment of tokenFolderTree) {
|
||||
const segmentButton = typeParentWrapper
|
||||
.getByRole("listitem")
|
||||
.getByRole("button", { name: segment })
|
||||
.first();
|
||||
|
||||
const isExpanded = await segmentButton.getAttribute("aria-expanded");
|
||||
if (isExpanded === "false") {
|
||||
await segmentButton.click();
|
||||
}
|
||||
}
|
||||
|
||||
await expect(
|
||||
typeParentWrapper.getByRole("button", {
|
||||
name: tokenLeafName,
|
||||
}),
|
||||
).toBeEnabled();
|
||||
};
|
||||
|
||||
export {
|
||||
setupEmptyTokensFile,
|
||||
setupTokensFile,
|
||||
setupTypographyTokensFile,
|
||||
testTokenCreationFlow,
|
||||
unfoldTokenTree,
|
||||
};
|
||||
651
frontend/playwright/ui/specs/tokens/remapping.spec.js
Normal file
651
frontend/playwright/ui/specs/tokens/remapping.spec.js
Normal file
@@ -0,0 +1,651 @@
|
||||
import { test, expect } from "@playwright/test";
|
||||
import { WorkspacePage } from "../../pages/WorkspacePage";
|
||||
import { BaseWebSocketPage } from "../../pages/BaseWebSocketPage";
|
||||
import {
|
||||
setupEmptyTokensFile,
|
||||
setupTokensFile,
|
||||
setupTypographyTokensFile,
|
||||
} from "./helpers";
|
||||
|
||||
test.beforeEach(async ({ page }) => {
|
||||
await WorkspacePage.init(page);
|
||||
await BaseWebSocketPage.mockRPC(page, "get-teams", "get-teams-tokens.json");
|
||||
});
|
||||
|
||||
test.describe("Tokens: Remapping Feature", () => {
|
||||
test.describe("Box Shadow Token Remapping", () => {
|
||||
test("User renames box shadow token with alias references", async ({
|
||||
page,
|
||||
}) => {
|
||||
const {
|
||||
tokensUpdateCreateModal,
|
||||
tokensSidebar,
|
||||
tokenContextMenuForToken,
|
||||
} = await setupTokensFile(page, { flags: ["enable-token-shadow"] });
|
||||
|
||||
const tokensTabPanel = page.getByRole("tabpanel", { name: "tokens" });
|
||||
|
||||
// Create base shadow token
|
||||
await tokensTabPanel
|
||||
.getByRole("button", { name: "Add Token: Shadow" })
|
||||
.click();
|
||||
await expect(tokensUpdateCreateModal).toBeVisible();
|
||||
|
||||
let nameField = tokensUpdateCreateModal.getByLabel("Name");
|
||||
await nameField.fill("base-shadow");
|
||||
|
||||
const colorField = tokensUpdateCreateModal.getByRole("textbox", {
|
||||
name: "Color",
|
||||
});
|
||||
await colorField.fill("#000000");
|
||||
|
||||
let submitButton = tokensUpdateCreateModal.getByRole("button", {
|
||||
name: "Save",
|
||||
});
|
||||
await submitButton.click();
|
||||
await expect(tokensUpdateCreateModal).not.toBeVisible();
|
||||
|
||||
// Create derived shadow token that references base-shadow
|
||||
await tokensTabPanel
|
||||
.getByRole("button", { name: "Add Token: Shadow" })
|
||||
.click();
|
||||
await expect(tokensUpdateCreateModal).toBeVisible();
|
||||
|
||||
nameField = tokensUpdateCreateModal.getByRole("textbox", {
|
||||
name: "Name",
|
||||
});
|
||||
await nameField.fill("derived-shadow");
|
||||
|
||||
const referenceToggle =
|
||||
tokensUpdateCreateModal.getByTestId("reference-opt");
|
||||
await referenceToggle.click();
|
||||
|
||||
const referenceField = tokensUpdateCreateModal.getByRole("textbox", {
|
||||
name: "Reference",
|
||||
});
|
||||
await referenceField.fill("{base-shadow}");
|
||||
|
||||
submitButton = tokensUpdateCreateModal.getByRole("button", {
|
||||
name: "Save",
|
||||
});
|
||||
await submitButton.click();
|
||||
await expect(tokensUpdateCreateModal).not.toBeVisible();
|
||||
|
||||
// Rename base-shadow token
|
||||
const baseToken = tokensSidebar.getByRole("button", {
|
||||
name: "base-shadow",
|
||||
});
|
||||
await baseToken.click({ button: "right" });
|
||||
await tokenContextMenuForToken.getByText("Edit token").click();
|
||||
|
||||
await expect(tokensUpdateCreateModal).toBeVisible();
|
||||
nameField = tokensUpdateCreateModal.getByLabel("Name");
|
||||
await nameField.fill("foundation-shadow");
|
||||
|
||||
submitButton = tokensUpdateCreateModal.getByRole("button", {
|
||||
name: "Save",
|
||||
});
|
||||
await submitButton.click();
|
||||
|
||||
// Check for remapping modal
|
||||
const remappingModal = page.getByTestId("token-remapping-modal");
|
||||
await expect(remappingModal).toBeVisible({ timeout: 5000 });
|
||||
await expect(remappingModal).toContainText("1");
|
||||
|
||||
const confirmButton = remappingModal.getByRole("button", {
|
||||
name: /remap/i,
|
||||
});
|
||||
await confirmButton.click();
|
||||
|
||||
// Verify token was renamed
|
||||
await expect(
|
||||
tokensSidebar.getByRole("button", { name: "foundation-shadow" }),
|
||||
).toBeVisible();
|
||||
await expect(
|
||||
tokensSidebar.getByRole("button", { name: "derived-shadow" }),
|
||||
).toBeVisible();
|
||||
});
|
||||
|
||||
test("User renames and updates shadow token - referenced token and applied shapes update", async ({
|
||||
page,
|
||||
}) => {
|
||||
const {
|
||||
tokensUpdateCreateModal,
|
||||
tokensSidebar,
|
||||
tokenContextMenuForToken,
|
||||
workspacePage,
|
||||
} = await setupTokensFile(page, { flags: ["enable-token-shadow"] });
|
||||
|
||||
const tokensTabPanel = page.getByRole("tabpanel", { name: "tokens" });
|
||||
|
||||
// Create base shadow token
|
||||
await tokensTabPanel
|
||||
.getByRole("button", { name: "Add Token: Shadow" })
|
||||
.click();
|
||||
await expect(tokensUpdateCreateModal).toBeVisible();
|
||||
|
||||
let nameField = tokensUpdateCreateModal.getByLabel("Name");
|
||||
await nameField.fill("primary-shadow");
|
||||
|
||||
let colorField = tokensUpdateCreateModal.getByRole("textbox", {
|
||||
name: "Color",
|
||||
});
|
||||
await colorField.fill("#000000");
|
||||
|
||||
let submitButton = tokensUpdateCreateModal.getByRole("button", {
|
||||
name: "Save",
|
||||
});
|
||||
await submitButton.click();
|
||||
await expect(tokensUpdateCreateModal).not.toBeVisible();
|
||||
|
||||
// Create derived shadow token that references base
|
||||
await tokensTabPanel
|
||||
.getByRole("button", { name: "Add Token: Shadow" })
|
||||
.click();
|
||||
await expect(tokensUpdateCreateModal).toBeVisible();
|
||||
|
||||
nameField = tokensUpdateCreateModal.getByLabel("Name");
|
||||
await nameField.fill("card-shadow");
|
||||
|
||||
const referenceToggle =
|
||||
tokensUpdateCreateModal.getByTestId("reference-opt");
|
||||
await referenceToggle.click();
|
||||
|
||||
const referenceField = tokensUpdateCreateModal.getByRole("textbox", {
|
||||
name: "Reference",
|
||||
});
|
||||
await referenceField.fill("{primary-shadow}");
|
||||
|
||||
submitButton = tokensUpdateCreateModal.getByRole("button", {
|
||||
name: "Save",
|
||||
});
|
||||
await submitButton.click();
|
||||
await expect(tokensUpdateCreateModal).not.toBeVisible();
|
||||
|
||||
// Apply the referenced token to a shape
|
||||
await page.getByRole("tab", { name: "Layers" }).click();
|
||||
await workspacePage.layers
|
||||
.getByTestId("layer-row")
|
||||
.filter({ hasText: "Button" })
|
||||
.click();
|
||||
|
||||
await page.getByRole("tab", { name: "Tokens" }).click();
|
||||
const cardShadowToken = tokensSidebar.getByRole("button", {
|
||||
name: "card-shadow",
|
||||
});
|
||||
await cardShadowToken.click();
|
||||
|
||||
// Rename and update value of base token
|
||||
const primaryToken = tokensSidebar.getByRole("button", {
|
||||
name: "primary-shadow",
|
||||
});
|
||||
await primaryToken.click({ button: "right" });
|
||||
await tokenContextMenuForToken.getByText("Edit token").click();
|
||||
|
||||
await expect(tokensUpdateCreateModal).toBeVisible();
|
||||
nameField = tokensUpdateCreateModal.getByLabel("Name");
|
||||
await nameField.fill("main-shadow");
|
||||
|
||||
// Update the color value
|
||||
colorField = tokensUpdateCreateModal.getByRole("textbox", {
|
||||
name: "Color",
|
||||
});
|
||||
await colorField.fill("#FF0000");
|
||||
|
||||
submitButton = tokensUpdateCreateModal.getByRole("button", {
|
||||
name: "Save",
|
||||
});
|
||||
await submitButton.click();
|
||||
|
||||
// Confirm remapping
|
||||
const remappingModal = page.getByTestId("token-remapping-modal");
|
||||
await expect(remappingModal).toBeVisible({ timeout: 5000 });
|
||||
|
||||
const confirmButton = remappingModal.getByRole("button", {
|
||||
name: /remap/i,
|
||||
});
|
||||
await confirmButton.click();
|
||||
|
||||
// Verify base token was renamed
|
||||
await expect(
|
||||
tokensSidebar.getByRole("button", { name: "main-shadow" }),
|
||||
).toBeVisible();
|
||||
|
||||
// Verify referenced token still exists
|
||||
await expect(
|
||||
tokensSidebar.getByRole("button", { name: "card-shadow" }),
|
||||
).toBeVisible();
|
||||
|
||||
// Verify the shape still has the token applied with the NEW name
|
||||
await page.getByRole("tab", { name: "Layers" }).click();
|
||||
await workspacePage.layers
|
||||
.getByTestId("layer-row")
|
||||
.filter({ hasText: "Button" })
|
||||
.click();
|
||||
|
||||
// Verify the shape still has the shadow applied with the UPDATED color value
|
||||
// Expand the shadow section to access the color field
|
||||
const shadowSection =
|
||||
workspacePage.rightSidebar.getByTestId("shadow-section");
|
||||
await expect(shadowSection).toBeVisible();
|
||||
|
||||
// Click to expand the shadow options (the menu button)
|
||||
const shadowMenuButton = shadowSection
|
||||
.getByRole("button", { name: "options" })
|
||||
.first();
|
||||
await shadowMenuButton.click();
|
||||
|
||||
// Wait for the advanced options to appear
|
||||
await page.waitForTimeout(500);
|
||||
|
||||
// Verify the color value has updated from #000000 to #FF0000
|
||||
const colorInput = shadowSection.getByRole("textbox", { name: "Color" });
|
||||
expect(colorInput).not.toBeNull();
|
||||
const colorValue = await colorInput.inputValue();
|
||||
expect(colorValue.toUpperCase()).toBe("FF0000");
|
||||
});
|
||||
});
|
||||
|
||||
test.describe("Typography Token Remapping", () => {
|
||||
test("User renames typography token with alias references", async ({
|
||||
page,
|
||||
}) => {
|
||||
const {
|
||||
tokensUpdateCreateModal,
|
||||
tokensSidebar,
|
||||
tokenContextMenuForToken,
|
||||
} = await setupTypographyTokensFile(page);
|
||||
|
||||
const tokensTabPanel = page.getByRole("tabpanel", { name: "tokens" });
|
||||
|
||||
// Create base typography token
|
||||
await tokensTabPanel
|
||||
.getByRole("button", { name: "Add Token: Typography" })
|
||||
.click();
|
||||
await expect(tokensUpdateCreateModal).toBeVisible();
|
||||
|
||||
let nameField = tokensUpdateCreateModal.getByLabel("Name");
|
||||
await nameField.fill("base-text");
|
||||
|
||||
const fontSizeField = tokensUpdateCreateModal.getByRole("textbox", {
|
||||
name: "Font size",
|
||||
});
|
||||
await fontSizeField.fill("16");
|
||||
|
||||
let submitButton = tokensUpdateCreateModal.getByRole("button", {
|
||||
name: "Save",
|
||||
});
|
||||
await submitButton.click();
|
||||
await expect(tokensUpdateCreateModal).not.toBeVisible();
|
||||
|
||||
// Create derived typography token
|
||||
await tokensTabPanel
|
||||
.getByRole("button", { name: "Add Token: Typography" })
|
||||
.click();
|
||||
await expect(tokensUpdateCreateModal).toBeVisible();
|
||||
|
||||
nameField = tokensUpdateCreateModal.getByRole("textbox", {
|
||||
name: "Name",
|
||||
});
|
||||
await nameField.fill("body-text");
|
||||
|
||||
const referenceToggle =
|
||||
tokensUpdateCreateModal.getByTestId("reference-opt");
|
||||
await referenceToggle.click();
|
||||
|
||||
const referenceField = tokensUpdateCreateModal.getByRole("textbox", {
|
||||
name: "Reference",
|
||||
});
|
||||
await referenceField.fill("{base-text}");
|
||||
|
||||
submitButton = tokensUpdateCreateModal.getByRole("button", {
|
||||
name: "Save",
|
||||
});
|
||||
await submitButton.click();
|
||||
await expect(tokensUpdateCreateModal).not.toBeVisible();
|
||||
|
||||
// Rename base token
|
||||
const baseToken = tokensSidebar.getByRole("button", {
|
||||
name: "base-text",
|
||||
});
|
||||
await baseToken.click({ button: "right" });
|
||||
await tokenContextMenuForToken.getByText("Edit token").click();
|
||||
|
||||
await expect(tokensUpdateCreateModal).toBeVisible();
|
||||
nameField = tokensUpdateCreateModal.getByLabel("Name");
|
||||
await nameField.fill("default-text");
|
||||
|
||||
submitButton = tokensUpdateCreateModal.getByRole("button", {
|
||||
name: "Save",
|
||||
});
|
||||
await submitButton.click();
|
||||
|
||||
// Check for remapping modal
|
||||
const remappingModal = page.getByTestId("token-remapping-modal");
|
||||
await expect(remappingModal).toBeVisible({ timeout: 5000 });
|
||||
|
||||
const confirmButton = remappingModal.getByRole("button", {
|
||||
name: /remap/i,
|
||||
});
|
||||
await confirmButton.click();
|
||||
|
||||
// Verify token was renamed
|
||||
await expect(
|
||||
tokensSidebar.getByRole("button", { name: "default-text" }),
|
||||
).toBeVisible();
|
||||
await expect(
|
||||
tokensSidebar.getByRole("button", { name: "body-text" }),
|
||||
).toBeVisible();
|
||||
});
|
||||
|
||||
test("User renames and updates typography token - referenced token and applied shapes update", async ({
|
||||
page,
|
||||
}) => {
|
||||
const {
|
||||
tokensUpdateCreateModal,
|
||||
tokensSidebar,
|
||||
tokenContextMenuForToken,
|
||||
workspacePage,
|
||||
} = await setupTypographyTokensFile(page);
|
||||
|
||||
const tokensTabPanel = page.getByRole("tabpanel", { name: "tokens" });
|
||||
|
||||
// Create base typography token
|
||||
await tokensTabPanel
|
||||
.getByRole("button", { name: "Add Token: Typography" })
|
||||
.click();
|
||||
await expect(tokensUpdateCreateModal).toBeVisible();
|
||||
|
||||
let nameField = tokensUpdateCreateModal.getByLabel("Name");
|
||||
await nameField.fill("body-style");
|
||||
|
||||
let fontSizeField = tokensUpdateCreateModal.getByRole("textbox", {
|
||||
name: "Font size",
|
||||
});
|
||||
await fontSizeField.fill("16");
|
||||
|
||||
let submitButton = tokensUpdateCreateModal.getByRole("button", {
|
||||
name: "Save",
|
||||
});
|
||||
await submitButton.click();
|
||||
await expect(tokensUpdateCreateModal).not.toBeVisible();
|
||||
|
||||
// Create derived typography token
|
||||
await tokensTabPanel
|
||||
.getByRole("button", { name: "Add Token: Typography" })
|
||||
.click();
|
||||
await expect(tokensUpdateCreateModal).toBeVisible();
|
||||
|
||||
nameField = tokensUpdateCreateModal.getByRole("textbox", {
|
||||
name: "Name",
|
||||
});
|
||||
await nameField.fill("paragraph-style");
|
||||
|
||||
const referenceToggle =
|
||||
tokensUpdateCreateModal.getByTestId("reference-opt");
|
||||
await referenceToggle.click();
|
||||
|
||||
const referenceField = tokensUpdateCreateModal.getByRole("textbox", {
|
||||
name: "Reference",
|
||||
});
|
||||
await referenceField.fill("{body-style}");
|
||||
|
||||
submitButton = tokensUpdateCreateModal.getByRole("button", {
|
||||
name: "Save",
|
||||
});
|
||||
await submitButton.click();
|
||||
await expect(tokensUpdateCreateModal).not.toBeVisible();
|
||||
|
||||
// Apply the referenced token to a text shape
|
||||
await page.getByRole("tab", { name: "Layers" }).click();
|
||||
await workspacePage.layers
|
||||
.getByTestId("layer-row")
|
||||
.filter({ hasText: "Some Text" })
|
||||
.click();
|
||||
|
||||
await page.getByRole("tab", { name: "Tokens" }).click();
|
||||
const paragraphToken = tokensSidebar.getByRole("button", {
|
||||
name: "paragraph-style",
|
||||
});
|
||||
await paragraphToken.click();
|
||||
|
||||
// Rename and update value of base token
|
||||
const bodyToken = tokensSidebar.getByRole("button", {
|
||||
name: "body-style",
|
||||
});
|
||||
await bodyToken.click({ button: "right" });
|
||||
await tokenContextMenuForToken.getByText("Edit token").click();
|
||||
|
||||
await expect(tokensUpdateCreateModal).toBeVisible();
|
||||
nameField = tokensUpdateCreateModal.getByLabel("Name");
|
||||
await nameField.fill("text-base");
|
||||
|
||||
// Update the font size value
|
||||
fontSizeField = tokensUpdateCreateModal.getByRole("textbox", {
|
||||
name: "Font size",
|
||||
});
|
||||
await fontSizeField.fill("18");
|
||||
|
||||
submitButton = tokensUpdateCreateModal.getByRole("button", {
|
||||
name: "Save",
|
||||
});
|
||||
await submitButton.click();
|
||||
|
||||
// Confirm remapping
|
||||
const remappingModal = page.getByTestId("token-remapping-modal");
|
||||
await expect(remappingModal).toBeVisible({ timeout: 5000 });
|
||||
|
||||
const confirmButton = remappingModal.getByRole("button", {
|
||||
name: /remap/i,
|
||||
});
|
||||
await confirmButton.click();
|
||||
|
||||
// Verify base token was renamed
|
||||
await expect(
|
||||
tokensSidebar.getByRole("button", { name: "text-base" }),
|
||||
).toBeVisible();
|
||||
|
||||
// Verify referenced token still exists
|
||||
await expect(
|
||||
tokensSidebar.getByRole("button", { name: "paragraph-style" }),
|
||||
).toBeVisible();
|
||||
|
||||
// Verify the text shape still has the token applied with NEW name and value
|
||||
await page.getByRole("tab", { name: "Layers" }).click();
|
||||
await workspacePage.layers
|
||||
.getByTestId("layer-row")
|
||||
.filter({ hasText: "Some Text" })
|
||||
.click();
|
||||
|
||||
// Verify the shape shows the updated font size value (18)
|
||||
// This proves the remapping worked and the value update propagated through the reference
|
||||
const fontSizeInput = workspacePage.rightSidebar.getByRole("textbox", {
|
||||
name: "Font Size",
|
||||
});
|
||||
await expect(fontSizeInput).toBeVisible();
|
||||
await expect(fontSizeInput).toHaveValue("18");
|
||||
});
|
||||
});
|
||||
|
||||
test.describe("Border Radius Token Remapping", () => {
|
||||
test("User renames border radius token with alias references", async ({
|
||||
page,
|
||||
}) => {
|
||||
const {
|
||||
tokensUpdateCreateModal,
|
||||
tokensSidebar,
|
||||
tokenContextMenuForToken,
|
||||
} = await setupTokensFile(page);
|
||||
|
||||
const tokensTabPanel = page.getByRole("tabpanel", { name: "tokens" });
|
||||
|
||||
// Create base border radius token
|
||||
await tokensTabPanel
|
||||
.getByRole("button", { name: "Add Token: Border Radius" })
|
||||
.click();
|
||||
await expect(tokensUpdateCreateModal).toBeVisible();
|
||||
|
||||
let nameField = tokensUpdateCreateModal.getByLabel("Name");
|
||||
await nameField.fill("base-radius");
|
||||
|
||||
const valueField = tokensUpdateCreateModal.getByLabel("Value");
|
||||
await valueField.fill("4");
|
||||
|
||||
let submitButton = tokensUpdateCreateModal.getByRole("button", {
|
||||
name: "Save",
|
||||
});
|
||||
await submitButton.click();
|
||||
await expect(tokensUpdateCreateModal).not.toBeVisible();
|
||||
|
||||
// Create derived border radius token
|
||||
await tokensTabPanel
|
||||
.getByRole("button", { name: "Add Token: Border Radius" })
|
||||
.click();
|
||||
await expect(tokensUpdateCreateModal).toBeVisible();
|
||||
|
||||
nameField = tokensUpdateCreateModal.getByLabel("Name");
|
||||
await nameField.fill("card-radius");
|
||||
|
||||
const valueField2 = tokensUpdateCreateModal.getByLabel("Value");
|
||||
await valueField2.fill("{base-radius}");
|
||||
|
||||
submitButton = tokensUpdateCreateModal.getByRole("button", {
|
||||
name: "Save",
|
||||
});
|
||||
await submitButton.click();
|
||||
await expect(tokensUpdateCreateModal).not.toBeVisible();
|
||||
|
||||
// Rename base token
|
||||
const baseToken = tokensSidebar.getByRole("button", {
|
||||
name: "base-radius",
|
||||
});
|
||||
await baseToken.click({ button: "right" });
|
||||
await tokenContextMenuForToken.getByText("Edit token").click();
|
||||
|
||||
await expect(tokensUpdateCreateModal).toBeVisible();
|
||||
nameField = tokensUpdateCreateModal.getByLabel("Name");
|
||||
await nameField.fill("primary-radius");
|
||||
|
||||
submitButton = tokensUpdateCreateModal.getByRole("button", {
|
||||
name: "Save",
|
||||
});
|
||||
await submitButton.click();
|
||||
|
||||
// Check for remapping modal
|
||||
const remappingModal = page.getByTestId("token-remapping-modal");
|
||||
await expect(remappingModal).toBeVisible({ timeout: 5000 });
|
||||
|
||||
const confirmButton = remappingModal.getByRole("button", {
|
||||
name: /remap/i,
|
||||
});
|
||||
await confirmButton.click();
|
||||
|
||||
// Verify token was renamed
|
||||
await expect(
|
||||
tokensSidebar.getByRole("button", { name: "primary-radius" }),
|
||||
).toBeVisible();
|
||||
await expect(
|
||||
tokensSidebar.getByRole("button", { name: "card-radius" }),
|
||||
).toBeVisible();
|
||||
});
|
||||
|
||||
test("User renames and updates border radius token - referenced token updates", async ({
|
||||
page,
|
||||
}) => {
|
||||
const {
|
||||
tokensUpdateCreateModal,
|
||||
tokensSidebar,
|
||||
tokenContextMenuForToken,
|
||||
} = await setupTokensFile(page);
|
||||
|
||||
const tokensTabPanel = page.getByRole("tabpanel", { name: "tokens" });
|
||||
|
||||
// Create base border radius token
|
||||
await tokensTabPanel
|
||||
.getByRole("button", { name: "Add Token: Border Radius" })
|
||||
.click();
|
||||
await expect(tokensUpdateCreateModal).toBeVisible();
|
||||
|
||||
let nameField = tokensUpdateCreateModal.getByLabel("Name");
|
||||
await nameField.fill("radius-sm");
|
||||
|
||||
let valueField = tokensUpdateCreateModal.getByLabel("Value");
|
||||
await valueField.fill("4");
|
||||
|
||||
let submitButton = tokensUpdateCreateModal.getByRole("button", {
|
||||
name: "Save",
|
||||
});
|
||||
await submitButton.click();
|
||||
await expect(tokensUpdateCreateModal).not.toBeVisible();
|
||||
|
||||
// Create derived border radius token
|
||||
await tokensTabPanel
|
||||
.getByRole("button", { name: "Add Token: Border Radius" })
|
||||
.click();
|
||||
await expect(tokensUpdateCreateModal).toBeVisible();
|
||||
|
||||
nameField = tokensUpdateCreateModal.getByLabel("Name");
|
||||
await nameField.fill("button-radius");
|
||||
|
||||
const valueField2 = tokensUpdateCreateModal.getByLabel("Value");
|
||||
await valueField2.fill("{radius-sm}");
|
||||
|
||||
submitButton = tokensUpdateCreateModal.getByRole("button", {
|
||||
name: "Save",
|
||||
});
|
||||
await submitButton.click();
|
||||
await expect(tokensUpdateCreateModal).not.toBeVisible();
|
||||
|
||||
// Rename and update value of base token
|
||||
const radiusToken = tokensSidebar.getByRole("button", {
|
||||
name: "radius-sm",
|
||||
});
|
||||
await radiusToken.click({ button: "right" });
|
||||
await tokenContextMenuForToken.getByText("Edit token").click();
|
||||
|
||||
await expect(tokensUpdateCreateModal).toBeVisible();
|
||||
nameField = tokensUpdateCreateModal.getByLabel("Name");
|
||||
await nameField.fill("radius-base");
|
||||
|
||||
// Update the value
|
||||
valueField = tokensUpdateCreateModal.getByLabel("Value");
|
||||
await valueField.fill("8");
|
||||
|
||||
submitButton = tokensUpdateCreateModal.getByRole("button", {
|
||||
name: "Save",
|
||||
});
|
||||
await submitButton.click();
|
||||
|
||||
// Confirm remapping
|
||||
const remappingModal = page.getByTestId("token-remapping-modal");
|
||||
await expect(remappingModal).toBeVisible({ timeout: 5000 });
|
||||
|
||||
const confirmButton = remappingModal.getByRole("button", {
|
||||
name: /remap/i,
|
||||
});
|
||||
await confirmButton.click();
|
||||
|
||||
// Verify base token was renamed
|
||||
await expect(
|
||||
tokensSidebar.getByRole("button", { name: "radius-base" }),
|
||||
).toBeVisible();
|
||||
|
||||
// Verify referenced token still exists
|
||||
await expect(
|
||||
tokensSidebar.getByRole("button", { name: "button-radius" }),
|
||||
).toBeVisible();
|
||||
|
||||
// Verify the referenced token now points to the renamed token
|
||||
// by opening it and checking the reference
|
||||
const buttonRadiusToken = tokensSidebar.getByRole("button", {
|
||||
name: "button-radius",
|
||||
});
|
||||
await buttonRadiusToken.click({ button: "right" });
|
||||
await tokenContextMenuForToken.getByText("Edit token").click();
|
||||
|
||||
await expect(tokensUpdateCreateModal).toBeVisible();
|
||||
const currentValue = tokensUpdateCreateModal.getByLabel("Value");
|
||||
await expect(currentValue).toHaveValue("{radius-base}");
|
||||
});
|
||||
});
|
||||
});
|
||||
247
frontend/playwright/ui/specs/tokens/sets.spec.js
Normal file
247
frontend/playwright/ui/specs/tokens/sets.spec.js
Normal file
@@ -0,0 +1,247 @@
|
||||
import { test, expect } from "@playwright/test";
|
||||
import { BaseWebSocketPage } from "../../pages/BaseWebSocketPage";
|
||||
import { WorkspacePage } from "../../pages/WorkspacePage";
|
||||
import { setupEmptyTokensFile, setupTokensFile } from "./helpers";
|
||||
|
||||
test.beforeEach(async ({ page }) => {
|
||||
await WorkspacePage.init(page);
|
||||
await BaseWebSocketPage.mockRPC(page, "get-teams", "get-teams-tokens.json");
|
||||
});
|
||||
|
||||
test.describe("Tokens: Sets Tab", () => {
|
||||
const changeSetInput = async (sidebar, setName, finalKey = "Enter") => {
|
||||
const setInput = sidebar.locator("input:focus");
|
||||
await expect(setInput).toBeVisible();
|
||||
await setInput.fill(setName);
|
||||
await setInput.press(finalKey);
|
||||
};
|
||||
|
||||
const createSet = async (sidebar, setName, finalKey = "Enter") => {
|
||||
const tokensTabButton = sidebar
|
||||
.getByRole("button", { name: "Add set" })
|
||||
.click();
|
||||
|
||||
await changeSetInput(sidebar, setName, (finalKey = "Enter"));
|
||||
};
|
||||
|
||||
const assertEmptySetsList = async (el) => {
|
||||
const buttons = await el.getByRole("button").allTextContents();
|
||||
const filteredButtons = buttons.filter((text) => text === "Create one.");
|
||||
await expect(filteredButtons.length).toEqual(2); // We assume there are no themes, so we have two "Create one" buttons.
|
||||
};
|
||||
|
||||
const assertSetsList = async (el, sets) => {
|
||||
const buttons = await el.getByRole("button").allTextContents();
|
||||
const filteredButtons = buttons.filter(
|
||||
(text) => text && text !== "Create one.",
|
||||
);
|
||||
await expect(filteredButtons).toEqual(sets);
|
||||
};
|
||||
|
||||
test("User creates sets tree structure by entering a set path", async ({
|
||||
page,
|
||||
}) => {
|
||||
const { tokenThemesSetsSidebar, tokenContextMenuForSet } =
|
||||
await setupEmptyTokensFile(page);
|
||||
|
||||
const tokensTabButton = tokenThemesSetsSidebar
|
||||
.getByRole("button", { name: "Add set" })
|
||||
.click();
|
||||
|
||||
await createSet(tokenThemesSetsSidebar, "core/colors/light");
|
||||
await createSet(tokenThemesSetsSidebar, "core/colors/dark");
|
||||
|
||||
await assertSetsList(tokenThemesSetsSidebar, [
|
||||
"core",
|
||||
"colors",
|
||||
"light",
|
||||
"dark",
|
||||
]);
|
||||
|
||||
// User renames set
|
||||
await tokenThemesSetsSidebar
|
||||
.getByRole("button", { name: "light" })
|
||||
.click({ button: "right" });
|
||||
await expect(tokenContextMenuForSet).toBeVisible();
|
||||
await tokenContextMenuForSet.getByText("Rename").click();
|
||||
await changeSetInput(tokenThemesSetsSidebar, "light-renamed");
|
||||
|
||||
// User cancels during editing
|
||||
await createSet(tokenThemesSetsSidebar, "core/colors/dark", "Escape");
|
||||
|
||||
await assertSetsList(tokenThemesSetsSidebar, [
|
||||
"core",
|
||||
"colors",
|
||||
"light-renamed",
|
||||
"dark",
|
||||
]);
|
||||
|
||||
// Creates nesting by renaming set with double click
|
||||
await tokenThemesSetsSidebar
|
||||
.getByRole("button", { name: "light-renamed" })
|
||||
.click({ button: "right" });
|
||||
await expect(tokenContextMenuForSet).toBeVisible();
|
||||
await tokenContextMenuForSet.getByText("Rename").click();
|
||||
await changeSetInput(tokenThemesSetsSidebar, "nested/light");
|
||||
|
||||
await assertSetsList(tokenThemesSetsSidebar, [
|
||||
"core",
|
||||
"colors",
|
||||
"nested",
|
||||
"light",
|
||||
"dark",
|
||||
]);
|
||||
|
||||
// Create set in group
|
||||
await tokenThemesSetsSidebar
|
||||
.getByRole("button", { name: "core" })
|
||||
.click({ button: "right" });
|
||||
await expect(tokenContextMenuForSet).toBeVisible();
|
||||
await tokenContextMenuForSet.getByText("Add set to this group").click();
|
||||
await changeSetInput(tokenThemesSetsSidebar, "sizes/small");
|
||||
|
||||
await assertSetsList(tokenThemesSetsSidebar, [
|
||||
"core",
|
||||
"colors",
|
||||
"nested",
|
||||
"light",
|
||||
"dark",
|
||||
"sizes",
|
||||
"small",
|
||||
]);
|
||||
|
||||
// User deletes set
|
||||
await tokenThemesSetsSidebar
|
||||
.getByRole("button", { name: "nested" })
|
||||
.click({ button: "right" });
|
||||
await expect(tokenContextMenuForSet).toBeVisible();
|
||||
await tokenContextMenuForSet.getByText("Delete").click();
|
||||
|
||||
await assertSetsList(tokenThemesSetsSidebar, [
|
||||
"core",
|
||||
"colors",
|
||||
"dark",
|
||||
"sizes",
|
||||
"small",
|
||||
]);
|
||||
|
||||
// User deletes all sets
|
||||
await tokenThemesSetsSidebar
|
||||
.getByRole("button", { name: "core" })
|
||||
.click({ button: "right" });
|
||||
await expect(tokenContextMenuForSet).toBeVisible();
|
||||
await tokenContextMenuForSet.getByText("Delete").click();
|
||||
|
||||
await assertEmptySetsList(tokenThemesSetsSidebar);
|
||||
});
|
||||
|
||||
test("User can create & edit sets and set groups with an identical name", async ({
|
||||
page,
|
||||
}) => {
|
||||
const { tokenThemesSetsSidebar, tokenContextMenuForSet } =
|
||||
await setupEmptyTokensFile(page);
|
||||
|
||||
const tokensTabButton = tokenThemesSetsSidebar
|
||||
.getByRole("button", { name: "Add set" })
|
||||
.click();
|
||||
|
||||
await createSet(tokenThemesSetsSidebar, "core/colors");
|
||||
await createSet(tokenThemesSetsSidebar, "core");
|
||||
await assertSetsList(tokenThemesSetsSidebar, ["core", "colors", "core"]);
|
||||
await tokenThemesSetsSidebar
|
||||
.getByRole("button", { name: "core" })
|
||||
.nth(0)
|
||||
.dblclick();
|
||||
await changeSetInput(tokenThemesSetsSidebar, "core-group-renamed");
|
||||
await assertSetsList(tokenThemesSetsSidebar, [
|
||||
"core-group-renamed",
|
||||
"colors",
|
||||
"core",
|
||||
]);
|
||||
|
||||
await page.keyboard.press(`ControlOrMeta+z`);
|
||||
await assertSetsList(tokenThemesSetsSidebar, ["core", "colors", "core"]);
|
||||
|
||||
await tokenThemesSetsSidebar
|
||||
.getByRole("button", { name: "core" })
|
||||
.nth(1)
|
||||
.dblclick();
|
||||
await changeSetInput(tokenThemesSetsSidebar, "core-set-renamed");
|
||||
await assertSetsList(tokenThemesSetsSidebar, [
|
||||
"core",
|
||||
"colors",
|
||||
"core-set-renamed",
|
||||
]);
|
||||
});
|
||||
|
||||
test("Fold/Unfold set", async ({ page }) => {
|
||||
const { tokenThemesSetsSidebar, tokenSetGroupItems } =
|
||||
await setupTokensFile(page);
|
||||
|
||||
await expect(tokenThemesSetsSidebar).toBeVisible();
|
||||
|
||||
const darkSet = tokenThemesSetsSidebar.getByRole("button", {
|
||||
name: "dark",
|
||||
exact: true,
|
||||
});
|
||||
|
||||
await expect(darkSet).toBeVisible();
|
||||
|
||||
const setGroup = await tokenSetGroupItems
|
||||
.filter({ hasText: "LightDark" })
|
||||
.first();
|
||||
|
||||
const setCollapsable = await setGroup
|
||||
.getByTestId("tokens-set-group-collapse")
|
||||
.first();
|
||||
|
||||
await setCollapsable.click();
|
||||
|
||||
await expect(darkSet).toHaveCount(0);
|
||||
});
|
||||
|
||||
test("Change current theme", async ({ page }) => {
|
||||
const { tokenThemesSetsSidebar, tokenSetItems } =
|
||||
await setupTokensFile(page);
|
||||
|
||||
await expect(tokenSetItems.nth(1)).toHaveAttribute("aria-checked", "true");
|
||||
await expect(tokenSetItems.nth(2)).toHaveAttribute("aria-checked", "false");
|
||||
|
||||
await tokenThemesSetsSidebar.getByTestId("theme-select").click();
|
||||
await page
|
||||
.getByTestId("theme-select-dropdown")
|
||||
.getByRole("option", { name: "Dark", exact: true })
|
||||
.click();
|
||||
|
||||
await expect(tokenSetItems.nth(1)).toHaveAttribute("aria-checked", "false");
|
||||
await expect(tokenSetItems.nth(2)).toHaveAttribute("aria-checked", "true");
|
||||
});
|
||||
|
||||
test("Display active set and verify if is enabled", async ({ page }) => {
|
||||
const { tokenThemesSetsSidebar, tokensSidebar, tokenSetItems } =
|
||||
await setupTokensFile(page);
|
||||
|
||||
// Create set
|
||||
await tokenThemesSetsSidebar
|
||||
.getByRole("button", { name: "Add set" })
|
||||
.click();
|
||||
await changeSetInput(tokenThemesSetsSidebar, "Inactive set");
|
||||
await tokenThemesSetsSidebar
|
||||
.getByRole("button", { name: "Inactive set" })
|
||||
.click();
|
||||
let activeSetTitle = await tokensSidebar.getByTestId(
|
||||
"active-token-set-title",
|
||||
);
|
||||
await expect(activeSetTitle).toHaveText("TOKENS - Inactive set");
|
||||
const inactiveSetInfo = await tokensSidebar.getByTitle(
|
||||
"This set is not active.",
|
||||
);
|
||||
await expect(inactiveSetInfo).toBeVisible();
|
||||
|
||||
// Switch active set
|
||||
|
||||
await tokenThemesSetsSidebar.getByRole("button", { name: "theme" }).click();
|
||||
await expect(activeSetTitle).toHaveText("TOKENS - theme");
|
||||
await expect(inactiveSetInfo).not.toBeVisible();
|
||||
});
|
||||
});
|
||||
285
frontend/playwright/ui/specs/tokens/themes.spec.js
Normal file
285
frontend/playwright/ui/specs/tokens/themes.spec.js
Normal file
@@ -0,0 +1,285 @@
|
||||
import { test, expect } from "@playwright/test";
|
||||
import { WorkspacePage } from "../../pages/WorkspacePage";
|
||||
import { BaseWebSocketPage } from "../../pages/BaseWebSocketPage";
|
||||
import { setupEmptyTokensFile, setupTokensFile } from "./helpers";
|
||||
|
||||
// THEMES HELPERS
|
||||
|
||||
const checkInputFieldWithError = async (
|
||||
tokenThemeUpdateCreateModal,
|
||||
inputLocator,
|
||||
) => {
|
||||
await expect(inputLocator).toHaveAttribute("aria-invalid", "true");
|
||||
|
||||
const errorMessageId = await inputLocator.getAttribute("aria-describedby");
|
||||
await expect(
|
||||
tokenThemeUpdateCreateModal.locator(`#${errorMessageId}`),
|
||||
).toBeVisible();
|
||||
};
|
||||
|
||||
const checkInputFieldWithoutError = async (inputLocator) => {
|
||||
expect(await inputLocator.getAttribute("aria-invalid")).toBeNull();
|
||||
expect(await inputLocator.getAttribute("aria-describedby")).toBeNull();
|
||||
};
|
||||
|
||||
test.beforeEach(async ({ page }) => {
|
||||
await WorkspacePage.init(page);
|
||||
await BaseWebSocketPage.mockRPC(page, "get-teams", "get-teams-tokens.json");
|
||||
});
|
||||
|
||||
test.describe("Tokens Themes", () => {
|
||||
test("User edits theme and activates it in the sidebar", async ({ page }) => {
|
||||
const { tokenThemesSetsSidebar, tokenThemeUpdateCreateModal } =
|
||||
await setupTokensFile(page);
|
||||
|
||||
await expect(tokenThemesSetsSidebar).toBeVisible();
|
||||
|
||||
await tokenThemesSetsSidebar.getByRole("button", { name: "Edit" }).click();
|
||||
|
||||
await expect(tokenThemeUpdateCreateModal).toBeVisible();
|
||||
await tokenThemeUpdateCreateModal
|
||||
.getByRole("button", { name: "sets" })
|
||||
.first()
|
||||
.click();
|
||||
|
||||
await tokenThemeUpdateCreateModal.getByLabel("Theme").fill("Changed");
|
||||
|
||||
const lightDarkSetGroup = tokenThemeUpdateCreateModal.getByTestId(
|
||||
"tokens-set-group-item",
|
||||
{
|
||||
name: "LightDark",
|
||||
exact: true,
|
||||
},
|
||||
);
|
||||
await expect(lightDarkSetGroup).toBeVisible();
|
||||
|
||||
const lightSet = tokenThemeUpdateCreateModal.getByRole("button", {
|
||||
name: "light",
|
||||
exact: true,
|
||||
});
|
||||
const darkSet = tokenThemeUpdateCreateModal.getByRole("button", {
|
||||
name: "dark",
|
||||
exact: true,
|
||||
});
|
||||
|
||||
// Mixed set group
|
||||
await expect(lightSet.getByRole("checkbox")).toBeChecked();
|
||||
await expect(darkSet.getByRole("checkbox")).not.toBeChecked();
|
||||
|
||||
// Disable all
|
||||
await lightDarkSetGroup.getByRole("checkbox").click();
|
||||
await expect(lightSet.getByRole("checkbox")).not.toBeChecked();
|
||||
await expect(darkSet.getByRole("checkbox")).not.toBeChecked();
|
||||
|
||||
// Enable all
|
||||
await lightDarkSetGroup.getByRole("checkbox").click();
|
||||
await expect(lightSet.getByRole("checkbox")).toBeChecked();
|
||||
await expect(darkSet.getByRole("checkbox")).toBeChecked();
|
||||
|
||||
await tokenThemeUpdateCreateModal
|
||||
.getByRole("button", {
|
||||
name: "save theme",
|
||||
})
|
||||
.click();
|
||||
|
||||
await expect(
|
||||
tokenThemeUpdateCreateModal.getByText("Changed" + "4 active sets"),
|
||||
).toBeVisible();
|
||||
|
||||
await tokenThemeUpdateCreateModal
|
||||
.getByRole("button")
|
||||
.getByText("close")
|
||||
.click();
|
||||
await expect(tokenThemeUpdateCreateModal).not.toBeVisible();
|
||||
|
||||
const themeSelect = tokenThemesSetsSidebar.getByRole("combobox");
|
||||
|
||||
await themeSelect.click();
|
||||
await page
|
||||
.getByTestId("theme-select-dropdown")
|
||||
.getByRole("option", { name: "Changed" })
|
||||
.click();
|
||||
|
||||
const sidebarLightSet = tokenThemesSetsSidebar.getByRole("button", {
|
||||
name: "light",
|
||||
exact: true,
|
||||
});
|
||||
const sidebarDarkSet = tokenThemesSetsSidebar.getByRole("button", {
|
||||
name: "dark",
|
||||
exact: true,
|
||||
});
|
||||
|
||||
await expect(sidebarLightSet.getByRole("checkbox")).toBeChecked();
|
||||
await expect(sidebarDarkSet.getByRole("checkbox")).toBeChecked();
|
||||
});
|
||||
});
|
||||
|
||||
test.describe("Tokens: Themes modal", () => {
|
||||
test("Delete theme", async ({ page }) => {
|
||||
const { tokenThemeUpdateCreateModal, workspacePage } =
|
||||
await setupTokensFile(page);
|
||||
|
||||
workspacePage.openTokenThemesModal();
|
||||
|
||||
await expect(
|
||||
tokenThemeUpdateCreateModal.getByRole("button", { name: "Delete theme" }),
|
||||
).toHaveCount(2);
|
||||
|
||||
await tokenThemeUpdateCreateModal
|
||||
.getByRole("button", { name: "Delete theme" })
|
||||
.first()
|
||||
.click();
|
||||
|
||||
await expect(
|
||||
tokenThemeUpdateCreateModal.getByRole("button", { name: "Delete theme" }),
|
||||
).toHaveCount(1);
|
||||
});
|
||||
|
||||
test("Add new theme in empty file", async ({ page }) => {
|
||||
const { tokenThemesSetsSidebar, tokenThemeUpdateCreateModal } =
|
||||
await setupEmptyTokensFile(page);
|
||||
|
||||
await tokenThemesSetsSidebar
|
||||
.getByRole("button", { name: "Create one." })
|
||||
.first()
|
||||
.click();
|
||||
|
||||
await expect(tokenThemeUpdateCreateModal).toBeVisible();
|
||||
|
||||
const groupInput = tokenThemeUpdateCreateModal.getByLabel("Group");
|
||||
const nameInput = tokenThemeUpdateCreateModal.getByLabel("Theme");
|
||||
const saveButton = tokenThemeUpdateCreateModal.getByRole("button", {
|
||||
name: "Save theme",
|
||||
});
|
||||
|
||||
await groupInput.fill("New Group name");
|
||||
await nameInput.fill("New Theme name");
|
||||
|
||||
await checkInputFieldWithoutError(tokenThemeUpdateCreateModal);
|
||||
await expect(saveButton).not.toBeDisabled();
|
||||
|
||||
await saveButton.click();
|
||||
|
||||
await expect(
|
||||
tokenThemeUpdateCreateModal.getByText("New Theme name"),
|
||||
).toBeVisible();
|
||||
await expect(
|
||||
tokenThemeUpdateCreateModal.getByText("New Group name"),
|
||||
).toBeVisible();
|
||||
});
|
||||
|
||||
test("Add new theme", async ({ page }) => {
|
||||
const { tokenThemeUpdateCreateModal, workspacePage } =
|
||||
await setupTokensFile(page);
|
||||
|
||||
workspacePage.openTokenThemesModal();
|
||||
|
||||
await tokenThemeUpdateCreateModal
|
||||
.getByRole("button", {
|
||||
name: "Add new theme",
|
||||
})
|
||||
.click();
|
||||
|
||||
const groupInput = tokenThemeUpdateCreateModal.getByLabel("Group");
|
||||
const nameInput = tokenThemeUpdateCreateModal.getByLabel("Theme");
|
||||
const saveButton = tokenThemeUpdateCreateModal.getByRole("button", {
|
||||
name: "Save theme",
|
||||
});
|
||||
|
||||
await groupInput.fill("Core"); // Invalid because "Core / Light" theme already exists
|
||||
await nameInput.fill("Light");
|
||||
|
||||
await checkInputFieldWithError(tokenThemeUpdateCreateModal, nameInput);
|
||||
await expect(saveButton).toBeDisabled();
|
||||
|
||||
await groupInput.fill("New Group name");
|
||||
await nameInput.fill("New Theme name");
|
||||
|
||||
await checkInputFieldWithoutError(tokenThemeUpdateCreateModal);
|
||||
await expect(saveButton).not.toBeDisabled();
|
||||
|
||||
await saveButton.click();
|
||||
|
||||
await expect(
|
||||
tokenThemeUpdateCreateModal.getByText("New Theme name"),
|
||||
).toBeVisible();
|
||||
await expect(
|
||||
tokenThemeUpdateCreateModal.getByText("New Group name"),
|
||||
).toBeVisible();
|
||||
});
|
||||
|
||||
test("Edit theme", async ({ page }) => {
|
||||
const { tokenThemeUpdateCreateModal, workspacePage } =
|
||||
await setupTokensFile(page);
|
||||
|
||||
workspacePage.openTokenThemesModal();
|
||||
|
||||
await expect(
|
||||
tokenThemeUpdateCreateModal.getByText("no sets"),
|
||||
).not.toBeVisible();
|
||||
await expect(
|
||||
tokenThemeUpdateCreateModal.getByText("3 active sets"),
|
||||
).toHaveCount(2);
|
||||
|
||||
await tokenThemeUpdateCreateModal
|
||||
.getByText("3 active sets")
|
||||
.first()
|
||||
.click();
|
||||
|
||||
const groupInput = tokenThemeUpdateCreateModal.getByLabel("Group");
|
||||
const nameInput = tokenThemeUpdateCreateModal.getByLabel("Theme");
|
||||
const saveButton = tokenThemeUpdateCreateModal.getByRole("button", {
|
||||
name: "Save theme",
|
||||
});
|
||||
|
||||
await groupInput.fill("Core"); // Invalid because "Core / Dark" theme already exists
|
||||
await nameInput.fill("Dark");
|
||||
|
||||
await checkInputFieldWithError(tokenThemeUpdateCreateModal, nameInput);
|
||||
await expect(saveButton).toBeDisabled();
|
||||
|
||||
await groupInput.fill("Core"); // Valid because "Core / Light" theme already exists
|
||||
await nameInput.fill("Light"); // but it's the same theme we are editing
|
||||
|
||||
await checkInputFieldWithoutError(tokenThemeUpdateCreateModal);
|
||||
await expect(saveButton).not.toBeDisabled();
|
||||
|
||||
await nameInput.fill("Changed Theme name"); // New names should be also valid
|
||||
await groupInput.fill("Changed Group name");
|
||||
|
||||
await checkInputFieldWithoutError(tokenThemeUpdateCreateModal);
|
||||
await expect(saveButton).not.toBeDisabled();
|
||||
|
||||
expect(await nameInput.getAttribute("aria-invalid")).toBeNull();
|
||||
expect(await nameInput.getAttribute("aria-describedby")).toBeNull();
|
||||
|
||||
const checkboxes = await tokenThemeUpdateCreateModal
|
||||
.locator('[role="checkbox"]')
|
||||
.all();
|
||||
|
||||
for (const checkbox of checkboxes) {
|
||||
const isChecked = await checkbox.getAttribute("aria-checked");
|
||||
|
||||
if (isChecked === "true") {
|
||||
await checkbox.click();
|
||||
}
|
||||
}
|
||||
|
||||
const firstButton = await tokenThemeUpdateCreateModal
|
||||
.getByTestId("tokens-set-item")
|
||||
.first();
|
||||
|
||||
await firstButton.click();
|
||||
|
||||
await expect(saveButton).not.toBeDisabled();
|
||||
|
||||
await saveButton.click();
|
||||
|
||||
await expect(
|
||||
tokenThemeUpdateCreateModal.getByText("Changed Theme name"),
|
||||
).toBeVisible();
|
||||
await expect(
|
||||
tokenThemeUpdateCreateModal.getByText("Changed Group name"),
|
||||
).toBeVisible();
|
||||
});
|
||||
});
|
||||
32
frontend/playwright/ui/specs/tokens/tree.spec.js
Normal file
32
frontend/playwright/ui/specs/tokens/tree.spec.js
Normal file
@@ -0,0 +1,32 @@
|
||||
import { test, expect } from "@playwright/test";
|
||||
import { WorkspacePage } from "../../pages/WorkspacePage";
|
||||
import { BaseWebSocketPage } from "../../pages/BaseWebSocketPage";
|
||||
import { setupTokensFile, unfoldTokenTree } from "./helpers";
|
||||
|
||||
test.beforeEach(async ({ page }) => {
|
||||
await WorkspacePage.init(page);
|
||||
await BaseWebSocketPage.mockRPC(page, "get-teams", "get-teams-tokens.json");
|
||||
});
|
||||
|
||||
test.describe("Tokens - node tree", () => {
|
||||
test("User fold/unfold color tokens", async ({ page }) => {
|
||||
const { tokensSidebar } = await setupTokensFile(page);
|
||||
|
||||
await expect(tokensSidebar).toBeVisible();
|
||||
|
||||
const tokensColorGroup = tokensSidebar.getByRole("button", {
|
||||
name: "Color 92",
|
||||
});
|
||||
await expect(tokensColorGroup).toBeVisible();
|
||||
await tokensColorGroup.click();
|
||||
|
||||
await unfoldTokenTree(tokensSidebar, "color", "colors.blue.100");
|
||||
|
||||
const colorToken = tokensSidebar.getByRole("button", {
|
||||
name: "100",
|
||||
});
|
||||
await expect(colorToken).toBeVisible();
|
||||
await tokensColorGroup.click();
|
||||
await expect(colorToken).not.toBeVisible();
|
||||
});
|
||||
});
|
||||
File diff suppressed because one or more lines are too long
|
Before Width: | Height: | Size: 279 KiB After Width: | Height: | Size: 138 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 9.8 KiB After Width: | Height: | Size: 50 KiB |
File diff suppressed because one or more lines are too long
|
Before Width: | Height: | Size: 279 KiB After Width: | Height: | Size: 138 KiB |
@@ -15,6 +15,7 @@
|
||||
[app.common.time :as ct]
|
||||
[app.common.types.project :refer [valid-project?]]
|
||||
[app.common.uuid :as uuid]
|
||||
[app.config :as cf]
|
||||
[app.main.constants :as mconst]
|
||||
[app.main.data.common :as dcm]
|
||||
[app.main.data.event :as ev]
|
||||
@@ -683,12 +684,25 @@
|
||||
(rx/of (dcm/change-team-role params)
|
||||
(modal/hide)))))
|
||||
|
||||
(defn handle-change-team-org
|
||||
[{:keys [team-id organization-id organization-name] :as message}]
|
||||
(ptk/reify ::handle-change-team-org
|
||||
ptk/UpdateEvent
|
||||
(update [_ state]
|
||||
(if (and (contains? cf/flags :nitrate)
|
||||
(contains? (:teams state) team-id))
|
||||
(-> state
|
||||
(assoc-in [:teams team-id :organization-id] organization-id)
|
||||
(assoc-in [:teams team-id :organization-name] organization-name))
|
||||
state))))
|
||||
|
||||
(defn- process-message
|
||||
[{:keys [type] :as msg}]
|
||||
(case type
|
||||
:notification (dcm/handle-notification msg)
|
||||
:team-role-change (handle-change-team-role msg)
|
||||
:team-membership-change (dcm/team-membership-change msg)
|
||||
:team-org-change (handle-change-team-org msg)
|
||||
nil))
|
||||
|
||||
|
||||
|
||||
@@ -61,6 +61,11 @@
|
||||
;; Def micro-benchmark iterations
|
||||
(def micro-benchmark-iterations 1e6)
|
||||
|
||||
;; Performance logs
|
||||
(defonce ^:private longtask-observer* (atom nil))
|
||||
(defonce ^:private stall-timer* (atom nil))
|
||||
(defonce ^:private current-op* (atom nil))
|
||||
|
||||
;; --- CONTEXT
|
||||
|
||||
(defn- collect-context
|
||||
@@ -464,3 +469,72 @@
|
||||
(defn event
|
||||
[props]
|
||||
(ptk/data-event ::event props))
|
||||
|
||||
;; --- DEVTOOLS PERF LOGGING
|
||||
|
||||
(defn install-long-task-observer! []
|
||||
(when (and (some? (.-PerformanceObserver js/window)) (nil? @longtask-observer*))
|
||||
(let [observer (js/PerformanceObserver.
|
||||
(fn [list _]
|
||||
(doseq [entry (.getEntries list)]
|
||||
(let [dur (.-duration entry)
|
||||
start (.-startTime entry)
|
||||
attrib (.-attribution entry)
|
||||
attrib-count (when attrib (.-length attrib))
|
||||
first-attrib (when (and attrib-count (> attrib-count 0)) (aget attrib 0))
|
||||
attrib-name (when first-attrib (.-name first-attrib))
|
||||
attrib-ctype (when first-attrib (.-containerType first-attrib))
|
||||
attrib-cid (when first-attrib (.-containerId first-attrib))
|
||||
attrib-csrc (when first-attrib (.-containerSrc first-attrib))]
|
||||
|
||||
(.warn js/console (str "[perf] long task " (Math/round dur) "ms at " (Math/round start) "ms"
|
||||
(when first-attrib
|
||||
(str " attrib:name=" attrib-name
|
||||
" ctype=" attrib-ctype
|
||||
" cid=" attrib-cid
|
||||
" csrc=" attrib-csrc))))))))]
|
||||
(.observe observer #js{:entryTypes #js["longtask"]})
|
||||
(reset! longtask-observer* observer))))
|
||||
|
||||
(defn start-event-loop-stall-logger!
|
||||
"Log event loop stalls by measuring setInterval drift.
|
||||
interval-ms: base interval
|
||||
threshold-ms: drift over which we report"
|
||||
[interval-ms threshold-ms]
|
||||
(when (nil? @stall-timer*)
|
||||
(let [last (atom (.now js/performance))
|
||||
id (js/setInterval
|
||||
(fn []
|
||||
(let [now (.now js/performance)
|
||||
expected (+ @last interval-ms)
|
||||
drift (- now expected)
|
||||
current-op @current-op*
|
||||
measures (.getEntriesByType js/performance "measure")
|
||||
mlen (.-length measures)
|
||||
last-measure (when (> mlen 0) (aget measures (dec mlen)))
|
||||
meas-name (when last-measure (.-name last-measure))
|
||||
meas-detail (when last-measure (.-detail last-measure))
|
||||
meas-count (when meas-detail (unchecked-get meas-detail "count"))]
|
||||
(reset! last now)
|
||||
(when (> drift threshold-ms)
|
||||
(.warn js/console
|
||||
(str "[perf] event loop stall: " (Math/round drift) "ms"
|
||||
(when current-op (str " op=" current-op))
|
||||
(when meas-name (str " last=" meas-name))
|
||||
(when meas-count (str " count=" meas-count)))))))
|
||||
interval-ms)]
|
||||
(reset! stall-timer* id))))
|
||||
|
||||
(defn init!
|
||||
"Install perf observers in dev builds. Safe to call multiple times."
|
||||
[]
|
||||
(when ^boolean js/goog.DEBUG
|
||||
(install-long-task-observer!)
|
||||
(start-event-loop-stall-logger! 50 100)
|
||||
;; Expose simple API on window for manual control in devtools
|
||||
(let [api #js {:reset (fn []
|
||||
(try
|
||||
(.clearMarks js/performance)
|
||||
(.clearMeasures js/performance)
|
||||
(catch :default _ nil)))}]
|
||||
(aset js/window "PenpotPerf" api))))
|
||||
|
||||
@@ -347,6 +347,12 @@
|
||||
(with-meta {:team-id team-id
|
||||
:file-id file-id}))))))
|
||||
|
||||
;; Install dev perf observers once the workspace is ready
|
||||
(->> stream
|
||||
(rx/filter (ptk/type? ::workspace-initialized))
|
||||
(rx/take 1)
|
||||
(rx/map (fn [_] (ev/init!))))
|
||||
|
||||
(->> stream
|
||||
(rx/filter (ptk/type? ::dps/persistence-notification))
|
||||
(rx/take 1)
|
||||
|
||||
@@ -18,13 +18,13 @@
|
||||
ptk/UpdateEvent
|
||||
(update [_ state]
|
||||
(let [expand-fn (fn [expanded]
|
||||
(merge expanded
|
||||
(->> ids
|
||||
(map #(cfh/get-parent-ids objects %))
|
||||
flatten
|
||||
(remove #(= % uuid/zero))
|
||||
(map (fn [id] {id true}))
|
||||
(into {}))))]
|
||||
(let [parents-seqs (map (fn [x] (cfh/get-parent-ids objects x)) ids)
|
||||
flat-parents (apply concat parents-seqs)
|
||||
non-root-parents (remove #(= % uuid/zero) flat-parents)
|
||||
distinct-parents (into #{} non-root-parents)]
|
||||
(merge expanded
|
||||
(into {}
|
||||
(map (fn [id] {id true}) distinct-parents)))))]
|
||||
(update-in state [:workspace-local :expanded] expand-fn)))))
|
||||
|
||||
|
||||
|
||||
@@ -264,10 +264,13 @@
|
||||
|
||||
ptk/WatchEvent
|
||||
(watch [_ state _]
|
||||
(let [objects (dsh/lookup-page-objects state)]
|
||||
(rx/of
|
||||
(dwc/expand-all-parents ids objects)
|
||||
::dwsp/interrupt)))))
|
||||
(let [objects (dsh/lookup-page-objects state)
|
||||
;; Schedule expanding parents asynchronously to avoid blocking
|
||||
;; the event loop
|
||||
expand-s (->> (rx/of (dwc/expand-all-parents ids objects))
|
||||
(rx/observe-on :async))
|
||||
interrupt-s (rx/of ::dwsp/interrupt)]
|
||||
(rx/merge expand-s interrupt-s)))))
|
||||
|
||||
(defn select-all
|
||||
[]
|
||||
|
||||
@@ -633,6 +633,43 @@
|
||||
:shape-ids shape-ids
|
||||
:on-update-shape on-update-shape}))))))))
|
||||
|
||||
(defn toggle-border-radius-token
|
||||
[{:keys [token attrs shape-ids expand-with-children]}]
|
||||
(ptk/reify ::on-toggle-border-radius-token
|
||||
ptk/WatchEvent
|
||||
(watch [_ state _]
|
||||
(let [objects (dsh/lookup-page-objects state)
|
||||
shapes (into [] (keep (d/getf objects)) shape-ids)
|
||||
|
||||
shapes
|
||||
(if expand-with-children
|
||||
(into []
|
||||
(mapcat (fn [shape]
|
||||
(if (= (:type shape) :group)
|
||||
(keep objects (:shapes shape))
|
||||
[shape])))
|
||||
shapes)
|
||||
shapes)
|
||||
|
||||
{:keys [attributes all-attributes]}
|
||||
(get token-properties (:type token))
|
||||
|
||||
unapply-tokens?
|
||||
(cft/shapes-token-applied? token shapes (or attrs all-attributes attributes))
|
||||
|
||||
shape-ids (map :id shapes)]
|
||||
|
||||
(if unapply-tokens?
|
||||
(rx/of
|
||||
(unapply-token {:attributes (or attrs all-attributes attributes)
|
||||
:token token
|
||||
:shape-ids shape-ids}))
|
||||
(rx/of
|
||||
(apply-token {:attributes attrs
|
||||
:token token
|
||||
:shape-ids shape-ids
|
||||
:on-update-shape update-shape-radius-for-corners})))))))
|
||||
|
||||
|
||||
(defn apply-token-on-selected
|
||||
[color-operations token]
|
||||
|
||||
@@ -305,7 +305,7 @@
|
||||
(l/derived #(dsh/lookup-shape % page-id shape-id) st/state =))
|
||||
|
||||
(def workspace-page-objects
|
||||
(l/derived dsh/lookup-page-objects st/state))
|
||||
(l/derived dsh/lookup-page-objects st/state identical?))
|
||||
|
||||
(def workspace-read-only?
|
||||
(l/derived :read-only? workspace-global))
|
||||
|
||||
@@ -32,6 +32,27 @@
|
||||
(def ^:private menu-icon
|
||||
(deprecated-icon/icon-xref :menu (stl/css :menu-icon)))
|
||||
|
||||
(defn- on-restore-project
|
||||
[project]
|
||||
(let [on-accept #(st/emit! (dd/restore-project-immediately project))]
|
||||
(st/emit! (modal/show
|
||||
{:type :confirm
|
||||
:title (tr "dashboard.restore-project-confirmation.title")
|
||||
:message (tr "dashboard.restore-project-confirmation.description" (:name project))
|
||||
:accept-style :primary
|
||||
:accept-label (tr "labels.continue")
|
||||
:on-accept on-accept}))))
|
||||
|
||||
(defn- on-delete-project
|
||||
[project]
|
||||
(let [accept-fn #(st/emit! (dd/delete-project-immediately project))]
|
||||
(st/emit! (modal/show
|
||||
{:type :confirm
|
||||
:title (tr "dashboard.delete-forever-confirmation.title")
|
||||
:message (tr "dashboard.delete-project-forever-confirmation.description" (:name project))
|
||||
:accept-label (tr "dashboard.delete-forever-confirmation.title")
|
||||
:on-accept accept-fn}))))
|
||||
|
||||
(mf/defc header*
|
||||
{::mf/props :obj
|
||||
::mf/private true}
|
||||
@@ -40,7 +61,8 @@
|
||||
[:div#dashboard-deleted-title {:class (stl/css :dashboard-title)}
|
||||
[:h1 (tr "dashboard.projects-title")]]])
|
||||
|
||||
(mf/defc deleted-project-menu*
|
||||
(mf/defc project-context-menu*
|
||||
{::mf/private true}
|
||||
[{:keys [project show on-close top left]}]
|
||||
(let [top (d/nilv top 0)
|
||||
left (d/nilv left 0)
|
||||
@@ -48,25 +70,13 @@
|
||||
on-restore-project
|
||||
(mf/use-fn
|
||||
(mf/deps project)
|
||||
(fn []
|
||||
(let [on-accept #(st/emit! (dd/restore-project-immediately project))]
|
||||
(st/emit! (modal/show {:type :confirm
|
||||
:title (tr "dashboard.restore-project-confirmation.title")
|
||||
:message (tr "dashboard.restore-project-confirmation.description" (:name project))
|
||||
:accept-style :primary
|
||||
:accept-label (tr "labels.continue")
|
||||
:on-accept on-accept})))))
|
||||
(partial on-restore-project project))
|
||||
|
||||
on-delete-project
|
||||
(mf/use-fn
|
||||
(mf/deps project)
|
||||
(fn []
|
||||
(let [accept-fn #(st/emit! (dd/delete-project-immediately project))]
|
||||
(st/emit! (modal/show {:type :confirm
|
||||
:title (tr "dashboard.delete-forever-confirmation.title")
|
||||
:message (tr "dashboard.delete-project-forever-confirmation.description" (:name project))
|
||||
:accept-label (tr "dashboard.delete-forever-confirmation.title")
|
||||
:on-accept accept-fn})))))
|
||||
(partial on-delete-project project))
|
||||
|
||||
options
|
||||
(mf/with-memo [on-restore-project on-delete-project]
|
||||
[{:name (tr "dashboard.restore-project-button")
|
||||
@@ -151,7 +161,7 @@
|
||||
menu-icon]]
|
||||
|
||||
(when (:menu-open @local)
|
||||
[:> deleted-project-menu*
|
||||
[:> project-context-menu*
|
||||
{:project project
|
||||
:show (:menu-open @local)
|
||||
:left (+ 24 (:x (:menu-pos @local)))
|
||||
@@ -174,8 +184,8 @@
|
||||
:limit limit
|
||||
:selected-files selected-files}])]]))
|
||||
|
||||
|
||||
(mf/defc menu*
|
||||
{::mf/private true}
|
||||
[{:keys [team-id section]}]
|
||||
(let [on-recent-click
|
||||
(mf/use-fn
|
||||
@@ -222,7 +232,8 @@
|
||||
(some #(= (:id project) (:project-id %))
|
||||
(vals deleted-map)))))
|
||||
(sort-by :modified-at)
|
||||
(reverse)))
|
||||
(reverse)
|
||||
(not-empty)))
|
||||
|
||||
team-id
|
||||
(get team :id)
|
||||
@@ -273,37 +284,44 @@
|
||||
|
||||
[:*
|
||||
[:> header* {:team team}]
|
||||
[:section {:class (stl/css :dashboard-container :no-bg)}
|
||||
[:section {:class (stl/css :dashboard-container :no-bg)
|
||||
:data-testid "deleted-page-section"}
|
||||
[:*
|
||||
[:div {:class (stl/css :no-bg)}
|
||||
|
||||
[:> menu* {:team-id team-id :section :dashboard-deleted}]
|
||||
|
||||
[:div {:class (stl/css :deleted-info-content)}
|
||||
[:p {:class (stl/css :deleted-info)}
|
||||
(tr "dashboard.trash-info-text-part1")
|
||||
[:span {:class (stl/css :info-text-highlight)}
|
||||
(tr "dashboard.trash-info-text-part2" deletion-days)]
|
||||
(tr "dashboard.trash-info-text-part3")
|
||||
[:br]
|
||||
(tr "dashboard.trash-info-text-part4")]
|
||||
[:div {:class (stl/css :deleted-options)}
|
||||
[:> button* {:variant "ghost"
|
||||
:type "button"
|
||||
:on-click on-restore-all}
|
||||
(tr "dashboard.restore-all-deleted-button")]
|
||||
[:> button* {:variant "destructive"
|
||||
:type "button"
|
||||
:icon "delete"
|
||||
:on-click on-delete-all}
|
||||
(tr "dashboard.clear-trash-button")]]]
|
||||
(if (seq projects)
|
||||
[:*
|
||||
[:div {:class (stl/css :deleted-info-content)}
|
||||
[:p {:class (stl/css :deleted-info)}
|
||||
(tr "dashboard.trash-info-text-part1")
|
||||
[:span {:class (stl/css :info-text-highlight)}
|
||||
(tr "dashboard.trash-info-text-part2" deletion-days)]
|
||||
(tr "dashboard.trash-info-text-part3")
|
||||
[:br]
|
||||
(tr "dashboard.trash-info-text-part4")]
|
||||
[:div {:class (stl/css :deleted-options)}
|
||||
[:> button* {:variant "ghost"
|
||||
:type "button"
|
||||
:on-click on-restore-all}
|
||||
(tr "dashboard.restore-all-deleted-button")]
|
||||
[:> button* {:variant "destructive"
|
||||
:type "button"
|
||||
:icon "delete"
|
||||
:on-click on-delete-all}
|
||||
(tr "dashboard.clear-trash-button")]]]
|
||||
|
||||
(when (seq projects)
|
||||
(for [{:keys [id] :as project} projects]
|
||||
(let [files (when deleted-map
|
||||
(->> (vals deleted-map)
|
||||
(filterv #(= id (:project-id %)))
|
||||
(sort-by :modified-at #(compare %2 %1))))]
|
||||
[:> deleted-project-item* {:project project
|
||||
:files files
|
||||
:key id}])))]]]]))
|
||||
(for [{:keys [id] :as project} projects]
|
||||
(let [files (when deleted-map
|
||||
(->> (vals deleted-map)
|
||||
(filterv #(= id (:project-id %)))
|
||||
(sort-by :modified-at #(compare %2 %1))))]
|
||||
[:> deleted-project-item* {:project project
|
||||
:files files
|
||||
:key id}]))]
|
||||
|
||||
;; when no deleted projects
|
||||
[:div {:class (stl/css :deleted-info-content)}
|
||||
[:p {:class (stl/css :deleted-info)}
|
||||
(tr "dashboard.deleted.empty-state-description")]])]]]]))
|
||||
|
||||
@@ -6,6 +6,7 @@
|
||||
|
||||
(ns app.main.ui.dashboard.file-menu
|
||||
(:require
|
||||
[app.common.data :as d]
|
||||
[app.main.data.common :as dcm]
|
||||
[app.main.data.dashboard :as dd]
|
||||
[app.main.data.event :as-alias ev]
|
||||
@@ -89,12 +90,12 @@
|
||||
on-duplicate
|
||||
(fn [_]
|
||||
(apply st/emit! (map dd/duplicate-file files))
|
||||
(st/emit! (ntf/success (tr "dashboard.success-duplicate-file" (i18n/c (count files))))))
|
||||
(st/emit! (ntf/success (tr "dashboard.success-duplicate-file" (i18n/c file-count)))))
|
||||
|
||||
on-delete-accept
|
||||
(fn [_]
|
||||
(apply st/emit! (map dd/delete-file files))
|
||||
(st/emit! (ntf/success (tr "dashboard.success-delete-file" (i18n/c (count files))))
|
||||
(st/emit! (ntf/success (tr "dashboard.success-delete-file" (i18n/c file-count)))
|
||||
(dd/clear-selected-files)))
|
||||
|
||||
on-delete
|
||||
@@ -193,7 +194,7 @@
|
||||
(fn [_]
|
||||
(st/emit! (dd/restore-files-immediately
|
||||
(with-meta {:team-id (:id current-team)
|
||||
:ids #{(:id file)}}
|
||||
:ids (into #{} d/xf:map-id files)}
|
||||
{:on-success #(st/emit! (ntf/success (tr "dashboard.restore-success-notification" (:name file)))
|
||||
(dd/fetch-projects (:id current-team))
|
||||
(dd/fetch-deleted-files (:id current-team)))
|
||||
@@ -201,6 +202,7 @@
|
||||
|
||||
on-restore-immediately
|
||||
(fn []
|
||||
(prn files)
|
||||
(st/emit!
|
||||
(modal/show {:type :confirm
|
||||
:title (tr "dashboard-restore-file-confirmation.title")
|
||||
@@ -213,7 +215,7 @@
|
||||
(fn []
|
||||
(let [accept-fn #(st/emit! (dd/delete-files-immediately
|
||||
{:team-id (:id current-team)
|
||||
:ids #{(:id file)}}))]
|
||||
:ids (into #{} d/xf:map-id files)}))]
|
||||
(st/emit!
|
||||
(modal/show {:type :confirm
|
||||
:title (tr "dashboard.delete-forever-confirmation.title")
|
||||
@@ -260,14 +262,12 @@
|
||||
|
||||
options
|
||||
(if can-restore
|
||||
[(when can-restore
|
||||
{:name (tr "dashboard.restore-file-button")
|
||||
:id "restore-file"
|
||||
:handler on-restore-immediately})
|
||||
(when can-restore
|
||||
{:name (tr "dashboard.delete-file-button")
|
||||
:id "delete-file"
|
||||
:handler on-delete-immediately})]
|
||||
[{:name (tr "dashboard.file-menu.restore-files-option" (i18n/c file-count))
|
||||
:id "restore-file"
|
||||
:handler on-restore-immediately}
|
||||
{:name (tr "dashboard.file-menu.delete-files-permanently-option" (i18n/c file-count))
|
||||
:id "delete-file"
|
||||
:handler on-delete-immediately}]
|
||||
(if multi?
|
||||
[(when can-edit
|
||||
{:name (tr "dashboard.duplicate-multi" file-count)
|
||||
|
||||
46
frontend/src/app/main/ui/dashboard/nitrate_form.cljs
Normal file
46
frontend/src/app/main/ui/dashboard/nitrate_form.cljs
Normal file
@@ -0,0 +1,46 @@
|
||||
;; This Source Code Form is subject to the terms of the Mozilla Public
|
||||
;; License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
;; file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
;;
|
||||
;; Copyright (c) KALEIDOS INC
|
||||
|
||||
(ns app.main.ui.dashboard.nitrate-form
|
||||
(:require-macros [app.main.style :as stl])
|
||||
(:require
|
||||
|
||||
[app.main.data.modal :as modal]
|
||||
[app.main.ui.ds.buttons.button :refer [button*]]
|
||||
[app.main.ui.icons :as deprecated-icon]
|
||||
[app.util.dom :as dom]
|
||||
[rumext.v2 :as mf]))
|
||||
|
||||
(mf/defc nitrate-form-modal
|
||||
{::mf/register modal/components
|
||||
::mf/register-as :nitrate-form}
|
||||
[]
|
||||
(let [on-click
|
||||
(mf/use-fn
|
||||
(fn []
|
||||
(dom/open-new-window "/control-center/licences/start")))]
|
||||
|
||||
[:div {:class (stl/css :modal-overlay)}
|
||||
[:div {:class (stl/css :modal-container)}
|
||||
[:div {:class (stl/css :nitrate-form)}
|
||||
|
||||
[:div {:class (stl/css :modal-header)}
|
||||
[:h2 {:class (stl/css :modal-title)}
|
||||
"BUY NITRATE"]
|
||||
|
||||
[:button {:class (stl/css :modal-close-btn)
|
||||
:on-click modal/hide!} deprecated-icon/close]]
|
||||
|
||||
[:div {:class (stl/css :modal-content)}
|
||||
"Nitrate is so cool! You should buy it!"]
|
||||
|
||||
[:div {:class (stl/css :modal-footer)}
|
||||
[:div {:class (stl/css :action-buttons)}
|
||||
[:> button* {:variant "primary"
|
||||
:on-click on-click}
|
||||
"BUY NOW!"]]]]]]))
|
||||
|
||||
|
||||
52
frontend/src/app/main/ui/dashboard/nitrate_form.scss
Normal file
52
frontend/src/app/main/ui/dashboard/nitrate_form.scss
Normal file
@@ -0,0 +1,52 @@
|
||||
// This Source Code Form is subject to the terms of the Mozilla Public
|
||||
// License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
// file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
//
|
||||
// Copyright (c) KALEIDOS INC
|
||||
|
||||
@use "refactor/common-refactor.scss" as deprecated;
|
||||
|
||||
.modal-overlay {
|
||||
@extend .modal-overlay-base;
|
||||
}
|
||||
|
||||
.modal-container {
|
||||
@extend .modal-container-base;
|
||||
}
|
||||
|
||||
.modal-header {
|
||||
margin-bottom: deprecated.$s-24;
|
||||
}
|
||||
|
||||
.modal-title {
|
||||
@include deprecated.uppercaseTitleTipography;
|
||||
color: var(--modal-title-foreground-color);
|
||||
}
|
||||
|
||||
.modal-close-btn {
|
||||
@extend .modal-close-btn-base;
|
||||
}
|
||||
|
||||
.modal-content {
|
||||
margin-bottom: deprecated.$s-24;
|
||||
}
|
||||
|
||||
.nitrate-form {
|
||||
min-width: deprecated.$s-400;
|
||||
}
|
||||
|
||||
.action-buttons {
|
||||
@extend .modal-action-btns;
|
||||
}
|
||||
|
||||
.cancel-button {
|
||||
@extend .modal-cancel-btn;
|
||||
}
|
||||
|
||||
.accept-btn {
|
||||
@extend .modal-accept-btn;
|
||||
|
||||
&.danger {
|
||||
@extend .modal-danger-btn;
|
||||
}
|
||||
}
|
||||
@@ -4,35 +4,36 @@
|
||||
//
|
||||
// Copyright (c) KALEIDOS INC
|
||||
|
||||
@use "common/refactor/common-refactor.scss" as deprecated;
|
||||
@use "common/refactor/common-dashboard";
|
||||
@use "../ds/typography.scss" as t;
|
||||
@use "../ds/_borders.scss" as *;
|
||||
@use "../ds/spacing.scss" as *;
|
||||
@use "../ds/_sizes.scss" as *;
|
||||
@use "../ds/z-index.scss" as *;
|
||||
@use "ds/typography.scss" as t;
|
||||
@use "ds/_borders.scss" as *;
|
||||
@use "ds/spacing.scss" as *;
|
||||
@use "ds/_sizes.scss" as *;
|
||||
@use "ds/z-index.scss" as *;
|
||||
@use "ds/mixins.scss" as *;
|
||||
@use "ds/_utils.scss" as *;
|
||||
|
||||
.dashboard-container {
|
||||
flex: 1 0 0;
|
||||
width: 100%;
|
||||
inline-size: 100%;
|
||||
margin-inline-end: var(--sp-l);
|
||||
border-top: $b-1 solid var(--panel-border-color);
|
||||
border-block-start: $b-1 solid var(--panel-border-color);
|
||||
overflow-y: auto;
|
||||
padding-bottom: var(--sp-xxxl);
|
||||
padding-block-end: var(--sp-xxxl);
|
||||
}
|
||||
|
||||
.dashboard-projects {
|
||||
user-select: none;
|
||||
height: calc(100vh - deprecated.$s-64);
|
||||
block-size: calc(100vh - px2rem(64));
|
||||
}
|
||||
|
||||
.with-team-hero {
|
||||
height: calc(100vh - deprecated.$s-280);
|
||||
block-size: calc(100vh - px2rem(280));
|
||||
}
|
||||
|
||||
.dashboard-shared {
|
||||
width: calc(100vw - deprecated.$s-320);
|
||||
margin-inline-end: deprecated.$s-52;
|
||||
inline-size: calc(100vw - px2rem(320));
|
||||
margin-inline-end: px2rem(52);
|
||||
}
|
||||
|
||||
.search {
|
||||
@@ -66,8 +67,8 @@
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
gap: var(--sp-s);
|
||||
width: 99%;
|
||||
max-height: $sz-40;
|
||||
inline-size: 99%;
|
||||
max-block-size: $sz-40;
|
||||
padding: var(--sp-s) var(--sp-s) var(--sp-s) var(--sp-l);
|
||||
margin-block-start: var(--sp-l);
|
||||
border-radius: $br-4;
|
||||
@@ -77,19 +78,19 @@
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: flex-start;
|
||||
width: 100%;
|
||||
min-height: var(--sp-xxxl);
|
||||
inline-size: 100%;
|
||||
min-block-size: $sz-32;
|
||||
margin-inline-start: var(--sp-s);
|
||||
}
|
||||
|
||||
.project-name {
|
||||
@include textEllipsis;
|
||||
@include t.use-typography("body-large");
|
||||
width: fit-content;
|
||||
margin-inline-end: var(--sp-m);
|
||||
line-height: 0.8;
|
||||
color: var(--title-foreground-color-hover);
|
||||
cursor: pointer;
|
||||
height: var(--sp-l);
|
||||
block-size: $sz-16;
|
||||
line-height: 0.8;
|
||||
margin-inline-end: var(--sp-m);
|
||||
}
|
||||
|
||||
.info-wrapper {
|
||||
@@ -116,8 +117,8 @@
|
||||
.add-file-btn,
|
||||
.options-btn {
|
||||
@extend .button-tertiary;
|
||||
height: var(--sp-xxxl);
|
||||
width: var(--sp-xxxl);
|
||||
block-size: $sz-32;
|
||||
inline-size: $sz-32;
|
||||
margin: 0 var(--sp-s);
|
||||
padding: var(--sp-s);
|
||||
}
|
||||
@@ -129,7 +130,7 @@
|
||||
}
|
||||
|
||||
.grid-container {
|
||||
width: 100%;
|
||||
inline-size: 100%;
|
||||
padding: 0 var(--sp-xs);
|
||||
}
|
||||
|
||||
@@ -139,11 +140,13 @@
|
||||
|
||||
.show-more {
|
||||
--show-more-color: var(--button-secondary-foreground-color-rest);
|
||||
@include deprecated.buttonStyle;
|
||||
@include t.use-typography("body-medium");
|
||||
border: none;
|
||||
background: none;
|
||||
cursor: pointer;
|
||||
position: absolute;
|
||||
top: var(--sp-s);
|
||||
right: deprecated.$s-52;
|
||||
inset-block-start: var(--sp-s);
|
||||
inset-inline-end: px2rem(52);
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
@@ -156,8 +159,8 @@
|
||||
}
|
||||
|
||||
.show-more-icon {
|
||||
height: var(--sp-l);
|
||||
width: var(--sp-l);
|
||||
block-size: $sz-16;
|
||||
inline-size: $sz-16;
|
||||
fill: none;
|
||||
stroke: var(--show-more-color);
|
||||
}
|
||||
@@ -165,7 +168,7 @@
|
||||
// Team hero
|
||||
.team-hero {
|
||||
background-color: var(--color-background-tertiary);
|
||||
border-radius: deprecated.$br-8;
|
||||
border-radius: $br-8;
|
||||
border: none;
|
||||
display: flex;
|
||||
margin: var(--sp-l);
|
||||
@@ -174,12 +177,11 @@
|
||||
|
||||
img {
|
||||
border-radius: $br-4;
|
||||
height: var(--sp-xl) 0;
|
||||
width: auto;
|
||||
inline-size: auto;
|
||||
|
||||
@media (max-width: 1200px) {
|
||||
display: none;
|
||||
width: 0;
|
||||
inline-size: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -193,9 +195,8 @@
|
||||
}
|
||||
|
||||
.title {
|
||||
font-size: $sz-24;
|
||||
color: var(--color-foreground-primary);
|
||||
font-weight: deprecated.$fw400;
|
||||
font-size: px2rem(24);
|
||||
}
|
||||
|
||||
.info {
|
||||
@@ -215,8 +216,8 @@
|
||||
--close-icon-foreground-color: var(--icon-foreground);
|
||||
position: absolute;
|
||||
top: var(--sp-xl);
|
||||
right: var(--sp-xxl);
|
||||
width: var(--sp-xxl);
|
||||
inset-inline-end: var(--sp-xxl);
|
||||
inline-size: var(--sp-xxl);
|
||||
background-color: transparent;
|
||||
border: none;
|
||||
cursor: pointer;
|
||||
@@ -231,20 +232,20 @@
|
||||
}
|
||||
|
||||
.invite {
|
||||
height: var(--sp-xxxl);
|
||||
width: deprecated.$s-180;
|
||||
block-size: $sz-32;
|
||||
inline-size: px2rem(180);
|
||||
}
|
||||
|
||||
.img-wrapper {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
width: var(--sp-xl) 0;
|
||||
height: var(--sp-xl) 0;
|
||||
inline-size: var(--sp-xl) 0;
|
||||
block-size: var(--sp-xl) 0;
|
||||
overflow: hidden;
|
||||
border-radius: deprecated.$br-4;
|
||||
border-radius: $br-4;
|
||||
@media (max-width: 1200px) {
|
||||
display: none;
|
||||
width: 0;
|
||||
inline-size: 0;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -26,6 +26,7 @@
|
||||
[app.main.ui.components.link :refer [link]]
|
||||
[app.main.ui.dashboard.comments :refer [comments-icon* comments-section]]
|
||||
[app.main.ui.dashboard.inline-edition :refer [inline-edition]]
|
||||
[app.main.ui.dashboard.nitrate-form]
|
||||
[app.main.ui.dashboard.project-menu :refer [project-menu*]]
|
||||
[app.main.ui.dashboard.subscription :refer [dashboard-cta*
|
||||
get-subscription-type
|
||||
@@ -280,8 +281,8 @@
|
||||
|
||||
(mf/defc teams-selector-dropdown*
|
||||
{::mf/private true}
|
||||
[{:keys [team profile teams] :rest props}]
|
||||
(let [on-create-click
|
||||
[{:keys [team profile teams show-default-team allow-create-teams allow-create-org] :rest props}]
|
||||
(let [on-create-team-click
|
||||
(mf/use-fn #(st/emit! (modal/show :team-form {})))
|
||||
|
||||
on-team-click
|
||||
@@ -290,18 +291,27 @@
|
||||
(let [team-id (-> (dom/get-current-target event)
|
||||
(dom/get-data "value")
|
||||
(uuid/parse))]
|
||||
(st/emit! (dcm/go-to-dashboard-recent :team-id team-id)))))]
|
||||
(st/emit! (dcm/go-to-dashboard-recent :team-id team-id)))))
|
||||
|
||||
on-create-org-click
|
||||
(mf/use-fn
|
||||
(fn []
|
||||
(if (:nitrate-licence profile)
|
||||
;; TODO update when org creation route is ready
|
||||
(dom/open-new-window "/control-center/org/create")
|
||||
(st/emit! (modal/show :nitrate-form {})))))]
|
||||
|
||||
[:> dropdown-menu* props
|
||||
|
||||
[:> dropdown-menu-item* {:on-click on-team-click
|
||||
:data-value (:default-team-id profile)
|
||||
:class (stl/css :team-dropdown-item)}
|
||||
[:span {:class (stl/css :penpot-icon)} deprecated-icon/logo-icon]
|
||||
(when show-default-team
|
||||
[:> dropdown-menu-item* {:on-click on-team-click
|
||||
:data-value (:default-team-id profile)
|
||||
:class (stl/css :team-dropdown-item)}
|
||||
[:span {:class (stl/css :penpot-icon)} deprecated-icon/logo-icon]
|
||||
|
||||
[:span {:class (stl/css :team-text)} (tr "dashboard.your-penpot")]
|
||||
(when (= (:default-team-id profile) (:id team))
|
||||
tick-icon)]
|
||||
[:span {:class (stl/css :team-text)} (tr "dashboard.your-penpot")]
|
||||
(when (= (:default-team-id profile) (:id team))
|
||||
tick-icon)])
|
||||
|
||||
(for [team-item (remove :is-default (vals teams))]
|
||||
[:> dropdown-menu-item* {:on-click on-team-click
|
||||
@@ -322,11 +332,19 @@
|
||||
(when (= (:id team-item) (:id team))
|
||||
tick-icon)])
|
||||
|
||||
[:hr {:role "separator" :class (stl/css :team-separator)}]
|
||||
[:> dropdown-menu-item* {:on-click on-create-click
|
||||
:class (stl/css :team-dropdown-item :action)}
|
||||
[:span {:class (stl/css :icon-wrapper)} add-icon]
|
||||
[:span {:class (stl/css :team-text)} (tr "dashboard.create-new-team")]]]))
|
||||
(when allow-create-teams
|
||||
[:hr {:role "separator" :class (stl/css :team-separator)}]
|
||||
[:> dropdown-menu-item* {:on-click on-create-team-click
|
||||
:class (stl/css :team-dropdown-item :action)}
|
||||
[:span {:class (stl/css :icon-wrapper)} add-icon]
|
||||
[:span {:class (stl/css :team-text)} (tr "dashboard.create-new-team")]])
|
||||
|
||||
(when allow-create-org
|
||||
[:hr {:role "separator" :class (stl/css :team-separator)}]
|
||||
[:> dropdown-menu-item* {:on-click on-create-org-click
|
||||
:class (stl/css :team-dropdown-item :action)}
|
||||
[:span {:class (stl/css :icon-wrapper)} add-icon]
|
||||
[:span {:class (stl/css :team-text)} (tr "dashboard.create-new-org")]])]))
|
||||
|
||||
(mf/defc team-options-dropdown*
|
||||
{::mf/private true}
|
||||
@@ -476,9 +494,80 @@
|
||||
:data-testid "delete-team"}
|
||||
(tr "dashboard.delete-team")])]))
|
||||
|
||||
|
||||
(mf/defc sidebar-org-switch*
|
||||
[{:keys [team profile]}]
|
||||
(let [teams (->> (mf/deref refs/teams)
|
||||
vals
|
||||
(group-by :organization-id)
|
||||
(map (fn [[_group entries]] (first entries)))
|
||||
vec
|
||||
(d/index-by :id))
|
||||
|
||||
teams (update-vals teams
|
||||
(fn [t]
|
||||
(assoc t :name (str "ORG: " (:organization-name t)))))
|
||||
|
||||
team (assoc team :name (str "ORG: " (:organization-name team)))
|
||||
|
||||
show-teams-menu*
|
||||
(mf/use-state false)
|
||||
|
||||
show-teams-menu?
|
||||
(deref show-teams-menu*)
|
||||
|
||||
on-show-teams-click
|
||||
(mf/use-fn
|
||||
(fn [event]
|
||||
(dom/stop-propagation event)
|
||||
(swap! show-teams-menu* not)))
|
||||
|
||||
on-show-teams-keydown
|
||||
(mf/use-fn
|
||||
(fn [event]
|
||||
(when (or (kbd/space? event)
|
||||
(kbd/enter? event))
|
||||
(dom/prevent-default event)
|
||||
(dom/stop-propagation event)
|
||||
(some-> (dom/get-current-target event)
|
||||
(dom/click!)))))
|
||||
close-teams-menu
|
||||
(mf/use-fn #(reset! show-teams-menu* false))]
|
||||
|
||||
[:div {:class (stl/css :sidebar-team-switch)}
|
||||
[:div {:class (stl/css :switch-content)}
|
||||
[:button {:class (stl/css :current-team)
|
||||
:on-click on-show-teams-click
|
||||
:on-key-down on-show-teams-keydown}
|
||||
|
||||
[:div {:class (stl/css :team-name)}
|
||||
[:img {:src (cf/resolve-team-photo-url team)
|
||||
:class (stl/css :team-picture)
|
||||
:alt (:name team)}]
|
||||
[:span {:class (stl/css :team-text) :title (:name team)} (:name team)]]
|
||||
|
||||
arrow-icon]]
|
||||
|
||||
;; Teams Dropdown
|
||||
|
||||
[:> teams-selector-dropdown* {:show show-teams-menu?
|
||||
:on-close close-teams-menu
|
||||
:id "organizations-list"
|
||||
:class (stl/css :dropdown :teams-dropdown)
|
||||
:team team
|
||||
:profile profile
|
||||
:teams teams
|
||||
:show-default-team false
|
||||
:allow-create-teams false
|
||||
:allow-create-org true}]]))
|
||||
|
||||
(mf/defc sidebar-team-switch*
|
||||
[{:keys [team profile]}]
|
||||
(let [teams (mf/deref refs/teams)
|
||||
(let [nitrate? (contains? cf/flags :nitrate)
|
||||
org-id (when nitrate? (:organization-id team))
|
||||
teams (cond->> (mf/deref refs/teams)
|
||||
nitrate?
|
||||
(filter #(= (-> % val :organization-id) org-id)))
|
||||
|
||||
subscription
|
||||
(get team :subscription)
|
||||
@@ -586,7 +675,10 @@
|
||||
:class (stl/css :dropdown :teams-dropdown)
|
||||
:team team
|
||||
:profile profile
|
||||
:teams teams}]
|
||||
:teams teams
|
||||
:show-default-team true
|
||||
:allow-create-teams true
|
||||
:allow-create-org false}]
|
||||
|
||||
[:> team-options-dropdown* {:show show-team-options-menu?
|
||||
:on-close close-team-options-menu
|
||||
@@ -703,6 +795,8 @@
|
||||
[:*
|
||||
[:div {:class (stl/css-case :sidebar-content true)
|
||||
:ref container}
|
||||
(when (contains? cf/flags :nitrate)
|
||||
[:> sidebar-org-switch* {:team team :profile profile}])
|
||||
[:> sidebar-team-switch* {:team team :profile profile}]
|
||||
|
||||
[:> sidebar-search* {:search-term search-term
|
||||
|
||||
@@ -183,6 +183,7 @@
|
||||
[:map
|
||||
[:id {:optional true} :string]
|
||||
[:class {:optional true} :string]
|
||||
[:inner-class {:optional true} :string]
|
||||
[:value {:optional true} [:maybe [:or
|
||||
:int
|
||||
:float
|
||||
@@ -209,7 +210,8 @@
|
||||
|
||||
(mf/defc numeric-input*
|
||||
{::mf/schema schema:numeric-input}
|
||||
[{:keys [id class value default placeholder icon disabled
|
||||
[{:keys [id class value default placeholder
|
||||
icon disabled inner-class
|
||||
min max max-length step
|
||||
is-selected-on-focus nillable
|
||||
tokens applied-token empty-to-end
|
||||
@@ -624,6 +626,7 @@
|
||||
(mf/spread-props props {:ref ref
|
||||
:type "text"
|
||||
:id id
|
||||
:class inner-class
|
||||
:placeholder (if is-multiple?
|
||||
(tr "labels.mixed-values")
|
||||
placeholder)
|
||||
@@ -644,7 +647,7 @@
|
||||
:class (stl/css :icon)}]]))
|
||||
:slot-end (when-not disabled
|
||||
(when (some? tokens)
|
||||
(mf/html [:> icon-button* {:variant "action"
|
||||
(mf/html [:> icon-button* {:variant "ghost"
|
||||
:icon i/tokens
|
||||
:class (stl/css :invisible-button)
|
||||
:aria-label (tr "ds.inputs.numeric-input.open-token-list-dropdown")
|
||||
@@ -669,6 +672,7 @@
|
||||
:on-token-key-down on-token-key-down
|
||||
:disabled disabled
|
||||
:on-blur on-blur
|
||||
:class inner-class
|
||||
:slot-start (when icon
|
||||
(mf/html [:> tooltip*
|
||||
{:content property
|
||||
|
||||
@@ -33,12 +33,17 @@
|
||||
}
|
||||
|
||||
.invisible-button {
|
||||
position: absolute;
|
||||
inset-inline-end: 0;
|
||||
inset-block-start: 0;
|
||||
opacity: var(--opacity-button);
|
||||
|
||||
background-color: var(--color-background-quaternary);
|
||||
&:hover {
|
||||
background-color: var(--color-background-quaternary);
|
||||
--opacity-button: 1;
|
||||
}
|
||||
&:focus {
|
||||
background-color: var(--color-background-quaternary);
|
||||
--opacity-button: 1;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
[:map
|
||||
[:id {:optional true} :string]
|
||||
[:resolved-value {:optional true}
|
||||
[:or :int :string]]
|
||||
[:or :int :string :float]]
|
||||
[:name {:optional true} :string]
|
||||
[:icon {:optional true} schema:icon-list]
|
||||
[:label {:optional true} :string]
|
||||
|
||||
@@ -30,11 +30,11 @@
|
||||
}
|
||||
|
||||
.left-align {
|
||||
left: 0;
|
||||
left: var(--dropdown-offset, 0);
|
||||
}
|
||||
|
||||
.right-align {
|
||||
right: 0;
|
||||
right: var(--dropdown-offset, 0);
|
||||
}
|
||||
|
||||
.option-separator {
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
[:map
|
||||
[:id {:optiona true} :string]
|
||||
[:ref some?]
|
||||
[:resolved {:optional true} [:or :int :string]]
|
||||
[:resolved {:optional true} [:or :int :string :float]]
|
||||
[:name {:optional true} :string]
|
||||
[:on-click {:optional true} fn?]
|
||||
[:selected {:optional true} :boolean]
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
|
||||
(def ^:private schema:input-field
|
||||
[:map
|
||||
[:class {:optional true} :string]
|
||||
[:class {:optional true} [:maybe :string]]
|
||||
[:aria-label {:optional true} [:maybe :string]]
|
||||
[:id :string]
|
||||
[:icon {:optional true}
|
||||
@@ -44,9 +44,10 @@
|
||||
tooltip-id (mf/use-id)
|
||||
|
||||
props (mf/spread-props props
|
||||
{:class (stl/css-case
|
||||
:input true
|
||||
:input-with-icon (some? icon))
|
||||
{:class [class
|
||||
(stl/css-case
|
||||
:input true
|
||||
:input-with-icon (some? icon))]
|
||||
:ref (or ref input-ref)
|
||||
:aria-invalid (when (and has-hint
|
||||
(= hint-type "error"))
|
||||
|
||||
@@ -19,6 +19,7 @@
|
||||
|
||||
(def ^:private schema:token-field
|
||||
[:map
|
||||
[:class {:optional true} [:maybe :string]]
|
||||
[:id {:optional true} [:maybe :string]]
|
||||
[:label {:optional true} [:maybe :string]]
|
||||
[:value :any]
|
||||
@@ -32,7 +33,7 @@
|
||||
|
||||
(mf/defc token-field*
|
||||
{::mf/schema schema:token-field}
|
||||
[{:keys [id label value slot-start disabled
|
||||
[{:keys [id label value slot-start disabled class
|
||||
on-click on-token-key-down on-blur detach-token
|
||||
token-wrapper-ref token-detach-btn-ref on-focus]}]
|
||||
(let [set-active? (some? id)
|
||||
@@ -48,14 +49,11 @@
|
||||
(fn [event]
|
||||
(when-not ^boolean disabled
|
||||
(dom/prevent-default event)
|
||||
(dom/focus! (mf/ref-val token-wrapper-ref)))))
|
||||
(dom/focus! (mf/ref-val token-wrapper-ref)))))]
|
||||
|
||||
class
|
||||
(stl/css-case :token-field true
|
||||
:with-icon (some? slot-start)
|
||||
:token-field-disabled disabled)]
|
||||
|
||||
[:div {:class class
|
||||
[:div {:class [class (stl/css-case :token-field true
|
||||
:with-icon (some? slot-start)
|
||||
:token-field-disabled disabled)]
|
||||
:on-click focus-wrapper
|
||||
:disabled disabled
|
||||
:on-key-down on-token-key-down
|
||||
@@ -80,7 +78,7 @@
|
||||
[:div {:class (stl/css :pill-dot)}])]]
|
||||
|
||||
(when-not ^boolean disabled
|
||||
[:> icon-button* {:variant "action"
|
||||
[:> icon-button* {:variant "ghost"
|
||||
:class (stl/css :invisible-button)
|
||||
:icon i/broken-link
|
||||
:ref token-detach-btn-ref
|
||||
|
||||
@@ -8,6 +8,7 @@
|
||||
@use "ds/_sizes.scss" as *;
|
||||
@use "ds/typography.scss" as t;
|
||||
@use "ds/colors.scss" as *;
|
||||
@use "ds/mixins.scss" as *;
|
||||
|
||||
.token-field {
|
||||
--token-field-bg-color: var(--color-background-tertiary);
|
||||
@@ -16,9 +17,7 @@
|
||||
--token-field-outline-color: none;
|
||||
--token-field-height: var(--sp-xxxl);
|
||||
--token-field-margin: unset;
|
||||
|
||||
display: grid;
|
||||
grid-template-columns: 1fr auto;
|
||||
column-gap: var(--sp-xs);
|
||||
align-items: center;
|
||||
position: relative;
|
||||
@@ -27,6 +26,7 @@
|
||||
border-radius: $br-8;
|
||||
padding: var(--sp-xs);
|
||||
outline: $b-1 solid var(--token-field-outline-color);
|
||||
position: relative;
|
||||
|
||||
&:hover {
|
||||
--token-field-bg-color: var(--color-background-quaternary);
|
||||
@@ -39,7 +39,7 @@
|
||||
}
|
||||
|
||||
.with-icon {
|
||||
grid-template-columns: auto 1fr auto;
|
||||
grid-template-columns: auto 1fr;
|
||||
}
|
||||
|
||||
.token-field-disabled {
|
||||
@@ -57,14 +57,17 @@
|
||||
--pill-bg-color: var(--color-background-tertiary);
|
||||
--pill-fg-color: var(--color-token-foreground);
|
||||
@include t.use-typography("code-font");
|
||||
height: var(--sp-xxl);
|
||||
width: fit-content;
|
||||
@include textEllipsis;
|
||||
display: block;
|
||||
block-size: var(--sp-xxl);
|
||||
inline-size: fit-content;
|
||||
background: var(--pill-bg-color);
|
||||
cursor: pointer;
|
||||
border: $b-1 solid var(--pill-border-color);
|
||||
color: var(--pill-fg-color);
|
||||
border-radius: $br-6;
|
||||
padding-inline: $sz-6;
|
||||
max-inline-size: 100%;
|
||||
&:hover {
|
||||
--pill-bg-color: var(--color-token-background);
|
||||
--pill-fg-color: var(--color-foreground-primary);
|
||||
@@ -103,24 +106,29 @@
|
||||
}
|
||||
|
||||
.pill-dot {
|
||||
width: $sz-6;
|
||||
height: $sz-6;
|
||||
inline-size: $sz-6;
|
||||
block-size: $sz-6;
|
||||
outline: var(--sp-xxs) solid var(--color-background-primary);
|
||||
border-radius: 50%;
|
||||
background-color: var(--color-foreground-error);
|
||||
margin-left: var(--sp-xs);
|
||||
margin-inline-start: var(--sp-xs);
|
||||
position: absolute;
|
||||
right: 0;
|
||||
top: 0;
|
||||
inset-inline-end: 0;
|
||||
inset-block-start: 0;
|
||||
}
|
||||
|
||||
.invisible-button {
|
||||
position: absolute;
|
||||
inset-inline-end: 0;
|
||||
inset-block-start: 0;
|
||||
opacity: var(--opacity-button);
|
||||
|
||||
background-color: var(--color-background-quaternary);
|
||||
&:hover {
|
||||
background-color: var(--color-background-quaternary);
|
||||
--opacity-button: 1;
|
||||
}
|
||||
&:focus {
|
||||
background-color: var(--color-background-quaternary);
|
||||
--opacity-button: 1;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -159,4 +159,6 @@ $arrow-side: 12px;
|
||||
block-size: fit-content;
|
||||
inline-size: fit-content;
|
||||
line-height: 0;
|
||||
display: grid;
|
||||
max-width: 100%;
|
||||
}
|
||||
|
||||
@@ -33,9 +33,24 @@
|
||||
[okulary.core :as l]
|
||||
[rumext.v2 :as mf]))
|
||||
|
||||
;; Coalesce sidebar hover highlights to 1 frame to avoid long tasks
|
||||
(defonce ^:private sidebar-hover-queue (atom {:enter #{} :leave #{}}))
|
||||
(defonce ^:private sidebar-hover-pending? (atom false))
|
||||
|
||||
(defn- schedule-sidebar-hover-flush []
|
||||
(when (compare-and-set! sidebar-hover-pending? false true)
|
||||
(ts/raf
|
||||
(fn []
|
||||
(let [{:keys [enter leave]} (swap! sidebar-hover-queue (constantly {:enter #{} :leave #{}}))]
|
||||
(reset! sidebar-hover-pending? false)
|
||||
(when (seq leave)
|
||||
(apply st/emit! (map dw/dehighlight-shape leave)))
|
||||
(when (seq enter)
|
||||
(apply st/emit! (map dw/highlight-shape enter))))))))
|
||||
|
||||
(mf/defc layer-item-inner
|
||||
{::mf/wrap-props false}
|
||||
[{:keys [item depth parent-size name-ref children ref
|
||||
[{:keys [item depth parent-size name-ref children ref style
|
||||
;; Flags
|
||||
read-only? highlighted? selected? component-tree?
|
||||
filtered? expanded? dnd-over? dnd-over-top? dnd-over-bot? hide-toggle?
|
||||
@@ -82,7 +97,8 @@
|
||||
:dnd-over dnd-over?
|
||||
:dnd-over-top dnd-over-top?
|
||||
:dnd-over-bot dnd-over-bot?
|
||||
:root-board parent-board?)}
|
||||
:root-board parent-board?)
|
||||
:style style}
|
||||
[:span {:class (stl/css-case
|
||||
:tab-indentation true
|
||||
:filtered filtered?)
|
||||
@@ -139,37 +155,38 @@
|
||||
:variant-properties variant-properties
|
||||
:variant-error variant-error
|
||||
:component-id (:id component)
|
||||
:is-hidden hidden?}]
|
||||
|
||||
(when (not read-only?)
|
||||
[:div {:class (stl/css-case
|
||||
:element-actions true
|
||||
:is-parent has-shapes?
|
||||
:selected hidden?
|
||||
:selected blocked?)}
|
||||
[:button {:class (stl/css-case
|
||||
:toggle-element true
|
||||
:selected hidden?)
|
||||
:title (if hidden?
|
||||
(tr "workspace.shape.menu.show")
|
||||
(tr "workspace.shape.menu.hide"))
|
||||
:on-click on-toggle-visibility}
|
||||
(if ^boolean hidden? deprecated-icon/hide deprecated-icon/shown)]
|
||||
[:button {:class (stl/css-case
|
||||
:block-element true
|
||||
:selected blocked?)
|
||||
:title (if (:blocked item)
|
||||
(tr "workspace.shape.menu.unlock")
|
||||
(tr "workspace.shape.menu.lock"))
|
||||
:on-click on-toggle-blocking}
|
||||
(if ^boolean blocked? deprecated-icon/lock deprecated-icon/unlock)]])]]
|
||||
:is-hidden hidden?}]]
|
||||
(when (not read-only?)
|
||||
[:div {:class (stl/css-case
|
||||
:element-actions true
|
||||
:is-parent has-shapes?
|
||||
:selected hidden?
|
||||
:selected blocked?)}
|
||||
[:button {:class (stl/css-case
|
||||
:toggle-element true
|
||||
:selected hidden?)
|
||||
:title (if hidden?
|
||||
(tr "workspace.shape.menu.show")
|
||||
(tr "workspace.shape.menu.hide"))
|
||||
:on-click on-toggle-visibility}
|
||||
(if ^boolean hidden? deprecated-icon/hide deprecated-icon/shown)]
|
||||
[:button {:class (stl/css-case
|
||||
:block-element true
|
||||
:selected blocked?)
|
||||
:title (if (:blocked item)
|
||||
(tr "workspace.shape.menu.unlock")
|
||||
(tr "workspace.shape.menu.lock"))
|
||||
:on-click on-toggle-blocking}
|
||||
(if ^boolean blocked? deprecated-icon/lock deprecated-icon/unlock)]])]
|
||||
|
||||
children]))
|
||||
|
||||
;; Memoized for performance
|
||||
(mf/defc layer-item
|
||||
{::mf/props :obj
|
||||
::mf/memo true}
|
||||
[{:keys [index item selected objects sortable? filtered? depth parent-size component-child? highlighted]}]
|
||||
::mf/wrap [mf/memo]}
|
||||
[{:keys [index item selected objects sortable? filtered? depth parent-size component-child? highlighted style render-children?]
|
||||
:or {render-children? true}}]
|
||||
(let [id (:id item)
|
||||
blocked? (:blocked item)
|
||||
hidden? (:hidden item)
|
||||
@@ -246,13 +263,21 @@
|
||||
(mf/use-fn
|
||||
(mf/deps id)
|
||||
(fn [_]
|
||||
(st/emit! (dw/highlight-shape id))))
|
||||
(swap! sidebar-hover-queue (fn [{:keys [enter leave] :as q}]
|
||||
(-> q
|
||||
(assoc :enter (conj enter id))
|
||||
(assoc :leave (disj leave id)))))
|
||||
(schedule-sidebar-hover-flush)))
|
||||
|
||||
on-pointer-leave
|
||||
(mf/use-fn
|
||||
(mf/deps id)
|
||||
(fn [_]
|
||||
(st/emit! (dw/dehighlight-shape id))))
|
||||
(swap! sidebar-hover-queue (fn [{:keys [enter leave] :as q}]
|
||||
(-> q
|
||||
(assoc :enter (disj enter id))
|
||||
(assoc :leave (conj leave id)))))
|
||||
(schedule-sidebar-hover-flush)))
|
||||
|
||||
on-context-menu
|
||||
(mf/use-fn
|
||||
@@ -338,14 +363,18 @@
|
||||
component-tree? (or component-child? (ctk/instance-root? item) (ctk/instance-head? item))
|
||||
|
||||
enable-drag (mf/use-fn #(reset! drag-disabled* false))
|
||||
disable-drag (mf/use-fn #(reset! drag-disabled* true))]
|
||||
disable-drag (mf/use-fn #(reset! drag-disabled* true))
|
||||
|
||||
;; Lazy loading of child elements via IntersectionObserver
|
||||
children-count* (mf/use-state 0)
|
||||
children-count (deref children-count*)
|
||||
lazy-ref (mf/use-ref nil)
|
||||
observer-var (mf/use-var nil)
|
||||
chunk-size 50]
|
||||
|
||||
(mf/with-effect [selected? selected]
|
||||
(let [single? (= (count selected) 1)
|
||||
node (mf/ref-val ref)
|
||||
;; NOTE: Neither get-parent-at nor get-parent-with-selector
|
||||
;; work if the component template changes, so we need to
|
||||
;; seek for an alternate solution. Maybe use-context?
|
||||
scroll-node (dom/get-parent-with-data node "scroll-container")
|
||||
parent-node (dom/get-parent-at node 2)
|
||||
first-child-node (dom/get-first-child parent-node)
|
||||
@@ -363,6 +392,61 @@
|
||||
#(when (some? subid)
|
||||
(rx/dispose! subid))))
|
||||
|
||||
;; Setup scroll-driven lazy loading when expanded
|
||||
;; and ensures selected children are loaded immediately
|
||||
(mf/with-effect [expanded? (:shapes item) selected]
|
||||
(let [shapes-vec (:shapes item)
|
||||
total (count shapes-vec)]
|
||||
(if expanded?
|
||||
(let [;; Children are rendered in reverse order, so index 0 in render = last in shapes-vec
|
||||
;; Find if any selected id is a direct child and get its render index
|
||||
selected-child-render-idx
|
||||
(when (and (> total chunk-size) (seq selected))
|
||||
(let [shapes-reversed (vec (reverse shapes-vec))]
|
||||
(some (fn [sel-id]
|
||||
(let [idx (.indexOf shapes-reversed sel-id)]
|
||||
(when (>= idx 0) idx)))
|
||||
selected)))
|
||||
;; Load at least enough to include the selected child plus extra
|
||||
;; for context (so it can be centered in the scroll view)
|
||||
min-count (if selected-child-render-idx
|
||||
(+ selected-child-render-idx chunk-size)
|
||||
chunk-size)
|
||||
current @children-count*
|
||||
new-count (min total (max current chunk-size min-count))]
|
||||
(reset! children-count* new-count))
|
||||
(reset! children-count* 0)))
|
||||
(fn []
|
||||
(when-let [obs ^js @observer-var]
|
||||
(.disconnect obs)
|
||||
(reset! observer-var nil))))
|
||||
|
||||
;; Re-observe sentinel whenever children-count changes (sentinel moves)
|
||||
(mf/with-effect [children-count expanded?]
|
||||
(let [total (count (:shapes item))
|
||||
node (mf/ref-val ref)
|
||||
scroll-node (dom/get-parent-with-data node "scroll-container")
|
||||
lazy-node (mf/ref-val lazy-ref)]
|
||||
;; Disconnect previous observer
|
||||
(when-let [obs ^js @observer-var]
|
||||
(.disconnect obs)
|
||||
(reset! observer-var nil))
|
||||
;; Setup new observer if there are more children to load
|
||||
(when (and expanded?
|
||||
(< children-count total)
|
||||
scroll-node
|
||||
lazy-node)
|
||||
(let [cb (fn [entries]
|
||||
(when (and (seq entries)
|
||||
(.-isIntersecting (first entries)))
|
||||
;; Load next chunk when sentinel intersects
|
||||
(let [current @children-count*
|
||||
next-count (min total (+ current chunk-size))]
|
||||
(reset! children-count* next-count))))
|
||||
observer (js/IntersectionObserver. cb #js {:root scroll-node})]
|
||||
(.observe observer lazy-node)
|
||||
(reset! observer-var observer)))))
|
||||
|
||||
[:& layer-item-inner
|
||||
{:ref dref
|
||||
:item item
|
||||
@@ -387,24 +471,32 @@
|
||||
:on-enable-drag enable-drag
|
||||
:on-disable-drag disable-drag
|
||||
:on-toggle-visibility toggle-visibility
|
||||
:on-toggle-blocking toggle-blocking}
|
||||
:on-toggle-blocking toggle-blocking
|
||||
:style style}
|
||||
|
||||
(when (and (:shapes item) expanded?)
|
||||
(when (and render-children?
|
||||
(:shapes item)
|
||||
expanded?)
|
||||
[:div {:class (stl/css-case
|
||||
:element-children true
|
||||
:parent-selected selected?
|
||||
:sticky-children parent-board?)
|
||||
:data-testid (dm/str "children-" id)}
|
||||
(for [[index id] (reverse (d/enumerate (:shapes item)))]
|
||||
(when-let [item (get objects id)]
|
||||
[:& layer-item
|
||||
{:item item
|
||||
:highlighted highlighted
|
||||
:selected selected
|
||||
:index index
|
||||
:objects objects
|
||||
:key (dm/str id)
|
||||
:sortable? sortable?
|
||||
:depth depth
|
||||
:parent-size parent-size
|
||||
:component-child? component-tree?}]))])]))
|
||||
(let [all-children (reverse (d/enumerate (:shapes item)))
|
||||
visible (take children-count all-children)]
|
||||
(for [[index id] visible]
|
||||
(when-let [item (get objects id)]
|
||||
[:& layer-item
|
||||
{:item item
|
||||
:highlighted highlighted
|
||||
:selected selected
|
||||
:index index
|
||||
:objects objects
|
||||
:key (dm/str id)
|
||||
:sortable? sortable?
|
||||
:depth depth
|
||||
:parent-size parent-size
|
||||
:component-child? component-tree?}])))
|
||||
(when (< children-count (count (:shapes item)))
|
||||
[:div {:ref lazy-ref
|
||||
:style {:min-height 1}}])])]))
|
||||
|
||||
@@ -4,79 +4,81 @@
|
||||
//
|
||||
// Copyright (c) KALEIDOS INC
|
||||
|
||||
@use "refactor/common-refactor.scss" as deprecated;
|
||||
@use "ds/_utils.scss" as *;
|
||||
@use "ds/borders.scss" as *;
|
||||
@use "ds/_sizes.scss" as *;
|
||||
|
||||
.layer-row {
|
||||
--layer-indentation-size: calc(#{deprecated.$s-4} * 6);
|
||||
--layer-indentation-size: var(--sp-xxl);
|
||||
--layer-background-color: var(--color-background-primary);
|
||||
--layer-foreground-color: inherit;
|
||||
--shadow-color: transparent;
|
||||
box-shadow: px2rem(16) px2rem(0) px2rem(0) px2rem(0) var(--shadow-color);
|
||||
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
align-items: center;
|
||||
width: 100%;
|
||||
background-color: var(--layer-row-background-color);
|
||||
border: deprecated.$s-2 solid transparent;
|
||||
inline-size: 100%;
|
||||
background-color: var(--layer-background-color);
|
||||
border: $b-2 solid transparent;
|
||||
color: var(--layer-foreground-color);
|
||||
|
||||
&.highlight,
|
||||
&:hover {
|
||||
--layer-background-color: var(--color-background-secondary);
|
||||
--shadow-color: var(--color-background-secondary);
|
||||
--context-hover-color: var(--layer-row-foreground-color-hover);
|
||||
--context-hover-opacity: deprecated.$op-10;
|
||||
background-color: var(--layer-row-background-color-hover);
|
||||
color: var(--layer-row-foreground-color-hover);
|
||||
box-shadow: deprecated.$s-16 deprecated.$s-0 deprecated.$s-0 deprecated.$s-0
|
||||
var(--layer-row-background-color-hover);
|
||||
--context-hover-opacity: 1;
|
||||
--layer-foreground-color: var(--layer-row-foreground-color-hover);
|
||||
&.hidden {
|
||||
opacity: deprecated.$op-10;
|
||||
opacity: 1;
|
||||
}
|
||||
}
|
||||
|
||||
&.selected {
|
||||
background-color: var(--layer-row-background-color-selected);
|
||||
box-shadow: deprecated.$s-16 deprecated.$s-0 deprecated.$s-0 deprecated.$s-0
|
||||
var(--layer-row-background-color-selected);
|
||||
--layer-background-color: var(--color-background-quaternary);
|
||||
--shadow-color: var(--color-background-quaternary);
|
||||
}
|
||||
|
||||
&.selected.highlight,
|
||||
&.selected:hover {
|
||||
background-color: var(--layer-row-background-color-selected);
|
||||
--layer-background-color: var(--color-background-quaternary);
|
||||
}
|
||||
|
||||
.parent-selected & {
|
||||
background-color: var(--layer-child-row-background-color);
|
||||
box-shadow: deprecated.$s-16 deprecated.$s-0 deprecated.$s-0 deprecated.$s-0
|
||||
var(--layer-child-row-background-color);
|
||||
--layer-background-color: var(--color-background-tertiary);
|
||||
--shadow-color: var(--color-background-tertiary);
|
||||
}
|
||||
|
||||
.parent-selected &.highlight,
|
||||
.parent-selected &:hover {
|
||||
background-color: var(--layer-row-background-color-hover);
|
||||
box-shadow: deprecated.$s-16 deprecated.$s-0 deprecated.$s-0 deprecated.$s-0
|
||||
var(--layer-row-background-color-hover);
|
||||
--layer-background-color: var(--color-background-secondary);
|
||||
--shadow-color: var(--color-background-secondary);
|
||||
}
|
||||
|
||||
&.dnd-over-bot {
|
||||
border-bottom: deprecated.$s-2 solid var(--layer-row-foreground-color-hover);
|
||||
border-block-end: $b-2 solid var(--color-accent-primary);
|
||||
}
|
||||
&.dnd-over-top {
|
||||
border-top: deprecated.$s-2 solid var(--layer-row-foreground-color-hover);
|
||||
border-block-start: $b-2 solid var(--color-accent-primary);
|
||||
}
|
||||
&.dnd-over {
|
||||
border: deprecated.$s-2 solid var(--layer-row-foreground-color-hover);
|
||||
border: $b-2 solid var(--color-accent-primary);
|
||||
}
|
||||
}
|
||||
|
||||
.element-children {
|
||||
.layer-row.highlight &,
|
||||
.layer-row:hover & {
|
||||
background-color: var(--layer-row-background-color-selected);
|
||||
box-shadow: deprecated.$s-16 deprecated.$s-0 deprecated.$s-0 deprecated.$s-0
|
||||
var(--layer-row-background-color-selected);
|
||||
--layer-background-color: var(--color-background-quaternary);
|
||||
--shadow-color: var(--color-background-quaternary);
|
||||
}
|
||||
.layer-row.type-comp & {
|
||||
color: var(--layer-row-component-foreground-color);
|
||||
--layer-foreground-color: var(--color-accent-secondary);
|
||||
}
|
||||
.layer-row.selected & {
|
||||
background-color: transparent;
|
||||
color: var(--layer-row-foreground-color-selected);
|
||||
--layer-background-color: transparent;
|
||||
--layer-foreground-color: var(--color-accent-primary);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -84,21 +86,22 @@
|
||||
align-items: center;
|
||||
display: grid;
|
||||
grid-template-columns: auto 1fr auto;
|
||||
column-gap: deprecated.$s-4;
|
||||
height: deprecated.$s-32;
|
||||
width: calc(100% - (var(--depth) * var(--layer-indentation-size)));
|
||||
column-gap: var(--sp-xs);
|
||||
block-size: $sz-32;
|
||||
inline-size: calc(100% - (var(--depth) * var(--layer-indentation-size)));
|
||||
cursor: pointer;
|
||||
min-width: px2rem(140);
|
||||
min-inline-size: px2rem(140);
|
||||
&.filtered {
|
||||
width: calc(100% - deprecated.$s-12);
|
||||
inline-size: calc(100% - $sz-12);
|
||||
}
|
||||
}
|
||||
|
||||
.element-actions {
|
||||
display: none;
|
||||
height: 100%;
|
||||
display: flex;
|
||||
align-items: end;
|
||||
position: sticky;
|
||||
inset-inline-end: 0;
|
||||
block-size: $sz-32;
|
||||
|
||||
&.selected {
|
||||
display: flex;
|
||||
@@ -111,95 +114,107 @@
|
||||
|
||||
.button-content {
|
||||
display: flex;
|
||||
height: 100%;
|
||||
block-size: 100%;
|
||||
}
|
||||
|
||||
.icon-shape {
|
||||
@include deprecated.flexCenter;
|
||||
@include deprecated.buttonStyle;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
border: none;
|
||||
background: none;
|
||||
cursor: pointer;
|
||||
position: relative;
|
||||
justify-self: flex-end;
|
||||
width: deprecated.$s-16;
|
||||
height: 100%;
|
||||
width: deprecated.$s-24;
|
||||
padding-inline-start: deprecated.$s-4;
|
||||
color: var(--icon-foreground);
|
||||
block-size: 100%;
|
||||
inline-size: $sz-24;
|
||||
padding-inline-start: var(--sp-xs);
|
||||
color: var(--color-foreground-secondary);
|
||||
.layer-row.selected & {
|
||||
color: var(--layer-row-foreground-color-selected);
|
||||
color: var(--color-accent-primary);
|
||||
}
|
||||
.layer-row.type-comp & {
|
||||
color: var(--layer-row-component-foreground-color);
|
||||
color: var(--color-accent-secondary);
|
||||
}
|
||||
.inverse & {
|
||||
transform: rotate(-90deg);
|
||||
}
|
||||
.layer-row.hidden & {
|
||||
opacity: deprecated.$op-7;
|
||||
opacity: 0.7;
|
||||
}
|
||||
.layer-row.highlight &,
|
||||
.layer-row:hover & {
|
||||
opacity: deprecated.$op-10;
|
||||
opacity: 1;
|
||||
svg {
|
||||
stroke: var(--layer-row-foreground-color-hover);
|
||||
stroke: var(--color-accent-primary);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.absolute {
|
||||
position: absolute;
|
||||
background-color: var(--layer-row-foreground-color);
|
||||
opacity: deprecated.$op-4;
|
||||
width: deprecated.$s-12;
|
||||
height: deprecated.$s-12;
|
||||
border-radius: deprecated.$br-2;
|
||||
background-color: var(--color-foreground-secondary);
|
||||
opacity: 0.4;
|
||||
inline-size: $sz-12;
|
||||
block-size: $sz-12;
|
||||
border-radius: px2rem(2);
|
||||
|
||||
.layer-row.hidden & {
|
||||
opacity: deprecated.$op-1;
|
||||
opacity: 0.1;
|
||||
}
|
||||
.layer-row.type-comp & {
|
||||
background-color: var(--layer-row-component-foreground-color);
|
||||
background-color: var(--color-accent-secondary);
|
||||
}
|
||||
.layer-row.highlight &,
|
||||
.layer-row:hover & {
|
||||
opacity: deprecated.$op-4;
|
||||
background-color: var(--layer-row-foreground-color-hover);
|
||||
opacity: 0.4;
|
||||
background-color: var(--color-accent-primary);
|
||||
}
|
||||
.layer-row.selected & {
|
||||
background-color: var(--layer-row-foreground-color-selected);
|
||||
background-color: var(--color-accent-primary);
|
||||
}
|
||||
}
|
||||
|
||||
.toggle-content {
|
||||
@include deprecated.buttonStyle;
|
||||
border: none;
|
||||
background: none;
|
||||
cursor: pointer;
|
||||
display: grid;
|
||||
grid-template-columns: 1fr 1fr;
|
||||
align-items: center;
|
||||
height: 100%;
|
||||
width: deprecated.$s-24;
|
||||
padding-inline-start: deprecated.$s-8;
|
||||
block-size: 100%;
|
||||
inline-size: $sz-24;
|
||||
padding-inline-start: var(--sp-s);
|
||||
|
||||
svg {
|
||||
@extend .button-icon-small;
|
||||
stroke: var(--icon-foreground);
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
color: transparent;
|
||||
fill: none;
|
||||
block-size: $sz-12;
|
||||
inline-size: $sz-12;
|
||||
stroke-width: 1.33px;
|
||||
stroke: var(--color-foreground-secondary);
|
||||
|
||||
.layer-row.hidden & {
|
||||
opacity: deprecated.$op-7;
|
||||
opacity: 0.7;
|
||||
}
|
||||
.layer-row.selected & {
|
||||
stroke: var(--layer-row-foreground-color-selected);
|
||||
stroke: var(--color-accent-primary);
|
||||
}
|
||||
.layer-row.type-comp & {
|
||||
stroke: var(--layer-row-component-foreground-color);
|
||||
stroke: var(--color-accent-secondary);
|
||||
}
|
||||
.layer-row.highlight &,
|
||||
.layer-row:hover & {
|
||||
opacity: deprecated.$op-10;
|
||||
stroke: var(--layer-row-foreground-color-hover);
|
||||
opacity: 1;
|
||||
stroke: var(--color-accent-primary);
|
||||
}
|
||||
}
|
||||
|
||||
.layer-row.selected & {
|
||||
background-color: var(--layer-row-background-color-selected);
|
||||
background-color: var(--color-background-quaternary);
|
||||
}
|
||||
&.inverse svg {
|
||||
transform: rotate(90deg);
|
||||
@@ -208,65 +223,78 @@
|
||||
|
||||
.toggle-element,
|
||||
.block-element {
|
||||
@include deprecated.buttonStyle;
|
||||
@include deprecated.flexCenter;
|
||||
height: 100%;
|
||||
width: deprecated.$s-24;
|
||||
--layer-row-action-btn-background: none;
|
||||
border: none;
|
||||
cursor: pointer;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
block-size: 100%;
|
||||
inline-size: $sz-24;
|
||||
margin: 0;
|
||||
display: none;
|
||||
|
||||
background: var(--layer-row-action-btn-background);
|
||||
padding-inline-end: px2rem(6);
|
||||
svg {
|
||||
@extend .button-icon-small;
|
||||
stroke: var(--icon-foreground);
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
color: transparent;
|
||||
fill: none;
|
||||
block-size: $sz-12;
|
||||
inline-size: $sz-12;
|
||||
stroke-width: 1.33px;
|
||||
stroke: var(--color-foreground-secondary);
|
||||
|
||||
.layer-row.hidden & {
|
||||
opacity: deprecated.$op-7;
|
||||
opacity: 0.7;
|
||||
}
|
||||
.type-comp & {
|
||||
stroke: var(--layer-row-component-foreground-color);
|
||||
stroke: var(--color-accent-secondary);
|
||||
}
|
||||
}
|
||||
|
||||
.element-actions.selected & {
|
||||
display: flex;
|
||||
opacity: deprecated.$op-0;
|
||||
|
||||
opacity: 0;
|
||||
&.selected {
|
||||
opacity: deprecated.$op-10;
|
||||
opacity: 1;
|
||||
}
|
||||
}
|
||||
|
||||
.layer-row:hover .element-actions.selected & {
|
||||
opacity: deprecated.$op-10;
|
||||
opacity: 1;
|
||||
}
|
||||
|
||||
.layer-row.highlight &,
|
||||
.layer-row:hover & {
|
||||
display: flex;
|
||||
--layer-row-action-btn-background: var(--color-background-secondary);
|
||||
svg {
|
||||
opacity: deprecated.$op-10;
|
||||
stroke: var(--layer-row-foreground-color-hover);
|
||||
opacity: 1;
|
||||
stroke: var(--color-accent-primary);
|
||||
}
|
||||
}
|
||||
.layer-row.selected & {
|
||||
display: flex;
|
||||
--layer-row-action-btn-background: var(--color-background-quaternary);
|
||||
svg {
|
||||
stroke: var(--layer-row-foreground-color-selected);
|
||||
stroke: var(--color-accent-primary);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
:global(.sticky) {
|
||||
position: sticky;
|
||||
top: deprecated.$s-0;
|
||||
z-index: deprecated.$z-index-4;
|
||||
inset-block-start: 0;
|
||||
z-index: 4;
|
||||
}
|
||||
|
||||
.tab-indentation {
|
||||
display: block;
|
||||
height: deprecated.$s-16;
|
||||
min-width: calc(var(--depth) * var(--layer-indentation-size));
|
||||
block-size: $sz-16;
|
||||
min-inline-size: calc(var(--depth) * var(--layer-indentation-size));
|
||||
}
|
||||
.filtered {
|
||||
min-width: deprecated.$s-12;
|
||||
min-inline-size: $sz-12;
|
||||
}
|
||||
|
||||
@@ -180,6 +180,8 @@
|
||||
overflow-y: overlay;
|
||||
scrollbar-gutter: stable;
|
||||
}
|
||||
|
||||
.element-list {
|
||||
display: grid;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
@@ -3,10 +3,15 @@
|
||||
(:require
|
||||
[app.common.data.macros :as dm]
|
||||
[app.common.types.shape.radius :as ctsr]
|
||||
[app.common.types.token :as tk]
|
||||
[app.main.data.workspace.shapes :as dwsh]
|
||||
[app.main.data.workspace.tokens.application :as dwta]
|
||||
[app.main.features :as features]
|
||||
[app.main.store :as st]
|
||||
[app.main.ui.components.numeric-input :as deprecated-input]
|
||||
[app.main.ui.context :as muc]
|
||||
[app.main.ui.ds.buttons.icon-button :refer [icon-button*]]
|
||||
[app.main.ui.ds.controls.numeric-input :refer [numeric-input*]]
|
||||
[app.main.ui.ds.foundations.assets.icon :refer [icon*] :as i]
|
||||
[app.main.ui.hooks :as hooks]
|
||||
[app.util.i18n :as i18n :refer [tr]]
|
||||
@@ -21,11 +26,17 @@
|
||||
(defn- check-border-radius-menu-props
|
||||
[old-props new-props]
|
||||
(let [old-values (unchecked-get old-props "values")
|
||||
new-values (unchecked-get new-props "values")]
|
||||
new-values (unchecked-get new-props "values")
|
||||
old-applied-tokens (unchecked-get old-props "appliedTokens")
|
||||
new-applied-tokens (unchecked-get new-props "appliedTokens")]
|
||||
(and (identical? (unchecked-get old-props "class")
|
||||
(unchecked-get new-props "class"))
|
||||
(identical? (unchecked-get old-props "ids")
|
||||
(unchecked-get new-props "ids"))
|
||||
(identical? (unchecked-get old-props "shapes")
|
||||
(unchecked-get new-props "shapes"))
|
||||
(identical? old-applied-tokens
|
||||
new-applied-tokens)
|
||||
(identical? (get old-values :r1)
|
||||
(get new-values :r1))
|
||||
(identical? (get old-values :r2)
|
||||
@@ -35,13 +46,114 @@
|
||||
(identical? (get old-values :r4)
|
||||
(get new-values :r4)))))
|
||||
|
||||
(mf/defc numeric-input-wrapper*
|
||||
{::mf/private true}
|
||||
[{:keys [values name applied-tokens align on-detach radius] :rest props}]
|
||||
(let [tokens (mf/use-ctx muc/active-tokens-by-type)
|
||||
tokens (mf/with-memo [tokens name]
|
||||
(delay
|
||||
(-> (deref tokens)
|
||||
(select-keys (get tk/tokens-by-input name))
|
||||
(not-empty))))
|
||||
|
||||
on-detach-attr
|
||||
(mf/use-fn
|
||||
(mf/deps on-detach name)
|
||||
#(on-detach % name))
|
||||
|
||||
r1-value (get applied-tokens :r1)
|
||||
all-token-equal? (and (seq applied-tokens) (all-equal? applied-tokens))
|
||||
all-values-equal? (all-equal? values)
|
||||
|
||||
applied-token (cond
|
||||
(not (seq applied-tokens))
|
||||
nil
|
||||
|
||||
(and (= radius :all) (or (not all-values-equal?) (not all-token-equal?)))
|
||||
:multiple
|
||||
|
||||
(and all-token-equal? all-values-equal? (= radius :all))
|
||||
r1-value
|
||||
|
||||
:else
|
||||
(get applied-tokens radius))
|
||||
|
||||
|
||||
placeholder (if (= radius :all)
|
||||
(cond
|
||||
(or (not all-values-equal?)
|
||||
(not all-token-equal?))
|
||||
(tr "settings.multiple")
|
||||
:else
|
||||
"--")
|
||||
|
||||
(cond
|
||||
(or (= :multiple (:applied-tokens values))
|
||||
(= :multiple (get values name)))
|
||||
(tr "settings.multiple")
|
||||
:else
|
||||
"--"))
|
||||
|
||||
|
||||
props (mf/spread-props props
|
||||
{:placeholder placeholder
|
||||
:applied-token applied-token
|
||||
:tokens (if (delay? tokens) @tokens tokens)
|
||||
:align align
|
||||
:on-detach on-detach-attr
|
||||
:value values})]
|
||||
[:> numeric-input* props]))
|
||||
|
||||
(mf/defc border-radius-menu*
|
||||
{::mf/wrap [#(mf/memo' % check-border-radius-menu-props)]}
|
||||
[{:keys [class ids values]}]
|
||||
(let [all-equal? (all-equal? values)
|
||||
[{:keys [class ids values applied-tokens]}]
|
||||
(let [token-numeric-inputs
|
||||
(features/use-feature "tokens/numeric-input")
|
||||
|
||||
all-values-equal? (all-equal? values)
|
||||
|
||||
radius-expanded* (mf/use-state false)
|
||||
radius-expanded (deref radius-expanded*)
|
||||
|
||||
;; DETACH
|
||||
on-detach-token
|
||||
(mf/use-fn
|
||||
(mf/deps ids)
|
||||
(fn [token attr]
|
||||
(st/emit! (dwta/unapply-token {:token (first token)
|
||||
:attributes #{attr}
|
||||
:shape-ids ids}))))
|
||||
|
||||
on-detach-all
|
||||
(mf/use-fn
|
||||
(mf/deps on-detach-token)
|
||||
(fn [token]
|
||||
(run! #(on-detach-token token %) [:r1 :r2 :r3 :r4])))
|
||||
|
||||
on-detach-r1
|
||||
(mf/use-fn
|
||||
(mf/deps on-detach-token)
|
||||
(fn [token]
|
||||
(on-detach-token token :r1)))
|
||||
|
||||
on-detach-r2
|
||||
(mf/use-fn
|
||||
(mf/deps on-detach-token)
|
||||
(fn [token]
|
||||
(on-detach-token token :r2)))
|
||||
|
||||
on-detach-r3
|
||||
(mf/use-fn
|
||||
(mf/deps on-detach-token)
|
||||
(fn [token]
|
||||
(on-detach-token token :r3)))
|
||||
|
||||
on-detach-r4
|
||||
(mf/use-fn
|
||||
(mf/deps on-detach-token)
|
||||
(fn [token]
|
||||
(on-detach-token token :r4)))
|
||||
|
||||
change-radius
|
||||
(mf/use-fn
|
||||
(mf/deps ids)
|
||||
@@ -54,31 +166,54 @@
|
||||
{:reg-objects? true
|
||||
:attrs [:r1 :r2 :r3 :r4]})))
|
||||
|
||||
change-one-radius
|
||||
(mf/use-fn
|
||||
(mf/deps ids)
|
||||
(fn [update-fn attr]
|
||||
(dwsh/update-shapes ids
|
||||
(fn [shape]
|
||||
(if (ctsr/has-radius? shape)
|
||||
(update-fn shape)
|
||||
shape))
|
||||
{:reg-objects? true
|
||||
:attrs [attr]})))
|
||||
|
||||
toggle-radius-mode
|
||||
(mf/use-fn
|
||||
(mf/deps radius-expanded)
|
||||
(fn []
|
||||
(swap! radius-expanded* not)))
|
||||
|
||||
|
||||
on-all-radius-change
|
||||
(mf/use-fn
|
||||
(mf/deps change-radius ids)
|
||||
(fn [value]
|
||||
(if (or (string? value) (number? value))
|
||||
(st/emit!
|
||||
(change-radius (fn [shape]
|
||||
(ctsr/set-radius-to-all-corners shape value))))
|
||||
(doseq [attr [:r1 :r2 :r3 :r4]]
|
||||
(st/emit!
|
||||
(dwta/toggle-token {:token (first value)
|
||||
:attrs #{attr}
|
||||
:shape-ids ids}))))))
|
||||
|
||||
|
||||
on-single-radius-change
|
||||
(mf/use-fn
|
||||
(mf/deps ids change-radius)
|
||||
(fn [value]
|
||||
(st/emit!
|
||||
(change-radius (fn [shape]
|
||||
(ctsr/set-radius-to-all-corners shape value))))))
|
||||
|
||||
|
||||
on-radius-4-change
|
||||
(mf/use-fn
|
||||
(mf/deps ids change-radius)
|
||||
(mf/deps change-one-radius ids)
|
||||
(fn [value attr]
|
||||
(st/emit! (change-radius #(ctsr/set-radius-to-single-corner % attr value)))))
|
||||
(if (or (string? value) (number? value))
|
||||
(st/emit! (change-one-radius #(ctsr/set-radius-to-single-corner % attr value) attr))
|
||||
(st/emit! (dwta/toggle-border-radius-token {:token (first value)
|
||||
:attrs #{attr}
|
||||
:shape-ids ids})))))
|
||||
|
||||
on-radius-r1-change #(on-radius-4-change % :r1)
|
||||
on-radius-r2-change #(on-radius-4-change % :r2)
|
||||
on-radius-r3-change #(on-radius-4-change % :r3)
|
||||
on-radius-r4-change #(on-radius-4-change % :r4)
|
||||
on-radius-r1-change #(on-single-radius-change % :r1)
|
||||
on-radius-r2-change #(on-single-radius-change % :r2)
|
||||
on-radius-r3-change #(on-single-radius-change % :r3)
|
||||
on-radius-r4-change #(on-single-radius-change % :r4)
|
||||
|
||||
expand-stream
|
||||
(mf/with-memo []
|
||||
@@ -92,58 +227,139 @@
|
||||
(mf/with-effect [ids]
|
||||
(reset! radius-expanded* false))
|
||||
|
||||
[:div {:class (dm/str class " " (stl/css :radius))}
|
||||
[:section {:class (dm/str class " " (stl/css :radius))
|
||||
:aria-label "border-radius-section"}
|
||||
(if (not radius-expanded)
|
||||
[:div {:class (stl/css :radius-1)
|
||||
:title (tr "workspace.options.radius")}
|
||||
[:> icon* {:icon-id i/corner-radius
|
||||
:size "s"
|
||||
:class (stl/css :icon)}]
|
||||
[:> deprecated-input/numeric-input*
|
||||
{:placeholder (cond
|
||||
(not all-equal?)
|
||||
(tr "settings.multiple")
|
||||
(= :multiple (:r1 values))
|
||||
(tr "settings.multiple")
|
||||
:else
|
||||
"--")
|
||||
:min 0
|
||||
:nillable true
|
||||
:on-change on-single-radius-change
|
||||
:value (if all-equal? (:r1 values) nil)}]]
|
||||
|
||||
[:div {:class (stl/css :radius-4)}
|
||||
[:div {:class (stl/css :small-input)}
|
||||
[:> deprecated-input/numeric-input*
|
||||
{:placeholder "--"
|
||||
:title (tr "workspace.options.radius-top-left")
|
||||
(if token-numeric-inputs
|
||||
[:> numeric-input-wrapper*
|
||||
{:on-change on-all-radius-change
|
||||
:on-detach on-detach-all
|
||||
:icon i/corner-radius
|
||||
:min 0
|
||||
:on-change on-radius-r1-change
|
||||
:value (:r1 values)}]]
|
||||
:name :border-radius
|
||||
:nillable true
|
||||
:property (tr "workspace.options.radius")
|
||||
:class (stl/css :radius-wrapper)
|
||||
:applied-tokens applied-tokens
|
||||
:radius :all
|
||||
:align :right
|
||||
:values (if all-values-equal?
|
||||
(if (nil? (:r1 values))
|
||||
0
|
||||
(:r1 values))
|
||||
nil)}]
|
||||
|
||||
[:div {:class (stl/css :small-input)}
|
||||
[:> deprecated-input/numeric-input*
|
||||
{:placeholder "--"
|
||||
:title (tr "workspace.options.radius-top-right")
|
||||
:min 0
|
||||
:on-change on-radius-r2-change
|
||||
:value (:r2 values)}]]
|
||||
[:div {:class (stl/css :radius-1)
|
||||
:title (tr "workspace.options.radius")}
|
||||
[:> icon* {:icon-id i/corner-radius
|
||||
:size "s"
|
||||
:class (stl/css :icon)}]
|
||||
[:> deprecated-input/numeric-input*
|
||||
{:placeholder (cond
|
||||
(not all-values-equal?)
|
||||
(tr "settings.multiple")
|
||||
(= :multiple (:r1 values))
|
||||
(tr "settings.multiple")
|
||||
:else
|
||||
"--")
|
||||
:min 0
|
||||
:nillable true
|
||||
:on-change on-all-radius-change
|
||||
:value (if all-values-equal?
|
||||
(if (nil? (:r1 values))
|
||||
0
|
||||
(:r1 values))
|
||||
nil)}]])
|
||||
|
||||
[:div {:class (stl/css :small-input)}
|
||||
[:> deprecated-input/numeric-input*
|
||||
{:placeholder "--"
|
||||
:title (tr "workspace.options.radius-bottom-left")
|
||||
:min 0
|
||||
:on-change on-radius-r4-change
|
||||
:value (:r4 values)}]]
|
||||
(if token-numeric-inputs
|
||||
[:div {:class (stl/css :radius-4)}
|
||||
[:> numeric-input-wrapper*
|
||||
{:on-change on-radius-r1-change
|
||||
:on-detach on-detach-r1
|
||||
:min 0
|
||||
:name :border-radius
|
||||
:property (tr "workspace.options.radius-top-left")
|
||||
:applied-tokens applied-tokens
|
||||
:radius :r1
|
||||
:align :right
|
||||
:class (stl/css :radius-wrapper :dropdown-offset)
|
||||
:inner-class (stl/css :no-icon-input)
|
||||
:values (:r1 values)}]
|
||||
|
||||
[:div {:class (stl/css :small-input)}
|
||||
[:> deprecated-input/numeric-input*
|
||||
{:placeholder "--"
|
||||
:title (tr "workspace.options.radius-bottom-right")
|
||||
:min 0
|
||||
:on-change on-radius-r3-change
|
||||
:value (:r3 values)}]]])
|
||||
[:> numeric-input-wrapper*
|
||||
{:on-change on-radius-r2-change
|
||||
:on-detach on-detach-r2
|
||||
:min 0
|
||||
:name :border-radius
|
||||
:nillable true
|
||||
:property (tr "workspace.options.radius-top-right")
|
||||
:applied-tokens applied-tokens
|
||||
:align :right
|
||||
:class (stl/css :radius-wrapper)
|
||||
:inner-class (stl/css :no-icon-input)
|
||||
:radius :r2
|
||||
:values (:r2 values)}]
|
||||
|
||||
[:> numeric-input-wrapper*
|
||||
{:on-change on-radius-r4-change
|
||||
:on-detach on-detach-r4
|
||||
:min 0
|
||||
:name :border-radius
|
||||
:nillable true
|
||||
:property (tr "workspace.options.radius-bottom-left")
|
||||
:applied-tokens applied-tokens
|
||||
:class (stl/css :radius-wrapper :dropdown-offset)
|
||||
:inner-class (stl/css :no-icon-input)
|
||||
:radius :r4
|
||||
:align :right
|
||||
:values (:r4 values)}]
|
||||
|
||||
[:> numeric-input-wrapper*
|
||||
{:on-change on-radius-r3-change
|
||||
:on-detach on-detach-r3
|
||||
:min 0
|
||||
:name :border-radius
|
||||
:nillable true
|
||||
:property (tr "workspace.options.radius-bottom-right")
|
||||
:applied-tokens applied-tokens
|
||||
:radius :r3
|
||||
:align :right
|
||||
:class (stl/css :radius-wrapper)
|
||||
:inner-class (stl/css :no-icon-input)
|
||||
:values (:r3 values)}]]
|
||||
|
||||
[:div {:class (stl/css :radius-4)}
|
||||
[:div {:class (stl/css :small-input)}
|
||||
[:> deprecated-input/numeric-input*
|
||||
{:placeholder "--"
|
||||
:title (tr "workspace.options.radius-top-left")
|
||||
:min 0
|
||||
:on-change on-radius-r1-change
|
||||
:value (:r1 values)}]]
|
||||
|
||||
[:div {:class (stl/css :small-input)}
|
||||
[:> deprecated-input/numeric-input*
|
||||
{:placeholder "--"
|
||||
:title (tr "workspace.options.radius-top-right")
|
||||
:min 0
|
||||
:on-change on-radius-r2-change
|
||||
:value (:r2 values)}]]
|
||||
|
||||
[:div {:class (stl/css :small-input)}
|
||||
[:> deprecated-input/numeric-input*
|
||||
{:placeholder "--"
|
||||
:title (tr "workspace.options.radius-bottom-left")
|
||||
:min 0
|
||||
:on-change on-radius-r4-change
|
||||
:value (:r4 values)}]]
|
||||
|
||||
[:div {:class (stl/css :small-input)}
|
||||
[:> deprecated-input/numeric-input*
|
||||
{:placeholder "--"
|
||||
:title (tr "workspace.options.radius-bottom-right")
|
||||
:min 0
|
||||
:on-change on-radius-r3-change
|
||||
:value (:r3 values)}]]]))
|
||||
|
||||
[:> icon-button* {:variant "ghost"
|
||||
:on-click toggle-radius-mode
|
||||
|
||||
@@ -5,6 +5,8 @@
|
||||
// Copyright (c) KALEIDOS INC
|
||||
|
||||
@use "refactor/common-refactor.scss" as deprecated;
|
||||
@use "ds/typography" as t;
|
||||
@use "ds/_utils.scss" as *;
|
||||
|
||||
.radius {
|
||||
display: grid;
|
||||
@@ -14,7 +16,7 @@
|
||||
|
||||
.radius-1 {
|
||||
@extend .input-element;
|
||||
@include deprecated.bodySmallTypography;
|
||||
@include t.use-typography("body-small");
|
||||
}
|
||||
|
||||
.radius-4 {
|
||||
@@ -25,9 +27,27 @@
|
||||
|
||||
.small-input {
|
||||
@extend .input-element;
|
||||
@include deprecated.bodySmallTypography;
|
||||
@include t.use-typography("body-small");
|
||||
}
|
||||
|
||||
.selected {
|
||||
border-color: var(--button-icon-border-color-selected);
|
||||
background-color: var(--button-icon-background-color-selected);
|
||||
color: var(--color-accent-primary);
|
||||
}
|
||||
|
||||
.icon {
|
||||
margin-inline: deprecated.$s-4;
|
||||
margin-inline: var(--sp-xs);
|
||||
}
|
||||
|
||||
.radius-wrapper {
|
||||
--dropdown-width: var(--7-columns-dropdown-width);
|
||||
}
|
||||
|
||||
.no-icon-input {
|
||||
padding-inline-start: px2rem(6);
|
||||
}
|
||||
|
||||
.dropdown-offset {
|
||||
--dropdown-offset: #{px2rem(-65)};
|
||||
}
|
||||
|
||||
@@ -78,7 +78,7 @@
|
||||
(nil? (get values name)))
|
||||
(tr "settings.multiple")
|
||||
"--")
|
||||
:class (stl/css :numeric-input-measures)
|
||||
:class (stl/css :numeric-input-layout)
|
||||
:applied-token (get applied-tokens name)
|
||||
:tokens tokens
|
||||
:align align
|
||||
|
||||
@@ -358,6 +358,6 @@
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.numeric-input-measures {
|
||||
.numeric-input-layout {
|
||||
--dropdown-width: var(--7-columns-dropdown-width);
|
||||
}
|
||||
|
||||
@@ -600,10 +600,7 @@
|
||||
[:> border-radius-menu* {:class (stl/css :border-radius)
|
||||
:ids ids
|
||||
:values values
|
||||
:applied-tokens applied-tokens
|
||||
:shapes shapes
|
||||
:shape shape}])])
|
||||
|
||||
:applied-tokens applied-tokens}])])
|
||||
(when (or (options :clip-content)
|
||||
(options :show-in-viewer))
|
||||
[:div {:class (stl/css :clip-show)}
|
||||
|
||||
@@ -6,6 +6,7 @@
|
||||
|
||||
@use "refactor/common-refactor.scss" as deprecated;
|
||||
@use "../../../sidebar/common/sidebar.scss" as sidebar;
|
||||
@use "ds/_utils.scss" as *;
|
||||
|
||||
.element-set {
|
||||
display: grid;
|
||||
@@ -156,7 +157,6 @@
|
||||
gap: deprecated.$s-4;
|
||||
}
|
||||
|
||||
// TODO: Add a proper variable to this sizing
|
||||
.numeric-input-measures {
|
||||
--dropdown-width: var(--7-columns-dropdown-width);
|
||||
}
|
||||
|
||||
@@ -127,7 +127,8 @@
|
||||
(-> shadow
|
||||
(assoc attr value)
|
||||
(ctss/check-shadow))))))))))]
|
||||
[:div {:class (stl/css :shadow-section)}
|
||||
[:div {:data-testid "shadow-section"
|
||||
:class (stl/css :shadow-section)}
|
||||
[:div {:class (stl/css :shadow-title)}
|
||||
[:> title-bar* {:collapsable has-shadows?
|
||||
:collapsed (not show-content?)
|
||||
|
||||
@@ -147,11 +147,7 @@
|
||||
on-change on-reorder on-detach on-open on-close on-remove origin on-detach-token
|
||||
disable-drag on-focus on-blur select-only select-on-focus on-token-change applied-token]}]
|
||||
|
||||
(let [;; TODO: Remove this workaround fixing `get-attrs*` fn on sidebar/options/shapes/multiple.cljs
|
||||
applied-token (if (= :multiple applied-token)
|
||||
nil
|
||||
applied-token)
|
||||
token-color (contains? cfg/flags :token-color)
|
||||
(let [token-color (contains? cfg/flags :token-color)
|
||||
libraries (mf/deref refs/files)
|
||||
|
||||
color-without-hash (mf/use-memo
|
||||
|
||||
@@ -236,10 +236,8 @@
|
||||
(fn [acc shape-attrs applied-tokens]
|
||||
"Merges token values across all shape attributes.
|
||||
For each shape attribute, its corresponding token attributes are merged
|
||||
into the accumulator. If applied tokens are empty, the accumulator is returned unchanged."
|
||||
(if (seq applied-tokens)
|
||||
(reduce #(merge-shape-attr %1 applied-tokens %2) acc shape-attrs)
|
||||
acc))
|
||||
into the accumulator."
|
||||
(reduce #(merge-shape-attr %1 applied-tokens %2) acc shape-attrs))
|
||||
|
||||
extract-attrs
|
||||
(fn [[ids values token-acc] {:keys [id type applied-tokens] :as shape}]
|
||||
|
||||
@@ -44,7 +44,7 @@
|
||||
{::mf/private true}
|
||||
[{:keys [tokens-lib selected-token-set-id]}]
|
||||
(let [selected-token-set
|
||||
(mf/with-memo [tokens-lib]
|
||||
(mf/with-memo [tokens-lib selected-token-set-id]
|
||||
(when selected-token-set-id
|
||||
(some-> tokens-lib (ctob/get-set selected-token-set-id))))
|
||||
|
||||
@@ -60,18 +60,20 @@
|
||||
[:div {:class (stl/css :sets-header-container)}
|
||||
[:> text* {:as "span"
|
||||
:typography "headline-small"
|
||||
:class (stl/css :sets-header)}
|
||||
:class (stl/css :sets-header)
|
||||
:data-testid "active-token-set-title"}
|
||||
(tr "workspace.tokens.tokens-section-title" (ctob/get-name selected-token-set))]
|
||||
[:div {:class (stl/css :sets-header-status) :title (tr "workspace.tokens.inactive-set-description")}
|
||||
(when (and (some? selected-token-set-id)
|
||||
(not (token-set-active? (ctob/get-name selected-token-set))))
|
||||
[:div {:class (stl/css :sets-header-status) :title (tr "workspace.tokens.inactive-set-description")}
|
||||
;; NOTE: when no set in tokens-lib, the selected-token-set-id
|
||||
;; will be `nil`, so for properly hide the inactive message we
|
||||
;; check that at least `selected-token-set-id` has a value
|
||||
(when (and (some? selected-token-set-id)
|
||||
(not (token-set-active? (ctob/get-name selected-token-set))))
|
||||
|
||||
[:*
|
||||
[:> icon* {:class (stl/css :sets-header-status-icon) :icon-id i/eye-off}]
|
||||
[:> text* {:as "span" :typography "body-small" :class (stl/css :sets-header-status-text)}
|
||||
(tr "workspace.tokens.inactive-set")]])]]))
|
||||
(tr "workspace.tokens.inactive-set")]]])]))
|
||||
|
||||
(mf/defc tokens-section*
|
||||
{::mf/private true}
|
||||
@@ -135,7 +137,7 @@
|
||||
[:*
|
||||
[:& token-context-menu]
|
||||
|
||||
[:& selected-set-info* {:tokens-lib tokens-lib
|
||||
[:> selected-set-info* {:tokens-lib tokens-lib
|
||||
:selected-token-set-id selected-token-set-id}]
|
||||
|
||||
(for [type filled-group]
|
||||
|
||||
@@ -7,6 +7,7 @@
|
||||
(ns app.main.ui.workspace.tokens.management.forms.controls.input
|
||||
(:require
|
||||
[app.common.data :as d]
|
||||
[app.common.files.tokens :as cft]
|
||||
[app.common.types.tokens-lib :as ctob]
|
||||
[app.main.data.style-dictionary :as sd]
|
||||
[app.main.data.workspace.tokens.format :as dwtf]
|
||||
@@ -292,7 +293,7 @@
|
||||
(mf/spread-props props {:hint-formated true})
|
||||
props)]
|
||||
|
||||
(mf/with-effect [resolve-stream tokens token input-name]
|
||||
(mf/with-effect [resolve-stream tokens token input-name name]
|
||||
(let [subs (->> resolve-stream
|
||||
(rx/debounce 300)
|
||||
(rx/mapcat (partial resolve-value tokens token))
|
||||
@@ -317,11 +318,21 @@
|
||||
(reset! hint* {:message error' :type "error"}))
|
||||
|
||||
:else
|
||||
(let [message (tr "workspace.tokens.resolved-value" (dwtf/format-token-value value))
|
||||
input-value (get-in @form [:data :value input-name] "")]
|
||||
(let [input-value (get-in @form [:data :value input-name] "")
|
||||
resolved-value (if (= name :line-height)
|
||||
(when-let [{:keys [unit value]} (cft/parse-token-value input-value)]
|
||||
(let [font-size (get-in @form [:data :value :font-size] "")
|
||||
calculated (case unit
|
||||
"%" (/ (d/parse-double value) 100)
|
||||
"px" (/ (d/parse-double value) (d/parse-double font-size))
|
||||
nil value
|
||||
nil)]
|
||||
(dwtf/format-token-value calculated)))
|
||||
(dwtf/format-token-value value))
|
||||
message (tr "workspace.tokens.resolved-value" (or resolved-value value))]
|
||||
(swap! form update :errors dissoc :value)
|
||||
(swap! form update :extra-errors dissoc :value)
|
||||
(if (= input-value (str value))
|
||||
(if (= input-value (str resolved-value))
|
||||
(reset! hint* {})
|
||||
(reset! hint* {:message message :type "hint"})))))))]
|
||||
(fn []
|
||||
|
||||
@@ -95,9 +95,9 @@
|
||||
line-height-sub-token
|
||||
(mf/with-memo [token]
|
||||
(if-let [value (get token :value)]
|
||||
{:type :number
|
||||
{:type :dimensions
|
||||
:value (get value :line-height)}
|
||||
{:type :number}))
|
||||
{:type :dimensions}))
|
||||
|
||||
text-case-sub-token
|
||||
(mf/with-memo [token]
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"PO-Revision-Date: 2026-01-08 17:06+0000\n"
|
||||
"Last-Translator: Shuaib Zahda <shuaib.zahda@gmail.com>\n"
|
||||
"Language-Team: Arabic <https://hosted.weblate.org/projects/penpot/frontend/"
|
||||
"ar/>\n"
|
||||
"Language-Team: Arabic "
|
||||
"<https://hosted.weblate.org/projects/penpot/frontend/ar/>\n"
|
||||
"Language: ar\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=utf-8\n"
|
||||
@@ -394,7 +394,7 @@ msgid "dashboard.export-standard-multi"
|
||||
msgstr "تحميل %s ملفات أساسية (.svg + .json)"
|
||||
|
||||
#: src/app/main/ui/exports/files.cljs:155
|
||||
#, fuzzy, unused
|
||||
#, unused
|
||||
msgid "dashboard.export.explain"
|
||||
msgstr ""
|
||||
"ملف أو أكثر تريد تصديرهم يستخدمون مكتبات مشتركة. ماذا تريد أن تفعل في "
|
||||
@@ -542,7 +542,7 @@ msgstr "انقل إلى"
|
||||
msgid "dashboard.move-to-multi"
|
||||
msgstr "انقل %s ملف إلى"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:248
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:250
|
||||
msgid "dashboard.move-to-other-team"
|
||||
msgstr "انقل إلى فريق آخر"
|
||||
|
||||
@@ -590,7 +590,7 @@ msgstr "%s الأعضاء"
|
||||
msgid "dashboard.open-in-new-tab"
|
||||
msgstr "افتح الملف في لسان جديد"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:147, src/app/main/ui/dashboard/deleted.cljs:148, src/app/main/ui/dashboard/files.cljs:120, src/app/main/ui/dashboard/grid.cljs:442, src/app/main/ui/dashboard/projects.cljs:266, src/app/main/ui/dashboard/projects.cljs:267
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:157, src/app/main/ui/dashboard/deleted.cljs:158, src/app/main/ui/dashboard/files.cljs:120, src/app/main/ui/dashboard/grid.cljs:442, src/app/main/ui/dashboard/projects.cljs:266, src/app/main/ui/dashboard/projects.cljs:267
|
||||
msgid "dashboard.options"
|
||||
msgstr "الخيارات"
|
||||
|
||||
@@ -602,7 +602,7 @@ msgstr "غيّر كلمة السر"
|
||||
msgid "dashboard.pin-unpin"
|
||||
msgstr "ثبت/ألغِ التثبيت"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:41, src/app/main/ui/dashboard/projects.cljs:57
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:62, src/app/main/ui/dashboard/projects.cljs:57
|
||||
msgid "dashboard.projects-title"
|
||||
msgstr "المشاريع"
|
||||
|
||||
@@ -639,7 +639,7 @@ msgstr "حدّد نَسقا"
|
||||
msgid "dashboard.show-all-files"
|
||||
msgstr "أظهر كل الملفات"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:97
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:98
|
||||
msgid "dashboard.success-delete-file"
|
||||
msgstr "تم حذف ملفك بنجاح"
|
||||
|
||||
@@ -647,7 +647,7 @@ msgstr "تم حذف ملفك بنجاح"
|
||||
msgid "dashboard.success-delete-project"
|
||||
msgstr "تم حذف مشروعك بنجاح"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:92
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:93
|
||||
msgid "dashboard.success-duplicate-file"
|
||||
msgstr "تم تكرار ملفك بنجاح"
|
||||
|
||||
@@ -655,11 +655,11 @@ msgstr "تم تكرار ملفك بنجاح"
|
||||
msgid "dashboard.success-duplicate-project"
|
||||
msgstr "كُرّر مشروعك بنجاح"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:131, src/app/main/ui/dashboard/grid.cljs:634, src/app/main/ui/dashboard/sidebar.cljs:165
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:132, src/app/main/ui/dashboard/grid.cljs:634, src/app/main/ui/dashboard/sidebar.cljs:165
|
||||
msgid "dashboard.success-move-file"
|
||||
msgstr "نُقل ملفك بنجاح"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:130
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:131
|
||||
msgid "dashboard.success-move-files"
|
||||
msgstr "نُقلت الملفات بنجاح"
|
||||
|
||||
@@ -727,7 +727,7 @@ msgstr "البريد الالكتروني"
|
||||
msgid "dashboard.your-name"
|
||||
msgstr "اسمك"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:39, src/app/main/ui/dashboard/fonts.cljs:42, src/app/main/ui/dashboard/libraries.cljs:56, src/app/main/ui/dashboard/projects.cljs:355, src/app/main/ui/dashboard/search.cljs:48, src/app/main/ui/dashboard/sidebar.cljs:302, src/app/main/ui/dashboard/team.cljs:537, src/app/main/ui/dashboard/team.cljs:983, src/app/main/ui/dashboard/team.cljs:1251, src/app/main/ui/dashboard/team.cljs:1298
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:40, src/app/main/ui/dashboard/fonts.cljs:42, src/app/main/ui/dashboard/libraries.cljs:56, src/app/main/ui/dashboard/projects.cljs:355, src/app/main/ui/dashboard/search.cljs:48, src/app/main/ui/dashboard/sidebar.cljs:302, src/app/main/ui/dashboard/team.cljs:537, src/app/main/ui/dashboard/team.cljs:983, src/app/main/ui/dashboard/team.cljs:1251, src/app/main/ui/dashboard/team.cljs:1298
|
||||
msgid "dashboard.your-penpot"
|
||||
msgstr "Penpot الخاص بك"
|
||||
|
||||
@@ -1260,7 +1260,7 @@ msgstr ""
|
||||
msgid "labels.bad-gateway.main-message"
|
||||
msgstr "مدخل خاطأ"
|
||||
|
||||
#: src/app/main/data/common.cljs:119, src/app/main/ui/dashboard/change_owner.cljs:64, src/app/main/ui/dashboard/import.cljs:515, src/app/main/ui/dashboard/team.cljs:780, src/app/main/ui/dashboard/team.cljs:1122, src/app/main/ui/delete_shared.cljs:38, src/app/main/ui/exports/assets.cljs:163, src/app/main/ui/exports/files.cljs:168, src/app/main/ui/settings/access_tokens.cljs:175, src/app/main/ui/viewer/share_link.cljs:208, src/app/main/ui/workspace/sidebar/assets/groups.cljs:159, src/app/main/ui/workspace/tokens/export/modal.cljs:44, src/app/main/ui/workspace/tokens/import/modal.cljs:269, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:295, src/app/main/ui/workspace/tokens/remapping_modal.cljs:99, src/app/main/ui/workspace/tokens/settings/menu.cljs:105, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:265
|
||||
#: src/app/main/data/common.cljs:119, src/app/main/ui/dashboard/change_owner.cljs:64, src/app/main/ui/dashboard/import.cljs:515, src/app/main/ui/dashboard/team.cljs:780, src/app/main/ui/dashboard/team.cljs:1122, src/app/main/ui/delete_shared.cljs:38, src/app/main/ui/exports/assets.cljs:163, src/app/main/ui/exports/files.cljs:168, src/app/main/ui/settings/access_tokens.cljs:175, src/app/main/ui/viewer/share_link.cljs:208, src/app/main/ui/workspace/sidebar/assets/groups.cljs:159, src/app/main/ui/workspace/tokens/export/modal.cljs:44, src/app/main/ui/workspace/tokens/import/modal.cljs:269, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:298, src/app/main/ui/workspace/tokens/remapping_modal.cljs:99, src/app/main/ui/workspace/tokens/settings/menu.cljs:105, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:265
|
||||
msgid "labels.cancel"
|
||||
msgstr "ألغِ"
|
||||
|
||||
@@ -1284,7 +1284,7 @@ msgstr "مجتمع"
|
||||
msgid "labels.confirm-password"
|
||||
msgstr "أكّد كلمة السر"
|
||||
|
||||
#: src/app/main/ui/auth/login.cljs:204, src/app/main/ui/dashboard/deleted.cljs:57, src/app/main/ui/dashboard/deleted.cljs:264, src/app/main/ui/dashboard/file_menu.cljs:208, src/app/main/ui/dashboard/import.cljs:521, src/app/main/ui/dashboard/team.cljs:787, src/app/main/ui/exports/files.cljs:173, src/app/main/ui/onboarding/newsletter.cljs:106, src/app/main/ui/settings/subscription.cljs:279, src/app/main/ui/settings/subscription.cljs:313
|
||||
#: src/app/main/ui/auth/login.cljs:204, src/app/main/ui/dashboard/deleted.cljs:43, src/app/main/ui/dashboard/deleted.cljs:275, src/app/main/ui/dashboard/file_menu.cljs:210, src/app/main/ui/dashboard/import.cljs:521, src/app/main/ui/dashboard/team.cljs:787, src/app/main/ui/exports/files.cljs:173, src/app/main/ui/onboarding/newsletter.cljs:106, src/app/main/ui/settings/subscription.cljs:279, src/app/main/ui/settings/subscription.cljs:313
|
||||
msgid "labels.continue"
|
||||
msgstr "استمر"
|
||||
|
||||
@@ -1316,7 +1316,7 @@ msgstr "خطوط مخصصة"
|
||||
msgid "labels.dashboard"
|
||||
msgstr "لوحة التحكم"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:338, src/app/main/ui/dashboard/fonts.cljs:267, src/app/main/ui/dashboard/fonts.cljs:343, src/app/main/ui/dashboard/fonts.cljs:357, src/app/main/ui/dashboard/project_menu.cljs:115, src/app/main/ui/dashboard/team.cljs:1158, src/app/main/ui/settings/access_tokens.cljs:196, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:223, src/app/main/ui/workspace/sidebar/versions.cljs:216, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:288, src/app/main/ui/workspace/tokens/sets/context_menu.cljs:66, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:399
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:338, src/app/main/ui/dashboard/fonts.cljs:267, src/app/main/ui/dashboard/fonts.cljs:343, src/app/main/ui/dashboard/fonts.cljs:357, src/app/main/ui/dashboard/project_menu.cljs:115, src/app/main/ui/dashboard/team.cljs:1158, src/app/main/ui/settings/access_tokens.cljs:196, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:223, src/app/main/ui/workspace/sidebar/versions.cljs:216, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:291, src/app/main/ui/workspace/tokens/sets/context_menu.cljs:66, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:399
|
||||
msgid "labels.delete"
|
||||
msgstr "حذف"
|
||||
|
||||
@@ -1336,7 +1336,7 @@ msgstr "حذف الدعوة"
|
||||
msgid "labels.delete-multi-files"
|
||||
msgstr "حذف %s ملفات"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:29, src/app/main/ui/dashboard/files.cljs:80, src/app/main/ui/dashboard/files.cljs:179, src/app/main/ui/dashboard/projects.cljs:229, src/app/main/ui/dashboard/projects.cljs:233, src/app/main/ui/dashboard/sidebar.cljs:726
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:30, src/app/main/ui/dashboard/files.cljs:80, src/app/main/ui/dashboard/files.cljs:179, src/app/main/ui/dashboard/projects.cljs:229, src/app/main/ui/dashboard/projects.cljs:233, src/app/main/ui/dashboard/sidebar.cljs:726
|
||||
msgid "labels.drafts"
|
||||
msgstr "المسودات"
|
||||
|
||||
@@ -1560,7 +1560,7 @@ msgstr "أعد المحاولة"
|
||||
msgid "labels.role"
|
||||
msgstr "دور"
|
||||
|
||||
#: src/app/main/ui/dashboard/fonts.cljs:395, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:204, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:299, src/app/main/ui/workspace/tokens/settings/menu.cljs:110
|
||||
#: src/app/main/ui/dashboard/fonts.cljs:395, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:204, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:302, src/app/main/ui/workspace/tokens/settings/menu.cljs:110
|
||||
msgid "labels.save"
|
||||
msgstr "حفظ"
|
||||
|
||||
@@ -1724,27 +1724,27 @@ msgstr ""
|
||||
msgid "modals.delete-comment-thread.title"
|
||||
msgstr "احذف المحادثة"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:124
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:125
|
||||
msgid "modals.delete-file-confirm.accept"
|
||||
msgstr "احذف الملف"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:123
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:124
|
||||
msgid "modals.delete-file-confirm.message"
|
||||
msgstr "هل أنت متأكد أنك تريد حذف هذا الملف؟"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:122
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:123
|
||||
msgid "modals.delete-file-confirm.title"
|
||||
msgstr "حذف الملف"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:118
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:119
|
||||
msgid "modals.delete-file-multi-confirm.accept"
|
||||
msgstr "احذف الملفات"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:117
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:118
|
||||
msgid "modals.delete-file-multi-confirm.message"
|
||||
msgstr "هل تريد بالتأكيد حذف %s من الملفات؟"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:116
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:117
|
||||
msgid "modals.delete-file-multi-confirm.title"
|
||||
msgstr "حذف %s الملفات"
|
||||
|
||||
@@ -2097,7 +2097,7 @@ msgstr "Penpot"
|
||||
msgid "profile.recovery.go-to-login"
|
||||
msgstr "اذهب إلى الولوج"
|
||||
|
||||
#: src/app/main/ui/inspect/exports.cljs:148, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:105, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:107, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:342, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:496, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1062, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1302, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:138, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:149, src/app/main/ui/workspace/sidebar/options/menus/exports.cljs:223, src/app/main/ui/workspace/sidebar/options/menus/fill.cljs:221, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:79, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:430, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:460, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:55, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:56, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:111, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:500, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:511, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:555, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:566, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:595, src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:154, src/app/main/ui/workspace/sidebar/options/menus/stroke.cljs:199, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:336, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:389, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:408, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:427, src/app/main/ui/workspace/sidebar/options/rows/stroke_row.cljs:204
|
||||
#: src/app/main/ui/inspect/exports.cljs:148, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:105, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:107, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:342, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:496, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1062, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1302, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:138, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:149, src/app/main/ui/workspace/sidebar/options/menus/exports.cljs:223, src/app/main/ui/workspace/sidebar/options/menus/fill.cljs:221, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:79, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:430, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:460, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:55, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:56, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:111, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:500, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:511, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:555, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:566, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:595, src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:155, src/app/main/ui/workspace/sidebar/options/menus/stroke.cljs:199, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:336, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:389, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:408, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:427, src/app/main/ui/workspace/sidebar/options/rows/stroke_row.cljs:204
|
||||
msgid "settings.multiple"
|
||||
msgstr "مُختلط"
|
||||
|
||||
@@ -3936,15 +3936,15 @@ msgstr "Y"
|
||||
msgid "workspace.options.shadow-options.spread"
|
||||
msgstr "الانتشار"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:138
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:139
|
||||
msgid "workspace.options.shadow-options.title"
|
||||
msgstr "الظل"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:137
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:138
|
||||
msgid "workspace.options.shadow-options.title.group"
|
||||
msgstr "ظل المجموعة"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:136
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:137
|
||||
msgid "workspace.options.shadow-options.title.multiple"
|
||||
msgstr "ظلال الإختيار"
|
||||
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"PO-Revision-Date: 2026-01-08 17:06+0000\n"
|
||||
"Last-Translator: Aryiu <aryiu@users.noreply.hosted.weblate.org>\n"
|
||||
"Language-Team: Catalan <https://hosted.weblate.org/projects/penpot/frontend/"
|
||||
"ca/>\n"
|
||||
"Language-Team: Catalan "
|
||||
"<https://hosted.weblate.org/projects/penpot/frontend/ca/>\n"
|
||||
"Language: ca\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=utf-8\n"
|
||||
@@ -382,7 +382,7 @@ msgid "dashboard.export-standard-multi"
|
||||
msgstr "Baixa %s fitxers estàndard (.svg + .json)"
|
||||
|
||||
#: src/app/main/ui/exports/files.cljs:155
|
||||
#, fuzzy, unused
|
||||
#, unused
|
||||
msgid "dashboard.export.explain"
|
||||
msgstr ""
|
||||
"Un o més fitxers que voleu exportar utilitzen biblioteques compartides. Què "
|
||||
@@ -521,7 +521,7 @@ msgstr "Mou a"
|
||||
msgid "dashboard.move-to-multi"
|
||||
msgstr "Mou %s fitxers a"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:248
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:250
|
||||
msgid "dashboard.move-to-other-team"
|
||||
msgstr "Mou a un altre equip"
|
||||
|
||||
@@ -569,7 +569,7 @@ msgstr "%s membres"
|
||||
msgid "dashboard.open-in-new-tab"
|
||||
msgstr "Obre el fitxer en una pestanya nova"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:147, src/app/main/ui/dashboard/deleted.cljs:148, src/app/main/ui/dashboard/files.cljs:120, src/app/main/ui/dashboard/grid.cljs:442, src/app/main/ui/dashboard/projects.cljs:266, src/app/main/ui/dashboard/projects.cljs:267
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:157, src/app/main/ui/dashboard/deleted.cljs:158, src/app/main/ui/dashboard/files.cljs:120, src/app/main/ui/dashboard/grid.cljs:442, src/app/main/ui/dashboard/projects.cljs:266, src/app/main/ui/dashboard/projects.cljs:267
|
||||
msgid "dashboard.options"
|
||||
msgstr "Opcions"
|
||||
|
||||
@@ -581,7 +581,7 @@ msgstr "Canvia la contrasenya"
|
||||
msgid "dashboard.pin-unpin"
|
||||
msgstr "Fixa/Deixa de fixar"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:41, src/app/main/ui/dashboard/projects.cljs:57
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:62, src/app/main/ui/dashboard/projects.cljs:57
|
||||
msgid "dashboard.projects-title"
|
||||
msgstr "Projectes"
|
||||
|
||||
@@ -618,7 +618,7 @@ msgstr "Selecciona un tema"
|
||||
msgid "dashboard.show-all-files"
|
||||
msgstr "Mostra tots els fitxers"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:97
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:98
|
||||
msgid "dashboard.success-delete-file"
|
||||
msgstr "S'ha eliminat el fitxer"
|
||||
|
||||
@@ -626,7 +626,7 @@ msgstr "S'ha eliminat el fitxer"
|
||||
msgid "dashboard.success-delete-project"
|
||||
msgstr "S'ha eliminat el projecte"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:92
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:93
|
||||
msgid "dashboard.success-duplicate-file"
|
||||
msgstr "S'ha duplicat el fitxer"
|
||||
|
||||
@@ -634,11 +634,11 @@ msgstr "S'ha duplicat el fitxer"
|
||||
msgid "dashboard.success-duplicate-project"
|
||||
msgstr "S'ha eliminat el projecte"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:131, src/app/main/ui/dashboard/grid.cljs:634, src/app/main/ui/dashboard/sidebar.cljs:165
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:132, src/app/main/ui/dashboard/grid.cljs:634, src/app/main/ui/dashboard/sidebar.cljs:165
|
||||
msgid "dashboard.success-move-file"
|
||||
msgstr "S'ha mogut el fitxer"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:130
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:131
|
||||
msgid "dashboard.success-move-files"
|
||||
msgstr "S'han mogut els fitxers"
|
||||
|
||||
@@ -690,7 +690,7 @@ msgstr "Correu electrònic"
|
||||
msgid "dashboard.your-name"
|
||||
msgstr "Nom"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:39, src/app/main/ui/dashboard/fonts.cljs:42, src/app/main/ui/dashboard/libraries.cljs:56, src/app/main/ui/dashboard/projects.cljs:355, src/app/main/ui/dashboard/search.cljs:48, src/app/main/ui/dashboard/sidebar.cljs:302, src/app/main/ui/dashboard/team.cljs:537, src/app/main/ui/dashboard/team.cljs:983, src/app/main/ui/dashboard/team.cljs:1251, src/app/main/ui/dashboard/team.cljs:1298
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:40, src/app/main/ui/dashboard/fonts.cljs:42, src/app/main/ui/dashboard/libraries.cljs:56, src/app/main/ui/dashboard/projects.cljs:355, src/app/main/ui/dashboard/search.cljs:48, src/app/main/ui/dashboard/sidebar.cljs:302, src/app/main/ui/dashboard/team.cljs:537, src/app/main/ui/dashboard/team.cljs:983, src/app/main/ui/dashboard/team.cljs:1251, src/app/main/ui/dashboard/team.cljs:1298
|
||||
msgid "dashboard.your-penpot"
|
||||
msgstr "El meu Penpot"
|
||||
|
||||
@@ -1184,7 +1184,7 @@ msgstr ""
|
||||
msgid "labels.bad-gateway.main-message"
|
||||
msgstr "Error del servidor (Bad Gateway)"
|
||||
|
||||
#: src/app/main/data/common.cljs:119, src/app/main/ui/dashboard/change_owner.cljs:64, src/app/main/ui/dashboard/import.cljs:515, src/app/main/ui/dashboard/team.cljs:780, src/app/main/ui/dashboard/team.cljs:1122, src/app/main/ui/delete_shared.cljs:38, src/app/main/ui/exports/assets.cljs:163, src/app/main/ui/exports/files.cljs:168, src/app/main/ui/settings/access_tokens.cljs:175, src/app/main/ui/viewer/share_link.cljs:208, src/app/main/ui/workspace/sidebar/assets/groups.cljs:159, src/app/main/ui/workspace/tokens/export/modal.cljs:44, src/app/main/ui/workspace/tokens/import/modal.cljs:269, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:295, src/app/main/ui/workspace/tokens/remapping_modal.cljs:99, src/app/main/ui/workspace/tokens/settings/menu.cljs:105, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:265
|
||||
#: src/app/main/data/common.cljs:119, src/app/main/ui/dashboard/change_owner.cljs:64, src/app/main/ui/dashboard/import.cljs:515, src/app/main/ui/dashboard/team.cljs:780, src/app/main/ui/dashboard/team.cljs:1122, src/app/main/ui/delete_shared.cljs:38, src/app/main/ui/exports/assets.cljs:163, src/app/main/ui/exports/files.cljs:168, src/app/main/ui/settings/access_tokens.cljs:175, src/app/main/ui/viewer/share_link.cljs:208, src/app/main/ui/workspace/sidebar/assets/groups.cljs:159, src/app/main/ui/workspace/tokens/export/modal.cljs:44, src/app/main/ui/workspace/tokens/import/modal.cljs:269, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:298, src/app/main/ui/workspace/tokens/remapping_modal.cljs:99, src/app/main/ui/workspace/tokens/settings/menu.cljs:105, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:265
|
||||
msgid "labels.cancel"
|
||||
msgstr "Cancel·la"
|
||||
|
||||
@@ -1208,7 +1208,7 @@ msgstr "Comunitat"
|
||||
msgid "labels.confirm-password"
|
||||
msgstr "Confirmeu la contrasenya"
|
||||
|
||||
#: src/app/main/ui/auth/login.cljs:204, src/app/main/ui/dashboard/deleted.cljs:57, src/app/main/ui/dashboard/deleted.cljs:264, src/app/main/ui/dashboard/file_menu.cljs:208, src/app/main/ui/dashboard/import.cljs:521, src/app/main/ui/dashboard/team.cljs:787, src/app/main/ui/exports/files.cljs:173, src/app/main/ui/onboarding/newsletter.cljs:106, src/app/main/ui/settings/subscription.cljs:279, src/app/main/ui/settings/subscription.cljs:313
|
||||
#: src/app/main/ui/auth/login.cljs:204, src/app/main/ui/dashboard/deleted.cljs:43, src/app/main/ui/dashboard/deleted.cljs:275, src/app/main/ui/dashboard/file_menu.cljs:210, src/app/main/ui/dashboard/import.cljs:521, src/app/main/ui/dashboard/team.cljs:787, src/app/main/ui/exports/files.cljs:173, src/app/main/ui/onboarding/newsletter.cljs:106, src/app/main/ui/settings/subscription.cljs:279, src/app/main/ui/settings/subscription.cljs:313
|
||||
msgid "labels.continue"
|
||||
msgstr "Continua"
|
||||
|
||||
@@ -1244,7 +1244,7 @@ msgstr "Tipografies personalitzades"
|
||||
msgid "labels.dashboard"
|
||||
msgstr "Tauler"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:338, src/app/main/ui/dashboard/fonts.cljs:267, src/app/main/ui/dashboard/fonts.cljs:343, src/app/main/ui/dashboard/fonts.cljs:357, src/app/main/ui/dashboard/project_menu.cljs:115, src/app/main/ui/dashboard/team.cljs:1158, src/app/main/ui/settings/access_tokens.cljs:196, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:223, src/app/main/ui/workspace/sidebar/versions.cljs:216, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:288, src/app/main/ui/workspace/tokens/sets/context_menu.cljs:66, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:399
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:338, src/app/main/ui/dashboard/fonts.cljs:267, src/app/main/ui/dashboard/fonts.cljs:343, src/app/main/ui/dashboard/fonts.cljs:357, src/app/main/ui/dashboard/project_menu.cljs:115, src/app/main/ui/dashboard/team.cljs:1158, src/app/main/ui/settings/access_tokens.cljs:196, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:223, src/app/main/ui/workspace/sidebar/versions.cljs:216, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:291, src/app/main/ui/workspace/tokens/sets/context_menu.cljs:66, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:399
|
||||
msgid "labels.delete"
|
||||
msgstr "Elimina"
|
||||
|
||||
@@ -1264,7 +1264,7 @@ msgstr "Esborra invitació"
|
||||
msgid "labels.delete-multi-files"
|
||||
msgstr "Elimina %s fitxers"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:29, src/app/main/ui/dashboard/files.cljs:80, src/app/main/ui/dashboard/files.cljs:179, src/app/main/ui/dashboard/projects.cljs:229, src/app/main/ui/dashboard/projects.cljs:233, src/app/main/ui/dashboard/sidebar.cljs:726
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:30, src/app/main/ui/dashboard/files.cljs:80, src/app/main/ui/dashboard/files.cljs:179, src/app/main/ui/dashboard/projects.cljs:229, src/app/main/ui/dashboard/projects.cljs:233, src/app/main/ui/dashboard/sidebar.cljs:726
|
||||
msgid "labels.drafts"
|
||||
msgstr "Esborranys"
|
||||
|
||||
@@ -1483,7 +1483,7 @@ msgstr "Tornar a intentar-ho"
|
||||
msgid "labels.role"
|
||||
msgstr "Rol"
|
||||
|
||||
#: src/app/main/ui/dashboard/fonts.cljs:395, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:204, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:299, src/app/main/ui/workspace/tokens/settings/menu.cljs:110
|
||||
#: src/app/main/ui/dashboard/fonts.cljs:395, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:204, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:302, src/app/main/ui/workspace/tokens/settings/menu.cljs:110
|
||||
msgid "labels.save"
|
||||
msgstr "Desa"
|
||||
|
||||
@@ -1670,27 +1670,27 @@ msgstr ""
|
||||
msgid "modals.delete-comment-thread.title"
|
||||
msgstr "Elimina la conversa"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:124
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:125
|
||||
msgid "modals.delete-file-confirm.accept"
|
||||
msgstr "Elimina el fitxer"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:123
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:124
|
||||
msgid "modals.delete-file-confirm.message"
|
||||
msgstr "Segur que voleu eliminar el fitxer?"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:122
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:123
|
||||
msgid "modals.delete-file-confirm.title"
|
||||
msgstr "Eliminar el fitxer"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:118
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:119
|
||||
msgid "modals.delete-file-multi-confirm.accept"
|
||||
msgstr "Elimina fitxers"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:117
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:118
|
||||
msgid "modals.delete-file-multi-confirm.message"
|
||||
msgstr "Segur que voleu eliminar %s fitxers?"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:116
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:117
|
||||
msgid "modals.delete-file-multi-confirm.title"
|
||||
msgstr "S'estan eliminant %s fitxers"
|
||||
|
||||
@@ -1989,7 +1989,7 @@ msgstr "Penpot"
|
||||
msgid "profile.recovery.go-to-login"
|
||||
msgstr "Vés a l'inici de sessió"
|
||||
|
||||
#: src/app/main/ui/inspect/exports.cljs:148, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:105, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:107, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:342, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:496, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1062, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1302, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:138, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:149, src/app/main/ui/workspace/sidebar/options/menus/exports.cljs:223, src/app/main/ui/workspace/sidebar/options/menus/fill.cljs:221, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:79, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:430, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:460, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:55, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:56, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:111, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:500, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:511, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:555, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:566, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:595, src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:154, src/app/main/ui/workspace/sidebar/options/menus/stroke.cljs:199, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:336, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:389, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:408, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:427, src/app/main/ui/workspace/sidebar/options/rows/stroke_row.cljs:204
|
||||
#: src/app/main/ui/inspect/exports.cljs:148, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:105, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:107, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:342, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:496, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1062, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1302, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:138, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:149, src/app/main/ui/workspace/sidebar/options/menus/exports.cljs:223, src/app/main/ui/workspace/sidebar/options/menus/fill.cljs:221, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:79, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:430, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:460, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:55, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:56, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:111, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:500, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:511, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:555, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:566, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:595, src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:155, src/app/main/ui/workspace/sidebar/options/menus/stroke.cljs:199, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:336, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:389, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:408, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:427, src/app/main/ui/workspace/sidebar/options/rows/stroke_row.cljs:204
|
||||
msgid "settings.multiple"
|
||||
msgstr "Mixt"
|
||||
|
||||
@@ -3777,15 +3777,15 @@ msgstr "Y"
|
||||
msgid "workspace.options.shadow-options.spread"
|
||||
msgstr "Difusió"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:138
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:139
|
||||
msgid "workspace.options.shadow-options.title"
|
||||
msgstr "Ombra"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:137
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:138
|
||||
msgid "workspace.options.shadow-options.title.group"
|
||||
msgstr "Ombra del grup"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:136
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:137
|
||||
msgid "workspace.options.shadow-options.title.multiple"
|
||||
msgstr "Ombres de selecció"
|
||||
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"PO-Revision-Date: 2026-01-08 17:06+0000\n"
|
||||
"Last-Translator: \"Amerey.eu\" <info@amerey.eu>\n"
|
||||
"Language-Team: Czech <https://hosted.weblate.org/projects/penpot/frontend/"
|
||||
"cs/>\n"
|
||||
"Language-Team: Czech "
|
||||
"<https://hosted.weblate.org/projects/penpot/frontend/cs/>\n"
|
||||
"Language: cs\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=utf-8\n"
|
||||
@@ -454,11 +454,11 @@ msgstr "Jakmile člen projektu vytvoří koncept, zobrazí se zde."
|
||||
msgid "dashboard.empty-placeholder-drafts-title"
|
||||
msgstr "Zatím žádné koncepty."
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:166, src/app/main/ui/dashboard/files.cljs:204, src/app/main/ui/dashboard/projects.cljs:291
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:176, src/app/main/ui/dashboard/files.cljs:204, src/app/main/ui/dashboard/projects.cljs:291
|
||||
msgid "dashboard.empty-placeholder-files-subtitle"
|
||||
msgstr "Jakmile člen projektu vytvoří soubor, zobrazí se zde."
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:163, src/app/main/ui/dashboard/files.cljs:199, src/app/main/ui/dashboard/projects.cljs:286
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:173, src/app/main/ui/dashboard/files.cljs:199, src/app/main/ui/dashboard/projects.cljs:286
|
||||
msgid "dashboard.empty-placeholder-files-title"
|
||||
msgstr "Zatím žádné soubory."
|
||||
|
||||
@@ -532,7 +532,7 @@ msgid "dashboard.export-standard-multi"
|
||||
msgstr "Stáhnout %s soubory (.svg + .json)"
|
||||
|
||||
#: src/app/main/ui/exports/files.cljs:155
|
||||
#, fuzzy, unused
|
||||
#, unused
|
||||
msgid "dashboard.export.explain"
|
||||
msgstr ""
|
||||
"Jeden nebo více souborů, které chcete exportovat, používá sdílené knihovny. "
|
||||
@@ -708,7 +708,7 @@ msgstr "Přesunout do"
|
||||
msgid "dashboard.move-to-multi"
|
||||
msgstr "Přesunout soubory %s do"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:248
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:250
|
||||
msgid "dashboard.move-to-other-team"
|
||||
msgstr "Přesunout do jiného týmu"
|
||||
|
||||
@@ -768,7 +768,7 @@ msgstr "Počet členů: %s"
|
||||
msgid "dashboard.open-in-new-tab"
|
||||
msgstr "Otevřít soubor na nové kartě"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:147, src/app/main/ui/dashboard/deleted.cljs:148, src/app/main/ui/dashboard/files.cljs:120, src/app/main/ui/dashboard/grid.cljs:442, src/app/main/ui/dashboard/projects.cljs:266, src/app/main/ui/dashboard/projects.cljs:267
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:157, src/app/main/ui/dashboard/deleted.cljs:158, src/app/main/ui/dashboard/files.cljs:120, src/app/main/ui/dashboard/grid.cljs:442, src/app/main/ui/dashboard/projects.cljs:266, src/app/main/ui/dashboard/projects.cljs:267
|
||||
msgid "dashboard.options"
|
||||
msgstr "Možnosti"
|
||||
|
||||
@@ -808,7 +808,7 @@ msgstr "Manifest pluginu nelze analyzovat"
|
||||
msgid "dashboard.plugins.try-plugin"
|
||||
msgstr "Zkuste plugin: "
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:41, src/app/main/ui/dashboard/projects.cljs:57
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:62, src/app/main/ui/dashboard/projects.cljs:57
|
||||
msgid "dashboard.projects-title"
|
||||
msgstr "Projekty"
|
||||
|
||||
@@ -913,7 +913,7 @@ msgstr "Zobrazit všechny soubory"
|
||||
msgid "dashboard.show-version-history"
|
||||
msgstr "Historie verze"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:97
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:98
|
||||
msgid "dashboard.success-delete-file"
|
||||
msgid_plural "dashboard.success-delete-file"
|
||||
msgstr[0] "Váš soubor byl úspěšně smazán"
|
||||
@@ -924,7 +924,7 @@ msgstr[2] "Vaše soubory byly úspěšně smazány"
|
||||
msgid "dashboard.success-delete-project"
|
||||
msgstr "Váš projekt byl úspěšně smazán"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:92
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:93
|
||||
msgid "dashboard.success-duplicate-file"
|
||||
msgid_plural "dashboard.success-delete-file"
|
||||
msgstr[0] "Váš soubor byl úspěšně duplikován"
|
||||
@@ -935,11 +935,11 @@ msgstr[2] "Vaše soubory byly úspěšně duplikovány"
|
||||
msgid "dashboard.success-duplicate-project"
|
||||
msgstr "Váš projekt byl úspěšně duplikován"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:131, src/app/main/ui/dashboard/grid.cljs:634, src/app/main/ui/dashboard/sidebar.cljs:165
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:132, src/app/main/ui/dashboard/grid.cljs:634, src/app/main/ui/dashboard/sidebar.cljs:165
|
||||
msgid "dashboard.success-move-file"
|
||||
msgstr "Váš soubor byl úspěšně přesunut"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:130
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:131
|
||||
msgid "dashboard.success-move-files"
|
||||
msgstr "Vaše soubory byly úspěšně přesunuty"
|
||||
|
||||
@@ -1042,7 +1042,7 @@ msgstr "E-mail"
|
||||
msgid "dashboard.your-name"
|
||||
msgstr "Vaše jméno"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:39, src/app/main/ui/dashboard/fonts.cljs:42, src/app/main/ui/dashboard/libraries.cljs:56, src/app/main/ui/dashboard/projects.cljs:355, src/app/main/ui/dashboard/search.cljs:48, src/app/main/ui/dashboard/sidebar.cljs:302, src/app/main/ui/dashboard/team.cljs:537, src/app/main/ui/dashboard/team.cljs:983, src/app/main/ui/dashboard/team.cljs:1251, src/app/main/ui/dashboard/team.cljs:1298
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:40, src/app/main/ui/dashboard/fonts.cljs:42, src/app/main/ui/dashboard/libraries.cljs:56, src/app/main/ui/dashboard/projects.cljs:355, src/app/main/ui/dashboard/search.cljs:48, src/app/main/ui/dashboard/sidebar.cljs:302, src/app/main/ui/dashboard/team.cljs:537, src/app/main/ui/dashboard/team.cljs:983, src/app/main/ui/dashboard/team.cljs:1251, src/app/main/ui/dashboard/team.cljs:1298
|
||||
msgid "dashboard.your-penpot"
|
||||
msgstr "Váš Penpot"
|
||||
|
||||
@@ -1687,7 +1687,7 @@ msgstr ""
|
||||
msgid "labels.bad-gateway.main-message"
|
||||
msgstr "Špatná brána"
|
||||
|
||||
#: src/app/main/data/common.cljs:119, src/app/main/ui/dashboard/change_owner.cljs:64, src/app/main/ui/dashboard/import.cljs:515, src/app/main/ui/dashboard/team.cljs:780, src/app/main/ui/dashboard/team.cljs:1122, src/app/main/ui/delete_shared.cljs:38, src/app/main/ui/exports/assets.cljs:163, src/app/main/ui/exports/files.cljs:168, src/app/main/ui/settings/access_tokens.cljs:175, src/app/main/ui/viewer/share_link.cljs:208, src/app/main/ui/workspace/sidebar/assets/groups.cljs:159, src/app/main/ui/workspace/tokens/export/modal.cljs:44, src/app/main/ui/workspace/tokens/import/modal.cljs:269, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:295, src/app/main/ui/workspace/tokens/remapping_modal.cljs:99, src/app/main/ui/workspace/tokens/settings/menu.cljs:105, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:265
|
||||
#: src/app/main/data/common.cljs:119, src/app/main/ui/dashboard/change_owner.cljs:64, src/app/main/ui/dashboard/import.cljs:515, src/app/main/ui/dashboard/team.cljs:780, src/app/main/ui/dashboard/team.cljs:1122, src/app/main/ui/delete_shared.cljs:38, src/app/main/ui/exports/assets.cljs:163, src/app/main/ui/exports/files.cljs:168, src/app/main/ui/settings/access_tokens.cljs:175, src/app/main/ui/viewer/share_link.cljs:208, src/app/main/ui/workspace/sidebar/assets/groups.cljs:159, src/app/main/ui/workspace/tokens/export/modal.cljs:44, src/app/main/ui/workspace/tokens/import/modal.cljs:269, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:298, src/app/main/ui/workspace/tokens/remapping_modal.cljs:99, src/app/main/ui/workspace/tokens/settings/menu.cljs:105, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:265
|
||||
msgid "labels.cancel"
|
||||
msgstr "Zrušit"
|
||||
|
||||
@@ -1727,7 +1727,7 @@ msgstr "Komunita"
|
||||
msgid "labels.confirm-password"
|
||||
msgstr "Potvrďte heslo"
|
||||
|
||||
#: src/app/main/ui/auth/login.cljs:204, src/app/main/ui/dashboard/deleted.cljs:57, src/app/main/ui/dashboard/deleted.cljs:264, src/app/main/ui/dashboard/file_menu.cljs:208, src/app/main/ui/dashboard/import.cljs:521, src/app/main/ui/dashboard/team.cljs:787, src/app/main/ui/exports/files.cljs:173, src/app/main/ui/onboarding/newsletter.cljs:106, src/app/main/ui/settings/subscription.cljs:279, src/app/main/ui/settings/subscription.cljs:313
|
||||
#: src/app/main/ui/auth/login.cljs:204, src/app/main/ui/dashboard/deleted.cljs:43, src/app/main/ui/dashboard/deleted.cljs:275, src/app/main/ui/dashboard/file_menu.cljs:210, src/app/main/ui/dashboard/import.cljs:521, src/app/main/ui/dashboard/team.cljs:787, src/app/main/ui/exports/files.cljs:173, src/app/main/ui/onboarding/newsletter.cljs:106, src/app/main/ui/settings/subscription.cljs:279, src/app/main/ui/settings/subscription.cljs:313
|
||||
msgid "labels.continue"
|
||||
msgstr "Pokračovat"
|
||||
|
||||
@@ -1763,7 +1763,7 @@ msgstr "Vlastní písma"
|
||||
msgid "labels.dashboard"
|
||||
msgstr "Menu"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:338, src/app/main/ui/dashboard/fonts.cljs:267, src/app/main/ui/dashboard/fonts.cljs:343, src/app/main/ui/dashboard/fonts.cljs:357, src/app/main/ui/dashboard/project_menu.cljs:115, src/app/main/ui/dashboard/team.cljs:1158, src/app/main/ui/settings/access_tokens.cljs:196, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:223, src/app/main/ui/workspace/sidebar/versions.cljs:216, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:288, src/app/main/ui/workspace/tokens/sets/context_menu.cljs:66, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:399
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:338, src/app/main/ui/dashboard/fonts.cljs:267, src/app/main/ui/dashboard/fonts.cljs:343, src/app/main/ui/dashboard/fonts.cljs:357, src/app/main/ui/dashboard/project_menu.cljs:115, src/app/main/ui/dashboard/team.cljs:1158, src/app/main/ui/settings/access_tokens.cljs:196, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:223, src/app/main/ui/workspace/sidebar/versions.cljs:216, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:291, src/app/main/ui/workspace/tokens/sets/context_menu.cljs:66, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:399
|
||||
msgid "labels.delete"
|
||||
msgstr "Smazat"
|
||||
|
||||
@@ -1796,7 +1796,7 @@ msgstr "Ředitel"
|
||||
msgid "labels.discard"
|
||||
msgstr "Zahodit"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:29, src/app/main/ui/dashboard/files.cljs:80, src/app/main/ui/dashboard/files.cljs:179, src/app/main/ui/dashboard/projects.cljs:229, src/app/main/ui/dashboard/projects.cljs:233, src/app/main/ui/dashboard/sidebar.cljs:726
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:30, src/app/main/ui/dashboard/files.cljs:80, src/app/main/ui/dashboard/files.cljs:179, src/app/main/ui/dashboard/projects.cljs:229, src/app/main/ui/dashboard/projects.cljs:233, src/app/main/ui/dashboard/sidebar.cljs:726
|
||||
msgid "labels.drafts"
|
||||
msgstr "Pracovní verze"
|
||||
|
||||
@@ -2127,7 +2127,7 @@ msgstr "Zkusit znovu"
|
||||
msgid "labels.role"
|
||||
msgstr "Role"
|
||||
|
||||
#: src/app/main/ui/dashboard/fonts.cljs:395, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:204, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:299, src/app/main/ui/workspace/tokens/settings/menu.cljs:110
|
||||
#: src/app/main/ui/dashboard/fonts.cljs:395, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:204, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:302, src/app/main/ui/workspace/tokens/settings/menu.cljs:110
|
||||
msgid "labels.save"
|
||||
msgstr "Uložit"
|
||||
|
||||
@@ -2457,27 +2457,27 @@ msgstr "Opravdu chcete smazat tuto anotaci?"
|
||||
msgid "modals.delete-component-annotation.title"
|
||||
msgstr "Smazat anotaci"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:124
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:125
|
||||
msgid "modals.delete-file-confirm.accept"
|
||||
msgstr "Smazat soubor"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:123
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:124
|
||||
msgid "modals.delete-file-confirm.message"
|
||||
msgstr "Opravdu chcete tento soubor smazat?"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:122
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:123
|
||||
msgid "modals.delete-file-confirm.title"
|
||||
msgstr "Mazání souboru"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:118
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:119
|
||||
msgid "modals.delete-file-multi-confirm.accept"
|
||||
msgstr "Vymazat soubory"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:117
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:118
|
||||
msgid "modals.delete-file-multi-confirm.message"
|
||||
msgstr "Opravdu chcete smazat soubory %s?"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:116
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:117
|
||||
msgid "modals.delete-file-multi-confirm.title"
|
||||
msgstr "Mazání %s souborů"
|
||||
|
||||
@@ -3289,7 +3289,7 @@ msgstr "Přejít na přihlášení"
|
||||
msgid "settings.detach"
|
||||
msgstr "Odpojit"
|
||||
|
||||
#: src/app/main/ui/inspect/exports.cljs:148, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:105, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:107, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:342, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:496, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1062, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1302, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:138, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:149, src/app/main/ui/workspace/sidebar/options/menus/exports.cljs:223, src/app/main/ui/workspace/sidebar/options/menus/fill.cljs:221, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:79, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:430, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:460, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:55, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:56, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:111, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:500, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:511, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:555, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:566, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:595, src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:154, src/app/main/ui/workspace/sidebar/options/menus/stroke.cljs:199, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:336, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:389, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:408, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:427, src/app/main/ui/workspace/sidebar/options/rows/stroke_row.cljs:204
|
||||
#: src/app/main/ui/inspect/exports.cljs:148, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:105, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:107, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:342, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:496, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1062, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1302, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:138, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:149, src/app/main/ui/workspace/sidebar/options/menus/exports.cljs:223, src/app/main/ui/workspace/sidebar/options/menus/fill.cljs:221, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:79, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:430, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:460, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:55, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:56, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:111, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:500, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:511, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:555, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:566, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:595, src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:155, src/app/main/ui/workspace/sidebar/options/menus/stroke.cljs:199, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:336, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:389, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:408, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:427, src/app/main/ui/workspace/sidebar/options/rows/stroke_row.cljs:204
|
||||
msgid "settings.multiple"
|
||||
msgstr "Smíšený"
|
||||
|
||||
@@ -4165,7 +4165,7 @@ msgstr "Filtr"
|
||||
msgid "workspace.assets.graphics"
|
||||
msgstr "Grafika"
|
||||
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:190, src/app/main/ui/workspace/sidebar/assets/components.cljs:575, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:806
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:189, src/app/main/ui/workspace/sidebar/assets/components.cljs:575, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:806
|
||||
msgid "workspace.assets.grid-view"
|
||||
msgstr "Zobrazení mřížky"
|
||||
|
||||
@@ -4177,7 +4177,7 @@ msgstr "Skupina"
|
||||
msgid "workspace.assets.group-name"
|
||||
msgstr "Název skupiny"
|
||||
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:191, src/app/main/ui/workspace/sidebar/assets/components.cljs:571, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:802
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:190, src/app/main/ui/workspace/sidebar/assets/components.cljs:571, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:802
|
||||
msgid "workspace.assets.list-view"
|
||||
msgstr "Zobrazení seznamu"
|
||||
|
||||
@@ -5523,7 +5523,7 @@ msgstr "Vyplnění výběru"
|
||||
msgid "workspace.options.selection-stroke"
|
||||
msgstr "Obrys výběru"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:143
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:144
|
||||
msgid "workspace.options.shadow-options.add-shadow"
|
||||
msgstr "Přidat stín"
|
||||
|
||||
@@ -5551,7 +5551,7 @@ msgstr "X"
|
||||
msgid "workspace.options.shadow-options.offsety"
|
||||
msgstr "Y"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:156, src/app/main/ui/workspace/sidebar/options/rows/shadow_row.cljs:161
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:157, src/app/main/ui/workspace/sidebar/options/rows/shadow_row.cljs:161
|
||||
msgid "workspace.options.shadow-options.remove-shadow"
|
||||
msgstr "Odebrat stín"
|
||||
|
||||
@@ -5559,15 +5559,15 @@ msgstr "Odebrat stín"
|
||||
msgid "workspace.options.shadow-options.spread"
|
||||
msgstr "Rozpětí"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:138
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:139
|
||||
msgid "workspace.options.shadow-options.title"
|
||||
msgstr "Stín"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:137
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:138
|
||||
msgid "workspace.options.shadow-options.title.group"
|
||||
msgstr "Stín skupiny"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:136
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:137
|
||||
msgid "workspace.options.shadow-options.title.multiple"
|
||||
msgstr "Stiny výběru"
|
||||
|
||||
@@ -6312,7 +6312,7 @@ msgstr "Vytvořte si svůj první motiv hned teď."
|
||||
msgid "workspace.tokens.create-one"
|
||||
msgstr "Vytvořte si."
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:234
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:237
|
||||
msgid "workspace.tokens.create-token"
|
||||
msgstr "Vytvořte nový %s token"
|
||||
|
||||
@@ -6340,7 +6340,7 @@ msgstr "Upravit motiv"
|
||||
msgid "workspace.tokens.edit-themes"
|
||||
msgstr "Upravit motivy"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:240
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:243
|
||||
msgid "workspace.tokens.enter-token-name"
|
||||
msgstr "Zadejte název tokenu %s"
|
||||
|
||||
@@ -6394,7 +6394,7 @@ msgstr "Původní hodnota: %s"
|
||||
msgid "workspace.tokens.ref-not-valid"
|
||||
msgstr "Reference není platná nebo není v žádné aktivní sadě"
|
||||
|
||||
#: src/app/main/data/workspace/tokens/warnings.cljs:15, src/app/main/data/workspace/tokens/warnings.cljs:19, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:56, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:84, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:103, src/app/main/ui/workspace/tokens/management/forms/controls/color_input.cljs:271, src/app/main/ui/workspace/tokens/management/forms/controls/color_input.cljs:445, src/app/main/ui/workspace/tokens/management/forms/controls/fonts_combobox.cljs:169, src/app/main/ui/workspace/tokens/management/forms/controls/fonts_combobox.cljs:304, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:224, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:320, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:421, src/app/main/ui/workspace/tokens/management/token_pill.cljs:121
|
||||
#: src/app/main/data/workspace/tokens/warnings.cljs:15, src/app/main/data/workspace/tokens/warnings.cljs:19, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:56, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:84, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:103, src/app/main/ui/workspace/tokens/management/forms/controls/color_input.cljs:271, src/app/main/ui/workspace/tokens/management/forms/controls/color_input.cljs:445, src/app/main/ui/workspace/tokens/management/forms/controls/fonts_combobox.cljs:169, src/app/main/ui/workspace/tokens/management/forms/controls/fonts_combobox.cljs:304, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:225, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:332, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:432, src/app/main/ui/workspace/tokens/management/token_pill.cljs:121
|
||||
#, fuzzy
|
||||
msgid "workspace.tokens.resolved-value"
|
||||
msgstr "Vyřešená hodnota: %s"
|
||||
@@ -6422,27 +6422,27 @@ msgstr "Sada tokenů není aktivní"
|
||||
msgid "workspace.tokens.theme-name"
|
||||
msgstr "Motiv %s"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:273, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:274
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:276, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:277
|
||||
#, fuzzy
|
||||
msgid "workspace.tokens.token-description"
|
||||
msgstr "Popis"
|
||||
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:83, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:112, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:239
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:83, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:112, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:242
|
||||
msgid "workspace.tokens.token-name"
|
||||
msgstr "Jméno"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:32, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:69, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:266, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:221, src/app/main/ui/workspace/tokens/management/forms/validators.cljs:103
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:32, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:70, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:266, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:221, src/app/main/ui/workspace/tokens/management/forms/validators.cljs:103
|
||||
msgid "workspace.tokens.token-name-validation-error"
|
||||
msgstr ""
|
||||
" není platný název tokenu.\n"
|
||||
"Názvy tokenů by měly obsahovat pouze písmena a číslice oddělené znakem . a "
|
||||
"nesmí začínat znakem $."
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:265
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:268
|
||||
msgid "workspace.tokens.token-value"
|
||||
msgstr "Hodnota"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management.cljs:68
|
||||
#: src/app/main/ui/workspace/tokens/management.cljs:64
|
||||
msgid "workspace.tokens.tokens-section-title"
|
||||
msgstr "TOKENY - %s"
|
||||
|
||||
|
||||
@@ -217,7 +217,7 @@ msgstr "Flyt til"
|
||||
msgid "dashboard.move-to-multi"
|
||||
msgstr "Flyt %s filer til"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:248
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:250
|
||||
msgid "dashboard.move-to-other-team"
|
||||
msgstr "Flyt til andet team"
|
||||
|
||||
@@ -273,7 +273,7 @@ msgstr "Skift adgangskode"
|
||||
msgid "dashboard.pin-unpin"
|
||||
msgstr "Fastgør/Løsne"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:41, src/app/main/ui/dashboard/projects.cljs:57
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:62, src/app/main/ui/dashboard/projects.cljs:57
|
||||
msgid "dashboard.projects-title"
|
||||
msgstr "Projekter"
|
||||
|
||||
@@ -306,7 +306,7 @@ msgstr "Vælg tema"
|
||||
msgid "dashboard.show-all-files"
|
||||
msgstr "Vis alle filer"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:97
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:98
|
||||
msgid "dashboard.success-delete-file"
|
||||
msgstr "Din fil er blevet slettet med succes"
|
||||
|
||||
@@ -314,7 +314,7 @@ msgstr "Din fil er blevet slettet med succes"
|
||||
msgid "dashboard.success-delete-project"
|
||||
msgstr "Dit projekt er blevet slettet med succes"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:92
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:93
|
||||
msgid "dashboard.success-duplicate-file"
|
||||
msgstr "Din fil er blevet dublikeret med succes"
|
||||
|
||||
@@ -322,11 +322,11 @@ msgstr "Din fil er blevet dublikeret med succes"
|
||||
msgid "dashboard.success-duplicate-project"
|
||||
msgstr "Dit projekt er blevet dublikeret med succes"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:131, src/app/main/ui/dashboard/grid.cljs:634, src/app/main/ui/dashboard/sidebar.cljs:165
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:132, src/app/main/ui/dashboard/grid.cljs:634, src/app/main/ui/dashboard/sidebar.cljs:165
|
||||
msgid "dashboard.success-move-file"
|
||||
msgstr "Din fil er blevet flyttet med succes"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:130
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:131
|
||||
msgid "dashboard.success-move-files"
|
||||
msgstr "Dine filer er blevet flyttet med succes"
|
||||
|
||||
@@ -374,7 +374,7 @@ msgstr "Email"
|
||||
msgid "dashboard.your-name"
|
||||
msgstr "Dit navn"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:39, src/app/main/ui/dashboard/fonts.cljs:42, src/app/main/ui/dashboard/libraries.cljs:56, src/app/main/ui/dashboard/projects.cljs:355, src/app/main/ui/dashboard/search.cljs:48, src/app/main/ui/dashboard/sidebar.cljs:302, src/app/main/ui/dashboard/team.cljs:537, src/app/main/ui/dashboard/team.cljs:983, src/app/main/ui/dashboard/team.cljs:1251, src/app/main/ui/dashboard/team.cljs:1298
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:40, src/app/main/ui/dashboard/fonts.cljs:42, src/app/main/ui/dashboard/libraries.cljs:56, src/app/main/ui/dashboard/projects.cljs:355, src/app/main/ui/dashboard/search.cljs:48, src/app/main/ui/dashboard/sidebar.cljs:302, src/app/main/ui/dashboard/team.cljs:537, src/app/main/ui/dashboard/team.cljs:983, src/app/main/ui/dashboard/team.cljs:1251, src/app/main/ui/dashboard/team.cljs:1298
|
||||
msgid "dashboard.your-penpot"
|
||||
msgstr "Dit Penpot"
|
||||
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"PO-Revision-Date: 2026-01-08 17:06+0000\n"
|
||||
"Last-Translator: Marius <hi@mariusscheel.de>\n"
|
||||
"Language-Team: German <https://hosted.weblate.org/projects/penpot/frontend/"
|
||||
"de/>\n"
|
||||
"Language-Team: German "
|
||||
"<https://hosted.weblate.org/projects/penpot/frontend/de/>\n"
|
||||
"Language: de\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=utf-8\n"
|
||||
@@ -473,11 +473,11 @@ msgstr "Sobald ein Projektmitglied einen Entwurf erstellt, wird es hier angezeig
|
||||
msgid "dashboard.empty-placeholder-drafts-title"
|
||||
msgstr "Noch keine Entwürfe vorhanden."
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:166, src/app/main/ui/dashboard/files.cljs:204, src/app/main/ui/dashboard/projects.cljs:291
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:176, src/app/main/ui/dashboard/files.cljs:204, src/app/main/ui/dashboard/projects.cljs:291
|
||||
msgid "dashboard.empty-placeholder-files-subtitle"
|
||||
msgstr "Sobald ein Projektmitglied eine Datei erstellt, wird es hier angezeigt."
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:163, src/app/main/ui/dashboard/files.cljs:199, src/app/main/ui/dashboard/projects.cljs:286
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:173, src/app/main/ui/dashboard/files.cljs:199, src/app/main/ui/dashboard/projects.cljs:286
|
||||
msgid "dashboard.empty-placeholder-files-title"
|
||||
msgstr "Noch keine Dateien vorhanden."
|
||||
|
||||
@@ -581,11 +581,12 @@ msgid "dashboard.export-standard-multi"
|
||||
msgstr "%s Standarddateien herunterladen (.svg + .json)"
|
||||
|
||||
#: src/app/main/ui/exports/files.cljs:155
|
||||
#, fuzzy, unused
|
||||
#, unused
|
||||
msgid "dashboard.export.explain"
|
||||
msgstr ""
|
||||
"Eine oder mehrere Dateien, die Sie exportieren möchten, verwenden geteilte "
|
||||
"Bibliotheken. Was möchten Sie mit den Assets* aus diesen Bibliotheken machen?"
|
||||
"Bibliotheken. Was möchten Sie mit den Assets* aus diesen Bibliotheken "
|
||||
"machen?"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:322
|
||||
msgid "dashboard.fonts.deleted-placeholder"
|
||||
@@ -803,7 +804,7 @@ msgstr "Verschieben nach"
|
||||
msgid "dashboard.move-to-multi"
|
||||
msgstr "%s Dateien verschieben"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:248
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:250
|
||||
msgid "dashboard.move-to-other-team"
|
||||
msgstr "Zu anderem Team verschieben"
|
||||
|
||||
@@ -863,7 +864,7 @@ msgstr "%s Mitglieder"
|
||||
msgid "dashboard.open-in-new-tab"
|
||||
msgstr "Datei in neuem Tab öffnen"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:147, src/app/main/ui/dashboard/deleted.cljs:148, src/app/main/ui/dashboard/files.cljs:120, src/app/main/ui/dashboard/grid.cljs:442, src/app/main/ui/dashboard/projects.cljs:266, src/app/main/ui/dashboard/projects.cljs:267
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:157, src/app/main/ui/dashboard/deleted.cljs:158, src/app/main/ui/dashboard/files.cljs:120, src/app/main/ui/dashboard/grid.cljs:442, src/app/main/ui/dashboard/projects.cljs:266, src/app/main/ui/dashboard/projects.cljs:267
|
||||
msgid "dashboard.options"
|
||||
msgstr "Optionen"
|
||||
|
||||
@@ -911,7 +912,7 @@ msgstr "Das Plugin-Manifest kann nicht ausgewertet werden"
|
||||
msgid "dashboard.plugins.try-plugin"
|
||||
msgstr "Plugin ausprobieren: "
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:41, src/app/main/ui/dashboard/projects.cljs:57
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:62, src/app/main/ui/dashboard/projects.cljs:57
|
||||
msgid "dashboard.projects-title"
|
||||
msgstr "Projekte"
|
||||
|
||||
@@ -1028,7 +1029,7 @@ msgstr "Alle Dateien anzeigen"
|
||||
msgid "dashboard.show-version-history"
|
||||
msgstr "Versionsverlauf"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:97
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:98
|
||||
msgid "dashboard.success-delete-file"
|
||||
msgid_plural "dashboard.success-delete-file"
|
||||
msgstr[0] "Ihre Datei wurde erfolgreich gelöscht"
|
||||
@@ -1038,7 +1039,7 @@ msgstr[1] "Ihre Dateien wurden erfolgreich gelöscht"
|
||||
msgid "dashboard.success-delete-project"
|
||||
msgstr "Ihr Projekt wurde erfolgreich gelöscht"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:92
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:93
|
||||
msgid "dashboard.success-duplicate-file"
|
||||
msgid_plural "dashboard.success-delete-file"
|
||||
msgstr[0] "Ihre Datei wurde erfolgreich dupliziert"
|
||||
@@ -1048,11 +1049,11 @@ msgstr[1] "Ihre Dateien wurden erfolgreich dupliziert"
|
||||
msgid "dashboard.success-duplicate-project"
|
||||
msgstr "Ihr Projekt wurde erfolgreich dupliziert"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:131, src/app/main/ui/dashboard/grid.cljs:634, src/app/main/ui/dashboard/sidebar.cljs:165
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:132, src/app/main/ui/dashboard/grid.cljs:634, src/app/main/ui/dashboard/sidebar.cljs:165
|
||||
msgid "dashboard.success-move-file"
|
||||
msgstr "Ihre Datei wurde erfolgreich verschoben"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:130
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:131
|
||||
msgid "dashboard.success-move-files"
|
||||
msgstr "Ihre Dateien wurden erfolgreich verschoben"
|
||||
|
||||
@@ -1161,7 +1162,7 @@ msgstr "E-Mail"
|
||||
msgid "dashboard.your-name"
|
||||
msgstr "Ihr Name"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:39, src/app/main/ui/dashboard/fonts.cljs:42, src/app/main/ui/dashboard/libraries.cljs:56, src/app/main/ui/dashboard/projects.cljs:355, src/app/main/ui/dashboard/search.cljs:48, src/app/main/ui/dashboard/sidebar.cljs:302, src/app/main/ui/dashboard/team.cljs:537, src/app/main/ui/dashboard/team.cljs:983, src/app/main/ui/dashboard/team.cljs:1251, src/app/main/ui/dashboard/team.cljs:1298
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:40, src/app/main/ui/dashboard/fonts.cljs:42, src/app/main/ui/dashboard/libraries.cljs:56, src/app/main/ui/dashboard/projects.cljs:355, src/app/main/ui/dashboard/search.cljs:48, src/app/main/ui/dashboard/sidebar.cljs:302, src/app/main/ui/dashboard/team.cljs:537, src/app/main/ui/dashboard/team.cljs:983, src/app/main/ui/dashboard/team.cljs:1251, src/app/main/ui/dashboard/team.cljs:1298
|
||||
msgid "dashboard.your-penpot"
|
||||
msgstr "Ihr Penpot"
|
||||
|
||||
@@ -1263,7 +1264,7 @@ msgstr "damit wir Ihnen helfen können."
|
||||
msgid "errors.deprecated.contact.text"
|
||||
msgstr "kontaktieren Sie uns"
|
||||
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:305
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:307
|
||||
msgid "errors.drop-token-set-parent-to-child"
|
||||
msgstr ""
|
||||
"Ein übergeordnetes Set kann nicht auf einem eigenen untergeordneten Pfad "
|
||||
@@ -1308,7 +1309,7 @@ msgstr ""
|
||||
msgid "errors.feature-not-supported"
|
||||
msgstr "Die Funktion '%s' wird nicht unterstützt."
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:41, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:76, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:299, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:239
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:41, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:77, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:299, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:239
|
||||
msgid "errors.field-max-length"
|
||||
msgstr "Darf maximal %s Zeichen enthalten."
|
||||
|
||||
@@ -1476,7 +1477,7 @@ msgstr ""
|
||||
"Der Besitzer kann das Team nicht verlassen, Sie müssen die Besitzerrolle "
|
||||
"neu zuweisen."
|
||||
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:162, src/app/main/data/workspace/tokens/library_edit.cljs:192
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:164, src/app/main/data/workspace/tokens/library_edit.cljs:194
|
||||
msgid "errors.token-set-already-exists"
|
||||
msgstr "Ein Set mit dem gleichen Namen existiert bereits"
|
||||
|
||||
@@ -1485,13 +1486,13 @@ msgstr "Ein Set mit dem gleichen Namen existiert bereits"
|
||||
msgid "errors.token-set-doesnt-exists"
|
||||
msgstr "Unbekanntes Set kann nicht dupliziert werden"
|
||||
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:304
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:306
|
||||
msgid "errors.token-set-exists-on-drop"
|
||||
msgstr ""
|
||||
"Das Ablegen kann nicht abgeschlossen werden, da ein Set mit demselben Namen "
|
||||
"bereits im Pfad existiert."
|
||||
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:77, src/app/main/data/workspace/tokens/library_edit.cljs:96
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:79, src/app/main/data/workspace/tokens/library_edit.cljs:98
|
||||
msgid "errors.token-theme-already-exists"
|
||||
msgstr "Theme-Option mit demselben Namen existiert"
|
||||
|
||||
@@ -1963,7 +1964,7 @@ msgstr "In die Zwischenablage kopieren"
|
||||
msgid "inspect.tabs.styles.geometry-panel"
|
||||
msgstr "Größe und Position"
|
||||
|
||||
#: src/app/main/ui/inspect/styles/style_box.cljs:60, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:179
|
||||
#: src/app/main/ui/inspect/styles/style_box.cljs:60, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:178
|
||||
msgid "inspect.tabs.styles.toggle-style"
|
||||
msgstr "%s-Schaltfläche ein-/ausblenden"
|
||||
|
||||
@@ -2050,7 +2051,7 @@ msgstr "Bad Gateway"
|
||||
msgid "labels.blur"
|
||||
msgstr "Weichzeichnen"
|
||||
|
||||
#: src/app/main/data/common.cljs:119, src/app/main/ui/dashboard/change_owner.cljs:64, src/app/main/ui/dashboard/import.cljs:515, src/app/main/ui/dashboard/team.cljs:780, src/app/main/ui/dashboard/team.cljs:1122, src/app/main/ui/delete_shared.cljs:38, src/app/main/ui/exports/assets.cljs:163, src/app/main/ui/exports/files.cljs:168, src/app/main/ui/settings/access_tokens.cljs:175, src/app/main/ui/viewer/share_link.cljs:208, src/app/main/ui/workspace/sidebar/assets/groups.cljs:159, src/app/main/ui/workspace/tokens/export/modal.cljs:44, src/app/main/ui/workspace/tokens/import/modal.cljs:269, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:295, src/app/main/ui/workspace/tokens/remapping_modal.cljs:99, src/app/main/ui/workspace/tokens/settings/menu.cljs:105, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:265
|
||||
#: src/app/main/data/common.cljs:119, src/app/main/ui/dashboard/change_owner.cljs:64, src/app/main/ui/dashboard/import.cljs:515, src/app/main/ui/dashboard/team.cljs:780, src/app/main/ui/dashboard/team.cljs:1122, src/app/main/ui/delete_shared.cljs:38, src/app/main/ui/exports/assets.cljs:163, src/app/main/ui/exports/files.cljs:168, src/app/main/ui/settings/access_tokens.cljs:175, src/app/main/ui/viewer/share_link.cljs:208, src/app/main/ui/workspace/sidebar/assets/groups.cljs:159, src/app/main/ui/workspace/tokens/export/modal.cljs:44, src/app/main/ui/workspace/tokens/import/modal.cljs:269, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:298, src/app/main/ui/workspace/tokens/remapping_modal.cljs:99, src/app/main/ui/workspace/tokens/settings/menu.cljs:105, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:265
|
||||
msgid "labels.cancel"
|
||||
msgstr "Abbrechen"
|
||||
|
||||
@@ -2110,7 +2111,7 @@ msgstr "Support kontaktieren"
|
||||
msgid "labels.contact-us"
|
||||
msgstr "Kontakt"
|
||||
|
||||
#: src/app/main/ui/auth/login.cljs:204, src/app/main/ui/dashboard/deleted.cljs:57, src/app/main/ui/dashboard/deleted.cljs:264, src/app/main/ui/dashboard/file_menu.cljs:208, src/app/main/ui/dashboard/import.cljs:521, src/app/main/ui/dashboard/team.cljs:787, src/app/main/ui/exports/files.cljs:173, src/app/main/ui/onboarding/newsletter.cljs:106, src/app/main/ui/settings/subscription.cljs:279, src/app/main/ui/settings/subscription.cljs:313
|
||||
#: src/app/main/ui/auth/login.cljs:204, src/app/main/ui/dashboard/deleted.cljs:43, src/app/main/ui/dashboard/deleted.cljs:275, src/app/main/ui/dashboard/file_menu.cljs:210, src/app/main/ui/dashboard/import.cljs:521, src/app/main/ui/dashboard/team.cljs:787, src/app/main/ui/exports/files.cljs:173, src/app/main/ui/onboarding/newsletter.cljs:106, src/app/main/ui/settings/subscription.cljs:279, src/app/main/ui/settings/subscription.cljs:313
|
||||
msgid "labels.continue"
|
||||
msgstr "Weiter"
|
||||
|
||||
@@ -2158,7 +2159,7 @@ msgstr "Eigene Schriftarten"
|
||||
msgid "labels.dashboard"
|
||||
msgstr "Dashboard"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:338, src/app/main/ui/dashboard/fonts.cljs:267, src/app/main/ui/dashboard/fonts.cljs:343, src/app/main/ui/dashboard/fonts.cljs:357, src/app/main/ui/dashboard/project_menu.cljs:115, src/app/main/ui/dashboard/team.cljs:1158, src/app/main/ui/settings/access_tokens.cljs:196, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:223, src/app/main/ui/workspace/sidebar/versions.cljs:216, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:288, src/app/main/ui/workspace/tokens/sets/context_menu.cljs:66, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:399
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:338, src/app/main/ui/dashboard/fonts.cljs:267, src/app/main/ui/dashboard/fonts.cljs:343, src/app/main/ui/dashboard/fonts.cljs:357, src/app/main/ui/dashboard/project_menu.cljs:115, src/app/main/ui/dashboard/team.cljs:1158, src/app/main/ui/settings/access_tokens.cljs:196, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:223, src/app/main/ui/workspace/sidebar/versions.cljs:216, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:291, src/app/main/ui/workspace/tokens/sets/context_menu.cljs:66, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:399
|
||||
msgid "labels.delete"
|
||||
msgstr "Löschen"
|
||||
|
||||
@@ -2195,7 +2196,7 @@ msgstr "Verwerfen"
|
||||
msgid "labels.download"
|
||||
msgstr "%s herunterladen"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:29, src/app/main/ui/dashboard/files.cljs:80, src/app/main/ui/dashboard/files.cljs:179, src/app/main/ui/dashboard/projects.cljs:229, src/app/main/ui/dashboard/projects.cljs:233, src/app/main/ui/dashboard/sidebar.cljs:726
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:30, src/app/main/ui/dashboard/files.cljs:80, src/app/main/ui/dashboard/files.cljs:179, src/app/main/ui/dashboard/projects.cljs:229, src/app/main/ui/dashboard/projects.cljs:233, src/app/main/ui/dashboard/sidebar.cljs:726
|
||||
msgid "labels.drafts"
|
||||
msgstr "Entwürfe"
|
||||
|
||||
@@ -2599,7 +2600,7 @@ msgstr "Wiederholen"
|
||||
msgid "labels.role"
|
||||
msgstr "Rolle"
|
||||
|
||||
#: src/app/main/ui/dashboard/fonts.cljs:395, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:204, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:299, src/app/main/ui/workspace/tokens/settings/menu.cljs:110
|
||||
#: src/app/main/ui/dashboard/fonts.cljs:395, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:204, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:302, src/app/main/ui/workspace/tokens/settings/menu.cljs:110
|
||||
msgid "labels.save"
|
||||
msgstr "Speichern"
|
||||
|
||||
@@ -3027,27 +3028,27 @@ msgstr "Sind Sie sicher, dass Sie diese Anmerkung löschen möchten?"
|
||||
msgid "modals.delete-component-annotation.title"
|
||||
msgstr "Anmerkung löschen"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:124
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:125
|
||||
msgid "modals.delete-file-confirm.accept"
|
||||
msgstr "Datei löschen"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:123
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:124
|
||||
msgid "modals.delete-file-confirm.message"
|
||||
msgstr "Sind Sie sicher, dass Sie diese Datei löschen wollen?"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:122
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:123
|
||||
msgid "modals.delete-file-confirm.title"
|
||||
msgstr "Datei löschen"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:118
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:119
|
||||
msgid "modals.delete-file-multi-confirm.accept"
|
||||
msgstr "Dateien löschen"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:117
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:118
|
||||
msgid "modals.delete-file-multi-confirm.message"
|
||||
msgstr "Sind Sie sicher, dass Sie %s Dateien löschen möchten?"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:116
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:117
|
||||
msgid "modals.delete-file-multi-confirm.title"
|
||||
msgstr "Lösche %s Dateien"
|
||||
|
||||
@@ -3872,7 +3873,7 @@ msgstr "Zur Anmeldung"
|
||||
msgid "settings.detach"
|
||||
msgstr "Trennen"
|
||||
|
||||
#: src/app/main/ui/inspect/exports.cljs:148, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:105, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:107, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:342, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:496, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1062, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1302, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:138, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:149, src/app/main/ui/workspace/sidebar/options/menus/exports.cljs:223, src/app/main/ui/workspace/sidebar/options/menus/fill.cljs:221, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:79, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:430, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:460, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:55, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:56, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:111, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:500, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:511, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:555, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:566, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:595, src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:154, src/app/main/ui/workspace/sidebar/options/menus/stroke.cljs:199, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:336, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:389, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:408, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:427, src/app/main/ui/workspace/sidebar/options/rows/stroke_row.cljs:204
|
||||
#: src/app/main/ui/inspect/exports.cljs:148, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:105, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:107, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:342, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:496, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1062, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1302, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:138, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:149, src/app/main/ui/workspace/sidebar/options/menus/exports.cljs:223, src/app/main/ui/workspace/sidebar/options/menus/fill.cljs:221, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:79, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:430, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:460, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:55, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:56, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:111, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:500, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:511, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:555, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:566, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:595, src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:155, src/app/main/ui/workspace/sidebar/options/menus/stroke.cljs:199, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:336, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:389, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:408, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:427, src/app/main/ui/workspace/sidebar/options/rows/stroke_row.cljs:204
|
||||
msgid "settings.multiple"
|
||||
msgstr "Mehrere"
|
||||
|
||||
@@ -4925,7 +4926,7 @@ msgstr "Filtern"
|
||||
msgid "workspace.assets.graphics"
|
||||
msgstr "Grafiken"
|
||||
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:190, src/app/main/ui/workspace/sidebar/assets/components.cljs:575, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:806
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:189, src/app/main/ui/workspace/sidebar/assets/components.cljs:575, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:806
|
||||
msgid "workspace.assets.grid-view"
|
||||
msgstr "Rasteransicht"
|
||||
|
||||
@@ -4937,7 +4938,7 @@ msgstr "Gruppieren"
|
||||
msgid "workspace.assets.group-name"
|
||||
msgstr "Name der Gruppe"
|
||||
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:191, src/app/main/ui/workspace/sidebar/assets/components.cljs:571, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:802
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:190, src/app/main/ui/workspace/sidebar/assets/components.cljs:571, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:802
|
||||
msgid "workspace.assets.list-view"
|
||||
msgstr "Listenansicht"
|
||||
|
||||
@@ -6477,7 +6478,7 @@ msgstr "Auswahl füllen"
|
||||
msgid "workspace.options.selection-stroke"
|
||||
msgstr "Auswahl einrahmen"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:143
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:144
|
||||
msgid "workspace.options.shadow-options.add-shadow"
|
||||
msgstr "Schatten hinzufügen"
|
||||
|
||||
@@ -6505,7 +6506,7 @@ msgstr "X"
|
||||
msgid "workspace.options.shadow-options.offsety"
|
||||
msgstr "Y"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:156, src/app/main/ui/workspace/sidebar/options/rows/shadow_row.cljs:161
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:157, src/app/main/ui/workspace/sidebar/options/rows/shadow_row.cljs:161
|
||||
msgid "workspace.options.shadow-options.remove-shadow"
|
||||
msgstr "Schatten entfernen"
|
||||
|
||||
@@ -6513,15 +6514,15 @@ msgstr "Schatten entfernen"
|
||||
msgid "workspace.options.shadow-options.spread"
|
||||
msgstr "Streuung"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:138
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:139
|
||||
msgid "workspace.options.shadow-options.title"
|
||||
msgstr "Schatten"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:137
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:138
|
||||
msgid "workspace.options.shadow-options.title.group"
|
||||
msgstr "Gruppe schattieren"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:136
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:137
|
||||
msgid "workspace.options.shadow-options.title.multiple"
|
||||
msgstr "Auswahl schattieren"
|
||||
|
||||
@@ -7283,7 +7284,7 @@ msgstr "Erstellen Sie jetzt Ihr erstes Theme."
|
||||
msgid "workspace.tokens.create-one"
|
||||
msgstr "Ein neues erstellen."
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:234
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:237
|
||||
msgid "workspace.tokens.create-token"
|
||||
msgstr "Neues %s Token erstellen"
|
||||
|
||||
@@ -7299,7 +7300,7 @@ msgstr "Theme löschen"
|
||||
msgid "workspace.tokens.duplicate"
|
||||
msgstr "Token duplizieren"
|
||||
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:209, src/app/main/data/workspace/tokens/library_edit.cljs:452
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:211, src/app/main/data/workspace/tokens/library_edit.cljs:454
|
||||
msgid "workspace.tokens.duplicate-suffix"
|
||||
msgstr "Kopie"
|
||||
|
||||
@@ -7315,15 +7316,15 @@ msgstr "Theme bearbeiten"
|
||||
msgid "workspace.tokens.edit-themes"
|
||||
msgstr "Themes bearbeiten"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:233
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:236
|
||||
msgid "workspace.tokens.edit-token"
|
||||
msgstr "%s Token bearbeiten"
|
||||
|
||||
#: src/app/main/data/workspace/tokens/errors.cljs:41, src/app/main/ui/workspace/tokens/management/forms/color.cljs:22, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:42
|
||||
#: src/app/main/data/workspace/tokens/errors.cljs:41, src/app/main/ui/workspace/tokens/management/forms/color.cljs:22, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:43
|
||||
msgid "workspace.tokens.empty-input"
|
||||
msgstr "Der Token-Wert darf nicht leer sein"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:240
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:243
|
||||
msgid "workspace.tokens.enter-token-name"
|
||||
msgstr "%s Token-Name eingeben"
|
||||
|
||||
@@ -7434,11 +7435,11 @@ msgstr ""
|
||||
msgid "workspace.tokens.import-warning"
|
||||
msgstr "Beim Import werden alle bestehenden Tokens, Sets und Themes überschrieben."
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management.cljs:78
|
||||
#: src/app/main/ui/workspace/tokens/management.cljs:74
|
||||
msgid "workspace.tokens.inactive-set"
|
||||
msgstr "Inaktiv"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management.cljs:69
|
||||
#: src/app/main/ui/workspace/tokens/management.cljs:65
|
||||
msgid "workspace.tokens.inactive-set-description"
|
||||
msgstr ""
|
||||
"Dieses Set ist nicht aktiv. Ändern Sie das Theme oder aktivieren Sie dieses "
|
||||
@@ -7622,7 +7623,7 @@ msgstr "Geben Sie einen Typografie-Alias für diesen Token ein"
|
||||
msgid "workspace.tokens.reference-error"
|
||||
msgstr "Referenzfehler: "
|
||||
|
||||
#: src/app/main/data/workspace/tokens/warnings.cljs:15, src/app/main/data/workspace/tokens/warnings.cljs:19, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:56, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:84, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:103, src/app/main/ui/workspace/tokens/management/forms/controls/color_input.cljs:271, src/app/main/ui/workspace/tokens/management/forms/controls/color_input.cljs:445, src/app/main/ui/workspace/tokens/management/forms/controls/fonts_combobox.cljs:169, src/app/main/ui/workspace/tokens/management/forms/controls/fonts_combobox.cljs:304, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:224, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:320, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:421, src/app/main/ui/workspace/tokens/management/token_pill.cljs:121
|
||||
#: src/app/main/data/workspace/tokens/warnings.cljs:15, src/app/main/data/workspace/tokens/warnings.cljs:19, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:56, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:84, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:103, src/app/main/ui/workspace/tokens/management/forms/controls/color_input.cljs:271, src/app/main/ui/workspace/tokens/management/forms/controls/color_input.cljs:445, src/app/main/ui/workspace/tokens/management/forms/controls/fonts_combobox.cljs:169, src/app/main/ui/workspace/tokens/management/forms/controls/fonts_combobox.cljs:304, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:225, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:332, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:432, src/app/main/ui/workspace/tokens/management/token_pill.cljs:121
|
||||
#, fuzzy
|
||||
msgid "workspace.tokens.resolved-value"
|
||||
msgstr "Aufgelöster Wert: %s"
|
||||
@@ -7635,7 +7636,7 @@ msgstr "Theme speichern"
|
||||
msgid "workspace.tokens.select-set"
|
||||
msgstr "Set auswählen."
|
||||
|
||||
#: src/app/main/data/workspace/tokens/errors.cljs:45, src/app/main/ui/workspace/tokens/management/forms/color.cljs:44, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:79, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:302, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:242
|
||||
#: src/app/main/data/workspace/tokens/errors.cljs:45, src/app/main/ui/workspace/tokens/management/forms/color.cljs:44, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:80, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:302, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:242
|
||||
msgid "workspace.tokens.self-reference"
|
||||
msgstr "Der Token referenziert sich selbst"
|
||||
|
||||
@@ -7740,7 +7741,7 @@ msgstr ""
|
||||
msgid "workspace.tokens.themes-list"
|
||||
msgstr "Liste der Themes"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:273, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:274
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:276, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:277
|
||||
#, fuzzy
|
||||
msgid "workspace.tokens.token-description"
|
||||
msgstr "Beschreibung"
|
||||
@@ -7757,19 +7758,19 @@ msgstr "Schriftart"
|
||||
msgid "workspace.tokens.token-font-family-value-enter"
|
||||
msgstr "Schriftfamilie oder eine durch Kommas (,) getrennte Liste von Schriften"
|
||||
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:83, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:112, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:239
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:83, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:112, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:242
|
||||
msgid "workspace.tokens.token-name"
|
||||
msgstr "Name"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:33, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:70, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:267, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:222, src/app/main/ui/workspace/tokens/management/forms/validators.cljs:104
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:33, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:71, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:267, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:222, src/app/main/ui/workspace/tokens/management/forms/validators.cljs:104
|
||||
msgid "workspace.tokens.token-name-duplication-validation-error"
|
||||
msgstr "Unter diesem Speicherort existiert bereits ein Token: %s"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:31, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:68, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:264, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:219, src/app/main/ui/workspace/tokens/management/forms/validators.cljs:102
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:31, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:69, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:264, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:219, src/app/main/ui/workspace/tokens/management/forms/validators.cljs:102
|
||||
msgid "workspace.tokens.token-name-length-validation-error"
|
||||
msgstr "Der Name muss mindestens 1 Zeichen lang sein"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:32, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:69, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:266, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:221, src/app/main/ui/workspace/tokens/management/forms/validators.cljs:103
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:32, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:70, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:266, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:221, src/app/main/ui/workspace/tokens/management/forms/validators.cljs:103
|
||||
msgid "workspace.tokens.token-name-validation-error"
|
||||
msgstr ""
|
||||
" sit kein gültiger Token-Name.\n"
|
||||
@@ -7781,15 +7782,15 @@ msgstr ""
|
||||
msgid "workspace.tokens.token-not-resolved"
|
||||
msgstr "Das Token mit dem Namen „%s” konnte nicht gefunden werden"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:265
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:268
|
||||
msgid "workspace.tokens.token-value"
|
||||
msgstr "Wert"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:264, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:129
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:267, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:129
|
||||
msgid "workspace.tokens.token-value-enter"
|
||||
msgstr "Geben Sie einen Wert oder einen Alias mittels {alias} ein"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management.cljs:68
|
||||
#: src/app/main/ui/workspace/tokens/management.cljs:64
|
||||
msgid "workspace.tokens.tokens-section-title"
|
||||
msgstr "TOKENS - %s"
|
||||
|
||||
|
||||
@@ -189,7 +189,7 @@ msgstr "φόρτωση των αρχείων σας …"
|
||||
msgid "dashboard.move-to"
|
||||
msgstr "Μετακίνηση"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:248
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:250
|
||||
msgid "dashboard.move-to-other-team"
|
||||
msgstr "Μετακίνηση σε άλλη ομάδα"
|
||||
|
||||
@@ -237,7 +237,7 @@ msgstr "Αλλαξε κωδικό"
|
||||
msgid "dashboard.pin-unpin"
|
||||
msgstr "Καρφίτσωμα / ξεκαρφίτσωμα"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:41, src/app/main/ui/dashboard/projects.cljs:57
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:62, src/app/main/ui/dashboard/projects.cljs:57
|
||||
msgid "dashboard.projects-title"
|
||||
msgstr "Εργα"
|
||||
|
||||
@@ -270,7 +270,7 @@ msgstr "Επιλέξτε ένα θέμα"
|
||||
msgid "dashboard.show-all-files"
|
||||
msgstr "Εμφάνιση όλων των αρχείων"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:97
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:98
|
||||
msgid "dashboard.success-delete-file"
|
||||
msgstr "Το έργο σας διαγράφηκε με επιτυχία"
|
||||
|
||||
@@ -278,7 +278,7 @@ msgstr "Το έργο σας διαγράφηκε με επιτυχία"
|
||||
msgid "dashboard.success-delete-project"
|
||||
msgstr "Το έργο σας διαγράφηκε με επιτυχία"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:92
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:93
|
||||
msgid "dashboard.success-duplicate-file"
|
||||
msgstr "Το έργο σας έχει αναπαραχθεί με επιτυχία"
|
||||
|
||||
@@ -286,7 +286,7 @@ msgstr "Το έργο σας έχει αναπαραχθεί με επιτυχί
|
||||
msgid "dashboard.success-duplicate-project"
|
||||
msgstr "Το έργο σας έχει αναπαραχθεί με επιτυχία"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:131, src/app/main/ui/dashboard/grid.cljs:634, src/app/main/ui/dashboard/sidebar.cljs:165
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:132, src/app/main/ui/dashboard/grid.cljs:634, src/app/main/ui/dashboard/sidebar.cljs:165
|
||||
msgid "dashboard.success-move-file"
|
||||
msgstr "Το έργο σας μετακινήθηκε με επιτυχία"
|
||||
|
||||
@@ -334,7 +334,7 @@ msgstr "Email"
|
||||
msgid "dashboard.your-name"
|
||||
msgstr "Το όνομα σου"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:39, src/app/main/ui/dashboard/fonts.cljs:42, src/app/main/ui/dashboard/libraries.cljs:56, src/app/main/ui/dashboard/projects.cljs:355, src/app/main/ui/dashboard/search.cljs:48, src/app/main/ui/dashboard/sidebar.cljs:302, src/app/main/ui/dashboard/team.cljs:537, src/app/main/ui/dashboard/team.cljs:983, src/app/main/ui/dashboard/team.cljs:1251, src/app/main/ui/dashboard/team.cljs:1298
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:40, src/app/main/ui/dashboard/fonts.cljs:42, src/app/main/ui/dashboard/libraries.cljs:56, src/app/main/ui/dashboard/projects.cljs:355, src/app/main/ui/dashboard/search.cljs:48, src/app/main/ui/dashboard/sidebar.cljs:302, src/app/main/ui/dashboard/team.cljs:537, src/app/main/ui/dashboard/team.cljs:983, src/app/main/ui/dashboard/team.cljs:1251, src/app/main/ui/dashboard/team.cljs:1298
|
||||
msgid "dashboard.your-penpot"
|
||||
msgstr "Το Penpot σας"
|
||||
|
||||
@@ -685,7 +685,7 @@ msgstr ""
|
||||
msgid "labels.bad-gateway.main-message"
|
||||
msgstr "Bad Gateway"
|
||||
|
||||
#: src/app/main/data/common.cljs:119, src/app/main/ui/dashboard/change_owner.cljs:64, src/app/main/ui/dashboard/import.cljs:515, src/app/main/ui/dashboard/team.cljs:780, src/app/main/ui/dashboard/team.cljs:1122, src/app/main/ui/delete_shared.cljs:38, src/app/main/ui/exports/assets.cljs:163, src/app/main/ui/exports/files.cljs:168, src/app/main/ui/settings/access_tokens.cljs:175, src/app/main/ui/viewer/share_link.cljs:208, src/app/main/ui/workspace/sidebar/assets/groups.cljs:159, src/app/main/ui/workspace/tokens/export/modal.cljs:44, src/app/main/ui/workspace/tokens/import/modal.cljs:269, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:295, src/app/main/ui/workspace/tokens/remapping_modal.cljs:99, src/app/main/ui/workspace/tokens/settings/menu.cljs:105, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:265
|
||||
#: src/app/main/data/common.cljs:119, src/app/main/ui/dashboard/change_owner.cljs:64, src/app/main/ui/dashboard/import.cljs:515, src/app/main/ui/dashboard/team.cljs:780, src/app/main/ui/dashboard/team.cljs:1122, src/app/main/ui/delete_shared.cljs:38, src/app/main/ui/exports/assets.cljs:163, src/app/main/ui/exports/files.cljs:168, src/app/main/ui/settings/access_tokens.cljs:175, src/app/main/ui/viewer/share_link.cljs:208, src/app/main/ui/workspace/sidebar/assets/groups.cljs:159, src/app/main/ui/workspace/tokens/export/modal.cljs:44, src/app/main/ui/workspace/tokens/import/modal.cljs:269, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:298, src/app/main/ui/workspace/tokens/remapping_modal.cljs:99, src/app/main/ui/workspace/tokens/settings/menu.cljs:105, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:265
|
||||
msgid "labels.cancel"
|
||||
msgstr "ακύρωση"
|
||||
|
||||
@@ -709,7 +709,7 @@ msgstr "Δημιουργήστε μια νέα ομάδα"
|
||||
msgid "labels.dashboard"
|
||||
msgstr "πίνακας"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:338, src/app/main/ui/dashboard/fonts.cljs:267, src/app/main/ui/dashboard/fonts.cljs:343, src/app/main/ui/dashboard/fonts.cljs:357, src/app/main/ui/dashboard/project_menu.cljs:115, src/app/main/ui/dashboard/team.cljs:1158, src/app/main/ui/settings/access_tokens.cljs:196, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:223, src/app/main/ui/workspace/sidebar/versions.cljs:216, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:288, src/app/main/ui/workspace/tokens/sets/context_menu.cljs:66, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:399
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:338, src/app/main/ui/dashboard/fonts.cljs:267, src/app/main/ui/dashboard/fonts.cljs:343, src/app/main/ui/dashboard/fonts.cljs:357, src/app/main/ui/dashboard/project_menu.cljs:115, src/app/main/ui/dashboard/team.cljs:1158, src/app/main/ui/settings/access_tokens.cljs:196, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:223, src/app/main/ui/workspace/sidebar/versions.cljs:216, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:291, src/app/main/ui/workspace/tokens/sets/context_menu.cljs:66, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:399
|
||||
msgid "labels.delete"
|
||||
msgstr "Διαγραφή"
|
||||
|
||||
@@ -721,7 +721,7 @@ msgstr "Διαγραφή σχολίου"
|
||||
msgid "labels.delete-comment-thread"
|
||||
msgstr "Διαγραφή νήματος"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:29, src/app/main/ui/dashboard/files.cljs:80, src/app/main/ui/dashboard/files.cljs:179, src/app/main/ui/dashboard/projects.cljs:229, src/app/main/ui/dashboard/projects.cljs:233, src/app/main/ui/dashboard/sidebar.cljs:726
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:30, src/app/main/ui/dashboard/files.cljs:80, src/app/main/ui/dashboard/files.cljs:179, src/app/main/ui/dashboard/projects.cljs:229, src/app/main/ui/dashboard/projects.cljs:233, src/app/main/ui/dashboard/sidebar.cljs:726
|
||||
msgid "labels.drafts"
|
||||
msgstr "Πρόχειρα"
|
||||
|
||||
@@ -849,7 +849,7 @@ msgstr "Ξαναδοκιμάσετε"
|
||||
msgid "labels.role"
|
||||
msgstr "Ρόλος"
|
||||
|
||||
#: src/app/main/ui/dashboard/fonts.cljs:395, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:204, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:299, src/app/main/ui/workspace/tokens/settings/menu.cljs:110
|
||||
#: src/app/main/ui/dashboard/fonts.cljs:395, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:204, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:302, src/app/main/ui/workspace/tokens/settings/menu.cljs:110
|
||||
msgid "labels.save"
|
||||
msgstr "Αποθηκεύση"
|
||||
|
||||
@@ -978,15 +978,15 @@ msgstr ""
|
||||
msgid "modals.delete-comment-thread.title"
|
||||
msgstr "Διαγραφή συζήτησης"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:124
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:125
|
||||
msgid "modals.delete-file-confirm.accept"
|
||||
msgstr "Διαγραφή φακέλου"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:123
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:124
|
||||
msgid "modals.delete-file-confirm.message"
|
||||
msgstr "Είστε σίγουροι ότι θέλετε να διαγράψετε αυτό το αρχείο?"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:122
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:123
|
||||
msgid "modals.delete-file-confirm.title"
|
||||
msgstr "Διαγραφή αρχείου"
|
||||
|
||||
@@ -1137,7 +1137,7 @@ msgstr "Το email επαλήθευσης εστάλη στο %s. Ελέγξτε
|
||||
msgid "profile.recovery.go-to-login"
|
||||
msgstr "Μεταβείτε στη σύνδεση"
|
||||
|
||||
#: src/app/main/ui/inspect/exports.cljs:148, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:105, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:107, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:342, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:496, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1062, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1302, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:138, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:149, src/app/main/ui/workspace/sidebar/options/menus/exports.cljs:223, src/app/main/ui/workspace/sidebar/options/menus/fill.cljs:221, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:79, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:430, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:460, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:55, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:56, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:111, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:500, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:511, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:555, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:566, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:595, src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:154, src/app/main/ui/workspace/sidebar/options/menus/stroke.cljs:199, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:336, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:389, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:408, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:427, src/app/main/ui/workspace/sidebar/options/rows/stroke_row.cljs:204
|
||||
#: src/app/main/ui/inspect/exports.cljs:148, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:105, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:107, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:342, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:496, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1062, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1302, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:138, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:149, src/app/main/ui/workspace/sidebar/options/menus/exports.cljs:223, src/app/main/ui/workspace/sidebar/options/menus/fill.cljs:221, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:79, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:430, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:460, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:55, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:56, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:111, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:500, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:511, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:555, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:566, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:595, src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:155, src/app/main/ui/workspace/sidebar/options/menus/stroke.cljs:199, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:336, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:389, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:408, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:427, src/app/main/ui/workspace/sidebar/options/rows/stroke_row.cljs:204
|
||||
msgid "settings.multiple"
|
||||
msgstr "Μικτός "
|
||||
|
||||
@@ -1681,15 +1681,15 @@ msgstr "Υ"
|
||||
msgid "workspace.options.shadow-options.spread"
|
||||
msgstr "Διάχυση"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:138
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:139
|
||||
msgid "workspace.options.shadow-options.title"
|
||||
msgstr "Σκιά"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:137
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:138
|
||||
msgid "workspace.options.shadow-options.title.group"
|
||||
msgstr "Ομαδική σκιά"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:136
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:137
|
||||
msgid "workspace.options.shadow-options.title.multiple"
|
||||
msgstr "Επιλογή σκιών"
|
||||
|
||||
|
||||
@@ -330,11 +330,11 @@ msgstr "Start the tour"
|
||||
msgid "dasboard.walkthrough-hero.title"
|
||||
msgstr "Interface Walkthrough"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:207
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:209
|
||||
msgid "dashboard-restore-file-confirmation.description"
|
||||
msgstr "You're going to restore %s."
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:206
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:208
|
||||
msgid "dashboard-restore-file-confirmation.title"
|
||||
msgstr "Restore file"
|
||||
|
||||
@@ -421,7 +421,7 @@ msgstr "Add as Shared Library"
|
||||
msgid "dashboard.change-email"
|
||||
msgstr "Change email"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:299
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:313
|
||||
msgid "dashboard.clear-trash-button"
|
||||
msgstr "Clear trash"
|
||||
|
||||
@@ -433,6 +433,9 @@ msgstr "(copy)"
|
||||
msgid "dashboard.create-new-team"
|
||||
msgstr "Create new team"
|
||||
|
||||
msgid "dashboard.create-new-org"
|
||||
msgstr "Create new org"
|
||||
|
||||
#: src/app/main/ui/workspace/main_menu.cljs:661
|
||||
msgid "dashboard.create-version-menu"
|
||||
msgstr "Pin this version"
|
||||
@@ -441,17 +444,13 @@ msgstr "Pin this version"
|
||||
msgid "dashboard.default-team-name"
|
||||
msgstr "Your Penpot"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:251
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:262
|
||||
msgid "dashboard.delete-all-forever-confirmation.description"
|
||||
msgstr ""
|
||||
"Are you sure you want to delete forever all your deleted projects and "
|
||||
"files? This is a non reversible action."
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:268
|
||||
msgid "dashboard.delete-file-button"
|
||||
msgstr "Delete file"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:220
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:222
|
||||
msgid "dashboard.delete-file-forever-confirmation.description"
|
||||
msgstr "Are you sure you want to delete forever %s? This is a non reversible action."
|
||||
|
||||
@@ -459,15 +458,15 @@ msgstr "Are you sure you want to delete forever %s? This is a non reversible act
|
||||
msgid "dashboard.delete-files-success-notification"
|
||||
msgstr "%s files have been successfully deleted."
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:66, src/app/main/ui/dashboard/deleted.cljs:68, src/app/main/ui/dashboard/deleted.cljs:250, src/app/main/ui/dashboard/deleted.cljs:252, src/app/main/ui/dashboard/file_menu.cljs:219, src/app/main/ui/dashboard/file_menu.cljs:221
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:51, src/app/main/ui/dashboard/deleted.cljs:53, src/app/main/ui/dashboard/deleted.cljs:261, src/app/main/ui/dashboard/deleted.cljs:263, src/app/main/ui/dashboard/file_menu.cljs:221, src/app/main/ui/dashboard/file_menu.cljs:223
|
||||
msgid "dashboard.delete-forever-confirmation.title"
|
||||
msgstr "Delete forever"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:75
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:85
|
||||
msgid "dashboard.delete-project-button"
|
||||
msgstr "Delete project"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:67
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:52
|
||||
msgid "dashboard.delete-project-forever-confirmation.description"
|
||||
msgstr ""
|
||||
"Are you sure you want to delete forever %s project? You're going to delete "
|
||||
@@ -482,6 +481,10 @@ msgstr "%s has been successfully deleted."
|
||||
msgid "dashboard.delete-team"
|
||||
msgstr "Delete team"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:327
|
||||
msgid "dashboard.deleted.empty-state-description"
|
||||
msgstr "Your trash is empty. Deleted files and projects will appear here."
|
||||
|
||||
#: src/app/main/ui/dashboard/grid.cljs:248
|
||||
msgid "dashboard.deleted.will-be-deleted-at"
|
||||
msgstr "Will be deleted %s"
|
||||
@@ -511,11 +514,11 @@ msgstr "Once a project member creates a draft, it will be displayed here."
|
||||
msgid "dashboard.empty-placeholder-drafts-title"
|
||||
msgstr "No drafts yet."
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:166, src/app/main/ui/dashboard/files.cljs:204, src/app/main/ui/dashboard/projects.cljs:291
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:176, src/app/main/ui/dashboard/files.cljs:204, src/app/main/ui/dashboard/projects.cljs:291
|
||||
msgid "dashboard.empty-placeholder-files-subtitle"
|
||||
msgstr "Once a project member creates a file, it will be displayed here."
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:163, src/app/main/ui/dashboard/files.cljs:199, src/app/main/ui/dashboard/projects.cljs:286
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:173, src/app/main/ui/dashboard/files.cljs:199, src/app/main/ui/dashboard/projects.cljs:286
|
||||
msgid "dashboard.empty-placeholder-files-title"
|
||||
msgstr "No files yet."
|
||||
|
||||
@@ -583,7 +586,7 @@ msgstr "There was an error while deleting the files."
|
||||
msgid "dashboard.errors.error-on-delete-project"
|
||||
msgstr "There was an error while deleting the project %s."
|
||||
|
||||
#: src/app/main/data/dashboard.cljs:895, src/app/main/ui/dashboard/file_menu.cljs:200
|
||||
#: src/app/main/data/dashboard.cljs:895, src/app/main/ui/dashboard/file_menu.cljs:201
|
||||
msgid "dashboard.errors.error-on-restore-file"
|
||||
msgstr "There was an error while restoring the file %s."
|
||||
|
||||
@@ -649,6 +652,18 @@ msgstr ""
|
||||
"One or more files that you want to download are using shared libraries. "
|
||||
"What do you want to do with their assets*?"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:268
|
||||
msgid "dashboard.file-menu.delete-files-permanently-option"
|
||||
msgid_plural "dashboard.file-menu.delete-files-permanently-option"
|
||||
msgstr[0] "Delete file"
|
||||
msgstr[1] "Delete files"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:265
|
||||
msgid "dashboard.file-menu.restore-files-option"
|
||||
msgid_plural "dashboard.file-menu.restore-files-option"
|
||||
msgstr[0] "Restore file"
|
||||
msgstr[1] "Restore files"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:322
|
||||
msgid "dashboard.fonts.deleted-placeholder"
|
||||
msgstr "Missing font"
|
||||
@@ -853,7 +868,7 @@ msgstr "Move to"
|
||||
msgid "dashboard.move-to-multi"
|
||||
msgstr "Move %s files to"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:248
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:250
|
||||
msgid "dashboard.move-to-other-team"
|
||||
msgstr "Move to other team"
|
||||
|
||||
@@ -913,7 +928,7 @@ msgstr "%s members"
|
||||
msgid "dashboard.open-in-new-tab"
|
||||
msgstr "Open file in a new tab"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:147, src/app/main/ui/dashboard/deleted.cljs:148, src/app/main/ui/dashboard/files.cljs:120, src/app/main/ui/dashboard/grid.cljs:442, src/app/main/ui/dashboard/projects.cljs:266, src/app/main/ui/dashboard/projects.cljs:267
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:157, src/app/main/ui/dashboard/deleted.cljs:158, src/app/main/ui/dashboard/files.cljs:120, src/app/main/ui/dashboard/grid.cljs:442, src/app/main/ui/dashboard/projects.cljs:266, src/app/main/ui/dashboard/projects.cljs:267
|
||||
msgid "dashboard.options"
|
||||
msgstr "Options"
|
||||
|
||||
@@ -977,7 +992,7 @@ msgstr "Deletion unexpectedly slow"
|
||||
msgid "dashboard.progress-notification.slow-restore"
|
||||
msgstr "Restore unexpectedly slow"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:41, src/app/main/ui/dashboard/projects.cljs:57
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:62, src/app/main/ui/dashboard/projects.cljs:57
|
||||
msgid "dashboard.projects-title"
|
||||
msgstr "Projects"
|
||||
|
||||
@@ -994,39 +1009,35 @@ msgstr "Remove as Shared Library"
|
||||
msgid "dashboard.removed-from-team"
|
||||
msgstr "You are not part of the team “%s“ anymore."
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:263
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:274
|
||||
msgid "dashboard.restore-all-confirmation.description"
|
||||
msgstr "You're going to restore all your projects and files. This may take a while."
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:262
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:273
|
||||
msgid "dashboard.restore-all-confirmation.title"
|
||||
msgstr "Restore all projects and files"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:294
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:308
|
||||
msgid "dashboard.restore-all-deleted-button"
|
||||
msgstr "Restore All"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:264
|
||||
msgid "dashboard.restore-file-button"
|
||||
msgstr "Restore file"
|
||||
|
||||
#: src/app/main/data/dashboard.cljs:889
|
||||
msgid "dashboard.restore-files-success-notification"
|
||||
msgstr "%s files have been successfully restored."
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:72
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:82
|
||||
msgid "dashboard.restore-project-button"
|
||||
msgstr "Restore project"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:55
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:41
|
||||
msgid "dashboard.restore-project-confirmation.description"
|
||||
msgstr "You're going to restore %s project and all the files contained in it."
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:54
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:40
|
||||
msgid "dashboard.restore-project-confirmation.title"
|
||||
msgstr "Restore Project"
|
||||
|
||||
#: src/app/main/data/dashboard.cljs:861, src/app/main/data/dashboard.cljs:888, src/app/main/data/dashboard.cljs:925, src/app/main/ui/dashboard/file_menu.cljs:197
|
||||
#: src/app/main/data/dashboard.cljs:861, src/app/main/data/dashboard.cljs:888, src/app/main/data/dashboard.cljs:925, src/app/main/ui/dashboard/file_menu.cljs:198
|
||||
msgid "dashboard.restore-success-notification"
|
||||
msgstr "%s has been successfully restored."
|
||||
|
||||
@@ -1130,7 +1141,7 @@ msgstr "Show all files"
|
||||
msgid "dashboard.show-version-history"
|
||||
msgstr "Version history"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:97
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:98
|
||||
msgid "dashboard.success-delete-file"
|
||||
msgid_plural "dashboard.success-delete-file"
|
||||
msgstr[0] "Your file has been deleted successfully"
|
||||
@@ -1140,7 +1151,7 @@ msgstr[1] "Your files have been deleted successfully"
|
||||
msgid "dashboard.success-delete-project"
|
||||
msgstr "Your project has been deleted successfully"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:92
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:93
|
||||
msgid "dashboard.success-duplicate-file"
|
||||
msgid_plural "dashboard.success-delete-file"
|
||||
msgstr[0] "Your file has been duplicated successfully"
|
||||
@@ -1150,11 +1161,11 @@ msgstr[1] "Your files have been duplicated successfully"
|
||||
msgid "dashboard.success-duplicate-project"
|
||||
msgstr "Your project has been duplicated successfully"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:131, src/app/main/ui/dashboard/grid.cljs:634, src/app/main/ui/dashboard/sidebar.cljs:165
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:132, src/app/main/ui/dashboard/grid.cljs:634, src/app/main/ui/dashboard/sidebar.cljs:165
|
||||
msgid "dashboard.success-move-file"
|
||||
msgstr "Your file has been moved successfully"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:130
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:131
|
||||
msgid "dashboard.success-move-files"
|
||||
msgstr "Your files have been moved successfully"
|
||||
|
||||
@@ -1186,19 +1197,19 @@ msgstr "UI theme"
|
||||
msgid "dashboard.title-search"
|
||||
msgstr "Search results"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:284
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:298
|
||||
msgid "dashboard.trash-info-text-part1"
|
||||
msgstr "Deleted files will remain in the trash for"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:286
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:300
|
||||
msgid "dashboard.trash-info-text-part2"
|
||||
msgstr " %s days. "
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:287
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:301
|
||||
msgid "dashboard.trash-info-text-part3"
|
||||
msgstr "After that, they will be permanently deleted."
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:289
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:303
|
||||
msgid "dashboard.trash-info-text-part4"
|
||||
msgstr ""
|
||||
"If you change your mind, you can restore them or delete them permanently "
|
||||
@@ -1279,7 +1290,7 @@ msgstr "Email"
|
||||
msgid "dashboard.your-name"
|
||||
msgstr "Your name"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:39, src/app/main/ui/dashboard/fonts.cljs:42, src/app/main/ui/dashboard/libraries.cljs:56, src/app/main/ui/dashboard/projects.cljs:355, src/app/main/ui/dashboard/search.cljs:48, src/app/main/ui/dashboard/sidebar.cljs:302, src/app/main/ui/dashboard/team.cljs:537, src/app/main/ui/dashboard/team.cljs:983, src/app/main/ui/dashboard/team.cljs:1251, src/app/main/ui/dashboard/team.cljs:1298
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:40, src/app/main/ui/dashboard/fonts.cljs:42, src/app/main/ui/dashboard/libraries.cljs:56, src/app/main/ui/dashboard/projects.cljs:355, src/app/main/ui/dashboard/search.cljs:48, src/app/main/ui/dashboard/sidebar.cljs:302, src/app/main/ui/dashboard/team.cljs:537, src/app/main/ui/dashboard/team.cljs:983, src/app/main/ui/dashboard/team.cljs:1251, src/app/main/ui/dashboard/team.cljs:1298
|
||||
msgid "dashboard.your-penpot"
|
||||
msgstr "Your Penpot"
|
||||
|
||||
@@ -1385,7 +1396,7 @@ msgstr "Although Penpot no longer support this type of Assets, you can"
|
||||
msgid "errors.deprecated.contact.text"
|
||||
msgstr "contact us"
|
||||
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:305
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:307
|
||||
msgid "errors.drop-token-set-parent-to-child"
|
||||
msgstr "Cannot drop a parent set to an own child path."
|
||||
|
||||
@@ -1427,7 +1438,7 @@ msgstr ""
|
||||
msgid "errors.feature-not-supported"
|
||||
msgstr "Feature '%s' is not supported."
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:41, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:76, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:299, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:239
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:41, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:77, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:299, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:239
|
||||
msgid "errors.field-max-length"
|
||||
msgstr "Must contain at most %s characters."
|
||||
|
||||
@@ -1590,7 +1601,7 @@ msgstr "The member you try to assign does not exist."
|
||||
msgid "errors.team-leave.owner-cant-leave"
|
||||
msgstr "Owner can't leave team, you must reassign the owner role."
|
||||
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:162, src/app/main/data/workspace/tokens/library_edit.cljs:192
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:164, src/app/main/data/workspace/tokens/library_edit.cljs:194
|
||||
msgid "errors.token-set-already-exists"
|
||||
msgstr "A set with the same name already exists"
|
||||
|
||||
@@ -1599,11 +1610,11 @@ msgstr "A set with the same name already exists"
|
||||
msgid "errors.token-set-doesnt-exists"
|
||||
msgstr "Can't duplicate an unkown set"
|
||||
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:304
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:306
|
||||
msgid "errors.token-set-exists-on-drop"
|
||||
msgstr "Cannot complete drop, a set with same name already exists at path."
|
||||
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:77, src/app/main/data/workspace/tokens/library_edit.cljs:96
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:79, src/app/main/data/workspace/tokens/library_edit.cljs:98
|
||||
msgid "errors.token-theme-already-exists"
|
||||
msgstr "Theme Option with the same name exists"
|
||||
|
||||
@@ -2093,7 +2104,7 @@ msgstr "Copy to clipboard"
|
||||
msgid "inspect.tabs.styles.geometry-panel"
|
||||
msgstr "Size & Position"
|
||||
|
||||
#: src/app/main/ui/inspect/styles/style_box.cljs:60, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:179
|
||||
#: src/app/main/ui/inspect/styles/style_box.cljs:60, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:178
|
||||
msgid "inspect.tabs.styles.toggle-style"
|
||||
msgstr "Toggle panel %s"
|
||||
|
||||
@@ -2180,7 +2191,7 @@ msgstr "Bad Gateway"
|
||||
msgid "labels.blur"
|
||||
msgstr "Blur"
|
||||
|
||||
#: src/app/main/data/common.cljs:119, src/app/main/ui/dashboard/change_owner.cljs:64, src/app/main/ui/dashboard/import.cljs:515, src/app/main/ui/dashboard/team.cljs:780, src/app/main/ui/dashboard/team.cljs:1122, src/app/main/ui/delete_shared.cljs:38, src/app/main/ui/exports/assets.cljs:163, src/app/main/ui/exports/files.cljs:168, src/app/main/ui/settings/access_tokens.cljs:175, src/app/main/ui/viewer/share_link.cljs:208, src/app/main/ui/workspace/sidebar/assets/groups.cljs:159, src/app/main/ui/workspace/tokens/export/modal.cljs:44, src/app/main/ui/workspace/tokens/import/modal.cljs:269, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:295, src/app/main/ui/workspace/tokens/remapping_modal.cljs:99, src/app/main/ui/workspace/tokens/settings/menu.cljs:105, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:265
|
||||
#: src/app/main/data/common.cljs:119, src/app/main/ui/dashboard/change_owner.cljs:64, src/app/main/ui/dashboard/import.cljs:515, src/app/main/ui/dashboard/team.cljs:780, src/app/main/ui/dashboard/team.cljs:1122, src/app/main/ui/delete_shared.cljs:38, src/app/main/ui/exports/assets.cljs:163, src/app/main/ui/exports/files.cljs:168, src/app/main/ui/settings/access_tokens.cljs:175, src/app/main/ui/viewer/share_link.cljs:208, src/app/main/ui/workspace/sidebar/assets/groups.cljs:159, src/app/main/ui/workspace/tokens/export/modal.cljs:44, src/app/main/ui/workspace/tokens/import/modal.cljs:269, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:298, src/app/main/ui/workspace/tokens/remapping_modal.cljs:99, src/app/main/ui/workspace/tokens/settings/menu.cljs:105, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:265
|
||||
msgid "labels.cancel"
|
||||
msgstr "Cancel"
|
||||
|
||||
@@ -2240,7 +2251,7 @@ msgstr "Contact support"
|
||||
msgid "labels.contact-us"
|
||||
msgstr "Contact us"
|
||||
|
||||
#: src/app/main/ui/auth/login.cljs:204, src/app/main/ui/dashboard/deleted.cljs:57, src/app/main/ui/dashboard/deleted.cljs:264, src/app/main/ui/dashboard/file_menu.cljs:208, src/app/main/ui/dashboard/import.cljs:521, src/app/main/ui/dashboard/team.cljs:787, src/app/main/ui/exports/files.cljs:173, src/app/main/ui/onboarding/newsletter.cljs:106, src/app/main/ui/settings/subscription.cljs:279, src/app/main/ui/settings/subscription.cljs:313
|
||||
#: src/app/main/ui/auth/login.cljs:204, src/app/main/ui/dashboard/deleted.cljs:43, src/app/main/ui/dashboard/deleted.cljs:275, src/app/main/ui/dashboard/file_menu.cljs:210, src/app/main/ui/dashboard/import.cljs:521, src/app/main/ui/dashboard/team.cljs:787, src/app/main/ui/exports/files.cljs:173, src/app/main/ui/onboarding/newsletter.cljs:106, src/app/main/ui/settings/subscription.cljs:279, src/app/main/ui/settings/subscription.cljs:313
|
||||
msgid "labels.continue"
|
||||
msgstr "Continue"
|
||||
|
||||
@@ -2288,7 +2299,7 @@ msgstr "Custom fonts"
|
||||
msgid "labels.dashboard"
|
||||
msgstr "Dashboard"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:338, src/app/main/ui/dashboard/fonts.cljs:267, src/app/main/ui/dashboard/fonts.cljs:343, src/app/main/ui/dashboard/fonts.cljs:357, src/app/main/ui/dashboard/project_menu.cljs:115, src/app/main/ui/dashboard/team.cljs:1158, src/app/main/ui/settings/access_tokens.cljs:196, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:223, src/app/main/ui/workspace/sidebar/versions.cljs:216, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:288, src/app/main/ui/workspace/tokens/sets/context_menu.cljs:66, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:399
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:338, src/app/main/ui/dashboard/fonts.cljs:267, src/app/main/ui/dashboard/fonts.cljs:343, src/app/main/ui/dashboard/fonts.cljs:357, src/app/main/ui/dashboard/project_menu.cljs:115, src/app/main/ui/dashboard/team.cljs:1158, src/app/main/ui/settings/access_tokens.cljs:196, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:223, src/app/main/ui/workspace/sidebar/versions.cljs:216, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:291, src/app/main/ui/workspace/tokens/sets/context_menu.cljs:66, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:399
|
||||
msgid "labels.delete"
|
||||
msgstr "Delete"
|
||||
|
||||
@@ -2308,7 +2319,7 @@ msgstr "Delete invitation"
|
||||
msgid "labels.delete-multi-files"
|
||||
msgstr "Delete %s files"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:205
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:215
|
||||
msgid "labels.deleted"
|
||||
msgstr "Deleted"
|
||||
|
||||
@@ -2329,7 +2340,7 @@ msgstr "Discard"
|
||||
msgid "labels.download"
|
||||
msgstr "Download %s"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:29, src/app/main/ui/dashboard/files.cljs:80, src/app/main/ui/dashboard/files.cljs:179, src/app/main/ui/dashboard/projects.cljs:229, src/app/main/ui/dashboard/projects.cljs:233, src/app/main/ui/dashboard/sidebar.cljs:726
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:30, src/app/main/ui/dashboard/files.cljs:80, src/app/main/ui/dashboard/files.cljs:179, src/app/main/ui/dashboard/projects.cljs:229, src/app/main/ui/dashboard/projects.cljs:233, src/app/main/ui/dashboard/sidebar.cljs:726
|
||||
msgid "labels.drafts"
|
||||
msgstr "Drafts"
|
||||
|
||||
@@ -2664,7 +2675,7 @@ msgstr "Profile"
|
||||
msgid "labels.projects"
|
||||
msgstr "Projects"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:198
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:208
|
||||
msgid "labels.recent"
|
||||
msgstr "Recent"
|
||||
|
||||
@@ -2741,7 +2752,7 @@ msgstr "Retry"
|
||||
msgid "labels.role"
|
||||
msgstr "Role"
|
||||
|
||||
#: src/app/main/ui/dashboard/fonts.cljs:395, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:204, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:299, src/app/main/ui/workspace/tokens/settings/menu.cljs:110
|
||||
#: src/app/main/ui/dashboard/fonts.cljs:395, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:204, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:302, src/app/main/ui/workspace/tokens/settings/menu.cljs:110
|
||||
msgid "labels.save"
|
||||
msgstr "Save"
|
||||
|
||||
@@ -3205,27 +3216,27 @@ msgstr "Are you sure you want to delete this annotation?"
|
||||
msgid "modals.delete-component-annotation.title"
|
||||
msgstr "Delete annotation"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:124
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:125
|
||||
msgid "modals.delete-file-confirm.accept"
|
||||
msgstr "Delete file"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:123
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:124
|
||||
msgid "modals.delete-file-confirm.message"
|
||||
msgstr "Are you sure you want to delete this file?"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:122
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:123
|
||||
msgid "modals.delete-file-confirm.title"
|
||||
msgstr "Deleting file"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:118
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:119
|
||||
msgid "modals.delete-file-multi-confirm.accept"
|
||||
msgstr "Delete files"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:117
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:118
|
||||
msgid "modals.delete-file-multi-confirm.message"
|
||||
msgstr "Are you sure you want to delete %s files?"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:116
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:117
|
||||
msgid "modals.delete-file-multi-confirm.title"
|
||||
msgstr "Deleting %s files"
|
||||
|
||||
@@ -4032,7 +4043,7 @@ msgstr "Go to login"
|
||||
msgid "settings.detach"
|
||||
msgstr "Detach"
|
||||
|
||||
#: src/app/main/ui/inspect/exports.cljs:148, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:105, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:107, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:342, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:496, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1062, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1302, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:138, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:149, src/app/main/ui/workspace/sidebar/options/menus/exports.cljs:223, src/app/main/ui/workspace/sidebar/options/menus/fill.cljs:221, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:79, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:430, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:460, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:55, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:56, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:111, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:500, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:511, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:555, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:566, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:595, src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:154, src/app/main/ui/workspace/sidebar/options/menus/stroke.cljs:199, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:336, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:389, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:408, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:427, src/app/main/ui/workspace/sidebar/options/rows/stroke_row.cljs:204
|
||||
#: src/app/main/ui/inspect/exports.cljs:148, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:105, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:107, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:342, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:496, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1062, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1302, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:138, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:149, src/app/main/ui/workspace/sidebar/options/menus/exports.cljs:223, src/app/main/ui/workspace/sidebar/options/menus/fill.cljs:221, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:79, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:430, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:460, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:55, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:56, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:111, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:500, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:511, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:555, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:566, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:595, src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:155, src/app/main/ui/workspace/sidebar/options/menus/stroke.cljs:199, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:336, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:389, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:408, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:427, src/app/main/ui/workspace/sidebar/options/rows/stroke_row.cljs:204
|
||||
msgid "settings.multiple"
|
||||
msgstr "Mixed"
|
||||
|
||||
@@ -5278,7 +5289,7 @@ msgstr "Filter"
|
||||
msgid "workspace.assets.graphics"
|
||||
msgstr "Graphics"
|
||||
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:190, src/app/main/ui/workspace/sidebar/assets/components.cljs:575, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:806
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:189, src/app/main/ui/workspace/sidebar/assets/components.cljs:575, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:806
|
||||
msgid "workspace.assets.grid-view"
|
||||
msgstr "Grid view"
|
||||
|
||||
@@ -5290,7 +5301,7 @@ msgstr "Group"
|
||||
msgid "workspace.assets.group-name"
|
||||
msgstr "Group name"
|
||||
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:191, src/app/main/ui/workspace/sidebar/assets/components.cljs:571, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:802
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:190, src/app/main/ui/workspace/sidebar/assets/components.cljs:571, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:802
|
||||
msgid "workspace.assets.list-view"
|
||||
msgstr "List view"
|
||||
|
||||
@@ -6913,7 +6924,7 @@ msgstr "Selection fill"
|
||||
msgid "workspace.options.selection-stroke"
|
||||
msgstr "Selection stroke"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:143
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:144
|
||||
msgid "workspace.options.shadow-options.add-shadow"
|
||||
msgstr "Add shadow"
|
||||
|
||||
@@ -6941,7 +6952,7 @@ msgstr "X"
|
||||
msgid "workspace.options.shadow-options.offsety"
|
||||
msgstr "Y"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:156, src/app/main/ui/workspace/sidebar/options/rows/shadow_row.cljs:161
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:157, src/app/main/ui/workspace/sidebar/options/rows/shadow_row.cljs:161
|
||||
msgid "workspace.options.shadow-options.remove-shadow"
|
||||
msgstr "Remove shadow"
|
||||
|
||||
@@ -6949,15 +6960,15 @@ msgstr "Remove shadow"
|
||||
msgid "workspace.options.shadow-options.spread"
|
||||
msgstr "Spread"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:138
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:139
|
||||
msgid "workspace.options.shadow-options.title"
|
||||
msgstr "Shadow"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:137
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:138
|
||||
msgid "workspace.options.shadow-options.title.group"
|
||||
msgstr "Group shadow"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:136
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:137
|
||||
msgid "workspace.options.shadow-options.title.multiple"
|
||||
msgstr "Selection shadows"
|
||||
|
||||
@@ -7743,7 +7754,7 @@ msgstr "Add new theme"
|
||||
msgid "workspace.tokens.add-set-to-group"
|
||||
msgstr "Add set to this group"
|
||||
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:197, src/app/main/ui/workspace/tokens/management/group.cljs:140
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:196, src/app/main/ui/workspace/tokens/management/group.cljs:147
|
||||
msgid "workspace.tokens.add-token"
|
||||
msgstr "Add token: %s"
|
||||
|
||||
@@ -7793,7 +7804,7 @@ msgstr "Create your first theme now."
|
||||
msgid "workspace.tokens.create-one"
|
||||
msgstr "Create one."
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:234
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:237
|
||||
msgid "workspace.tokens.create-token"
|
||||
msgstr "Create new %s token"
|
||||
|
||||
@@ -7809,7 +7820,7 @@ msgstr "Delete theme"
|
||||
msgid "workspace.tokens.duplicate"
|
||||
msgstr "Duplicate token"
|
||||
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:209, src/app/main/data/workspace/tokens/library_edit.cljs:452
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:211, src/app/main/data/workspace/tokens/library_edit.cljs:454
|
||||
msgid "workspace.tokens.duplicate-suffix"
|
||||
msgstr "copy"
|
||||
|
||||
@@ -7825,15 +7836,15 @@ msgstr "Edit theme"
|
||||
msgid "workspace.tokens.edit-themes"
|
||||
msgstr "Edit themes"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:233
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:236
|
||||
msgid "workspace.tokens.edit-token"
|
||||
msgstr "Edit %s token"
|
||||
|
||||
#: src/app/main/data/workspace/tokens/errors.cljs:41, src/app/main/ui/workspace/tokens/management/forms/color.cljs:22, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:42
|
||||
#: src/app/main/data/workspace/tokens/errors.cljs:41, src/app/main/ui/workspace/tokens/management/forms/color.cljs:22, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:43
|
||||
msgid "workspace.tokens.empty-input"
|
||||
msgstr "Token value cannot be empty"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:240
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:243
|
||||
msgid "workspace.tokens.enter-token-name"
|
||||
msgstr "Enter %s token name"
|
||||
|
||||
@@ -7938,11 +7949,11 @@ msgstr "Importing a JSON file will override all your current tokens, sets and th
|
||||
msgid "workspace.tokens.import-warning"
|
||||
msgstr "Importing tokens will override all your current tokens, sets and themes."
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management.cljs:78
|
||||
#: src/app/main/ui/workspace/tokens/management.cljs:74
|
||||
msgid "workspace.tokens.inactive-set"
|
||||
msgstr "Inactive"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management.cljs:69
|
||||
#: src/app/main/ui/workspace/tokens/management.cljs:65
|
||||
msgid "workspace.tokens.inactive-set-description"
|
||||
msgstr ""
|
||||
"This set is not active. Change theme or activate this set to see changes in "
|
||||
@@ -8169,7 +8180,7 @@ msgstr "Rename"
|
||||
msgid "workspace.tokens.renaming-token-from-to"
|
||||
msgstr "Renaming token from '%s' to '%s'"
|
||||
|
||||
#: src/app/main/data/workspace/tokens/warnings.cljs:15, src/app/main/data/workspace/tokens/warnings.cljs:19, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:56, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:84, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:103, src/app/main/ui/workspace/tokens/management/forms/controls/color_input.cljs:271, src/app/main/ui/workspace/tokens/management/forms/controls/color_input.cljs:445, src/app/main/ui/workspace/tokens/management/forms/controls/fonts_combobox.cljs:169, src/app/main/ui/workspace/tokens/management/forms/controls/fonts_combobox.cljs:304, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:224, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:320, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:421, src/app/main/ui/workspace/tokens/management/token_pill.cljs:121
|
||||
#: src/app/main/data/workspace/tokens/warnings.cljs:15, src/app/main/data/workspace/tokens/warnings.cljs:19, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:56, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:84, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:103, src/app/main/ui/workspace/tokens/management/forms/controls/color_input.cljs:271, src/app/main/ui/workspace/tokens/management/forms/controls/color_input.cljs:445, src/app/main/ui/workspace/tokens/management/forms/controls/fonts_combobox.cljs:169, src/app/main/ui/workspace/tokens/management/forms/controls/fonts_combobox.cljs:304, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:225, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:332, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:432, src/app/main/ui/workspace/tokens/management/token_pill.cljs:121
|
||||
#, fuzzy
|
||||
msgid "workspace.tokens.resolved-value"
|
||||
msgstr "Resolved value: %s"
|
||||
@@ -8182,7 +8193,7 @@ msgstr "Save theme"
|
||||
msgid "workspace.tokens.select-set"
|
||||
msgstr "Select set."
|
||||
|
||||
#: src/app/main/data/workspace/tokens/errors.cljs:45, src/app/main/ui/workspace/tokens/management/forms/color.cljs:44, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:79, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:302, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:242
|
||||
#: src/app/main/data/workspace/tokens/errors.cljs:45, src/app/main/ui/workspace/tokens/management/forms/color.cljs:44, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:80, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:302, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:242
|
||||
msgid "workspace.tokens.self-reference"
|
||||
msgstr "Token has self reference"
|
||||
|
||||
@@ -8307,7 +8318,7 @@ msgstr ""
|
||||
msgid "workspace.tokens.themes-list"
|
||||
msgstr "Themes list"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:273, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:274
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:276, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:277
|
||||
#, fuzzy
|
||||
msgid "workspace.tokens.token-description"
|
||||
msgstr "Description"
|
||||
@@ -8324,19 +8335,19 @@ msgstr "Font family"
|
||||
msgid "workspace.tokens.token-font-family-value-enter"
|
||||
msgstr "Font family or list of fonts separated by comma (,)"
|
||||
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:83, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:112, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:239
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:83, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:112, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:242
|
||||
msgid "workspace.tokens.token-name"
|
||||
msgstr "Name"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:33, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:70, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:267, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:222, src/app/main/ui/workspace/tokens/management/forms/validators.cljs:104
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:33, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:71, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:267, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:222, src/app/main/ui/workspace/tokens/management/forms/validators.cljs:104
|
||||
msgid "workspace.tokens.token-name-duplication-validation-error"
|
||||
msgstr "A token already exists at the path: %s"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:31, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:68, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:264, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:219, src/app/main/ui/workspace/tokens/management/forms/validators.cljs:102
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:31, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:69, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:264, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:219, src/app/main/ui/workspace/tokens/management/forms/validators.cljs:102
|
||||
msgid "workspace.tokens.token-name-length-validation-error"
|
||||
msgstr "Name should be at least 1 character"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:32, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:69, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:266, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:221, src/app/main/ui/workspace/tokens/management/forms/validators.cljs:103
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:32, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:70, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:266, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:221, src/app/main/ui/workspace/tokens/management/forms/validators.cljs:103
|
||||
msgid "workspace.tokens.token-name-validation-error"
|
||||
msgstr ""
|
||||
" is not a valid token name.\n"
|
||||
@@ -8348,15 +8359,15 @@ msgstr ""
|
||||
msgid "workspace.tokens.token-not-resolved"
|
||||
msgstr "Could not resolve reference token with the name: %s"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:265
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:268
|
||||
msgid "workspace.tokens.token-value"
|
||||
msgstr "Value"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:264, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:129
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:267, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:129
|
||||
msgid "workspace.tokens.token-value-enter"
|
||||
msgstr "Enter a value or alias with {alias}"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management.cljs:68
|
||||
#: src/app/main/ui/workspace/tokens/management.cljs:64
|
||||
msgid "workspace.tokens.tokens-section-title"
|
||||
msgstr "TOKENS - %s"
|
||||
|
||||
|
||||
@@ -339,11 +339,11 @@ msgstr "Comenzar"
|
||||
msgid "dasboard.walkthrough-hero.title"
|
||||
msgstr "Recorrido por el interfaz"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:207
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:209
|
||||
msgid "dashboard-restore-file-confirmation.description"
|
||||
msgstr "Vas a restaurar %s."
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:206
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:208
|
||||
msgid "dashboard-restore-file-confirmation.title"
|
||||
msgstr "Restaurar archivo"
|
||||
|
||||
@@ -430,7 +430,7 @@ msgstr "Añadir como Biblioteca Compartida"
|
||||
msgid "dashboard.change-email"
|
||||
msgstr "Cambiar correo"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:299
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:313
|
||||
msgid "dashboard.clear-trash-button"
|
||||
msgstr "Vaciar papelera"
|
||||
|
||||
@@ -442,6 +442,9 @@ msgstr "(copia)"
|
||||
msgid "dashboard.create-new-team"
|
||||
msgstr "Crear nuevo equipo"
|
||||
|
||||
msgid "dashboard.create-new-org"
|
||||
msgstr "Crear nueva organización"
|
||||
|
||||
#: src/app/main/ui/workspace/main_menu.cljs:661
|
||||
msgid "dashboard.create-version-menu"
|
||||
msgstr "Guardar esta versión"
|
||||
@@ -450,17 +453,13 @@ msgstr "Guardar esta versión"
|
||||
msgid "dashboard.default-team-name"
|
||||
msgstr "Tu Penpot"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:251
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:262
|
||||
msgid "dashboard.delete-all-forever-confirmation.description"
|
||||
msgstr ""
|
||||
"¿Estás seguro de que quieres eliminar para siempre todos tus proyectos y "
|
||||
"archivos eliminados? Esta es una acción irreversible."
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:268
|
||||
msgid "dashboard.delete-file-button"
|
||||
msgstr "Eliminar archivo"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:220
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:222
|
||||
msgid "dashboard.delete-file-forever-confirmation.description"
|
||||
msgstr ""
|
||||
"¿Estás seguro de que quieres eliminar para siempre %s? Esta es una acción "
|
||||
@@ -470,15 +469,15 @@ msgstr ""
|
||||
msgid "dashboard.delete-files-success-notification"
|
||||
msgstr "%s ficheros han sido eliminados correctamente."
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:66, src/app/main/ui/dashboard/deleted.cljs:68, src/app/main/ui/dashboard/deleted.cljs:250, src/app/main/ui/dashboard/deleted.cljs:252, src/app/main/ui/dashboard/file_menu.cljs:219, src/app/main/ui/dashboard/file_menu.cljs:221
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:51, src/app/main/ui/dashboard/deleted.cljs:53, src/app/main/ui/dashboard/deleted.cljs:261, src/app/main/ui/dashboard/deleted.cljs:263, src/app/main/ui/dashboard/file_menu.cljs:221, src/app/main/ui/dashboard/file_menu.cljs:223
|
||||
msgid "dashboard.delete-forever-confirmation.title"
|
||||
msgstr "Eliminar para siempre"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:75
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:85
|
||||
msgid "dashboard.delete-project-button"
|
||||
msgstr "Eliminar proyecto"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:67
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:52
|
||||
msgid "dashboard.delete-project-forever-confirmation.description"
|
||||
msgstr ""
|
||||
"¿Estás seguro de que quieres eliminar para siempre el proyecto %s? Vas a "
|
||||
@@ -493,6 +492,10 @@ msgstr "%s ha sido eliminado correctamente."
|
||||
msgid "dashboard.delete-team"
|
||||
msgstr "Eliminar equipo"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:327
|
||||
msgid "dashboard.deleted.empty-state-description"
|
||||
msgstr "Tu papelera está vacía. Los archivos y proyectos eliminados aparecerán aquí."
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:330, src/app/main/ui/workspace/main_menu.cljs:690
|
||||
msgid "dashboard.download-binary-file"
|
||||
msgstr "Descargar archivo Penpot (.penpot)"
|
||||
@@ -518,11 +521,11 @@ msgstr "Cuando un miembro del equipo cree algún borrador, este aparecerá aquí
|
||||
msgid "dashboard.empty-placeholder-drafts-title"
|
||||
msgstr "Aún no hay borradores."
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:166, src/app/main/ui/dashboard/files.cljs:204, src/app/main/ui/dashboard/projects.cljs:291
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:176, src/app/main/ui/dashboard/files.cljs:204, src/app/main/ui/dashboard/projects.cljs:291
|
||||
msgid "dashboard.empty-placeholder-files-subtitle"
|
||||
msgstr "Cuando un miembro del equipo cree algún archivo, este aparecerá aquí."
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:163, src/app/main/ui/dashboard/files.cljs:199, src/app/main/ui/dashboard/projects.cljs:286
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:173, src/app/main/ui/dashboard/files.cljs:199, src/app/main/ui/dashboard/projects.cljs:286
|
||||
msgid "dashboard.empty-placeholder-files-title"
|
||||
msgstr "Aún no hay archivos."
|
||||
|
||||
@@ -586,7 +589,7 @@ msgstr "Hubo un error al eliminar archivos."
|
||||
msgid "dashboard.errors.error-on-delete-project"
|
||||
msgstr "Hubo un error al eliminar el proyecto %s"
|
||||
|
||||
#: src/app/main/data/dashboard.cljs:895, src/app/main/ui/dashboard/file_menu.cljs:200
|
||||
#: src/app/main/data/dashboard.cljs:895, src/app/main/ui/dashboard/file_menu.cljs:201
|
||||
msgid "dashboard.errors.error-on-restore-file"
|
||||
msgstr "Hubo un error al restaurar el archivo %s."
|
||||
|
||||
@@ -648,6 +651,18 @@ msgstr ""
|
||||
"Uno o mas ficheros que quieres descargar usan librerias compartidas. ¿Qué "
|
||||
"quieres hacer con los recursos*?"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:268
|
||||
msgid "dashboard.file-menu.delete-files-permanently-option"
|
||||
msgid_plural "dashboard.file-menu.delete-files-permanently-option"
|
||||
msgstr[0] "Eliminar archivo"
|
||||
msgstr[1] "Eliminar archivos"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:265
|
||||
msgid "dashboard.file-menu.restore-files-option"
|
||||
msgid_plural "dashboard.file-menu.restore-files-option"
|
||||
msgstr[0] "Restaurar archivo"
|
||||
msgstr[1] "Restaurar archivos"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:322
|
||||
msgid "dashboard.fonts.deleted-placeholder"
|
||||
msgstr "Fuente no encontrada"
|
||||
@@ -857,7 +872,7 @@ msgstr "Mover a"
|
||||
msgid "dashboard.move-to-multi"
|
||||
msgstr "Mover %s archivos a"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:248
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:250
|
||||
msgid "dashboard.move-to-other-team"
|
||||
msgstr "Mover a otro equipo"
|
||||
|
||||
@@ -917,7 +932,7 @@ msgstr "%s integrantes"
|
||||
msgid "dashboard.open-in-new-tab"
|
||||
msgstr "Abrir en una pestaña nueva"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:147, src/app/main/ui/dashboard/deleted.cljs:148, src/app/main/ui/dashboard/files.cljs:120, src/app/main/ui/dashboard/grid.cljs:442, src/app/main/ui/dashboard/projects.cljs:266, src/app/main/ui/dashboard/projects.cljs:267
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:157, src/app/main/ui/dashboard/deleted.cljs:158, src/app/main/ui/dashboard/files.cljs:120, src/app/main/ui/dashboard/grid.cljs:442, src/app/main/ui/dashboard/projects.cljs:266, src/app/main/ui/dashboard/projects.cljs:267
|
||||
msgid "dashboard.options"
|
||||
msgstr "Opciones"
|
||||
|
||||
@@ -981,7 +996,7 @@ msgstr "Eliminación inesperadamente lenta"
|
||||
msgid "dashboard.progress-notification.slow-restore"
|
||||
msgstr "Restauración inesperadamente lenta"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:41, src/app/main/ui/dashboard/projects.cljs:57
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:62, src/app/main/ui/dashboard/projects.cljs:57
|
||||
msgid "dashboard.projects-title"
|
||||
msgstr "Proyectos"
|
||||
|
||||
@@ -998,39 +1013,35 @@ msgstr "Eliminar como Biblioteca Compartida"
|
||||
msgid "dashboard.removed-from-team"
|
||||
msgstr "Ya no eres parte del equipo “%s“."
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:263
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:274
|
||||
msgid "dashboard.restore-all-confirmation.description"
|
||||
msgstr "Vas a restaurar todos tus proyectos y archivos. Esto puede tardar un poco."
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:262
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:273
|
||||
msgid "dashboard.restore-all-confirmation.title"
|
||||
msgstr "Restaurar todos los proyectos y archivos"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:294
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:308
|
||||
msgid "dashboard.restore-all-deleted-button"
|
||||
msgstr "Restaurar todo"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:264
|
||||
msgid "dashboard.restore-file-button"
|
||||
msgstr "Restaurar archivo"
|
||||
|
||||
#: src/app/main/data/dashboard.cljs:889
|
||||
msgid "dashboard.restore-files-success-notification"
|
||||
msgstr "%s ficheros han sido restaurado correctamente."
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:72
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:82
|
||||
msgid "dashboard.restore-project-button"
|
||||
msgstr "Restaurar proyecto"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:55
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:41
|
||||
msgid "dashboard.restore-project-confirmation.description"
|
||||
msgstr "Vas a restaurar el proyecto %s y todos los archivos que contiene."
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:54
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:40
|
||||
msgid "dashboard.restore-project-confirmation.title"
|
||||
msgstr "Restaurar proyecto"
|
||||
|
||||
#: src/app/main/data/dashboard.cljs:861, src/app/main/data/dashboard.cljs:888, src/app/main/data/dashboard.cljs:925, src/app/main/ui/dashboard/file_menu.cljs:197
|
||||
#: src/app/main/data/dashboard.cljs:861, src/app/main/data/dashboard.cljs:888, src/app/main/data/dashboard.cljs:925, src/app/main/ui/dashboard/file_menu.cljs:198
|
||||
msgid "dashboard.restore-success-notification"
|
||||
msgstr "%s ha sido restaurado correctamente."
|
||||
|
||||
@@ -1134,7 +1145,7 @@ msgstr "Ver todos los archivos"
|
||||
msgid "dashboard.show-version-history"
|
||||
msgstr "Histórico de versiones"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:97
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:98
|
||||
msgid "dashboard.success-delete-file"
|
||||
msgid_plural "dashboard.success-delete-file"
|
||||
msgstr[0] "Tu archivo ha sido borrado con éxito"
|
||||
@@ -1144,7 +1155,7 @@ msgstr[1] "Tus archivos han sido borrado con éxito"
|
||||
msgid "dashboard.success-delete-project"
|
||||
msgstr "Tu proyecto ha sido borrado con éxito"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:92
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:93
|
||||
msgid "dashboard.success-duplicate-file"
|
||||
msgid_plural "dashboard.success-delete-file"
|
||||
msgstr[0] "Tu archivo ha sido duplicado con éxito"
|
||||
@@ -1154,11 +1165,11 @@ msgstr[1] "Tus archivos han sido duplicado con éxito"
|
||||
msgid "dashboard.success-duplicate-project"
|
||||
msgstr "Tu proyecto ha sido duplicado con éxito"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:131, src/app/main/ui/dashboard/grid.cljs:634, src/app/main/ui/dashboard/sidebar.cljs:165
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:132, src/app/main/ui/dashboard/grid.cljs:634, src/app/main/ui/dashboard/sidebar.cljs:165
|
||||
msgid "dashboard.success-move-file"
|
||||
msgstr "Tu archivo ha sido movido con éxito"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:130
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:131
|
||||
msgid "dashboard.success-move-files"
|
||||
msgstr "Tus archivos han sido movidos con éxito"
|
||||
|
||||
@@ -1190,19 +1201,19 @@ msgstr "Tema visual"
|
||||
msgid "dashboard.title-search"
|
||||
msgstr "Resultados de búsqueda"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:284
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:298
|
||||
msgid "dashboard.trash-info-text-part1"
|
||||
msgstr "Los archivos eliminados permanecerán en la papelera durante"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:286
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:300
|
||||
msgid "dashboard.trash-info-text-part2"
|
||||
msgstr " %s días. "
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:287
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:301
|
||||
msgid "dashboard.trash-info-text-part3"
|
||||
msgstr "Después de eso, serán eliminados permanentemente."
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:289
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:303
|
||||
msgid "dashboard.trash-info-text-part4"
|
||||
msgstr ""
|
||||
"Si cambias de opinión, puedes restaurarlos o eliminarlos permanentemente "
|
||||
@@ -1283,7 +1294,7 @@ msgstr "Correo"
|
||||
msgid "dashboard.your-name"
|
||||
msgstr "Tu nombre"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:39, src/app/main/ui/dashboard/fonts.cljs:42, src/app/main/ui/dashboard/libraries.cljs:56, src/app/main/ui/dashboard/projects.cljs:355, src/app/main/ui/dashboard/search.cljs:48, src/app/main/ui/dashboard/sidebar.cljs:302, src/app/main/ui/dashboard/team.cljs:537, src/app/main/ui/dashboard/team.cljs:983, src/app/main/ui/dashboard/team.cljs:1251, src/app/main/ui/dashboard/team.cljs:1298
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:40, src/app/main/ui/dashboard/fonts.cljs:42, src/app/main/ui/dashboard/libraries.cljs:56, src/app/main/ui/dashboard/projects.cljs:355, src/app/main/ui/dashboard/search.cljs:48, src/app/main/ui/dashboard/sidebar.cljs:302, src/app/main/ui/dashboard/team.cljs:537, src/app/main/ui/dashboard/team.cljs:983, src/app/main/ui/dashboard/team.cljs:1251, src/app/main/ui/dashboard/team.cljs:1298
|
||||
msgid "dashboard.your-penpot"
|
||||
msgstr "Tu Penpot"
|
||||
|
||||
@@ -1423,7 +1434,7 @@ msgstr ""
|
||||
msgid "errors.feature-not-supported"
|
||||
msgstr "Caracteristica no soportada: '%s'."
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:41, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:76, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:299, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:239
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:41, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:77, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:299, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:239
|
||||
msgid "errors.field-max-length"
|
||||
msgstr "Debe contener como máximo %s caracteres."
|
||||
|
||||
@@ -1583,7 +1594,7 @@ msgstr ""
|
||||
"El propietario no puede salir del equipo, tienes que asignar la propiedad a "
|
||||
"otra persona."
|
||||
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:162, src/app/main/data/workspace/tokens/library_edit.cljs:192
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:164, src/app/main/data/workspace/tokens/library_edit.cljs:194
|
||||
msgid "errors.token-set-already-exists"
|
||||
msgstr "Ya existe un set con el mismo nombre"
|
||||
|
||||
@@ -1592,13 +1603,13 @@ msgstr "Ya existe un set con el mismo nombre"
|
||||
msgid "errors.token-set-doesnt-exists"
|
||||
msgstr "No se puede duplicar un set que no existe."
|
||||
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:304
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:306
|
||||
msgid "errors.token-set-exists-on-drop"
|
||||
msgstr ""
|
||||
"No se ha podido mover el set, un set con el mismo nombre ya existe en la "
|
||||
"esa ruta."
|
||||
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:77, src/app/main/data/workspace/tokens/library_edit.cljs:96
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:79, src/app/main/data/workspace/tokens/library_edit.cljs:98
|
||||
msgid "errors.token-theme-already-exists"
|
||||
msgstr "Ya existe un theme con este nombre"
|
||||
|
||||
@@ -2064,7 +2075,7 @@ msgstr "Copiar al portapapeles"
|
||||
msgid "inspect.tabs.styles.geometry-panel"
|
||||
msgstr "Tamaño y posición"
|
||||
|
||||
#: src/app/main/ui/inspect/styles/style_box.cljs:60, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:179
|
||||
#: src/app/main/ui/inspect/styles/style_box.cljs:60, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:178
|
||||
msgid "inspect.tabs.styles.toggle-style"
|
||||
msgstr "Alternar panel %s"
|
||||
|
||||
@@ -2151,7 +2162,7 @@ msgstr "Error del servidor (Bad Gateway)"
|
||||
msgid "labels.blur"
|
||||
msgstr "Desenfoque"
|
||||
|
||||
#: src/app/main/data/common.cljs:119, src/app/main/ui/dashboard/change_owner.cljs:64, src/app/main/ui/dashboard/import.cljs:515, src/app/main/ui/dashboard/team.cljs:780, src/app/main/ui/dashboard/team.cljs:1122, src/app/main/ui/delete_shared.cljs:38, src/app/main/ui/exports/assets.cljs:163, src/app/main/ui/exports/files.cljs:168, src/app/main/ui/settings/access_tokens.cljs:175, src/app/main/ui/viewer/share_link.cljs:208, src/app/main/ui/workspace/sidebar/assets/groups.cljs:159, src/app/main/ui/workspace/tokens/export/modal.cljs:44, src/app/main/ui/workspace/tokens/import/modal.cljs:269, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:295, src/app/main/ui/workspace/tokens/remapping_modal.cljs:99, src/app/main/ui/workspace/tokens/settings/menu.cljs:105, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:265
|
||||
#: src/app/main/data/common.cljs:119, src/app/main/ui/dashboard/change_owner.cljs:64, src/app/main/ui/dashboard/import.cljs:515, src/app/main/ui/dashboard/team.cljs:780, src/app/main/ui/dashboard/team.cljs:1122, src/app/main/ui/delete_shared.cljs:38, src/app/main/ui/exports/assets.cljs:163, src/app/main/ui/exports/files.cljs:168, src/app/main/ui/settings/access_tokens.cljs:175, src/app/main/ui/viewer/share_link.cljs:208, src/app/main/ui/workspace/sidebar/assets/groups.cljs:159, src/app/main/ui/workspace/tokens/export/modal.cljs:44, src/app/main/ui/workspace/tokens/import/modal.cljs:269, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:298, src/app/main/ui/workspace/tokens/remapping_modal.cljs:99, src/app/main/ui/workspace/tokens/settings/menu.cljs:105, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:265
|
||||
msgid "labels.cancel"
|
||||
msgstr "Cancelar"
|
||||
|
||||
@@ -2211,7 +2222,7 @@ msgstr "Contacta con soporte"
|
||||
msgid "labels.contact-us"
|
||||
msgstr "Contáctanos"
|
||||
|
||||
#: src/app/main/ui/auth/login.cljs:204, src/app/main/ui/dashboard/deleted.cljs:57, src/app/main/ui/dashboard/deleted.cljs:264, src/app/main/ui/dashboard/file_menu.cljs:208, src/app/main/ui/dashboard/import.cljs:521, src/app/main/ui/dashboard/team.cljs:787, src/app/main/ui/exports/files.cljs:173, src/app/main/ui/onboarding/newsletter.cljs:106, src/app/main/ui/settings/subscription.cljs:279, src/app/main/ui/settings/subscription.cljs:313
|
||||
#: src/app/main/ui/auth/login.cljs:204, src/app/main/ui/dashboard/deleted.cljs:43, src/app/main/ui/dashboard/deleted.cljs:275, src/app/main/ui/dashboard/file_menu.cljs:210, src/app/main/ui/dashboard/import.cljs:521, src/app/main/ui/dashboard/team.cljs:787, src/app/main/ui/exports/files.cljs:173, src/app/main/ui/onboarding/newsletter.cljs:106, src/app/main/ui/settings/subscription.cljs:279, src/app/main/ui/settings/subscription.cljs:313
|
||||
msgid "labels.continue"
|
||||
msgstr "Continuar"
|
||||
|
||||
@@ -2259,7 +2270,7 @@ msgstr "Fuentes personalizadas"
|
||||
msgid "labels.dashboard"
|
||||
msgstr "Panel"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:338, src/app/main/ui/dashboard/fonts.cljs:267, src/app/main/ui/dashboard/fonts.cljs:343, src/app/main/ui/dashboard/fonts.cljs:357, src/app/main/ui/dashboard/project_menu.cljs:115, src/app/main/ui/dashboard/team.cljs:1158, src/app/main/ui/settings/access_tokens.cljs:196, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:223, src/app/main/ui/workspace/sidebar/versions.cljs:216, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:288, src/app/main/ui/workspace/tokens/sets/context_menu.cljs:66, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:399
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:338, src/app/main/ui/dashboard/fonts.cljs:267, src/app/main/ui/dashboard/fonts.cljs:343, src/app/main/ui/dashboard/fonts.cljs:357, src/app/main/ui/dashboard/project_menu.cljs:115, src/app/main/ui/dashboard/team.cljs:1158, src/app/main/ui/settings/access_tokens.cljs:196, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:223, src/app/main/ui/workspace/sidebar/versions.cljs:216, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:291, src/app/main/ui/workspace/tokens/sets/context_menu.cljs:66, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:399
|
||||
msgid "labels.delete"
|
||||
msgstr "Borrar"
|
||||
|
||||
@@ -2279,7 +2290,7 @@ msgstr "Eliminar invitation"
|
||||
msgid "labels.delete-multi-files"
|
||||
msgstr "Borrar %s archivos"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:205
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:215
|
||||
msgid "labels.deleted"
|
||||
msgstr "Eliminados"
|
||||
|
||||
@@ -2300,7 +2311,7 @@ msgstr "Descartar"
|
||||
msgid "labels.download"
|
||||
msgstr "Descargar %s"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:29, src/app/main/ui/dashboard/files.cljs:80, src/app/main/ui/dashboard/files.cljs:179, src/app/main/ui/dashboard/projects.cljs:229, src/app/main/ui/dashboard/projects.cljs:233, src/app/main/ui/dashboard/sidebar.cljs:726
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:30, src/app/main/ui/dashboard/files.cljs:80, src/app/main/ui/dashboard/files.cljs:179, src/app/main/ui/dashboard/projects.cljs:229, src/app/main/ui/dashboard/projects.cljs:233, src/app/main/ui/dashboard/sidebar.cljs:726
|
||||
msgid "labels.drafts"
|
||||
msgstr "Borradores"
|
||||
|
||||
@@ -2633,7 +2644,7 @@ msgstr "Perfil"
|
||||
msgid "labels.projects"
|
||||
msgstr "Proyectos"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:198
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:208
|
||||
msgid "labels.recent"
|
||||
msgstr "Recientes"
|
||||
|
||||
@@ -2706,7 +2717,7 @@ msgstr "Reintentar"
|
||||
msgid "labels.role"
|
||||
msgstr "Rol"
|
||||
|
||||
#: src/app/main/ui/dashboard/fonts.cljs:395, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:204, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:299, src/app/main/ui/workspace/tokens/settings/menu.cljs:110
|
||||
#: src/app/main/ui/dashboard/fonts.cljs:395, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:204, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:302, src/app/main/ui/workspace/tokens/settings/menu.cljs:110
|
||||
msgid "labels.save"
|
||||
msgstr "Guardar"
|
||||
|
||||
@@ -3172,27 +3183,27 @@ msgstr "¿Seguro que quieres borrar esta nota?"
|
||||
msgid "modals.delete-component-annotation.title"
|
||||
msgstr "Borrar nota"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:124
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:125
|
||||
msgid "modals.delete-file-confirm.accept"
|
||||
msgstr "Borrar archivo"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:123
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:124
|
||||
msgid "modals.delete-file-confirm.message"
|
||||
msgstr "¿Seguro que quieres borrar este archivo?"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:122
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:123
|
||||
msgid "modals.delete-file-confirm.title"
|
||||
msgstr "Borrando archivo"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:118
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:119
|
||||
msgid "modals.delete-file-multi-confirm.accept"
|
||||
msgstr "Borrar archivos"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:117
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:118
|
||||
msgid "modals.delete-file-multi-confirm.message"
|
||||
msgstr "¿Seguro que quieres borrar %s archivos?"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:116
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:117
|
||||
msgid "modals.delete-file-multi-confirm.title"
|
||||
msgstr "Borrando %s archivos"
|
||||
|
||||
@@ -4002,7 +4013,7 @@ msgstr "Ir al login"
|
||||
msgid "settings.detach"
|
||||
msgstr "Desvincular"
|
||||
|
||||
#: src/app/main/ui/inspect/exports.cljs:148, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:105, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:107, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:342, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:496, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1062, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1302, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:138, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:149, src/app/main/ui/workspace/sidebar/options/menus/exports.cljs:223, src/app/main/ui/workspace/sidebar/options/menus/fill.cljs:221, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:79, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:430, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:460, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:55, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:56, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:111, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:500, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:511, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:555, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:566, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:595, src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:154, src/app/main/ui/workspace/sidebar/options/menus/stroke.cljs:199, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:336, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:389, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:408, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:427, src/app/main/ui/workspace/sidebar/options/rows/stroke_row.cljs:204
|
||||
#: src/app/main/ui/inspect/exports.cljs:148, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:105, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:107, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:342, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:496, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1062, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1302, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:138, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:149, src/app/main/ui/workspace/sidebar/options/menus/exports.cljs:223, src/app/main/ui/workspace/sidebar/options/menus/fill.cljs:221, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:79, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:430, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:460, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:55, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:56, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:111, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:500, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:511, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:555, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:566, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:595, src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:155, src/app/main/ui/workspace/sidebar/options/menus/stroke.cljs:199, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:336, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:389, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:408, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:427, src/app/main/ui/workspace/sidebar/options/rows/stroke_row.cljs:204
|
||||
msgid "settings.multiple"
|
||||
msgstr "Varios"
|
||||
|
||||
@@ -5259,7 +5270,7 @@ msgstr "Filtrar"
|
||||
msgid "workspace.assets.graphics"
|
||||
msgstr "Gráficos"
|
||||
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:190, src/app/main/ui/workspace/sidebar/assets/components.cljs:575, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:806
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:189, src/app/main/ui/workspace/sidebar/assets/components.cljs:575, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:806
|
||||
msgid "workspace.assets.grid-view"
|
||||
msgstr "Ver como rejilla"
|
||||
|
||||
@@ -5271,7 +5282,7 @@ msgstr "Agrupar"
|
||||
msgid "workspace.assets.group-name"
|
||||
msgstr "Nombre del grupo"
|
||||
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:191, src/app/main/ui/workspace/sidebar/assets/components.cljs:571, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:802
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:190, src/app/main/ui/workspace/sidebar/assets/components.cljs:571, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:802
|
||||
msgid "workspace.assets.list-view"
|
||||
msgstr "Ver como lista"
|
||||
|
||||
@@ -6855,7 +6866,7 @@ msgstr "Relleno de selección"
|
||||
msgid "workspace.options.selection-stroke"
|
||||
msgstr "Borde de selección"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:143
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:144
|
||||
msgid "workspace.options.shadow-options.add-shadow"
|
||||
msgstr "Añadir sombra"
|
||||
|
||||
@@ -6883,7 +6894,7 @@ msgstr "X"
|
||||
msgid "workspace.options.shadow-options.offsety"
|
||||
msgstr "Y"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:156, src/app/main/ui/workspace/sidebar/options/rows/shadow_row.cljs:161
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:157, src/app/main/ui/workspace/sidebar/options/rows/shadow_row.cljs:161
|
||||
msgid "workspace.options.shadow-options.remove-shadow"
|
||||
msgstr "Eliminar sombra"
|
||||
|
||||
@@ -6891,15 +6902,15 @@ msgstr "Eliminar sombra"
|
||||
msgid "workspace.options.shadow-options.spread"
|
||||
msgstr "Difusión"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:138
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:139
|
||||
msgid "workspace.options.shadow-options.title"
|
||||
msgstr "Sombra"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:137
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:138
|
||||
msgid "workspace.options.shadow-options.title.group"
|
||||
msgstr "Sombra del grupo"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:136
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:137
|
||||
msgid "workspace.options.shadow-options.title.multiple"
|
||||
msgstr "Sombras de la seleccíón"
|
||||
|
||||
@@ -7687,7 +7698,7 @@ msgstr "Añadir nuevo tema"
|
||||
msgid "workspace.tokens.add-set-to-group"
|
||||
msgstr "Añadir un set a este grupo"
|
||||
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:197, src/app/main/ui/workspace/tokens/management/group.cljs:140
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:196, src/app/main/ui/workspace/tokens/management/group.cljs:147
|
||||
msgid "workspace.tokens.add-token"
|
||||
msgstr "Añadir token: %s"
|
||||
|
||||
@@ -7731,7 +7742,7 @@ msgstr "Crea un nuevo tema ahora."
|
||||
msgid "workspace.tokens.create-one"
|
||||
msgstr "Crear uno."
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:234
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:237
|
||||
msgid "workspace.tokens.create-token"
|
||||
msgstr "Crear un token de %s"
|
||||
|
||||
@@ -7747,7 +7758,7 @@ msgstr "Borrar theme"
|
||||
msgid "workspace.tokens.duplicate"
|
||||
msgstr "Duplicar token"
|
||||
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:209, src/app/main/data/workspace/tokens/library_edit.cljs:452
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:211, src/app/main/data/workspace/tokens/library_edit.cljs:454
|
||||
msgid "workspace.tokens.duplicate-suffix"
|
||||
msgstr "copiar"
|
||||
|
||||
@@ -7763,15 +7774,15 @@ msgstr "Editar tema"
|
||||
msgid "workspace.tokens.edit-themes"
|
||||
msgstr "Editar temas"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:233
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:236
|
||||
msgid "workspace.tokens.edit-token"
|
||||
msgstr "Editar token de %s"
|
||||
|
||||
#: src/app/main/data/workspace/tokens/errors.cljs:41, src/app/main/ui/workspace/tokens/management/forms/color.cljs:22, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:42
|
||||
#: src/app/main/data/workspace/tokens/errors.cljs:41, src/app/main/ui/workspace/tokens/management/forms/color.cljs:22, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:43
|
||||
msgid "workspace.tokens.empty-input"
|
||||
msgstr "El valor del token no puede estar vacío"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:240
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:243
|
||||
msgid "workspace.tokens.enter-token-name"
|
||||
msgstr "Introduce un nombre para el token %s"
|
||||
|
||||
@@ -7856,11 +7867,11 @@ msgstr "Al importar un fichero JSON sobreescribirás todos tus tokens, sets y th
|
||||
msgid "workspace.tokens.import-warning"
|
||||
msgstr "Al importar tokens sobreescribirás todos tus tokens, sets y themes."
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management.cljs:78
|
||||
#: src/app/main/ui/workspace/tokens/management.cljs:74
|
||||
msgid "workspace.tokens.inactive-set"
|
||||
msgstr "Inactivo"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management.cljs:69
|
||||
#: src/app/main/ui/workspace/tokens/management.cljs:65
|
||||
msgid "workspace.tokens.inactive-set-description"
|
||||
msgstr ""
|
||||
"Este set no está activo. Cambia el tema o activa este set para ver los "
|
||||
@@ -8050,7 +8061,7 @@ msgstr "Renombrar"
|
||||
msgid "workspace.tokens.renaming-token-from-to"
|
||||
msgstr "Renombrando el token de '%s' a '%s'"
|
||||
|
||||
#: src/app/main/data/workspace/tokens/warnings.cljs:15, src/app/main/data/workspace/tokens/warnings.cljs:19, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:56, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:84, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:103, src/app/main/ui/workspace/tokens/management/forms/controls/color_input.cljs:271, src/app/main/ui/workspace/tokens/management/forms/controls/color_input.cljs:445, src/app/main/ui/workspace/tokens/management/forms/controls/fonts_combobox.cljs:169, src/app/main/ui/workspace/tokens/management/forms/controls/fonts_combobox.cljs:304, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:224, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:320, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:421, src/app/main/ui/workspace/tokens/management/token_pill.cljs:121
|
||||
#: src/app/main/data/workspace/tokens/warnings.cljs:15, src/app/main/data/workspace/tokens/warnings.cljs:19, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:56, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:84, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:103, src/app/main/ui/workspace/tokens/management/forms/controls/color_input.cljs:271, src/app/main/ui/workspace/tokens/management/forms/controls/color_input.cljs:445, src/app/main/ui/workspace/tokens/management/forms/controls/fonts_combobox.cljs:169, src/app/main/ui/workspace/tokens/management/forms/controls/fonts_combobox.cljs:304, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:225, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:332, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:432, src/app/main/ui/workspace/tokens/management/token_pill.cljs:121
|
||||
#, fuzzy
|
||||
msgid "workspace.tokens.resolved-value"
|
||||
msgstr "Valor resuelto: %s"
|
||||
@@ -8063,7 +8074,7 @@ msgstr "Guardar tema"
|
||||
msgid "workspace.tokens.select-set"
|
||||
msgstr "Selecciona set"
|
||||
|
||||
#: src/app/main/data/workspace/tokens/errors.cljs:45, src/app/main/ui/workspace/tokens/management/forms/color.cljs:44, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:79, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:302, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:242
|
||||
#: src/app/main/data/workspace/tokens/errors.cljs:45, src/app/main/ui/workspace/tokens/management/forms/color.cljs:44, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:80, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:302, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:242
|
||||
msgid "workspace.tokens.self-reference"
|
||||
msgstr "El token tiene una autoreferencia"
|
||||
|
||||
@@ -8186,24 +8197,24 @@ msgstr ""
|
||||
msgid "workspace.tokens.themes-list"
|
||||
msgstr "Lista de temas"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:273, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:274
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:276, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:277
|
||||
#, fuzzy
|
||||
msgid "workspace.tokens.token-description"
|
||||
msgstr "Descripción"
|
||||
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:83, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:112, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:239
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:83, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:112, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:242
|
||||
msgid "workspace.tokens.token-name"
|
||||
msgstr "Nombre"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:33, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:70, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:267, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:222, src/app/main/ui/workspace/tokens/management/forms/validators.cljs:104
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:33, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:71, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:267, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:222, src/app/main/ui/workspace/tokens/management/forms/validators.cljs:104
|
||||
msgid "workspace.tokens.token-name-duplication-validation-error"
|
||||
msgstr "Ya existe un token en la ruta: %s"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:31, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:68, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:264, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:219, src/app/main/ui/workspace/tokens/management/forms/validators.cljs:102
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:31, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:69, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:264, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:219, src/app/main/ui/workspace/tokens/management/forms/validators.cljs:102
|
||||
msgid "workspace.tokens.token-name-length-validation-error"
|
||||
msgstr "El nombre debería ser de al menos 1 caracter"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:32, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:69, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:266, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:221, src/app/main/ui/workspace/tokens/management/forms/validators.cljs:103
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:32, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:70, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:266, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:221, src/app/main/ui/workspace/tokens/management/forms/validators.cljs:103
|
||||
msgid "workspace.tokens.token-name-validation-error"
|
||||
msgstr ""
|
||||
" es un nombre de token no válido.\n"
|
||||
@@ -8215,11 +8226,11 @@ msgstr ""
|
||||
msgid "workspace.tokens.token-not-resolved"
|
||||
msgstr "No se pudo resolver el token de referencia con el nombre: %s"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:265
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:268
|
||||
msgid "workspace.tokens.token-value"
|
||||
msgstr "Valor"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:264, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:129
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:267, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:129
|
||||
msgid "workspace.tokens.token-value-enter"
|
||||
msgstr "Introduce un valor o un alias usando {alias}"
|
||||
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"PO-Revision-Date: 2026-01-08 17:06+0000\n"
|
||||
"Last-Translator: Yessenia Villarte Vaca <yesseniavillarte@gmail.com>\n"
|
||||
"Language-Team: Spanish (Latin America) <https://hosted.weblate.org/projects/"
|
||||
"penpot/frontend/es_419/>\n"
|
||||
"Language-Team: Spanish (Latin America) "
|
||||
"<https://hosted.weblate.org/projects/penpot/frontend/es_419/>\n"
|
||||
"Language: es_419\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=utf-8\n"
|
||||
@@ -446,11 +446,11 @@ msgid "dashboard.export-standard-multi"
|
||||
msgstr "Descargar %s archivos estándar (.svg + .json)"
|
||||
|
||||
#: src/app/main/ui/exports/files.cljs:155
|
||||
#, fuzzy, unused
|
||||
#, unused
|
||||
msgid "dashboard.export.explain"
|
||||
msgstr ""
|
||||
"Uno o más archivos que desea exportar utilizan bibliotecas compartidas. ¿Qué "
|
||||
"quiere hacer con sus activos*?"
|
||||
"Uno o más archivos que desea exportar utilizan bibliotecas compartidas. "
|
||||
"¿Qué quiere hacer con sus activos*?"
|
||||
|
||||
#: src/app/main/ui/dashboard/import.cljs:131
|
||||
msgid "dashboard.import.progress.process-typographies"
|
||||
@@ -504,7 +504,7 @@ msgstr "Mover a"
|
||||
msgid "dashboard.move-to-multi"
|
||||
msgstr "Mover %s archivos a"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:248
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:250
|
||||
msgid "dashboard.move-to-other-team"
|
||||
msgstr "Pasar a otro equipo"
|
||||
|
||||
@@ -536,7 +536,7 @@ msgstr "Los proyectos fijados aparecerán aquí"
|
||||
msgid "dashboard.notifications.email-changed-successfully"
|
||||
msgstr "Su dirección de correo electrónico se ha actualizado correctamente"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:41, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:76, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:299, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:239
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:41, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:77, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:299, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:239
|
||||
msgid "errors.field-max-length"
|
||||
msgstr "El nombre debe contener como máximo %s caracteres."
|
||||
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"PO-Revision-Date: 2026-01-08 17:06+0000\n"
|
||||
"Last-Translator: Mikel Larreategi <mlarreategi@codesyntax.com>\n"
|
||||
"Language-Team: Basque <https://hosted.weblate.org/projects/penpot/frontend/"
|
||||
"eu/>\n"
|
||||
"Language-Team: Basque "
|
||||
"<https://hosted.weblate.org/projects/penpot/frontend/eu/>\n"
|
||||
"Language: eu\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=utf-8\n"
|
||||
@@ -360,7 +360,7 @@ msgid "dashboard.export-standard-multi"
|
||||
msgstr "Deskargatu %s fitxategi estandar (.svn + .json)"
|
||||
|
||||
#: src/app/main/ui/exports/files.cljs:155
|
||||
#, fuzzy, unused
|
||||
#, unused
|
||||
msgid "dashboard.export.explain"
|
||||
msgstr ""
|
||||
"Esportatu nahi duzun fitxategi bat edo gehiagok partekatutako liburutegiak "
|
||||
@@ -507,7 +507,7 @@ msgstr "Mugitu"
|
||||
msgid "dashboard.move-to-multi"
|
||||
msgstr "Mugitu %s fitxategi"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:248
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:250
|
||||
msgid "dashboard.move-to-other-team"
|
||||
msgstr "Mugitu beste talde batera"
|
||||
|
||||
@@ -555,7 +555,7 @@ msgstr "%s kide"
|
||||
msgid "dashboard.open-in-new-tab"
|
||||
msgstr "Ireki fitxa berrian"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:147, src/app/main/ui/dashboard/deleted.cljs:148, src/app/main/ui/dashboard/files.cljs:120, src/app/main/ui/dashboard/grid.cljs:442, src/app/main/ui/dashboard/projects.cljs:266, src/app/main/ui/dashboard/projects.cljs:267
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:157, src/app/main/ui/dashboard/deleted.cljs:158, src/app/main/ui/dashboard/files.cljs:120, src/app/main/ui/dashboard/grid.cljs:442, src/app/main/ui/dashboard/projects.cljs:266, src/app/main/ui/dashboard/projects.cljs:267
|
||||
msgid "dashboard.options"
|
||||
msgstr "Aukerak"
|
||||
|
||||
@@ -567,7 +567,7 @@ msgstr "Aldatu pasahitza"
|
||||
msgid "dashboard.pin-unpin"
|
||||
msgstr "Ainguratu/Desainguratu"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:41, src/app/main/ui/dashboard/projects.cljs:57
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:62, src/app/main/ui/dashboard/projects.cljs:57
|
||||
msgid "dashboard.projects-title"
|
||||
msgstr "Proiektuak"
|
||||
|
||||
@@ -604,7 +604,7 @@ msgstr "Aukeratu gaia"
|
||||
msgid "dashboard.show-all-files"
|
||||
msgstr "Ikusi fitxategi guztiak"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:97
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:98
|
||||
msgid "dashboard.success-delete-file"
|
||||
msgstr "Zure fitxategia ondo ezabatu da"
|
||||
|
||||
@@ -612,7 +612,7 @@ msgstr "Zure fitxategia ondo ezabatu da"
|
||||
msgid "dashboard.success-delete-project"
|
||||
msgstr "Zure proiektua ondo ezabatu da"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:92
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:93
|
||||
msgid "dashboard.success-duplicate-file"
|
||||
msgstr "Zure fitxategia ondo bikoiztu da"
|
||||
|
||||
@@ -620,11 +620,11 @@ msgstr "Zure fitxategia ondo bikoiztu da"
|
||||
msgid "dashboard.success-duplicate-project"
|
||||
msgstr "Zure proiektua ondo bikoiztu da"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:131, src/app/main/ui/dashboard/grid.cljs:634, src/app/main/ui/dashboard/sidebar.cljs:165
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:132, src/app/main/ui/dashboard/grid.cljs:634, src/app/main/ui/dashboard/sidebar.cljs:165
|
||||
msgid "dashboard.success-move-file"
|
||||
msgstr "Zure fitxategia ondo mugitu da"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:130
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:131
|
||||
msgid "dashboard.success-move-files"
|
||||
msgstr "Zure fitxategiak ondo mugitu dira"
|
||||
|
||||
@@ -714,7 +714,7 @@ msgstr "Eposta"
|
||||
msgid "dashboard.your-name"
|
||||
msgstr "Izena"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:39, src/app/main/ui/dashboard/fonts.cljs:42, src/app/main/ui/dashboard/libraries.cljs:56, src/app/main/ui/dashboard/projects.cljs:355, src/app/main/ui/dashboard/search.cljs:48, src/app/main/ui/dashboard/sidebar.cljs:302, src/app/main/ui/dashboard/team.cljs:537, src/app/main/ui/dashboard/team.cljs:983, src/app/main/ui/dashboard/team.cljs:1251, src/app/main/ui/dashboard/team.cljs:1298
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:40, src/app/main/ui/dashboard/fonts.cljs:42, src/app/main/ui/dashboard/libraries.cljs:56, src/app/main/ui/dashboard/projects.cljs:355, src/app/main/ui/dashboard/search.cljs:48, src/app/main/ui/dashboard/sidebar.cljs:302, src/app/main/ui/dashboard/team.cljs:537, src/app/main/ui/dashboard/team.cljs:983, src/app/main/ui/dashboard/team.cljs:1251, src/app/main/ui/dashboard/team.cljs:1298
|
||||
msgid "dashboard.your-penpot"
|
||||
msgstr "Zure Penpot"
|
||||
|
||||
@@ -1284,7 +1284,7 @@ msgstr ""
|
||||
msgid "labels.bad-gateway.main-message"
|
||||
msgstr "Zerbitzariaren errorea (Bad Gateway)"
|
||||
|
||||
#: src/app/main/data/common.cljs:119, src/app/main/ui/dashboard/change_owner.cljs:64, src/app/main/ui/dashboard/import.cljs:515, src/app/main/ui/dashboard/team.cljs:780, src/app/main/ui/dashboard/team.cljs:1122, src/app/main/ui/delete_shared.cljs:38, src/app/main/ui/exports/assets.cljs:163, src/app/main/ui/exports/files.cljs:168, src/app/main/ui/settings/access_tokens.cljs:175, src/app/main/ui/viewer/share_link.cljs:208, src/app/main/ui/workspace/sidebar/assets/groups.cljs:159, src/app/main/ui/workspace/tokens/export/modal.cljs:44, src/app/main/ui/workspace/tokens/import/modal.cljs:269, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:295, src/app/main/ui/workspace/tokens/remapping_modal.cljs:99, src/app/main/ui/workspace/tokens/settings/menu.cljs:105, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:265
|
||||
#: src/app/main/data/common.cljs:119, src/app/main/ui/dashboard/change_owner.cljs:64, src/app/main/ui/dashboard/import.cljs:515, src/app/main/ui/dashboard/team.cljs:780, src/app/main/ui/dashboard/team.cljs:1122, src/app/main/ui/delete_shared.cljs:38, src/app/main/ui/exports/assets.cljs:163, src/app/main/ui/exports/files.cljs:168, src/app/main/ui/settings/access_tokens.cljs:175, src/app/main/ui/viewer/share_link.cljs:208, src/app/main/ui/workspace/sidebar/assets/groups.cljs:159, src/app/main/ui/workspace/tokens/export/modal.cljs:44, src/app/main/ui/workspace/tokens/import/modal.cljs:269, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:298, src/app/main/ui/workspace/tokens/remapping_modal.cljs:99, src/app/main/ui/workspace/tokens/settings/menu.cljs:105, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:265
|
||||
msgid "labels.cancel"
|
||||
msgstr "Utzi"
|
||||
|
||||
@@ -1308,7 +1308,7 @@ msgstr "Komunitatea"
|
||||
msgid "labels.confirm-password"
|
||||
msgstr "Berretsi pasahitza"
|
||||
|
||||
#: src/app/main/ui/auth/login.cljs:204, src/app/main/ui/dashboard/deleted.cljs:57, src/app/main/ui/dashboard/deleted.cljs:264, src/app/main/ui/dashboard/file_menu.cljs:208, src/app/main/ui/dashboard/import.cljs:521, src/app/main/ui/dashboard/team.cljs:787, src/app/main/ui/exports/files.cljs:173, src/app/main/ui/onboarding/newsletter.cljs:106, src/app/main/ui/settings/subscription.cljs:279, src/app/main/ui/settings/subscription.cljs:313
|
||||
#: src/app/main/ui/auth/login.cljs:204, src/app/main/ui/dashboard/deleted.cljs:43, src/app/main/ui/dashboard/deleted.cljs:275, src/app/main/ui/dashboard/file_menu.cljs:210, src/app/main/ui/dashboard/import.cljs:521, src/app/main/ui/dashboard/team.cljs:787, src/app/main/ui/exports/files.cljs:173, src/app/main/ui/onboarding/newsletter.cljs:106, src/app/main/ui/settings/subscription.cljs:279, src/app/main/ui/settings/subscription.cljs:313
|
||||
msgid "labels.continue"
|
||||
msgstr "Jarraitu"
|
||||
|
||||
@@ -1344,7 +1344,7 @@ msgstr "Pertsonalizatutako letra-tipoak"
|
||||
msgid "labels.dashboard"
|
||||
msgstr "Lanlekua"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:338, src/app/main/ui/dashboard/fonts.cljs:267, src/app/main/ui/dashboard/fonts.cljs:343, src/app/main/ui/dashboard/fonts.cljs:357, src/app/main/ui/dashboard/project_menu.cljs:115, src/app/main/ui/dashboard/team.cljs:1158, src/app/main/ui/settings/access_tokens.cljs:196, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:223, src/app/main/ui/workspace/sidebar/versions.cljs:216, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:288, src/app/main/ui/workspace/tokens/sets/context_menu.cljs:66, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:399
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:338, src/app/main/ui/dashboard/fonts.cljs:267, src/app/main/ui/dashboard/fonts.cljs:343, src/app/main/ui/dashboard/fonts.cljs:357, src/app/main/ui/dashboard/project_menu.cljs:115, src/app/main/ui/dashboard/team.cljs:1158, src/app/main/ui/settings/access_tokens.cljs:196, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:223, src/app/main/ui/workspace/sidebar/versions.cljs:216, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:291, src/app/main/ui/workspace/tokens/sets/context_menu.cljs:66, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:399
|
||||
msgid "labels.delete"
|
||||
msgstr "Ezabatu"
|
||||
|
||||
@@ -1364,7 +1364,7 @@ msgstr "Ezabatu gonbidapena"
|
||||
msgid "labels.delete-multi-files"
|
||||
msgstr "Ezabatu %s fitxategi"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:29, src/app/main/ui/dashboard/files.cljs:80, src/app/main/ui/dashboard/files.cljs:179, src/app/main/ui/dashboard/projects.cljs:229, src/app/main/ui/dashboard/projects.cljs:233, src/app/main/ui/dashboard/sidebar.cljs:726
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:30, src/app/main/ui/dashboard/files.cljs:80, src/app/main/ui/dashboard/files.cljs:179, src/app/main/ui/dashboard/projects.cljs:229, src/app/main/ui/dashboard/projects.cljs:233, src/app/main/ui/dashboard/sidebar.cljs:726
|
||||
msgid "labels.drafts"
|
||||
msgstr "Zirriborroak"
|
||||
|
||||
@@ -1585,7 +1585,7 @@ msgstr "Berriz saiatu"
|
||||
msgid "labels.role"
|
||||
msgstr "Rola"
|
||||
|
||||
#: src/app/main/ui/dashboard/fonts.cljs:395, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:204, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:299, src/app/main/ui/workspace/tokens/settings/menu.cljs:110
|
||||
#: src/app/main/ui/dashboard/fonts.cljs:395, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:204, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:302, src/app/main/ui/workspace/tokens/settings/menu.cljs:110
|
||||
msgid "labels.save"
|
||||
msgstr "Gorde"
|
||||
|
||||
@@ -1781,27 +1781,27 @@ msgstr ""
|
||||
msgid "modals.delete-comment-thread.title"
|
||||
msgstr "Ezabatu elkarrizketa"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:124
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:125
|
||||
msgid "modals.delete-file-confirm.accept"
|
||||
msgstr "Ezabatu fitxategia"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:123
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:124
|
||||
msgid "modals.delete-file-confirm.message"
|
||||
msgstr "Benetan fitxategi hau ezabatu egin nahi duzu?"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:122
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:123
|
||||
msgid "modals.delete-file-confirm.title"
|
||||
msgstr "Fitxategia ezabatzen"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:118
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:119
|
||||
msgid "modals.delete-file-multi-confirm.accept"
|
||||
msgstr "Ezabatu fitxategiak"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:117
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:118
|
||||
msgid "modals.delete-file-multi-confirm.message"
|
||||
msgstr "Benetan %s fitxategi ezabatu egin nahi dituzu?"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:116
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:117
|
||||
msgid "modals.delete-file-multi-confirm.title"
|
||||
msgstr "%s fitxategi ezabatzen"
|
||||
|
||||
@@ -2253,7 +2253,7 @@ msgstr "Penpot"
|
||||
msgid "profile.recovery.go-to-login"
|
||||
msgstr "Sartu"
|
||||
|
||||
#: src/app/main/ui/inspect/exports.cljs:148, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:105, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:107, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:342, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:496, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1062, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1302, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:138, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:149, src/app/main/ui/workspace/sidebar/options/menus/exports.cljs:223, src/app/main/ui/workspace/sidebar/options/menus/fill.cljs:221, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:79, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:430, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:460, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:55, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:56, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:111, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:500, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:511, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:555, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:566, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:595, src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:154, src/app/main/ui/workspace/sidebar/options/menus/stroke.cljs:199, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:336, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:389, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:408, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:427, src/app/main/ui/workspace/sidebar/options/rows/stroke_row.cljs:204
|
||||
#: src/app/main/ui/inspect/exports.cljs:148, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:105, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:107, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:342, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:496, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1062, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1302, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:138, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:149, src/app/main/ui/workspace/sidebar/options/menus/exports.cljs:223, src/app/main/ui/workspace/sidebar/options/menus/fill.cljs:221, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:79, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:430, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:460, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:55, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:56, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:111, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:500, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:511, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:555, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:566, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:595, src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:155, src/app/main/ui/workspace/sidebar/options/menus/stroke.cljs:199, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:336, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:389, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:408, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:427, src/app/main/ui/workspace/sidebar/options/rows/stroke_row.cljs:204
|
||||
msgid "settings.multiple"
|
||||
msgstr "Batzuk"
|
||||
|
||||
@@ -4161,15 +4161,15 @@ msgstr "Y"
|
||||
msgid "workspace.options.shadow-options.spread"
|
||||
msgstr "Banatu"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:138
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:139
|
||||
msgid "workspace.options.shadow-options.title"
|
||||
msgstr "Itzala"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:137
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:138
|
||||
msgid "workspace.options.shadow-options.title.group"
|
||||
msgstr "Taldearen itzala"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:136
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:137
|
||||
msgid "workspace.options.shadow-options.title.multiple"
|
||||
msgstr "Aukeraketaren itzalak"
|
||||
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"PO-Revision-Date: 2026-01-08 17:06+0000\n"
|
||||
"Last-Translator: Ahmad HosseinBor <123hozeifeh@gmail.com>\n"
|
||||
"Language-Team: Persian <https://hosted.weblate.org/projects/penpot/frontend/"
|
||||
"fa/>\n"
|
||||
"Language-Team: Persian "
|
||||
"<https://hosted.weblate.org/projects/penpot/frontend/fa/>\n"
|
||||
"Language: fa\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=utf-8\n"
|
||||
@@ -493,7 +493,7 @@ msgid "dashboard.export-standard-multi"
|
||||
msgstr "دانلود %s عدد فایل های استاندارد (.svg + .json)"
|
||||
|
||||
#: src/app/main/ui/exports/files.cljs:155
|
||||
#, fuzzy, unused
|
||||
#, unused
|
||||
msgid "dashboard.export.explain"
|
||||
msgstr ""
|
||||
"یک یا چند فایلی که میخواهید اکسپورت کنید از کتابخانههای مشترک استفاده "
|
||||
@@ -629,7 +629,7 @@ msgstr "انتقال به"
|
||||
msgid "dashboard.move-to-multi"
|
||||
msgstr "انتقال فایلهای %s به"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:248
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:250
|
||||
msgid "dashboard.move-to-other-team"
|
||||
msgstr "انتقال به تیم دیگر"
|
||||
|
||||
@@ -677,7 +677,7 @@ msgstr "اعضای %s"
|
||||
msgid "dashboard.open-in-new-tab"
|
||||
msgstr "باز کردن فایل در تب جدید"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:147, src/app/main/ui/dashboard/deleted.cljs:148, src/app/main/ui/dashboard/files.cljs:120, src/app/main/ui/dashboard/grid.cljs:442, src/app/main/ui/dashboard/projects.cljs:266, src/app/main/ui/dashboard/projects.cljs:267
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:157, src/app/main/ui/dashboard/deleted.cljs:158, src/app/main/ui/dashboard/files.cljs:120, src/app/main/ui/dashboard/grid.cljs:442, src/app/main/ui/dashboard/projects.cljs:266, src/app/main/ui/dashboard/projects.cljs:267
|
||||
msgid "dashboard.options"
|
||||
msgstr "گزینهها"
|
||||
|
||||
@@ -689,7 +689,7 @@ msgstr "تغییر رمزعبور"
|
||||
msgid "dashboard.pin-unpin"
|
||||
msgstr "پین/برداشتن پین"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:41, src/app/main/ui/dashboard/projects.cljs:57
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:62, src/app/main/ui/dashboard/projects.cljs:57
|
||||
msgid "dashboard.projects-title"
|
||||
msgstr "پروژهها"
|
||||
|
||||
@@ -726,7 +726,7 @@ msgstr "انتخاب تم"
|
||||
msgid "dashboard.show-all-files"
|
||||
msgstr "نمایش همه فایلها"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:97
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:98
|
||||
msgid "dashboard.success-delete-file"
|
||||
msgstr "فایل شما با موفقیت حذف شد"
|
||||
|
||||
@@ -734,7 +734,7 @@ msgstr "فایل شما با موفقیت حذف شد"
|
||||
msgid "dashboard.success-delete-project"
|
||||
msgstr "پروژه شما با موفقیت حذف شد"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:92
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:93
|
||||
msgid "dashboard.success-duplicate-file"
|
||||
msgstr "فایل شما با موفقیت duplicate شد"
|
||||
|
||||
@@ -742,11 +742,11 @@ msgstr "فایل شما با موفقیت duplicate شد"
|
||||
msgid "dashboard.success-duplicate-project"
|
||||
msgstr "پروژه شما با موفقیت duplicate شد"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:131, src/app/main/ui/dashboard/grid.cljs:634, src/app/main/ui/dashboard/sidebar.cljs:165
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:132, src/app/main/ui/dashboard/grid.cljs:634, src/app/main/ui/dashboard/sidebar.cljs:165
|
||||
msgid "dashboard.success-move-file"
|
||||
msgstr "فایل شما با موفقیت منتقل شد"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:130
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:131
|
||||
msgid "dashboard.success-move-files"
|
||||
msgstr "فایلهای شما با موفقیت منتقل شدند"
|
||||
|
||||
@@ -798,7 +798,7 @@ msgstr "ایمیل"
|
||||
msgid "dashboard.your-name"
|
||||
msgstr "نام شما"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:39, src/app/main/ui/dashboard/fonts.cljs:42, src/app/main/ui/dashboard/libraries.cljs:56, src/app/main/ui/dashboard/projects.cljs:355, src/app/main/ui/dashboard/search.cljs:48, src/app/main/ui/dashboard/sidebar.cljs:302, src/app/main/ui/dashboard/team.cljs:537, src/app/main/ui/dashboard/team.cljs:983, src/app/main/ui/dashboard/team.cljs:1251, src/app/main/ui/dashboard/team.cljs:1298
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:40, src/app/main/ui/dashboard/fonts.cljs:42, src/app/main/ui/dashboard/libraries.cljs:56, src/app/main/ui/dashboard/projects.cljs:355, src/app/main/ui/dashboard/search.cljs:48, src/app/main/ui/dashboard/sidebar.cljs:302, src/app/main/ui/dashboard/team.cljs:537, src/app/main/ui/dashboard/team.cljs:983, src/app/main/ui/dashboard/team.cljs:1251, src/app/main/ui/dashboard/team.cljs:1298
|
||||
msgid "dashboard.your-penpot"
|
||||
msgstr "پنپات شما"
|
||||
|
||||
@@ -1260,7 +1260,7 @@ msgstr ""
|
||||
"به نظر میرسد باید کمی صبر کنید و دوباره تلاش کنید; ما در حال انجام تعمیرات "
|
||||
"کوچک روی سرورهای خود هستیم."
|
||||
|
||||
#: src/app/main/data/common.cljs:119, src/app/main/ui/dashboard/change_owner.cljs:64, src/app/main/ui/dashboard/import.cljs:515, src/app/main/ui/dashboard/team.cljs:780, src/app/main/ui/dashboard/team.cljs:1122, src/app/main/ui/delete_shared.cljs:38, src/app/main/ui/exports/assets.cljs:163, src/app/main/ui/exports/files.cljs:168, src/app/main/ui/settings/access_tokens.cljs:175, src/app/main/ui/viewer/share_link.cljs:208, src/app/main/ui/workspace/sidebar/assets/groups.cljs:159, src/app/main/ui/workspace/tokens/export/modal.cljs:44, src/app/main/ui/workspace/tokens/import/modal.cljs:269, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:295, src/app/main/ui/workspace/tokens/remapping_modal.cljs:99, src/app/main/ui/workspace/tokens/settings/menu.cljs:105, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:265
|
||||
#: src/app/main/data/common.cljs:119, src/app/main/ui/dashboard/change_owner.cljs:64, src/app/main/ui/dashboard/import.cljs:515, src/app/main/ui/dashboard/team.cljs:780, src/app/main/ui/dashboard/team.cljs:1122, src/app/main/ui/delete_shared.cljs:38, src/app/main/ui/exports/assets.cljs:163, src/app/main/ui/exports/files.cljs:168, src/app/main/ui/settings/access_tokens.cljs:175, src/app/main/ui/viewer/share_link.cljs:208, src/app/main/ui/workspace/sidebar/assets/groups.cljs:159, src/app/main/ui/workspace/tokens/export/modal.cljs:44, src/app/main/ui/workspace/tokens/import/modal.cljs:269, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:298, src/app/main/ui/workspace/tokens/remapping_modal.cljs:99, src/app/main/ui/workspace/tokens/settings/menu.cljs:105, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:265
|
||||
msgid "labels.cancel"
|
||||
msgstr "لغو"
|
||||
|
||||
@@ -1284,7 +1284,7 @@ msgstr "انجمن"
|
||||
msgid "labels.confirm-password"
|
||||
msgstr "تایید رمزعبور"
|
||||
|
||||
#: src/app/main/ui/auth/login.cljs:204, src/app/main/ui/dashboard/deleted.cljs:57, src/app/main/ui/dashboard/deleted.cljs:264, src/app/main/ui/dashboard/file_menu.cljs:208, src/app/main/ui/dashboard/import.cljs:521, src/app/main/ui/dashboard/team.cljs:787, src/app/main/ui/exports/files.cljs:173, src/app/main/ui/onboarding/newsletter.cljs:106, src/app/main/ui/settings/subscription.cljs:279, src/app/main/ui/settings/subscription.cljs:313
|
||||
#: src/app/main/ui/auth/login.cljs:204, src/app/main/ui/dashboard/deleted.cljs:43, src/app/main/ui/dashboard/deleted.cljs:275, src/app/main/ui/dashboard/file_menu.cljs:210, src/app/main/ui/dashboard/import.cljs:521, src/app/main/ui/dashboard/team.cljs:787, src/app/main/ui/exports/files.cljs:173, src/app/main/ui/onboarding/newsletter.cljs:106, src/app/main/ui/settings/subscription.cljs:279, src/app/main/ui/settings/subscription.cljs:313
|
||||
msgid "labels.continue"
|
||||
msgstr "ادامه"
|
||||
|
||||
@@ -1316,7 +1316,7 @@ msgstr "فونتهای سفارشی"
|
||||
msgid "labels.dashboard"
|
||||
msgstr "داشبورد"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:338, src/app/main/ui/dashboard/fonts.cljs:267, src/app/main/ui/dashboard/fonts.cljs:343, src/app/main/ui/dashboard/fonts.cljs:357, src/app/main/ui/dashboard/project_menu.cljs:115, src/app/main/ui/dashboard/team.cljs:1158, src/app/main/ui/settings/access_tokens.cljs:196, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:223, src/app/main/ui/workspace/sidebar/versions.cljs:216, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:288, src/app/main/ui/workspace/tokens/sets/context_menu.cljs:66, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:399
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:338, src/app/main/ui/dashboard/fonts.cljs:267, src/app/main/ui/dashboard/fonts.cljs:343, src/app/main/ui/dashboard/fonts.cljs:357, src/app/main/ui/dashboard/project_menu.cljs:115, src/app/main/ui/dashboard/team.cljs:1158, src/app/main/ui/settings/access_tokens.cljs:196, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:223, src/app/main/ui/workspace/sidebar/versions.cljs:216, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:291, src/app/main/ui/workspace/tokens/sets/context_menu.cljs:66, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:399
|
||||
msgid "labels.delete"
|
||||
msgstr "حذف"
|
||||
|
||||
@@ -1336,7 +1336,7 @@ msgstr "حذف دعوت"
|
||||
msgid "labels.delete-multi-files"
|
||||
msgstr "حذف فایلهای %s"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:29, src/app/main/ui/dashboard/files.cljs:80, src/app/main/ui/dashboard/files.cljs:179, src/app/main/ui/dashboard/projects.cljs:229, src/app/main/ui/dashboard/projects.cljs:233, src/app/main/ui/dashboard/sidebar.cljs:726
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:30, src/app/main/ui/dashboard/files.cljs:80, src/app/main/ui/dashboard/files.cljs:179, src/app/main/ui/dashboard/projects.cljs:229, src/app/main/ui/dashboard/projects.cljs:233, src/app/main/ui/dashboard/sidebar.cljs:726
|
||||
msgid "labels.drafts"
|
||||
msgstr "پیشنویسها"
|
||||
|
||||
@@ -1548,7 +1548,7 @@ msgstr "امتحان دوباره"
|
||||
msgid "labels.role"
|
||||
msgstr "نقش"
|
||||
|
||||
#: src/app/main/ui/dashboard/fonts.cljs:395, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:204, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:299, src/app/main/ui/workspace/tokens/settings/menu.cljs:110
|
||||
#: src/app/main/ui/dashboard/fonts.cljs:395, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:204, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:302, src/app/main/ui/workspace/tokens/settings/menu.cljs:110
|
||||
msgid "labels.save"
|
||||
msgstr "ذخیره"
|
||||
|
||||
@@ -1710,27 +1710,27 @@ msgstr ""
|
||||
msgid "modals.delete-comment-thread.title"
|
||||
msgstr "حذف مکالمه"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:124
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:125
|
||||
msgid "modals.delete-file-confirm.accept"
|
||||
msgstr "حذف فایل"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:123
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:124
|
||||
msgid "modals.delete-file-confirm.message"
|
||||
msgstr "آیا مطمئن هستید که میخواهید این فایل را حذف کنید؟"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:122
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:123
|
||||
msgid "modals.delete-file-confirm.title"
|
||||
msgstr "در حال حذف فایل"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:118
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:119
|
||||
msgid "modals.delete-file-multi-confirm.accept"
|
||||
msgstr "حذف فایلها"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:117
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:118
|
||||
msgid "modals.delete-file-multi-confirm.message"
|
||||
msgstr "آیا مطمئن هستید که میخواهید فایلهای %s را حذف کنید؟"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:116
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:117
|
||||
msgid "modals.delete-file-multi-confirm.title"
|
||||
msgstr "در حال حذف %s فایلها"
|
||||
|
||||
@@ -1936,7 +1936,7 @@ msgstr "پس از نامگذاری تیم خود، میتوانید افرا
|
||||
msgid "onboarding.welcome.alt"
|
||||
msgstr "Penpot"
|
||||
|
||||
#: src/app/main/ui/inspect/exports.cljs:148, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:105, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:107, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:342, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:496, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1062, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1302, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:138, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:149, src/app/main/ui/workspace/sidebar/options/menus/exports.cljs:223, src/app/main/ui/workspace/sidebar/options/menus/fill.cljs:221, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:79, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:430, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:460, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:55, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:56, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:111, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:500, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:511, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:555, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:566, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:595, src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:154, src/app/main/ui/workspace/sidebar/options/menus/stroke.cljs:199, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:336, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:389, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:408, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:427, src/app/main/ui/workspace/sidebar/options/rows/stroke_row.cljs:204
|
||||
#: src/app/main/ui/inspect/exports.cljs:148, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:105, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:107, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:342, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:496, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1062, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1302, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:138, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:149, src/app/main/ui/workspace/sidebar/options/menus/exports.cljs:223, src/app/main/ui/workspace/sidebar/options/menus/fill.cljs:221, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:79, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:430, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:460, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:55, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:56, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:111, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:500, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:511, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:555, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:566, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:595, src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:155, src/app/main/ui/workspace/sidebar/options/menus/stroke.cljs:199, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:336, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:389, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:408, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:427, src/app/main/ui/workspace/sidebar/options/rows/stroke_row.cljs:204
|
||||
msgid "settings.multiple"
|
||||
msgstr "مخلوط"
|
||||
|
||||
@@ -2711,7 +2711,7 @@ msgstr "X"
|
||||
msgid "workspace.options.shadow-options.offsety"
|
||||
msgstr "Y"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:138
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:139
|
||||
msgid "workspace.options.shadow-options.title"
|
||||
msgstr "سایه"
|
||||
|
||||
|
||||
@@ -471,7 +471,7 @@ msgstr "Flyt til"
|
||||
msgid "dashboard.move-to-multi"
|
||||
msgstr "Flyt %s fílur til"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:248
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:250
|
||||
msgid "dashboard.move-to-other-team"
|
||||
msgstr "Flyt til eitt annað toymi"
|
||||
|
||||
@@ -519,7 +519,7 @@ msgstr "%s limir"
|
||||
msgid "dashboard.open-in-new-tab"
|
||||
msgstr "Lat fílu upp í nýggjum skiljiblaði"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:147, src/app/main/ui/dashboard/deleted.cljs:148, src/app/main/ui/dashboard/files.cljs:120, src/app/main/ui/dashboard/grid.cljs:442, src/app/main/ui/dashboard/projects.cljs:266, src/app/main/ui/dashboard/projects.cljs:267
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:157, src/app/main/ui/dashboard/deleted.cljs:158, src/app/main/ui/dashboard/files.cljs:120, src/app/main/ui/dashboard/grid.cljs:442, src/app/main/ui/dashboard/projects.cljs:266, src/app/main/ui/dashboard/projects.cljs:267
|
||||
msgid "dashboard.options"
|
||||
msgstr "Valmøguleikar"
|
||||
|
||||
@@ -531,7 +531,7 @@ msgstr "Broyt loyniorð"
|
||||
msgid "dashboard.pin-unpin"
|
||||
msgstr "Fest/Loys"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:41, src/app/main/ui/dashboard/projects.cljs:57
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:62, src/app/main/ui/dashboard/projects.cljs:57
|
||||
msgid "dashboard.projects-title"
|
||||
msgstr "Verkætlanir"
|
||||
|
||||
@@ -568,7 +568,7 @@ msgstr "Vel tema"
|
||||
msgid "dashboard.show-all-files"
|
||||
msgstr "Vís allar fílurnar"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:97
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:98
|
||||
msgid "dashboard.success-delete-file"
|
||||
msgstr "Tín fíla er strikað"
|
||||
|
||||
@@ -576,11 +576,11 @@ msgstr "Tín fíla er strikað"
|
||||
msgid "dashboard.success-delete-project"
|
||||
msgstr "Tín verkætlan er strikað"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:131, src/app/main/ui/dashboard/grid.cljs:634, src/app/main/ui/dashboard/sidebar.cljs:165
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:132, src/app/main/ui/dashboard/grid.cljs:634, src/app/main/ui/dashboard/sidebar.cljs:165
|
||||
msgid "dashboard.success-move-file"
|
||||
msgstr "Tín fíla er flutt"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:130
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:131
|
||||
msgid "dashboard.success-move-files"
|
||||
msgstr "Tínar fílur eru fluttar"
|
||||
|
||||
@@ -654,27 +654,27 @@ msgstr "Legg afturat sum Deilt Savn"
|
||||
msgid "modals.add-shared-confirm.message"
|
||||
msgstr "Legg \"%s\" afturat sum Deilt Savn"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:124
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:125
|
||||
msgid "modals.delete-file-confirm.accept"
|
||||
msgstr "Strikað fílu"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:123
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:124
|
||||
msgid "modals.delete-file-confirm.message"
|
||||
msgstr "Ert tú vísur í, at tú ynskjur at strikað fílu?"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:122
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:123
|
||||
msgid "modals.delete-file-confirm.title"
|
||||
msgstr "Strikar fílu"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:118
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:119
|
||||
msgid "modals.delete-file-multi-confirm.accept"
|
||||
msgstr "Strikar fílur"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:117
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:118
|
||||
msgid "modals.delete-file-multi-confirm.message"
|
||||
msgstr "Ert tú vísur í, at tú vil strikað %s fílur?"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:116
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:117
|
||||
msgid "modals.delete-file-multi-confirm.title"
|
||||
msgstr "Strikar %s fílur"
|
||||
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"PO-Revision-Date: 2026-01-08 17:06+0000\n"
|
||||
"Last-Translator: Ingrid Pigueron <ingridp.uxr@gmail.com>\n"
|
||||
"Language-Team: French <https://hosted.weblate.org/projects/penpot/frontend/"
|
||||
"fr/>\n"
|
||||
"Language-Team: French "
|
||||
"<https://hosted.weblate.org/projects/penpot/frontend/fr/>\n"
|
||||
"Language: fr\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=utf-8\n"
|
||||
@@ -467,11 +467,11 @@ msgstr "Lorsqu'un membre de l'équipe aura créé un brouillon, il sera affiché
|
||||
msgid "dashboard.empty-placeholder-drafts-title"
|
||||
msgstr "Aucun brouillon pour l'instant."
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:166, src/app/main/ui/dashboard/files.cljs:204, src/app/main/ui/dashboard/projects.cljs:291
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:176, src/app/main/ui/dashboard/files.cljs:204, src/app/main/ui/dashboard/projects.cljs:291
|
||||
msgid "dashboard.empty-placeholder-files-subtitle"
|
||||
msgstr "Lorsqu'un membre de l'équipe aura créé un fichier, il sera affiché ici."
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:163, src/app/main/ui/dashboard/files.cljs:199, src/app/main/ui/dashboard/projects.cljs:286
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:173, src/app/main/ui/dashboard/files.cljs:199, src/app/main/ui/dashboard/projects.cljs:286
|
||||
msgid "dashboard.empty-placeholder-files-title"
|
||||
msgstr "Aucun fichier pour l'instant."
|
||||
|
||||
@@ -575,7 +575,7 @@ msgid "dashboard.export-standard-multi"
|
||||
msgstr "Télécharger %s fichiers standard (.svg + .json)"
|
||||
|
||||
#: src/app/main/ui/exports/files.cljs:155
|
||||
#, fuzzy, unused
|
||||
#, unused
|
||||
msgid "dashboard.export.explain"
|
||||
msgstr ""
|
||||
"Un ou plusieurs fichiers que vous souhaitez exporter utilisent des "
|
||||
@@ -797,7 +797,7 @@ msgstr "Déplacer vers"
|
||||
msgid "dashboard.move-to-multi"
|
||||
msgstr "Déplacer %s fichiers vers"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:248
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:250
|
||||
msgid "dashboard.move-to-other-team"
|
||||
msgstr "Déplacer vers une autre équipe"
|
||||
|
||||
@@ -857,7 +857,7 @@ msgstr "%s membres"
|
||||
msgid "dashboard.open-in-new-tab"
|
||||
msgstr "Ouvrir le fichier dans un nouvel onglet"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:147, src/app/main/ui/dashboard/deleted.cljs:148, src/app/main/ui/dashboard/files.cljs:120, src/app/main/ui/dashboard/grid.cljs:442, src/app/main/ui/dashboard/projects.cljs:266, src/app/main/ui/dashboard/projects.cljs:267
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:157, src/app/main/ui/dashboard/deleted.cljs:158, src/app/main/ui/dashboard/files.cljs:120, src/app/main/ui/dashboard/grid.cljs:442, src/app/main/ui/dashboard/projects.cljs:266, src/app/main/ui/dashboard/projects.cljs:267
|
||||
msgid "dashboard.options"
|
||||
msgstr "Options"
|
||||
|
||||
@@ -905,7 +905,7 @@ msgstr "Impossible de traiter la définition de l'extension"
|
||||
msgid "dashboard.plugins.try-plugin"
|
||||
msgstr "Essayer l'extension : "
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:41, src/app/main/ui/dashboard/projects.cljs:57
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:62, src/app/main/ui/dashboard/projects.cljs:57
|
||||
msgid "dashboard.projects-title"
|
||||
msgstr "Projets"
|
||||
|
||||
@@ -1022,7 +1022,7 @@ msgstr "Voir tous les fichiers"
|
||||
msgid "dashboard.show-version-history"
|
||||
msgstr "Historique des versions"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:97
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:98
|
||||
msgid "dashboard.success-delete-file"
|
||||
msgid_plural "dashboard.success-delete-file"
|
||||
msgstr[0] "Votre fichier a bien été supprimé"
|
||||
@@ -1032,7 +1032,7 @@ msgstr[1] "Vos fichiers ont bien été supprimés"
|
||||
msgid "dashboard.success-delete-project"
|
||||
msgstr "Votre projet a bien été supprimé"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:92
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:93
|
||||
msgid "dashboard.success-duplicate-file"
|
||||
msgid_plural "dashboard.success-delete-file"
|
||||
msgstr[0] "Votre fichier a bien été dupliqué"
|
||||
@@ -1042,11 +1042,11 @@ msgstr[1] "Vos fichiers ont bien été dupliqués"
|
||||
msgid "dashboard.success-duplicate-project"
|
||||
msgstr "Votre projet a bien été dupliqué"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:131, src/app/main/ui/dashboard/grid.cljs:634, src/app/main/ui/dashboard/sidebar.cljs:165
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:132, src/app/main/ui/dashboard/grid.cljs:634, src/app/main/ui/dashboard/sidebar.cljs:165
|
||||
msgid "dashboard.success-move-file"
|
||||
msgstr "Votre fichier a été déplacé avec succès"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:130
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:131
|
||||
msgid "dashboard.success-move-files"
|
||||
msgstr "Vos fichiers ont bien été déplacés"
|
||||
|
||||
@@ -1156,7 +1156,7 @@ msgstr "E‑mail"
|
||||
msgid "dashboard.your-name"
|
||||
msgstr "Votre nom complet"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:39, src/app/main/ui/dashboard/fonts.cljs:42, src/app/main/ui/dashboard/libraries.cljs:56, src/app/main/ui/dashboard/projects.cljs:355, src/app/main/ui/dashboard/search.cljs:48, src/app/main/ui/dashboard/sidebar.cljs:302, src/app/main/ui/dashboard/team.cljs:537, src/app/main/ui/dashboard/team.cljs:983, src/app/main/ui/dashboard/team.cljs:1251, src/app/main/ui/dashboard/team.cljs:1298
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:40, src/app/main/ui/dashboard/fonts.cljs:42, src/app/main/ui/dashboard/libraries.cljs:56, src/app/main/ui/dashboard/projects.cljs:355, src/app/main/ui/dashboard/search.cljs:48, src/app/main/ui/dashboard/sidebar.cljs:302, src/app/main/ui/dashboard/team.cljs:537, src/app/main/ui/dashboard/team.cljs:983, src/app/main/ui/dashboard/team.cljs:1251, src/app/main/ui/dashboard/team.cljs:1298
|
||||
msgid "dashboard.your-penpot"
|
||||
msgstr "Votre Penpot"
|
||||
|
||||
@@ -1262,7 +1262,7 @@ msgstr "Même si Penpot ne prend plus en charge ce type de ressource, vous pouve
|
||||
msgid "errors.deprecated.contact.text"
|
||||
msgstr "nous contacter"
|
||||
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:305
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:307
|
||||
msgid "errors.drop-token-set-parent-to-child"
|
||||
msgstr ""
|
||||
"Impossible de mettre une collection parent dans le chemin d'un de ses "
|
||||
@@ -1306,7 +1306,7 @@ msgstr ""
|
||||
msgid "errors.feature-not-supported"
|
||||
msgstr "La fonctionnalité '%s' n'est pas prise en charge."
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:41, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:76, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:299, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:239
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:41, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:77, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:299, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:239
|
||||
msgid "errors.field-max-length"
|
||||
msgstr "Doit contenir au plus %s caractères."
|
||||
|
||||
@@ -1476,7 +1476,7 @@ msgstr ""
|
||||
"Le propriétaire ne peut pas quitter l'équipe, vous devez réassigner le rôle "
|
||||
"de propriétaire."
|
||||
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:162, src/app/main/data/workspace/tokens/library_edit.cljs:192
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:164, src/app/main/data/workspace/tokens/library_edit.cljs:194
|
||||
msgid "errors.token-set-already-exists"
|
||||
msgstr "Une collection avec le même nom existe déjà"
|
||||
|
||||
@@ -1485,13 +1485,13 @@ msgstr "Une collection avec le même nom existe déjà"
|
||||
msgid "errors.token-set-doesnt-exists"
|
||||
msgstr "Impossible de dupliquer une collection inconnue"
|
||||
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:304
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:306
|
||||
msgid "errors.token-set-exists-on-drop"
|
||||
msgstr ""
|
||||
"Impossible de déposer, une collection avec le même nom existe déjà dans ce "
|
||||
"chemin."
|
||||
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:77, src/app/main/data/workspace/tokens/library_edit.cljs:96
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:79, src/app/main/data/workspace/tokens/library_edit.cljs:98
|
||||
msgid "errors.token-theme-already-exists"
|
||||
msgstr "Une option de thème avec le même nom existe déjà"
|
||||
|
||||
@@ -1956,7 +1956,7 @@ msgstr "Copier dans le Presse-papiers"
|
||||
msgid "inspect.tabs.styles.geometry-panel"
|
||||
msgstr "Taille et position"
|
||||
|
||||
#: src/app/main/ui/inspect/styles/style_box.cljs:60, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:179
|
||||
#: src/app/main/ui/inspect/styles/style_box.cljs:60, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:178
|
||||
msgid "inspect.tabs.styles.toggle-style"
|
||||
msgstr "Afficher/Masquer le panneau %s"
|
||||
|
||||
@@ -2043,7 +2043,7 @@ msgstr "Bad Gateway"
|
||||
msgid "labels.blur"
|
||||
msgstr "Flou"
|
||||
|
||||
#: src/app/main/data/common.cljs:119, src/app/main/ui/dashboard/change_owner.cljs:64, src/app/main/ui/dashboard/import.cljs:515, src/app/main/ui/dashboard/team.cljs:780, src/app/main/ui/dashboard/team.cljs:1122, src/app/main/ui/delete_shared.cljs:38, src/app/main/ui/exports/assets.cljs:163, src/app/main/ui/exports/files.cljs:168, src/app/main/ui/settings/access_tokens.cljs:175, src/app/main/ui/viewer/share_link.cljs:208, src/app/main/ui/workspace/sidebar/assets/groups.cljs:159, src/app/main/ui/workspace/tokens/export/modal.cljs:44, src/app/main/ui/workspace/tokens/import/modal.cljs:269, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:295, src/app/main/ui/workspace/tokens/remapping_modal.cljs:99, src/app/main/ui/workspace/tokens/settings/menu.cljs:105, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:265
|
||||
#: src/app/main/data/common.cljs:119, src/app/main/ui/dashboard/change_owner.cljs:64, src/app/main/ui/dashboard/import.cljs:515, src/app/main/ui/dashboard/team.cljs:780, src/app/main/ui/dashboard/team.cljs:1122, src/app/main/ui/delete_shared.cljs:38, src/app/main/ui/exports/assets.cljs:163, src/app/main/ui/exports/files.cljs:168, src/app/main/ui/settings/access_tokens.cljs:175, src/app/main/ui/viewer/share_link.cljs:208, src/app/main/ui/workspace/sidebar/assets/groups.cljs:159, src/app/main/ui/workspace/tokens/export/modal.cljs:44, src/app/main/ui/workspace/tokens/import/modal.cljs:269, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:298, src/app/main/ui/workspace/tokens/remapping_modal.cljs:99, src/app/main/ui/workspace/tokens/settings/menu.cljs:105, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:265
|
||||
msgid "labels.cancel"
|
||||
msgstr "Annuler"
|
||||
|
||||
@@ -2103,7 +2103,7 @@ msgstr "Contacter l'assistance technique"
|
||||
msgid "labels.contact-us"
|
||||
msgstr "Contact"
|
||||
|
||||
#: src/app/main/ui/auth/login.cljs:204, src/app/main/ui/dashboard/deleted.cljs:57, src/app/main/ui/dashboard/deleted.cljs:264, src/app/main/ui/dashboard/file_menu.cljs:208, src/app/main/ui/dashboard/import.cljs:521, src/app/main/ui/dashboard/team.cljs:787, src/app/main/ui/exports/files.cljs:173, src/app/main/ui/onboarding/newsletter.cljs:106, src/app/main/ui/settings/subscription.cljs:279, src/app/main/ui/settings/subscription.cljs:313
|
||||
#: src/app/main/ui/auth/login.cljs:204, src/app/main/ui/dashboard/deleted.cljs:43, src/app/main/ui/dashboard/deleted.cljs:275, src/app/main/ui/dashboard/file_menu.cljs:210, src/app/main/ui/dashboard/import.cljs:521, src/app/main/ui/dashboard/team.cljs:787, src/app/main/ui/exports/files.cljs:173, src/app/main/ui/onboarding/newsletter.cljs:106, src/app/main/ui/settings/subscription.cljs:279, src/app/main/ui/settings/subscription.cljs:313
|
||||
msgid "labels.continue"
|
||||
msgstr "Continuer"
|
||||
|
||||
@@ -2151,7 +2151,7 @@ msgstr "Polices personnalisées"
|
||||
msgid "labels.dashboard"
|
||||
msgstr "Tableau de bord"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:338, src/app/main/ui/dashboard/fonts.cljs:267, src/app/main/ui/dashboard/fonts.cljs:343, src/app/main/ui/dashboard/fonts.cljs:357, src/app/main/ui/dashboard/project_menu.cljs:115, src/app/main/ui/dashboard/team.cljs:1158, src/app/main/ui/settings/access_tokens.cljs:196, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:223, src/app/main/ui/workspace/sidebar/versions.cljs:216, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:288, src/app/main/ui/workspace/tokens/sets/context_menu.cljs:66, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:399
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:338, src/app/main/ui/dashboard/fonts.cljs:267, src/app/main/ui/dashboard/fonts.cljs:343, src/app/main/ui/dashboard/fonts.cljs:357, src/app/main/ui/dashboard/project_menu.cljs:115, src/app/main/ui/dashboard/team.cljs:1158, src/app/main/ui/settings/access_tokens.cljs:196, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:223, src/app/main/ui/workspace/sidebar/versions.cljs:216, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:291, src/app/main/ui/workspace/tokens/sets/context_menu.cljs:66, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:399
|
||||
msgid "labels.delete"
|
||||
msgstr "Supprimer"
|
||||
|
||||
@@ -2188,7 +2188,7 @@ msgstr "Rejeter"
|
||||
msgid "labels.download"
|
||||
msgstr "Télécharger %s"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:29, src/app/main/ui/dashboard/files.cljs:80, src/app/main/ui/dashboard/files.cljs:179, src/app/main/ui/dashboard/projects.cljs:229, src/app/main/ui/dashboard/projects.cljs:233, src/app/main/ui/dashboard/sidebar.cljs:726
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:30, src/app/main/ui/dashboard/files.cljs:80, src/app/main/ui/dashboard/files.cljs:179, src/app/main/ui/dashboard/projects.cljs:229, src/app/main/ui/dashboard/projects.cljs:233, src/app/main/ui/dashboard/sidebar.cljs:726
|
||||
msgid "labels.drafts"
|
||||
msgstr "Brouillons"
|
||||
|
||||
@@ -2592,7 +2592,7 @@ msgstr "Réessayer"
|
||||
msgid "labels.role"
|
||||
msgstr "Rôle"
|
||||
|
||||
#: src/app/main/ui/dashboard/fonts.cljs:395, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:204, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:299, src/app/main/ui/workspace/tokens/settings/menu.cljs:110
|
||||
#: src/app/main/ui/dashboard/fonts.cljs:395, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:204, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:302, src/app/main/ui/workspace/tokens/settings/menu.cljs:110
|
||||
msgid "labels.save"
|
||||
msgstr "Enregistrer"
|
||||
|
||||
@@ -3063,27 +3063,27 @@ msgstr "Confirmez-vous vouloir supprimer cette note ?"
|
||||
msgid "modals.delete-component-annotation.title"
|
||||
msgstr "Supprimer la note"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:124
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:125
|
||||
msgid "modals.delete-file-confirm.accept"
|
||||
msgstr "Supprimer le fichier"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:123
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:124
|
||||
msgid "modals.delete-file-confirm.message"
|
||||
msgstr "Voulez-vous vraiment supprimer ce fichier ?"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:122
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:123
|
||||
msgid "modals.delete-file-confirm.title"
|
||||
msgstr "Supprimer un fichier"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:118
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:119
|
||||
msgid "modals.delete-file-multi-confirm.accept"
|
||||
msgstr "Supprimer les fichiers"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:117
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:118
|
||||
msgid "modals.delete-file-multi-confirm.message"
|
||||
msgstr "Voulez-vous vraiment supprimer %s fichiers ?"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:116
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:117
|
||||
msgid "modals.delete-file-multi-confirm.title"
|
||||
msgstr "Suppression de %s fichiers"
|
||||
|
||||
@@ -3908,7 +3908,7 @@ msgstr "Aller à la page de connexion"
|
||||
msgid "settings.detach"
|
||||
msgstr "Détacher"
|
||||
|
||||
#: src/app/main/ui/inspect/exports.cljs:148, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:105, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:107, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:342, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:496, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1062, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1302, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:138, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:149, src/app/main/ui/workspace/sidebar/options/menus/exports.cljs:223, src/app/main/ui/workspace/sidebar/options/menus/fill.cljs:221, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:79, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:430, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:460, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:55, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:56, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:111, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:500, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:511, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:555, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:566, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:595, src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:154, src/app/main/ui/workspace/sidebar/options/menus/stroke.cljs:199, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:336, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:389, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:408, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:427, src/app/main/ui/workspace/sidebar/options/rows/stroke_row.cljs:204
|
||||
#: src/app/main/ui/inspect/exports.cljs:148, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:105, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:107, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:342, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:496, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1062, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1302, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:138, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:149, src/app/main/ui/workspace/sidebar/options/menus/exports.cljs:223, src/app/main/ui/workspace/sidebar/options/menus/fill.cljs:221, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:79, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:430, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:460, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:55, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:56, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:111, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:500, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:511, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:555, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:566, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:595, src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:155, src/app/main/ui/workspace/sidebar/options/menus/stroke.cljs:199, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:336, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:389, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:408, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:427, src/app/main/ui/workspace/sidebar/options/rows/stroke_row.cljs:204
|
||||
msgid "settings.multiple"
|
||||
msgstr "Divers"
|
||||
|
||||
@@ -5109,7 +5109,7 @@ msgstr "Filtrer"
|
||||
msgid "workspace.assets.graphics"
|
||||
msgstr "Graphiques"
|
||||
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:190, src/app/main/ui/workspace/sidebar/assets/components.cljs:575, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:806
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:189, src/app/main/ui/workspace/sidebar/assets/components.cljs:575, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:806
|
||||
msgid "workspace.assets.grid-view"
|
||||
msgstr "Vue en grille"
|
||||
|
||||
@@ -5121,7 +5121,7 @@ msgstr "Grouper"
|
||||
msgid "workspace.assets.group-name"
|
||||
msgstr "Nom du groupe"
|
||||
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:191, src/app/main/ui/workspace/sidebar/assets/components.cljs:571, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:802
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:190, src/app/main/ui/workspace/sidebar/assets/components.cljs:571, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:802
|
||||
msgid "workspace.assets.list-view"
|
||||
msgstr "Vue en liste"
|
||||
|
||||
@@ -6640,7 +6640,7 @@ msgstr "Remplissage de sélection"
|
||||
msgid "workspace.options.selection-stroke"
|
||||
msgstr "Contour de sélection"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:143
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:144
|
||||
msgid "workspace.options.shadow-options.add-shadow"
|
||||
msgstr "Ajouter une ombre"
|
||||
|
||||
@@ -6668,7 +6668,7 @@ msgstr "X"
|
||||
msgid "workspace.options.shadow-options.offsety"
|
||||
msgstr "Y"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:156, src/app/main/ui/workspace/sidebar/options/rows/shadow_row.cljs:161
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:157, src/app/main/ui/workspace/sidebar/options/rows/shadow_row.cljs:161
|
||||
msgid "workspace.options.shadow-options.remove-shadow"
|
||||
msgstr "Supprimer l'ombre"
|
||||
|
||||
@@ -6676,15 +6676,15 @@ msgstr "Supprimer l'ombre"
|
||||
msgid "workspace.options.shadow-options.spread"
|
||||
msgstr "Diffusion"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:138
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:139
|
||||
msgid "workspace.options.shadow-options.title"
|
||||
msgstr "Ombre"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:137
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:138
|
||||
msgid "workspace.options.shadow-options.title.group"
|
||||
msgstr "Ombre de groupe"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:136
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:137
|
||||
msgid "workspace.options.shadow-options.title.multiple"
|
||||
msgstr "Ombres de la sélection"
|
||||
|
||||
@@ -7466,7 +7466,7 @@ msgstr "Ajouter un nouveau thème"
|
||||
msgid "workspace.tokens.add-set-to-group"
|
||||
msgstr "Ajouter la collection à ce groupe"
|
||||
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:197, src/app/main/ui/workspace/tokens/management/group.cljs:140
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:196, src/app/main/ui/workspace/tokens/management/group.cljs:147
|
||||
msgid "workspace.tokens.add-token"
|
||||
msgstr "Ajouter un token : %s"
|
||||
|
||||
@@ -7518,7 +7518,7 @@ msgstr "Créez votre premier thème dès à présent."
|
||||
msgid "workspace.tokens.create-one"
|
||||
msgstr "En créer un."
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:234
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:237
|
||||
msgid "workspace.tokens.create-token"
|
||||
msgstr "Créer un nouveau token %s"
|
||||
|
||||
@@ -7534,7 +7534,7 @@ msgstr "Supprimer le thème"
|
||||
msgid "workspace.tokens.duplicate"
|
||||
msgstr "Dupliquer le token"
|
||||
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:209, src/app/main/data/workspace/tokens/library_edit.cljs:452
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:211, src/app/main/data/workspace/tokens/library_edit.cljs:454
|
||||
msgid "workspace.tokens.duplicate-suffix"
|
||||
msgstr "copie"
|
||||
|
||||
@@ -7550,15 +7550,15 @@ msgstr "Modifier le thème"
|
||||
msgid "workspace.tokens.edit-themes"
|
||||
msgstr "Modifier les thèmes"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:233
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:236
|
||||
msgid "workspace.tokens.edit-token"
|
||||
msgstr "Modifier le token"
|
||||
|
||||
#: src/app/main/data/workspace/tokens/errors.cljs:41, src/app/main/ui/workspace/tokens/management/forms/color.cljs:22, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:42
|
||||
#: src/app/main/data/workspace/tokens/errors.cljs:41, src/app/main/ui/workspace/tokens/management/forms/color.cljs:22, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:43
|
||||
msgid "workspace.tokens.empty-input"
|
||||
msgstr "La valeur du token doit être renseignée"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:240
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:243
|
||||
msgid "workspace.tokens.enter-token-name"
|
||||
msgstr "Entrez le nom du token %s"
|
||||
|
||||
@@ -7661,11 +7661,11 @@ msgstr ""
|
||||
"L'importation des tokens va remplacer tous vos tokens, collections et "
|
||||
"thèmes actuels."
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management.cljs:78
|
||||
#: src/app/main/ui/workspace/tokens/management.cljs:74
|
||||
msgid "workspace.tokens.inactive-set"
|
||||
msgstr "Inactive"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management.cljs:69
|
||||
#: src/app/main/ui/workspace/tokens/management.cljs:65
|
||||
msgid "workspace.tokens.inactive-set-description"
|
||||
msgstr ""
|
||||
"Cette collection n'est pas active. Changez de thème ou activez cette "
|
||||
@@ -7829,7 +7829,7 @@ msgstr "La référence n'est pas valide ou n'est pas dans une collection active"
|
||||
msgid "workspace.tokens.reference-error"
|
||||
msgstr "Erreurs de référence : "
|
||||
|
||||
#: src/app/main/data/workspace/tokens/warnings.cljs:15, src/app/main/data/workspace/tokens/warnings.cljs:19, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:56, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:84, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:103, src/app/main/ui/workspace/tokens/management/forms/controls/color_input.cljs:271, src/app/main/ui/workspace/tokens/management/forms/controls/color_input.cljs:445, src/app/main/ui/workspace/tokens/management/forms/controls/fonts_combobox.cljs:169, src/app/main/ui/workspace/tokens/management/forms/controls/fonts_combobox.cljs:304, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:224, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:320, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:421, src/app/main/ui/workspace/tokens/management/token_pill.cljs:121
|
||||
#: src/app/main/data/workspace/tokens/warnings.cljs:15, src/app/main/data/workspace/tokens/warnings.cljs:19, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:56, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:84, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:103, src/app/main/ui/workspace/tokens/management/forms/controls/color_input.cljs:271, src/app/main/ui/workspace/tokens/management/forms/controls/color_input.cljs:445, src/app/main/ui/workspace/tokens/management/forms/controls/fonts_combobox.cljs:169, src/app/main/ui/workspace/tokens/management/forms/controls/fonts_combobox.cljs:304, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:225, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:332, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:432, src/app/main/ui/workspace/tokens/management/token_pill.cljs:121
|
||||
#, fuzzy
|
||||
msgid "workspace.tokens.resolved-value"
|
||||
msgstr "Valeur déduite : %s"
|
||||
@@ -7842,7 +7842,7 @@ msgstr "Enregistrer le thème"
|
||||
msgid "workspace.tokens.select-set"
|
||||
msgstr "Sélectionner la collection."
|
||||
|
||||
#: src/app/main/data/workspace/tokens/errors.cljs:45, src/app/main/ui/workspace/tokens/management/forms/color.cljs:44, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:79, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:302, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:242
|
||||
#: src/app/main/data/workspace/tokens/errors.cljs:45, src/app/main/ui/workspace/tokens/management/forms/color.cljs:44, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:80, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:302, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:242
|
||||
msgid "workspace.tokens.self-reference"
|
||||
msgstr "Le token s'auto-référence"
|
||||
|
||||
@@ -7899,7 +7899,7 @@ msgstr ""
|
||||
msgid "workspace.tokens.themes-list"
|
||||
msgstr "Liste des thèmes"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:273, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:274
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:276, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:277
|
||||
#, fuzzy
|
||||
msgid "workspace.tokens.token-description"
|
||||
msgstr "Description"
|
||||
@@ -7916,11 +7916,11 @@ msgstr "Famille de polices"
|
||||
msgid "workspace.tokens.token-font-family-value-enter"
|
||||
msgstr "Famille de polices ou liste de polices séparées par une virgule (,)"
|
||||
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:83, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:112, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:239
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:83, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:112, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:242
|
||||
msgid "workspace.tokens.token-name"
|
||||
msgstr "Nom"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:32, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:69, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:266, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:221, src/app/main/ui/workspace/tokens/management/forms/validators.cljs:103
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:32, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:70, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:266, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:221, src/app/main/ui/workspace/tokens/management/forms/validators.cljs:103
|
||||
msgid "workspace.tokens.token-name-validation-error"
|
||||
msgstr ""
|
||||
" n'est pas un nom de token valide.\n"
|
||||
@@ -7932,15 +7932,15 @@ msgstr ""
|
||||
msgid "workspace.tokens.token-not-resolved"
|
||||
msgstr "Impossible de trouver une référence de token ayant comme nom : %s"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:265
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:268
|
||||
msgid "workspace.tokens.token-value"
|
||||
msgstr "Valeur"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:264, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:129
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:267, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:129
|
||||
msgid "workspace.tokens.token-value-enter"
|
||||
msgstr "Entrez une valeur ou un alias avec {alias}"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management.cljs:68
|
||||
#: src/app/main/ui/workspace/tokens/management.cljs:64
|
||||
msgid "workspace.tokens.tokens-section-title"
|
||||
msgstr "TOKENS - %s"
|
||||
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"PO-Revision-Date: 2026-01-08 17:06+0000\n"
|
||||
"PO-Revision-Date: 2026-01-12 08:33+0000\n"
|
||||
"Last-Translator: Alexis Morin <the.alexis.morin@gmail.com>\n"
|
||||
"Language-Team: French (Canada) <https://hosted.weblate.org/projects/penpot/"
|
||||
"frontend/fr_CA/>\n"
|
||||
"Language-Team: French (Canada) "
|
||||
"<https://hosted.weblate.org/projects/penpot/frontend/fr_CA/>\n"
|
||||
"Language: fr_CA\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=utf-8\n"
|
||||
@@ -341,6 +341,14 @@ msgstr "Commencer le tour"
|
||||
msgid "dasboard.walkthrough-hero.title"
|
||||
msgstr "Visite guidée de l'interface"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:209
|
||||
msgid "dashboard-restore-file-confirmation.description"
|
||||
msgstr "Tu vas restaurer %s."
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:208
|
||||
msgid "dashboard-restore-file-confirmation.title"
|
||||
msgstr "Restaurer le fichier"
|
||||
|
||||
#: src/app/main/ui/settings/access_tokens.cljs:103
|
||||
msgid "dashboard.access-tokens.copied-success"
|
||||
msgstr "Token copié"
|
||||
@@ -425,6 +433,10 @@ msgstr "Ajouter une bibliothèque partagée"
|
||||
msgid "dashboard.change-email"
|
||||
msgstr "Changer l'adresse courriel"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:313
|
||||
msgid "dashboard.clear-trash-button"
|
||||
msgstr "Vider la corbeille"
|
||||
|
||||
#: src/app/main/data/dashboard.cljs:329, src/app/main/data/dashboard.cljs:564, src/app/main/data/workspace/pages.cljs:192
|
||||
msgid "dashboard.copy-suffix"
|
||||
msgstr "(copier)"
|
||||
@@ -441,10 +453,49 @@ msgstr "Épingler cette version"
|
||||
msgid "dashboard.default-team-name"
|
||||
msgstr "Ton Penpot"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:262
|
||||
msgid "dashboard.delete-all-forever-confirmation.description"
|
||||
msgstr ""
|
||||
"Es-tu certain de supprimer pour toujours tous tes projets et fichiers "
|
||||
"supprimés ? Ceci est une action irréversible."
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:222
|
||||
msgid "dashboard.delete-file-forever-confirmation.description"
|
||||
msgstr ""
|
||||
"Es-tu certain de vouloir supprimer %s pour toujours ? Ceci est une action "
|
||||
"irréversible."
|
||||
|
||||
#: src/app/main/data/dashboard.cljs:764
|
||||
msgid "dashboard.delete-files-success-notification"
|
||||
msgstr "%s fichiers ont été supprimés avec succès."
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:51, src/app/main/ui/dashboard/deleted.cljs:53, src/app/main/ui/dashboard/deleted.cljs:261, src/app/main/ui/dashboard/deleted.cljs:263, src/app/main/ui/dashboard/file_menu.cljs:221, src/app/main/ui/dashboard/file_menu.cljs:223
|
||||
msgid "dashboard.delete-forever-confirmation.title"
|
||||
msgstr "Supprimer pour toujours"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:85
|
||||
msgid "dashboard.delete-project-button"
|
||||
msgstr "Supprimer le projet"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:52
|
||||
msgid "dashboard.delete-project-forever-confirmation.description"
|
||||
msgstr ""
|
||||
"Es-tu certain de vouloir supprimer le projet %s pour toujours ? Tu vas le "
|
||||
"supprimer pour toujours ainsi que tous ses fichiers inclus. Ceci est une "
|
||||
"action irréversible."
|
||||
|
||||
#: src/app/main/data/dashboard.cljs:763, src/app/main/data/dashboard.cljs:797
|
||||
msgid "dashboard.delete-success-notification"
|
||||
msgstr "%s a été supprimé avec succès."
|
||||
|
||||
#: src/app/main/ui/dashboard/sidebar.cljs:477
|
||||
msgid "dashboard.delete-team"
|
||||
msgstr "Supprimer l'équipe"
|
||||
|
||||
#: src/app/main/ui/dashboard/grid.cljs:248
|
||||
msgid "dashboard.deleted.will-be-deleted-at"
|
||||
msgstr "Sera supprimé %s"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:330, src/app/main/ui/workspace/main_menu.cljs:690
|
||||
msgid "dashboard.download-binary-file"
|
||||
msgstr "Télécharger le fichier Penpot (.penpot)"
|
||||
@@ -470,11 +521,11 @@ msgstr "Quand un membre de l'équipe crée un brouillon, il s'affichera ici."
|
||||
msgid "dashboard.empty-placeholder-drafts-title"
|
||||
msgstr "Aucun brouillon."
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:166, src/app/main/ui/dashboard/files.cljs:204, src/app/main/ui/dashboard/projects.cljs:291
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:176, src/app/main/ui/dashboard/files.cljs:204, src/app/main/ui/dashboard/projects.cljs:291
|
||||
msgid "dashboard.empty-placeholder-files-subtitle"
|
||||
msgstr "Quand un membre de l'équipe crée un fichier, il s'affichera ici."
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:163, src/app/main/ui/dashboard/files.cljs:199, src/app/main/ui/dashboard/projects.cljs:286
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:173, src/app/main/ui/dashboard/files.cljs:199, src/app/main/ui/dashboard/projects.cljs:286
|
||||
msgid "dashboard.empty-placeholder-files-title"
|
||||
msgstr "Aucun fichier."
|
||||
|
||||
@@ -530,6 +581,30 @@ msgstr "Importer un fichier .penpot"
|
||||
msgid "dashboard.empty-project.start"
|
||||
msgstr "Crée des choses incroyables"
|
||||
|
||||
#, unused
|
||||
msgid "dashboard.errors.error-on-delete-file"
|
||||
msgstr "Une erreur s'est produite en supprimant le fichier %s."
|
||||
|
||||
#: src/app/main/data/dashboard.cljs:767
|
||||
msgid "dashboard.errors.error-on-delete-files"
|
||||
msgstr "Une erreur s'est produite en supprimant les fichiers."
|
||||
|
||||
#: src/app/main/data/dashboard.cljs:800
|
||||
msgid "dashboard.errors.error-on-delete-project"
|
||||
msgstr "Une erreur s'est produite en supprimant le projet %s."
|
||||
|
||||
#: src/app/main/data/dashboard.cljs:895, src/app/main/ui/dashboard/file_menu.cljs:201
|
||||
msgid "dashboard.errors.error-on-restore-file"
|
||||
msgstr "Une erreur s'est produite en restaurant le fichier %s."
|
||||
|
||||
#: src/app/main/data/dashboard.cljs:896
|
||||
msgid "dashboard.errors.error-on-restore-files"
|
||||
msgstr "Une erreur s'est produite en restaurant les fichiers."
|
||||
|
||||
#: src/app/main/data/dashboard.cljs:928
|
||||
msgid "dashboard.errors.error-on-restoring-project"
|
||||
msgstr "Une erreur s'est produite en restaurant le projet %s et ses fichiers."
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:282
|
||||
msgid "dashboard.export-binary-multi"
|
||||
msgstr "Télécharger %s fichiers Penpot (.penpot)"
|
||||
@@ -578,12 +653,22 @@ msgid "dashboard.export-standard-multi"
|
||||
msgstr "Télécharger %s fichiers standard (.svg + .json)"
|
||||
|
||||
#: src/app/main/ui/exports/files.cljs:155
|
||||
#, fuzzy, unused
|
||||
#, unused
|
||||
msgid "dashboard.export.explain"
|
||||
msgstr ""
|
||||
"Un ou plus des fichiers que tu veux exporter utilisent une bibliothèque "
|
||||
"Un ou plus des fichiers que tu veux télécharger utilisent une bibliothèque "
|
||||
"partagée. Que veux-tu faire avec ces atouts*?"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:268
|
||||
msgid "dashboard.file-menu.delete-files-permanently-option"
|
||||
msgid_plural "dashboard.file-menu.delete-files-permanently-option"
|
||||
msgstr[0] "Supprimer le fichier"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:265
|
||||
msgid "dashboard.file-menu.restore-files-option"
|
||||
msgid_plural "dashboard.file-menu.restore-files-option"
|
||||
msgstr[0] "Restaurer le fichier"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:322
|
||||
msgid "dashboard.fonts.deleted-placeholder"
|
||||
msgstr "Police de caractères manquante"
|
||||
@@ -797,7 +882,7 @@ msgstr "Déplacer vers"
|
||||
msgid "dashboard.move-to-multi"
|
||||
msgstr "Déplacer %s fichiers vers"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:248
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:250
|
||||
msgid "dashboard.move-to-other-team"
|
||||
msgstr "Déplacer vers une autre équipe"
|
||||
|
||||
@@ -857,7 +942,7 @@ msgstr "%s membres"
|
||||
msgid "dashboard.open-in-new-tab"
|
||||
msgstr "Ouvrir le fichier dans un nouvel onglet"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:147, src/app/main/ui/dashboard/deleted.cljs:148, src/app/main/ui/dashboard/files.cljs:120, src/app/main/ui/dashboard/grid.cljs:442, src/app/main/ui/dashboard/projects.cljs:266, src/app/main/ui/dashboard/projects.cljs:267
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:157, src/app/main/ui/dashboard/deleted.cljs:158, src/app/main/ui/dashboard/files.cljs:120, src/app/main/ui/dashboard/grid.cljs:442, src/app/main/ui/dashboard/projects.cljs:266, src/app/main/ui/dashboard/projects.cljs:267
|
||||
msgid "dashboard.options"
|
||||
msgstr "Options"
|
||||
|
||||
@@ -905,7 +990,23 @@ msgstr "Impossible d'analyser le manifeste du plugiciel"
|
||||
msgid "dashboard.plugins.try-plugin"
|
||||
msgstr "Essayer le plugiciel : "
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:41, src/app/main/ui/dashboard/projects.cljs:57
|
||||
#: src/app/main/data/dashboard.cljs:708
|
||||
msgid "dashboard.progress-notification.deleting-files"
|
||||
msgstr "Suppression des fichiers…"
|
||||
|
||||
#: src/app/main/data/dashboard.cljs:829
|
||||
msgid "dashboard.progress-notification.restoring-files"
|
||||
msgstr "Restauration des fichiers…"
|
||||
|
||||
#: src/app/main/data/dashboard.cljs:709
|
||||
msgid "dashboard.progress-notification.slow-delete"
|
||||
msgstr "La suppression est inopinément lente"
|
||||
|
||||
#: src/app/main/data/dashboard.cljs:830
|
||||
msgid "dashboard.progress-notification.slow-restore"
|
||||
msgstr "Restauration inopinément lente"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:62, src/app/main/ui/dashboard/projects.cljs:57
|
||||
msgid "dashboard.projects-title"
|
||||
msgstr "Projets"
|
||||
|
||||
@@ -922,6 +1023,38 @@ msgstr "Retirer la bibliothèque partagée"
|
||||
msgid "dashboard.removed-from-team"
|
||||
msgstr "Tu ne fais plus partie de l'équipe « %s »."
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:274
|
||||
msgid "dashboard.restore-all-confirmation.description"
|
||||
msgstr "Tu vas restaurer tous tes projets et fichiers. Ça pourrait être long."
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:273
|
||||
msgid "dashboard.restore-all-confirmation.title"
|
||||
msgstr "Restaurer tous les projets et fichiers"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:308
|
||||
msgid "dashboard.restore-all-deleted-button"
|
||||
msgstr "Tout restaurer"
|
||||
|
||||
#: src/app/main/data/dashboard.cljs:889
|
||||
msgid "dashboard.restore-files-success-notification"
|
||||
msgstr "%s fichiers ont été restaurés avec succès."
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:82
|
||||
msgid "dashboard.restore-project-button"
|
||||
msgstr "Restaurer le projet"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:41
|
||||
msgid "dashboard.restore-project-confirmation.description"
|
||||
msgstr "Tu vas restaurer le projet %s et tous les fichiers qu'il contient."
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:40
|
||||
msgid "dashboard.restore-project-confirmation.title"
|
||||
msgstr "Restaurer le projet"
|
||||
|
||||
#: src/app/main/data/dashboard.cljs:861, src/app/main/data/dashboard.cljs:888, src/app/main/data/dashboard.cljs:925, src/app/main/ui/dashboard/file_menu.cljs:198
|
||||
msgid "dashboard.restore-success-notification"
|
||||
msgstr "%s a été restauré avec succès."
|
||||
|
||||
#: src/app/main/ui/settings/profile.cljs:78
|
||||
msgid "dashboard.save-settings"
|
||||
msgstr "Sauvegarder les paramètres"
|
||||
@@ -1022,7 +1155,7 @@ msgstr "Voir tous les fichiers"
|
||||
msgid "dashboard.show-version-history"
|
||||
msgstr "Historique des versions"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:97
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:98
|
||||
msgid "dashboard.success-delete-file"
|
||||
msgid_plural "dashboard.success-delete-file"
|
||||
msgstr[0] "Le fichier a été supprimé avec succès"
|
||||
@@ -1032,7 +1165,7 @@ msgstr[1] "Les fichiers ont été supprimés avec succès"
|
||||
msgid "dashboard.success-delete-project"
|
||||
msgstr "Le projet a été supprimé avec succès"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:92
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:93
|
||||
msgid "dashboard.success-duplicate-file"
|
||||
msgid_plural "dashboard.success-delete-file"
|
||||
msgstr[0] "Le fichier a été dupliqué avec succès"
|
||||
@@ -1042,11 +1175,11 @@ msgstr[1] "Les fichiers ont été dupliqués avec succès"
|
||||
msgid "dashboard.success-duplicate-project"
|
||||
msgstr "Le projet a été dupliqué avec succès"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:131, src/app/main/ui/dashboard/grid.cljs:634, src/app/main/ui/dashboard/sidebar.cljs:165
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:132, src/app/main/ui/dashboard/grid.cljs:634, src/app/main/ui/dashboard/sidebar.cljs:165
|
||||
msgid "dashboard.success-move-file"
|
||||
msgstr "Le fichier a été déplacé avec succès"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:130
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:131
|
||||
msgid "dashboard.success-move-files"
|
||||
msgstr "Les fichiers ont été déplacés avec succès"
|
||||
|
||||
@@ -1078,6 +1211,24 @@ msgstr "Thème visuel"
|
||||
msgid "dashboard.title-search"
|
||||
msgstr "Résultats de recherche"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:298
|
||||
msgid "dashboard.trash-info-text-part1"
|
||||
msgstr "Les fichiers supprimés resteront dans la corbeille pour"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:300
|
||||
msgid "dashboard.trash-info-text-part2"
|
||||
msgstr " %s jours. "
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:301
|
||||
msgid "dashboard.trash-info-text-part3"
|
||||
msgstr "Ensuite, ils sont supprimés de manière permanente."
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:303
|
||||
msgid "dashboard.trash-info-text-part4"
|
||||
msgstr ""
|
||||
"Si tu changes d'avis, tu peux les restaurer ou les supprimer de manière "
|
||||
"permanente à partir du menu de chaque fichier."
|
||||
|
||||
#: src/app/main/ui/dashboard/search.cljs:67
|
||||
msgid "dashboard.type-something"
|
||||
msgstr "Écris quelque chose pour lancer une recherche"
|
||||
@@ -1102,6 +1253,79 @@ msgstr "Penpot gratuit"
|
||||
msgid "dashboard.webhooks.active"
|
||||
msgstr "Actif"
|
||||
|
||||
#: src/app/main/ui/dashboard/team.cljs:1116
|
||||
msgid "dashboard.webhooks.active.explain"
|
||||
msgstr ""
|
||||
"Les détails de l'événement sont envoyés à l'activation du lien de rappel "
|
||||
"(webhook)"
|
||||
|
||||
#: src/app/main/ui/dashboard/team.cljs:1160
|
||||
msgid "dashboard.webhooks.cant-edit"
|
||||
msgstr "Tu peux seulement supprimer ou modifier les liens de rappel que tu as créés."
|
||||
|
||||
#: src/app/main/ui/dashboard/team.cljs:1106
|
||||
msgid "dashboard.webhooks.content-type"
|
||||
msgstr "Type de contenu"
|
||||
|
||||
#: src/app/main/ui/dashboard/team.cljs:1139
|
||||
msgid "dashboard.webhooks.create"
|
||||
msgstr "Créer un lien de rappel"
|
||||
|
||||
#: src/app/main/ui/dashboard/team.cljs:1031
|
||||
msgid "dashboard.webhooks.create.success"
|
||||
msgstr "Lien de rappel créé avec succès."
|
||||
|
||||
#: src/app/main/ui/dashboard/team.cljs:1136
|
||||
msgid "dashboard.webhooks.description"
|
||||
msgstr ""
|
||||
"Les liens de rappel (webhooks) permettent à d'autres sites ou applis d'être "
|
||||
"notifiés de certains événements Penpot. Nous envoyons une requête POST à "
|
||||
"chacune des URLs fournies."
|
||||
|
||||
#: src/app/main/ui/dashboard/team.cljs:1265
|
||||
msgid "dashboard.webhooks.empty.add-one"
|
||||
msgstr "Clique le bouton \"Créer un lien de rappel\" pour en créer un."
|
||||
|
||||
#: src/app/main/ui/dashboard/team.cljs:1264
|
||||
msgid "dashboard.webhooks.empty.no-webhooks"
|
||||
msgstr "Aucun lien de rappel (webhook) n'a été créé."
|
||||
|
||||
#, unused
|
||||
msgid "dashboard.webhooks.update.success"
|
||||
msgstr "Lien de rappel (webhook) mis à jour avec succès."
|
||||
|
||||
#: src/app/main/ui/settings.cljs:34
|
||||
msgid "dashboard.your-account-title"
|
||||
msgstr "Ton compte"
|
||||
|
||||
#: src/app/main/ui/settings/profile.cljs:70
|
||||
msgid "dashboard.your-email"
|
||||
msgstr "Adresse courriel"
|
||||
|
||||
#: src/app/main/ui/settings/profile.cljs:62
|
||||
msgid "dashboard.your-name"
|
||||
msgstr "Ton nom"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:40, src/app/main/ui/dashboard/fonts.cljs:42, src/app/main/ui/dashboard/libraries.cljs:56, src/app/main/ui/dashboard/projects.cljs:355, src/app/main/ui/dashboard/search.cljs:48, src/app/main/ui/dashboard/sidebar.cljs:302, src/app/main/ui/dashboard/team.cljs:537, src/app/main/ui/dashboard/team.cljs:983, src/app/main/ui/dashboard/team.cljs:1251, src/app/main/ui/dashboard/team.cljs:1298
|
||||
msgid "dashboard.your-penpot"
|
||||
msgstr "Ton Penpot"
|
||||
|
||||
#: src/app/main/ui/alert.cljs:35
|
||||
msgid "ds.alert-ok"
|
||||
msgstr "Ok"
|
||||
|
||||
#: src/app/main/ui/alert.cljs:34, src/app/main/ui/alert.cljs:37
|
||||
msgid "ds.alert-title"
|
||||
msgstr "Attention"
|
||||
|
||||
#: src/app/main/ui/confirm.cljs:86
|
||||
msgid "ds.component-subtitle"
|
||||
msgstr "Composantes à mettre à jour :"
|
||||
|
||||
#: src/app/main/ui/workspace/plugins.cljs:340, src/app/main/ui/workspace/plugins.cljs:394
|
||||
msgid "ds.confirm-allow"
|
||||
msgstr "Permettre"
|
||||
|
||||
#: src/app/main/ui/comments.cljs:674, src/app/main/ui/confirm.cljs:37, src/app/main/ui/settings/subscription.cljs:273, src/app/main/ui/settings/subscription.cljs:306, src/app/main/ui/workspace/plugins.cljs:334, src/app/main/ui/workspace/plugins.cljs:388
|
||||
msgid "ds.confirm-cancel"
|
||||
msgstr "Annuler"
|
||||
@@ -1110,6 +1334,138 @@ msgstr "Annuler"
|
||||
msgid "ds.confirm-ok"
|
||||
msgstr "Ok"
|
||||
|
||||
#: src/app/main/ui/confirm.cljs:36, src/app/main/ui/confirm.cljs:40
|
||||
msgid "ds.confirm-title"
|
||||
msgstr "Es-tu certain?"
|
||||
|
||||
#: src/app/main/ui/ds/controls/numeric_input.cljs:99
|
||||
msgid "ds.inputs.numeric-input.no-applicable-tokens"
|
||||
msgstr "Aucun token applicable dans les collections ou thèmes actifs."
|
||||
|
||||
#: src/app/main/ui/ds/controls/numeric_input.cljs:100
|
||||
msgid "ds.inputs.numeric-input.no-matches"
|
||||
msgstr "Aucun résultat trouvé."
|
||||
|
||||
#: src/app/main/ui/ds/controls/numeric_input.cljs:650, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:141
|
||||
msgid "ds.inputs.numeric-input.open-token-list-dropdown"
|
||||
msgstr "Ouvrir la liste de tokens"
|
||||
|
||||
#: src/app/main/ui/ds/controls/utilities/token_field.cljs:87, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:136
|
||||
msgid "ds.inputs.token-field.detach-token"
|
||||
msgstr "Détacher du token"
|
||||
|
||||
#: src/app/main/ui/ds/controls/utilities/token_field.cljs:41, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:99, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:106
|
||||
msgid "ds.inputs.token-field.no-active-token-option"
|
||||
msgstr "Ce token n'est disponible dans aucune collection ou est invalide."
|
||||
|
||||
#: src/app/main/data/auth.cljs:339
|
||||
msgid "errors.auth-provider-not-allowed"
|
||||
msgstr "Fournisseur d'authentification non permis pour ce profil utilisateur"
|
||||
|
||||
#: src/app/main/data/auth.cljs:189
|
||||
msgid "errors.auth-provider-not-configured"
|
||||
msgstr "Fournisseur d'authentification non configuré."
|
||||
|
||||
#: src/app/main/errors.cljs:119
|
||||
msgid "errors.auth.unable-to-login"
|
||||
msgstr "Tu n'es pas authentifié ou la session a expiré."
|
||||
|
||||
#: src/app/main/data/fonts.cljs:192, src/app/main/ui/dashboard/fonts.cljs:120
|
||||
msgid "errors.bad-font"
|
||||
msgstr "La police de caractères %s n'a pu être chargée"
|
||||
|
||||
#: src/app/main/data/fonts.cljs:191
|
||||
msgid "errors.bad-font-plural"
|
||||
msgstr "Les polices de caractères %s n'ont pu être chargées"
|
||||
|
||||
#: src/app/main/data/workspace/media.cljs:204
|
||||
msgid "errors.cannot-upload"
|
||||
msgstr "Impossible de téléverser le fichier média."
|
||||
|
||||
#: src/app/main/ui/comments.cljs:719, src/app/main/ui/comments.cljs:749, src/app/main/ui/comments.cljs:846
|
||||
msgid "errors.character-limit-exceeded"
|
||||
msgstr "Limite de caractères dépassée"
|
||||
|
||||
#: src/app/main/data/workspace/clipboard.cljs:481
|
||||
msgid "errors.clipboard-not-implemented"
|
||||
msgstr "Le navigateur ne peut faire cette opération"
|
||||
|
||||
#: src/app/main/errors.cljs:238
|
||||
msgid "errors.comment-error"
|
||||
msgstr "Une erreur est survenue avec le commentaire"
|
||||
|
||||
#: src/app/main/errors.cljs:307
|
||||
msgid "errors.deprecated"
|
||||
msgstr ""
|
||||
"Désolé! Il est impossible d'ouvrir ce fichier car ce dernier utilise un "
|
||||
"type d'atout Penpot désuet."
|
||||
|
||||
#: src/app/main/errors.cljs:310
|
||||
msgid "errors.deprecated.contact.after"
|
||||
msgstr "pour que nous puissions t'aider."
|
||||
|
||||
#: src/app/main/errors.cljs:308
|
||||
msgid "errors.deprecated.contact.before"
|
||||
msgstr "Même si Penpot ne supporte plus ce type d'atout, tu peux"
|
||||
|
||||
#: src/app/main/errors.cljs:309
|
||||
msgid "errors.deprecated.contact.text"
|
||||
msgstr "nous contacter"
|
||||
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:307
|
||||
msgid "errors.drop-token-set-parent-to-child"
|
||||
msgstr "Impossible de placer une collection parente à l'intérieur d'elle-même."
|
||||
|
||||
#: src/app/main/ui/auth/verify_token.cljs:84, src/app/main/ui/settings/change_email.cljs:29
|
||||
msgid "errors.email-already-exists"
|
||||
msgstr "Ce courriel est déjà en utilisation"
|
||||
|
||||
#: src/app/main/ui/auth/verify_token.cljs:89
|
||||
msgid "errors.email-already-validated"
|
||||
msgstr "Ce courriel est déjà validé."
|
||||
|
||||
#: src/app/main/ui/auth/register.cljs:105, src/app/main/ui/settings/password.cljs:29
|
||||
msgid "errors.email-as-password"
|
||||
msgstr "Tu ne peux pas utiliser ton adresse courriel comme mot de passe"
|
||||
|
||||
#: src/app/main/ui/auth/register.cljs:89
|
||||
msgid "errors.email-does-not-match-invitation"
|
||||
msgstr "L'adresse courriel ne correspond pas à l'invitation."
|
||||
|
||||
#: src/app/main/data/auth.cljs:341, src/app/main/ui/auth/register.cljs:95
|
||||
msgid "errors.email-domain-not-allowed"
|
||||
msgstr "Ce domaine n'est pas permis"
|
||||
|
||||
#: src/app/main/ui/auth/recovery_request.cljs:57, src/app/main/ui/auth/register.cljs:98, src/app/main/ui/auth/register.cljs:101, src/app/main/ui/dashboard/team.cljs:627, src/app/main/ui/settings/change_email.cljs:37
|
||||
msgid "errors.email-has-permanent-bounces"
|
||||
msgstr "L'adresse courriel « %s » a généré plusieurs rapports de rebond permanent."
|
||||
|
||||
#: src/app/main/ui/dashboard/team.cljs:196, src/app/main/ui/dashboard/team.cljs:858, src/app/main/ui/onboarding/team_choice.cljs:110
|
||||
msgid "errors.email-spam-or-permanent-bounces"
|
||||
msgstr "L'adresse courriel « %s » est rapportée comme pourriel ou rebond permanent."
|
||||
|
||||
#: src/app/main/errors.cljs:284
|
||||
msgid "errors.feature-mismatch"
|
||||
msgstr ""
|
||||
"Il sembe que tu ouvres un fichier qui utilise la fonctionalité « %s » mais "
|
||||
"la version actuelle de Penpot ne la supporte pas ou elle a été désactivée."
|
||||
|
||||
#: src/app/main/errors.cljs:288, src/app/main/errors.cljs:302
|
||||
msgid "errors.feature-not-supported"
|
||||
msgstr "La fonction « %s » n'est pas supportée."
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:41, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:77, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:299, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:239
|
||||
msgid "errors.field-max-length"
|
||||
msgstr "Doit contenier un maximum de %s caractères."
|
||||
|
||||
#, unused
|
||||
msgid "errors.field-min-length"
|
||||
msgstr "Doit contenir au moins 1 caractère."
|
||||
|
||||
#: src/app/util/forms.cljs:66
|
||||
msgid "errors.field-missing"
|
||||
msgstr "Champ vide"
|
||||
|
||||
#: src/app/main/ui/exports/files.cljs:133
|
||||
msgid "files-download-modal.description-2"
|
||||
msgstr ""
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"PO-Revision-Date: 2026-01-08 17:06+0000\n"
|
||||
"Last-Translator: ascarida <ascarida@proton.me>\n"
|
||||
"Language-Team: Galician <https://hosted.weblate.org/projects/penpot/frontend/"
|
||||
"gl/>\n"
|
||||
"Language-Team: Galician "
|
||||
"<https://hosted.weblate.org/projects/penpot/frontend/gl/>\n"
|
||||
"Language: gl\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=utf-8\n"
|
||||
@@ -358,7 +358,7 @@ msgid "dashboard.export-standard-multi"
|
||||
msgstr "Descargar %s ficheiros estándar (.svg + .json)"
|
||||
|
||||
#: src/app/main/ui/exports/files.cljs:155
|
||||
#, fuzzy, unused
|
||||
#, unused
|
||||
msgid "dashboard.export.explain"
|
||||
msgstr ""
|
||||
"Un ou máis ficheiros dos que queres exportar usan bibliotecas compartidas. "
|
||||
@@ -494,7 +494,7 @@ msgstr "Mover a"
|
||||
msgid "dashboard.move-to-multi"
|
||||
msgstr "Mover % ficheiros a"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:248
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:250
|
||||
msgid "dashboard.move-to-other-team"
|
||||
msgstr "Mover a outro equipo"
|
||||
|
||||
@@ -542,7 +542,7 @@ msgstr "%s integrantes"
|
||||
msgid "dashboard.open-in-new-tab"
|
||||
msgstr "Abrir ficheiro nunha nova lapela"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:147, src/app/main/ui/dashboard/deleted.cljs:148, src/app/main/ui/dashboard/files.cljs:120, src/app/main/ui/dashboard/grid.cljs:442, src/app/main/ui/dashboard/projects.cljs:266, src/app/main/ui/dashboard/projects.cljs:267
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:157, src/app/main/ui/dashboard/deleted.cljs:158, src/app/main/ui/dashboard/files.cljs:120, src/app/main/ui/dashboard/grid.cljs:442, src/app/main/ui/dashboard/projects.cljs:266, src/app/main/ui/dashboard/projects.cljs:267
|
||||
msgid "dashboard.options"
|
||||
msgstr "Opcións"
|
||||
|
||||
@@ -550,7 +550,7 @@ msgstr "Opcións"
|
||||
msgid "dashboard.password-change"
|
||||
msgstr "Cambiar contrasinal"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:41, src/app/main/ui/dashboard/projects.cljs:57
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:62, src/app/main/ui/dashboard/projects.cljs:57
|
||||
msgid "dashboard.projects-title"
|
||||
msgstr "Proxectos"
|
||||
|
||||
@@ -587,7 +587,7 @@ msgstr "Escolle un tema"
|
||||
msgid "dashboard.show-all-files"
|
||||
msgstr "Mostra todos os ficheiros"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:97
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:98
|
||||
msgid "dashboard.success-delete-file"
|
||||
msgstr "Eliminouse o ficheiro"
|
||||
|
||||
@@ -595,7 +595,7 @@ msgstr "Eliminouse o ficheiro"
|
||||
msgid "dashboard.success-delete-project"
|
||||
msgstr "Eliminouse o proxecto"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:92
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:93
|
||||
msgid "dashboard.success-duplicate-file"
|
||||
msgstr "Duplicouse o ficheiro"
|
||||
|
||||
@@ -603,11 +603,11 @@ msgstr "Duplicouse o ficheiro"
|
||||
msgid "dashboard.success-duplicate-project"
|
||||
msgstr "Duplicouse o proxecto"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:131, src/app/main/ui/dashboard/grid.cljs:634, src/app/main/ui/dashboard/sidebar.cljs:165
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:132, src/app/main/ui/dashboard/grid.cljs:634, src/app/main/ui/dashboard/sidebar.cljs:165
|
||||
msgid "dashboard.success-move-file"
|
||||
msgstr "Moveuse o ficheiro"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:130
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:131
|
||||
msgid "dashboard.success-move-files"
|
||||
msgstr "Movéronse os ficheiros"
|
||||
|
||||
@@ -659,7 +659,7 @@ msgstr "Correo electrónico"
|
||||
msgid "dashboard.your-name"
|
||||
msgstr "Nome"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:39, src/app/main/ui/dashboard/fonts.cljs:42, src/app/main/ui/dashboard/libraries.cljs:56, src/app/main/ui/dashboard/projects.cljs:355, src/app/main/ui/dashboard/search.cljs:48, src/app/main/ui/dashboard/sidebar.cljs:302, src/app/main/ui/dashboard/team.cljs:537, src/app/main/ui/dashboard/team.cljs:983, src/app/main/ui/dashboard/team.cljs:1251, src/app/main/ui/dashboard/team.cljs:1298
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:40, src/app/main/ui/dashboard/fonts.cljs:42, src/app/main/ui/dashboard/libraries.cljs:56, src/app/main/ui/dashboard/projects.cljs:355, src/app/main/ui/dashboard/search.cljs:48, src/app/main/ui/dashboard/sidebar.cljs:302, src/app/main/ui/dashboard/team.cljs:537, src/app/main/ui/dashboard/team.cljs:983, src/app/main/ui/dashboard/team.cljs:1251, src/app/main/ui/dashboard/team.cljs:1298
|
||||
msgid "dashboard.your-penpot"
|
||||
msgstr "O teu Penpot"
|
||||
|
||||
@@ -932,7 +932,7 @@ msgstr "e"
|
||||
msgid "labels.back"
|
||||
msgstr "Volver"
|
||||
|
||||
#: src/app/main/data/common.cljs:119, src/app/main/ui/dashboard/change_owner.cljs:64, src/app/main/ui/dashboard/import.cljs:515, src/app/main/ui/dashboard/team.cljs:780, src/app/main/ui/dashboard/team.cljs:1122, src/app/main/ui/delete_shared.cljs:38, src/app/main/ui/exports/assets.cljs:163, src/app/main/ui/exports/files.cljs:168, src/app/main/ui/settings/access_tokens.cljs:175, src/app/main/ui/viewer/share_link.cljs:208, src/app/main/ui/workspace/sidebar/assets/groups.cljs:159, src/app/main/ui/workspace/tokens/export/modal.cljs:44, src/app/main/ui/workspace/tokens/import/modal.cljs:269, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:295, src/app/main/ui/workspace/tokens/remapping_modal.cljs:99, src/app/main/ui/workspace/tokens/settings/menu.cljs:105, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:265
|
||||
#: src/app/main/data/common.cljs:119, src/app/main/ui/dashboard/change_owner.cljs:64, src/app/main/ui/dashboard/import.cljs:515, src/app/main/ui/dashboard/team.cljs:780, src/app/main/ui/dashboard/team.cljs:1122, src/app/main/ui/delete_shared.cljs:38, src/app/main/ui/exports/assets.cljs:163, src/app/main/ui/exports/files.cljs:168, src/app/main/ui/settings/access_tokens.cljs:175, src/app/main/ui/viewer/share_link.cljs:208, src/app/main/ui/workspace/sidebar/assets/groups.cljs:159, src/app/main/ui/workspace/tokens/export/modal.cljs:44, src/app/main/ui/workspace/tokens/import/modal.cljs:269, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:298, src/app/main/ui/workspace/tokens/remapping_modal.cljs:99, src/app/main/ui/workspace/tokens/settings/menu.cljs:105, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:265
|
||||
msgid "labels.cancel"
|
||||
msgstr "Cancelar"
|
||||
|
||||
@@ -948,7 +948,7 @@ msgstr "Código"
|
||||
msgid "labels.comments"
|
||||
msgstr "Comentarios"
|
||||
|
||||
#: src/app/main/ui/auth/login.cljs:204, src/app/main/ui/dashboard/deleted.cljs:57, src/app/main/ui/dashboard/deleted.cljs:264, src/app/main/ui/dashboard/file_menu.cljs:208, src/app/main/ui/dashboard/import.cljs:521, src/app/main/ui/dashboard/team.cljs:787, src/app/main/ui/exports/files.cljs:173, src/app/main/ui/onboarding/newsletter.cljs:106, src/app/main/ui/settings/subscription.cljs:279, src/app/main/ui/settings/subscription.cljs:313
|
||||
#: src/app/main/ui/auth/login.cljs:204, src/app/main/ui/dashboard/deleted.cljs:43, src/app/main/ui/dashboard/deleted.cljs:275, src/app/main/ui/dashboard/file_menu.cljs:210, src/app/main/ui/dashboard/import.cljs:521, src/app/main/ui/dashboard/team.cljs:787, src/app/main/ui/exports/files.cljs:173, src/app/main/ui/onboarding/newsletter.cljs:106, src/app/main/ui/settings/subscription.cljs:279, src/app/main/ui/settings/subscription.cljs:313
|
||||
msgid "labels.continue"
|
||||
msgstr "Continuar"
|
||||
|
||||
@@ -960,11 +960,11 @@ msgstr "Crear"
|
||||
msgid "labels.dashboard"
|
||||
msgstr "Panel"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:338, src/app/main/ui/dashboard/fonts.cljs:267, src/app/main/ui/dashboard/fonts.cljs:343, src/app/main/ui/dashboard/fonts.cljs:357, src/app/main/ui/dashboard/project_menu.cljs:115, src/app/main/ui/dashboard/team.cljs:1158, src/app/main/ui/settings/access_tokens.cljs:196, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:223, src/app/main/ui/workspace/sidebar/versions.cljs:216, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:288, src/app/main/ui/workspace/tokens/sets/context_menu.cljs:66, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:399
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:338, src/app/main/ui/dashboard/fonts.cljs:267, src/app/main/ui/dashboard/fonts.cljs:343, src/app/main/ui/dashboard/fonts.cljs:357, src/app/main/ui/dashboard/project_menu.cljs:115, src/app/main/ui/dashboard/team.cljs:1158, src/app/main/ui/settings/access_tokens.cljs:196, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:223, src/app/main/ui/workspace/sidebar/versions.cljs:216, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:291, src/app/main/ui/workspace/tokens/sets/context_menu.cljs:66, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:399
|
||||
msgid "labels.delete"
|
||||
msgstr "Eliminar"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:29, src/app/main/ui/dashboard/files.cljs:80, src/app/main/ui/dashboard/files.cljs:179, src/app/main/ui/dashboard/projects.cljs:229, src/app/main/ui/dashboard/projects.cljs:233, src/app/main/ui/dashboard/sidebar.cljs:726
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:30, src/app/main/ui/dashboard/files.cljs:80, src/app/main/ui/dashboard/files.cljs:179, src/app/main/ui/dashboard/projects.cljs:229, src/app/main/ui/dashboard/projects.cljs:233, src/app/main/ui/dashboard/sidebar.cljs:726
|
||||
msgid "labels.drafts"
|
||||
msgstr "Borradores"
|
||||
|
||||
@@ -1056,7 +1056,7 @@ msgstr "Volver tentar"
|
||||
msgid "labels.role"
|
||||
msgstr "Rol"
|
||||
|
||||
#: src/app/main/ui/dashboard/fonts.cljs:395, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:204, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:299, src/app/main/ui/workspace/tokens/settings/menu.cljs:110
|
||||
#: src/app/main/ui/dashboard/fonts.cljs:395, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:204, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:302, src/app/main/ui/workspace/tokens/settings/menu.cljs:110
|
||||
msgid "labels.save"
|
||||
msgstr "Gardar"
|
||||
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"PO-Revision-Date: 2026-01-08 17:06+0000\n"
|
||||
"Last-Translator: Alejandro Alonso <alejandro.alonso@kaleidos.net>\n"
|
||||
"Language-Team: Hausa <https://hosted.weblate.org/projects/penpot/frontend/"
|
||||
"ha/>\n"
|
||||
"Language-Team: Hausa "
|
||||
"<https://hosted.weblate.org/projects/penpot/frontend/ha/>\n"
|
||||
"Language: ha\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=utf-8\n"
|
||||
@@ -423,7 +423,7 @@ msgid "dashboard.export-standard-multi"
|
||||
msgstr "Sauke %s cikakken kundi (.svg + .json)"
|
||||
|
||||
#: src/app/main/ui/exports/files.cljs:155
|
||||
#, fuzzy, unused
|
||||
#, unused
|
||||
msgid "dashboard.export.explain"
|
||||
msgstr "za ka iya fitar da kundi daya ko fiye ta hanyar tura taska. \"me \"*?"
|
||||
|
||||
@@ -568,7 +568,7 @@ msgstr "tura a"
|
||||
msgid "dashboard.move-to-multi"
|
||||
msgstr "tura %s kundaye a"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:248
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:250
|
||||
msgid "dashboard.move-to-other-team"
|
||||
msgstr "tura ma sauran tawaga"
|
||||
|
||||
@@ -616,7 +616,7 @@ msgstr "%s memba"
|
||||
msgid "dashboard.open-in-new-tab"
|
||||
msgstr "buxe kundi a sabon wurin buxewa"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:147, src/app/main/ui/dashboard/deleted.cljs:148, src/app/main/ui/dashboard/files.cljs:120, src/app/main/ui/dashboard/grid.cljs:442, src/app/main/ui/dashboard/projects.cljs:266, src/app/main/ui/dashboard/projects.cljs:267
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:157, src/app/main/ui/dashboard/deleted.cljs:158, src/app/main/ui/dashboard/files.cljs:120, src/app/main/ui/dashboard/grid.cljs:442, src/app/main/ui/dashboard/projects.cljs:266, src/app/main/ui/dashboard/projects.cljs:267
|
||||
msgid "dashboard.options"
|
||||
msgstr "zavi"
|
||||
|
||||
@@ -628,7 +628,7 @@ msgstr "sauya lambar tsaro"
|
||||
msgid "dashboard.pin-unpin"
|
||||
msgstr "rufewa/buxewa"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:41, src/app/main/ui/dashboard/projects.cljs:57
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:62, src/app/main/ui/dashboard/projects.cljs:57
|
||||
msgid "dashboard.projects-title"
|
||||
msgstr "aiki"
|
||||
|
||||
@@ -665,7 +665,7 @@ msgstr "zaven batu"
|
||||
msgid "dashboard.show-all-files"
|
||||
msgstr "duk kundaye"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:97
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:98
|
||||
msgid "dashboard.success-delete-file"
|
||||
msgid_plural "dashboard.success-delete-file"
|
||||
msgstr[0] "an goge kundinka"
|
||||
@@ -675,7 +675,7 @@ msgstr[1] "an goge kundayenka"
|
||||
msgid "dashboard.success-delete-project"
|
||||
msgstr "ka goge aikinka"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:92
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:93
|
||||
msgid "dashboard.success-duplicate-file"
|
||||
msgid_plural "dashboard.success-delete-file"
|
||||
msgstr[0] "an kwafi kundinka"
|
||||
@@ -685,11 +685,11 @@ msgstr[1] "an kwafi kundayenka"
|
||||
msgid "dashboard.success-duplicate-project"
|
||||
msgstr "an kwafi aikinka"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:131, src/app/main/ui/dashboard/grid.cljs:634, src/app/main/ui/dashboard/sidebar.cljs:165
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:132, src/app/main/ui/dashboard/grid.cljs:634, src/app/main/ui/dashboard/sidebar.cljs:165
|
||||
msgid "dashboard.success-move-file"
|
||||
msgstr "an tura aikinka"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:130
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:131
|
||||
msgid "dashboard.success-move-files"
|
||||
msgstr "an tura kundayenka"
|
||||
|
||||
@@ -779,7 +779,7 @@ msgstr "imel"
|
||||
msgid "dashboard.your-name"
|
||||
msgstr "sunanka"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:39, src/app/main/ui/dashboard/fonts.cljs:42, src/app/main/ui/dashboard/libraries.cljs:56, src/app/main/ui/dashboard/projects.cljs:355, src/app/main/ui/dashboard/search.cljs:48, src/app/main/ui/dashboard/sidebar.cljs:302, src/app/main/ui/dashboard/team.cljs:537, src/app/main/ui/dashboard/team.cljs:983, src/app/main/ui/dashboard/team.cljs:1251, src/app/main/ui/dashboard/team.cljs:1298
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:40, src/app/main/ui/dashboard/fonts.cljs:42, src/app/main/ui/dashboard/libraries.cljs:56, src/app/main/ui/dashboard/projects.cljs:355, src/app/main/ui/dashboard/search.cljs:48, src/app/main/ui/dashboard/sidebar.cljs:302, src/app/main/ui/dashboard/team.cljs:537, src/app/main/ui/dashboard/team.cljs:983, src/app/main/ui/dashboard/team.cljs:1251, src/app/main/ui/dashboard/team.cljs:1298
|
||||
msgid "dashboard.your-penpot"
|
||||
msgstr "fenfot na ka"
|
||||
|
||||
@@ -1346,7 +1346,7 @@ msgstr ""
|
||||
msgid "labels.bad-gateway.main-message"
|
||||
msgstr "akwai matsala"
|
||||
|
||||
#: src/app/main/data/common.cljs:119, src/app/main/ui/dashboard/change_owner.cljs:64, src/app/main/ui/dashboard/import.cljs:515, src/app/main/ui/dashboard/team.cljs:780, src/app/main/ui/dashboard/team.cljs:1122, src/app/main/ui/delete_shared.cljs:38, src/app/main/ui/exports/assets.cljs:163, src/app/main/ui/exports/files.cljs:168, src/app/main/ui/settings/access_tokens.cljs:175, src/app/main/ui/viewer/share_link.cljs:208, src/app/main/ui/workspace/sidebar/assets/groups.cljs:159, src/app/main/ui/workspace/tokens/export/modal.cljs:44, src/app/main/ui/workspace/tokens/import/modal.cljs:269, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:295, src/app/main/ui/workspace/tokens/remapping_modal.cljs:99, src/app/main/ui/workspace/tokens/settings/menu.cljs:105, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:265
|
||||
#: src/app/main/data/common.cljs:119, src/app/main/ui/dashboard/change_owner.cljs:64, src/app/main/ui/dashboard/import.cljs:515, src/app/main/ui/dashboard/team.cljs:780, src/app/main/ui/dashboard/team.cljs:1122, src/app/main/ui/delete_shared.cljs:38, src/app/main/ui/exports/assets.cljs:163, src/app/main/ui/exports/files.cljs:168, src/app/main/ui/settings/access_tokens.cljs:175, src/app/main/ui/viewer/share_link.cljs:208, src/app/main/ui/workspace/sidebar/assets/groups.cljs:159, src/app/main/ui/workspace/tokens/export/modal.cljs:44, src/app/main/ui/workspace/tokens/import/modal.cljs:269, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:298, src/app/main/ui/workspace/tokens/remapping_modal.cljs:99, src/app/main/ui/workspace/tokens/settings/menu.cljs:105, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:265
|
||||
msgid "labels.cancel"
|
||||
msgstr "sokewa"
|
||||
|
||||
@@ -1374,7 +1374,7 @@ msgstr "matattara"
|
||||
msgid "labels.confirm-password"
|
||||
msgstr "tabbatar da lambar tsaro"
|
||||
|
||||
#: src/app/main/ui/auth/login.cljs:204, src/app/main/ui/dashboard/deleted.cljs:57, src/app/main/ui/dashboard/deleted.cljs:264, src/app/main/ui/dashboard/file_menu.cljs:208, src/app/main/ui/dashboard/import.cljs:521, src/app/main/ui/dashboard/team.cljs:787, src/app/main/ui/exports/files.cljs:173, src/app/main/ui/onboarding/newsletter.cljs:106, src/app/main/ui/settings/subscription.cljs:279, src/app/main/ui/settings/subscription.cljs:313
|
||||
#: src/app/main/ui/auth/login.cljs:204, src/app/main/ui/dashboard/deleted.cljs:43, src/app/main/ui/dashboard/deleted.cljs:275, src/app/main/ui/dashboard/file_menu.cljs:210, src/app/main/ui/dashboard/import.cljs:521, src/app/main/ui/dashboard/team.cljs:787, src/app/main/ui/exports/files.cljs:173, src/app/main/ui/onboarding/newsletter.cljs:106, src/app/main/ui/settings/subscription.cljs:279, src/app/main/ui/settings/subscription.cljs:313
|
||||
msgid "labels.continue"
|
||||
msgstr "ci gaba"
|
||||
|
||||
@@ -1410,7 +1410,7 @@ msgstr "kwalliya da fenfot"
|
||||
msgid "labels.dashboard"
|
||||
msgstr "dashbod"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:338, src/app/main/ui/dashboard/fonts.cljs:267, src/app/main/ui/dashboard/fonts.cljs:343, src/app/main/ui/dashboard/fonts.cljs:357, src/app/main/ui/dashboard/project_menu.cljs:115, src/app/main/ui/dashboard/team.cljs:1158, src/app/main/ui/settings/access_tokens.cljs:196, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:223, src/app/main/ui/workspace/sidebar/versions.cljs:216, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:288, src/app/main/ui/workspace/tokens/sets/context_menu.cljs:66, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:399
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:338, src/app/main/ui/dashboard/fonts.cljs:267, src/app/main/ui/dashboard/fonts.cljs:343, src/app/main/ui/dashboard/fonts.cljs:357, src/app/main/ui/dashboard/project_menu.cljs:115, src/app/main/ui/dashboard/team.cljs:1158, src/app/main/ui/settings/access_tokens.cljs:196, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:223, src/app/main/ui/workspace/sidebar/versions.cljs:216, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:291, src/app/main/ui/workspace/tokens/sets/context_menu.cljs:66, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:399
|
||||
msgid "labels.delete"
|
||||
msgstr "goge"
|
||||
|
||||
@@ -1438,7 +1438,7 @@ msgstr "ma su qirqira"
|
||||
msgid "labels.discard"
|
||||
msgstr "vatar"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:29, src/app/main/ui/dashboard/files.cljs:80, src/app/main/ui/dashboard/files.cljs:179, src/app/main/ui/dashboard/projects.cljs:229, src/app/main/ui/dashboard/projects.cljs:233, src/app/main/ui/dashboard/sidebar.cljs:726
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:30, src/app/main/ui/dashboard/files.cljs:80, src/app/main/ui/dashboard/files.cljs:179, src/app/main/ui/dashboard/projects.cljs:229, src/app/main/ui/dashboard/projects.cljs:233, src/app/main/ui/dashboard/sidebar.cljs:726
|
||||
msgid "labels.drafts"
|
||||
msgstr "adana"
|
||||
|
||||
@@ -1697,7 +1697,7 @@ msgstr "sake gwadawa"
|
||||
msgid "labels.role"
|
||||
msgstr "matsayi"
|
||||
|
||||
#: src/app/main/ui/dashboard/fonts.cljs:395, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:204, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:299, src/app/main/ui/workspace/tokens/settings/menu.cljs:110
|
||||
#: src/app/main/ui/dashboard/fonts.cljs:395, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:204, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:302, src/app/main/ui/workspace/tokens/settings/menu.cljs:110
|
||||
msgid "labels.save"
|
||||
msgstr "ajiye"
|
||||
|
||||
@@ -1955,27 +1955,27 @@ msgstr "ka tabbata kana son goge wannan bayanin?"
|
||||
msgid "modals.delete-component-annotation.title"
|
||||
msgstr "goge bayani"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:124
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:125
|
||||
msgid "modals.delete-file-confirm.accept"
|
||||
msgstr "goge kundi"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:123
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:124
|
||||
msgid "modals.delete-file-confirm.message"
|
||||
msgstr "ka tabbata kana son goge wannan kundin?"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:122
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:123
|
||||
msgid "modals.delete-file-confirm.title"
|
||||
msgstr "goge kundi"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:118
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:119
|
||||
msgid "modals.delete-file-multi-confirm.accept"
|
||||
msgstr "goge kundaye"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:117
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:118
|
||||
msgid "modals.delete-file-multi-confirm.message"
|
||||
msgstr "ka tabbata kana son goge %s kundaye?"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:116
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:117
|
||||
msgid "modals.delete-file-multi-confirm.title"
|
||||
msgstr "gogewa %s kundaye"
|
||||
|
||||
@@ -2496,7 +2496,7 @@ msgstr "je ka hanyar shiga"
|
||||
msgid "settings.detach"
|
||||
msgstr "cire"
|
||||
|
||||
#: src/app/main/ui/inspect/exports.cljs:148, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:105, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:107, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:342, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:496, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1062, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1302, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:138, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:149, src/app/main/ui/workspace/sidebar/options/menus/exports.cljs:223, src/app/main/ui/workspace/sidebar/options/menus/fill.cljs:221, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:79, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:430, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:460, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:55, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:56, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:111, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:500, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:511, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:555, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:566, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:595, src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:154, src/app/main/ui/workspace/sidebar/options/menus/stroke.cljs:199, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:336, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:389, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:408, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:427, src/app/main/ui/workspace/sidebar/options/rows/stroke_row.cljs:204
|
||||
#: src/app/main/ui/inspect/exports.cljs:148, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:105, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:107, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:342, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:496, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1062, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1302, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:138, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:149, src/app/main/ui/workspace/sidebar/options/menus/exports.cljs:223, src/app/main/ui/workspace/sidebar/options/menus/fill.cljs:221, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:79, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:430, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:460, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:55, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:56, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:111, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:500, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:511, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:555, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:566, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:595, src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:155, src/app/main/ui/workspace/sidebar/options/menus/stroke.cljs:199, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:336, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:389, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:408, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:427, src/app/main/ui/workspace/sidebar/options/rows/stroke_row.cljs:204
|
||||
msgid "settings.multiple"
|
||||
msgstr "gauraya"
|
||||
|
||||
@@ -4465,15 +4465,15 @@ msgstr "Y"
|
||||
msgid "workspace.options.shadow-options.spread"
|
||||
msgstr "bazu"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:138
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:139
|
||||
msgid "workspace.options.shadow-options.title"
|
||||
msgstr "inuwa"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:137
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:138
|
||||
msgid "workspace.options.shadow-options.title.group"
|
||||
msgstr "rukunin inuwa"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:136
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:137
|
||||
msgid "workspace.options.shadow-options.title.multiple"
|
||||
msgstr "inuwar zabi"
|
||||
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"PO-Revision-Date: 2026-01-08 17:06+0000\n"
|
||||
"Last-Translator: Yaron Shahrabani <sh.yaron@gmail.com>\n"
|
||||
"Language-Team: Hebrew <https://hosted.weblate.org/projects/penpot/frontend/"
|
||||
"he/>\n"
|
||||
"Language-Team: Hebrew "
|
||||
"<https://hosted.weblate.org/projects/penpot/frontend/he/>\n"
|
||||
"Language: he\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=utf-8\n"
|
||||
@@ -452,11 +452,11 @@ msgstr "כשאחד או אחת מחברי הצוות יוצרים טיוטה, ה
|
||||
msgid "dashboard.empty-placeholder-drafts-title"
|
||||
msgstr "אין טיוטות עדיין."
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:166, src/app/main/ui/dashboard/files.cljs:204, src/app/main/ui/dashboard/projects.cljs:291
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:176, src/app/main/ui/dashboard/files.cljs:204, src/app/main/ui/dashboard/projects.cljs:291
|
||||
msgid "dashboard.empty-placeholder-files-subtitle"
|
||||
msgstr "כשחבר או חברה במיזם יוצרים קובץ, הוא יופיע כאן."
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:163, src/app/main/ui/dashboard/files.cljs:199, src/app/main/ui/dashboard/projects.cljs:286
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:173, src/app/main/ui/dashboard/files.cljs:199, src/app/main/ui/dashboard/projects.cljs:286
|
||||
msgid "dashboard.empty-placeholder-files-title"
|
||||
msgstr "אין קבצים עדיין."
|
||||
|
||||
@@ -556,7 +556,7 @@ msgid "dashboard.export-standard-multi"
|
||||
msgstr "הורדת %s קבצים תקניים (.svg + .json)"
|
||||
|
||||
#: src/app/main/ui/exports/files.cljs:155
|
||||
#, fuzzy, unused
|
||||
#, unused
|
||||
msgid "dashboard.export.explain"
|
||||
msgstr ""
|
||||
"אחד או יותר מהקבצים שברצונך לייצא משתמשים בספריות משותפות. מה לעשות עם "
|
||||
@@ -766,7 +766,7 @@ msgstr "העברה אל"
|
||||
msgid "dashboard.move-to-multi"
|
||||
msgstr "העברה של %s קבצים אל"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:248
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:250
|
||||
msgid "dashboard.move-to-other-team"
|
||||
msgstr "העברה לצוות אחר"
|
||||
|
||||
@@ -826,7 +826,7 @@ msgstr "%s חברים"
|
||||
msgid "dashboard.open-in-new-tab"
|
||||
msgstr "פתיחת קובץ בלשונית חדשה"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:147, src/app/main/ui/dashboard/deleted.cljs:148, src/app/main/ui/dashboard/files.cljs:120, src/app/main/ui/dashboard/grid.cljs:442, src/app/main/ui/dashboard/projects.cljs:266, src/app/main/ui/dashboard/projects.cljs:267
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:157, src/app/main/ui/dashboard/deleted.cljs:158, src/app/main/ui/dashboard/files.cljs:120, src/app/main/ui/dashboard/grid.cljs:442, src/app/main/ui/dashboard/projects.cljs:266, src/app/main/ui/dashboard/projects.cljs:267
|
||||
msgid "dashboard.options"
|
||||
msgstr "אפשרויות"
|
||||
|
||||
@@ -874,7 +874,7 @@ msgstr "לא ניתן לפענח את המניפסט/מצהר של התוסף"
|
||||
msgid "dashboard.plugins.try-plugin"
|
||||
msgstr "התנסות התוסף: "
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:41, src/app/main/ui/dashboard/projects.cljs:57
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:62, src/app/main/ui/dashboard/projects.cljs:57
|
||||
msgid "dashboard.projects-title"
|
||||
msgstr "מיזמים"
|
||||
|
||||
@@ -991,7 +991,7 @@ msgstr "הצגת כל הקבצים"
|
||||
msgid "dashboard.show-version-history"
|
||||
msgstr "היסטוריית גרסאות"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:97
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:98
|
||||
msgid "dashboard.success-delete-file"
|
||||
msgid_plural "dashboard.success-delete-file"
|
||||
msgstr[0] "הקובץ שלך נמחק בהצלחה"
|
||||
@@ -1003,7 +1003,7 @@ msgstr[3] "הקבצים שלך נמחקו בהצלחה"
|
||||
msgid "dashboard.success-delete-project"
|
||||
msgstr "המיזם שלך נמחק בהצלחה"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:92
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:93
|
||||
msgid "dashboard.success-duplicate-file"
|
||||
msgid_plural "dashboard.success-delete-file"
|
||||
msgstr[0] "הקובץ שלך שוכפל בהצלחה"
|
||||
@@ -1015,11 +1015,11 @@ msgstr[3] "הקבצים שלך שוכפלו בהצלחה"
|
||||
msgid "dashboard.success-duplicate-project"
|
||||
msgstr "המיזם שלך שוכפל בהצלחה"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:131, src/app/main/ui/dashboard/grid.cljs:634, src/app/main/ui/dashboard/sidebar.cljs:165
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:132, src/app/main/ui/dashboard/grid.cljs:634, src/app/main/ui/dashboard/sidebar.cljs:165
|
||||
msgid "dashboard.success-move-file"
|
||||
msgstr "הקובץ שלך הועבר בהצלחה"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:130
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:131
|
||||
msgid "dashboard.success-move-files"
|
||||
msgstr "הקבצים שלך הועברו בהצלחה"
|
||||
|
||||
@@ -1125,7 +1125,7 @@ msgstr "דוא״ל"
|
||||
msgid "dashboard.your-name"
|
||||
msgstr "שמך"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:39, src/app/main/ui/dashboard/fonts.cljs:42, src/app/main/ui/dashboard/libraries.cljs:56, src/app/main/ui/dashboard/projects.cljs:355, src/app/main/ui/dashboard/search.cljs:48, src/app/main/ui/dashboard/sidebar.cljs:302, src/app/main/ui/dashboard/team.cljs:537, src/app/main/ui/dashboard/team.cljs:983, src/app/main/ui/dashboard/team.cljs:1251, src/app/main/ui/dashboard/team.cljs:1298
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:40, src/app/main/ui/dashboard/fonts.cljs:42, src/app/main/ui/dashboard/libraries.cljs:56, src/app/main/ui/dashboard/projects.cljs:355, src/app/main/ui/dashboard/search.cljs:48, src/app/main/ui/dashboard/sidebar.cljs:302, src/app/main/ui/dashboard/team.cljs:537, src/app/main/ui/dashboard/team.cljs:983, src/app/main/ui/dashboard/team.cljs:1251, src/app/main/ui/dashboard/team.cljs:1298
|
||||
msgid "dashboard.your-penpot"
|
||||
msgstr "ה־Penpot שלך"
|
||||
|
||||
@@ -1231,7 +1231,7 @@ msgstr "למרות ש־Penpot לא תומך יותר בסוג המשאבים ה
|
||||
msgid "errors.deprecated.contact.text"
|
||||
msgstr "ליצור איתנו קשר"
|
||||
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:305
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:307
|
||||
msgid "errors.drop-token-set-parent-to-child"
|
||||
msgstr "לא ניתן לגרור סדרת הורה לתוך נתיב צאצא של עצמה."
|
||||
|
||||
@@ -1273,7 +1273,7 @@ msgstr ""
|
||||
msgid "errors.feature-not-supported"
|
||||
msgstr "אין תמיכה ביכולת ‚%s’."
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:41, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:76, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:299, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:239
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:41, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:77, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:299, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:239
|
||||
msgid "errors.field-max-length"
|
||||
msgstr "חייב להכיל עד %s תווים."
|
||||
|
||||
@@ -1428,7 +1428,7 @@ msgstr "החבר שניסית להקצות לא קיים."
|
||||
msgid "errors.team-leave.owner-cant-leave"
|
||||
msgstr "הבעלים לא יכולים לעזוב את הקבוצה, עליך להעביר את תפקיד הבעלות."
|
||||
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:162, src/app/main/data/workspace/tokens/library_edit.cljs:192
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:164, src/app/main/data/workspace/tokens/library_edit.cljs:194
|
||||
msgid "errors.token-set-already-exists"
|
||||
msgstr "כבר קיימת סדרה בשם הזה"
|
||||
|
||||
@@ -1437,11 +1437,11 @@ msgstr "כבר קיימת סדרה בשם הזה"
|
||||
msgid "errors.token-set-doesnt-exists"
|
||||
msgstr "אי אפשר לשכפל ערכה לא ידועה"
|
||||
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:304
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:306
|
||||
msgid "errors.token-set-exists-on-drop"
|
||||
msgstr "לא ניתן להשלים את החיתוך, כבר קיימת סדרה באותו השם בנתיב."
|
||||
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:77, src/app/main/data/workspace/tokens/library_edit.cljs:96
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:79, src/app/main/data/workspace/tokens/library_edit.cljs:98
|
||||
msgid "errors.token-theme-already-exists"
|
||||
msgstr "כבר קיימת אפשרות ערכת עיצוב באותו השם"
|
||||
|
||||
@@ -1902,7 +1902,7 @@ msgstr "העתקה ללוח הגזירים"
|
||||
msgid "inspect.tabs.styles.geometry-panel"
|
||||
msgstr "גודל ומקום"
|
||||
|
||||
#: src/app/main/ui/inspect/styles/style_box.cljs:60, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:179
|
||||
#: src/app/main/ui/inspect/styles/style_box.cljs:60, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:178
|
||||
msgid "inspect.tabs.styles.toggle-style"
|
||||
msgstr "החלפת חשיפת הלוח %s"
|
||||
|
||||
@@ -1989,7 +1989,7 @@ msgstr "שער גישה שגוי"
|
||||
msgid "labels.blur"
|
||||
msgstr "טשטוש"
|
||||
|
||||
#: src/app/main/data/common.cljs:119, src/app/main/ui/dashboard/change_owner.cljs:64, src/app/main/ui/dashboard/import.cljs:515, src/app/main/ui/dashboard/team.cljs:780, src/app/main/ui/dashboard/team.cljs:1122, src/app/main/ui/delete_shared.cljs:38, src/app/main/ui/exports/assets.cljs:163, src/app/main/ui/exports/files.cljs:168, src/app/main/ui/settings/access_tokens.cljs:175, src/app/main/ui/viewer/share_link.cljs:208, src/app/main/ui/workspace/sidebar/assets/groups.cljs:159, src/app/main/ui/workspace/tokens/export/modal.cljs:44, src/app/main/ui/workspace/tokens/import/modal.cljs:269, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:295, src/app/main/ui/workspace/tokens/remapping_modal.cljs:99, src/app/main/ui/workspace/tokens/settings/menu.cljs:105, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:265
|
||||
#: src/app/main/data/common.cljs:119, src/app/main/ui/dashboard/change_owner.cljs:64, src/app/main/ui/dashboard/import.cljs:515, src/app/main/ui/dashboard/team.cljs:780, src/app/main/ui/dashboard/team.cljs:1122, src/app/main/ui/delete_shared.cljs:38, src/app/main/ui/exports/assets.cljs:163, src/app/main/ui/exports/files.cljs:168, src/app/main/ui/settings/access_tokens.cljs:175, src/app/main/ui/viewer/share_link.cljs:208, src/app/main/ui/workspace/sidebar/assets/groups.cljs:159, src/app/main/ui/workspace/tokens/export/modal.cljs:44, src/app/main/ui/workspace/tokens/import/modal.cljs:269, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:298, src/app/main/ui/workspace/tokens/remapping_modal.cljs:99, src/app/main/ui/workspace/tokens/settings/menu.cljs:105, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:265
|
||||
msgid "labels.cancel"
|
||||
msgstr "ביטול"
|
||||
|
||||
@@ -2049,7 +2049,7 @@ msgstr "יצירת קשר עם התמיכה"
|
||||
msgid "labels.contact-us"
|
||||
msgstr "יצירת קשר איתנו"
|
||||
|
||||
#: src/app/main/ui/auth/login.cljs:204, src/app/main/ui/dashboard/deleted.cljs:57, src/app/main/ui/dashboard/deleted.cljs:264, src/app/main/ui/dashboard/file_menu.cljs:208, src/app/main/ui/dashboard/import.cljs:521, src/app/main/ui/dashboard/team.cljs:787, src/app/main/ui/exports/files.cljs:173, src/app/main/ui/onboarding/newsletter.cljs:106, src/app/main/ui/settings/subscription.cljs:279, src/app/main/ui/settings/subscription.cljs:313
|
||||
#: src/app/main/ui/auth/login.cljs:204, src/app/main/ui/dashboard/deleted.cljs:43, src/app/main/ui/dashboard/deleted.cljs:275, src/app/main/ui/dashboard/file_menu.cljs:210, src/app/main/ui/dashboard/import.cljs:521, src/app/main/ui/dashboard/team.cljs:787, src/app/main/ui/exports/files.cljs:173, src/app/main/ui/onboarding/newsletter.cljs:106, src/app/main/ui/settings/subscription.cljs:279, src/app/main/ui/settings/subscription.cljs:313
|
||||
msgid "labels.continue"
|
||||
msgstr "להמשיך"
|
||||
|
||||
@@ -2097,7 +2097,7 @@ msgstr "גופנים משלך"
|
||||
msgid "labels.dashboard"
|
||||
msgstr "לוח בקרה"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:338, src/app/main/ui/dashboard/fonts.cljs:267, src/app/main/ui/dashboard/fonts.cljs:343, src/app/main/ui/dashboard/fonts.cljs:357, src/app/main/ui/dashboard/project_menu.cljs:115, src/app/main/ui/dashboard/team.cljs:1158, src/app/main/ui/settings/access_tokens.cljs:196, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:223, src/app/main/ui/workspace/sidebar/versions.cljs:216, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:288, src/app/main/ui/workspace/tokens/sets/context_menu.cljs:66, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:399
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:338, src/app/main/ui/dashboard/fonts.cljs:267, src/app/main/ui/dashboard/fonts.cljs:343, src/app/main/ui/dashboard/fonts.cljs:357, src/app/main/ui/dashboard/project_menu.cljs:115, src/app/main/ui/dashboard/team.cljs:1158, src/app/main/ui/settings/access_tokens.cljs:196, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:223, src/app/main/ui/workspace/sidebar/versions.cljs:216, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:291, src/app/main/ui/workspace/tokens/sets/context_menu.cljs:66, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:399
|
||||
msgid "labels.delete"
|
||||
msgstr "מחיקה"
|
||||
|
||||
@@ -2134,7 +2134,7 @@ msgstr "התעלמות"
|
||||
msgid "labels.download"
|
||||
msgstr "הורדת %s"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:29, src/app/main/ui/dashboard/files.cljs:80, src/app/main/ui/dashboard/files.cljs:179, src/app/main/ui/dashboard/projects.cljs:229, src/app/main/ui/dashboard/projects.cljs:233, src/app/main/ui/dashboard/sidebar.cljs:726
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:30, src/app/main/ui/dashboard/files.cljs:80, src/app/main/ui/dashboard/files.cljs:179, src/app/main/ui/dashboard/projects.cljs:229, src/app/main/ui/dashboard/projects.cljs:233, src/app/main/ui/dashboard/sidebar.cljs:726
|
||||
msgid "labels.drafts"
|
||||
msgstr "טיוטות"
|
||||
|
||||
@@ -2548,7 +2548,7 @@ msgstr "ניסיון חוזר"
|
||||
msgid "labels.role"
|
||||
msgstr "תפקיד"
|
||||
|
||||
#: src/app/main/ui/dashboard/fonts.cljs:395, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:204, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:299, src/app/main/ui/workspace/tokens/settings/menu.cljs:110
|
||||
#: src/app/main/ui/dashboard/fonts.cljs:395, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:204, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:302, src/app/main/ui/workspace/tokens/settings/menu.cljs:110
|
||||
msgid "labels.save"
|
||||
msgstr "שמירה"
|
||||
|
||||
@@ -3011,27 +3011,27 @@ msgstr "למחוק את הסימון הזה?"
|
||||
msgid "modals.delete-component-annotation.title"
|
||||
msgstr "מחיקת סימון"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:124
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:125
|
||||
msgid "modals.delete-file-confirm.accept"
|
||||
msgstr "מחיקת קובץ"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:123
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:124
|
||||
msgid "modals.delete-file-confirm.message"
|
||||
msgstr "למחוק את הקובץ?"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:122
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:123
|
||||
msgid "modals.delete-file-confirm.title"
|
||||
msgstr "הקובץ נמחק"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:118
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:119
|
||||
msgid "modals.delete-file-multi-confirm.accept"
|
||||
msgstr "מחיקת קבצים"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:117
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:118
|
||||
msgid "modals.delete-file-multi-confirm.message"
|
||||
msgstr "למחוק %s קבצים?"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:116
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:117
|
||||
msgid "modals.delete-file-multi-confirm.title"
|
||||
msgstr "%s קבצים נמחקים"
|
||||
|
||||
@@ -3833,7 +3833,7 @@ msgstr "מעבר למסך הכניסה"
|
||||
msgid "settings.detach"
|
||||
msgstr "ניתוק"
|
||||
|
||||
#: src/app/main/ui/inspect/exports.cljs:148, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:105, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:107, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:342, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:496, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1062, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1302, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:138, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:149, src/app/main/ui/workspace/sidebar/options/menus/exports.cljs:223, src/app/main/ui/workspace/sidebar/options/menus/fill.cljs:221, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:79, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:430, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:460, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:55, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:56, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:111, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:500, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:511, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:555, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:566, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:595, src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:154, src/app/main/ui/workspace/sidebar/options/menus/stroke.cljs:199, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:336, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:389, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:408, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:427, src/app/main/ui/workspace/sidebar/options/rows/stroke_row.cljs:204
|
||||
#: src/app/main/ui/inspect/exports.cljs:148, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:105, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:107, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:342, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:496, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1062, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1302, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:138, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:149, src/app/main/ui/workspace/sidebar/options/menus/exports.cljs:223, src/app/main/ui/workspace/sidebar/options/menus/fill.cljs:221, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:79, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:430, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:460, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:55, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:56, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:111, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:500, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:511, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:555, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:566, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:595, src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:155, src/app/main/ui/workspace/sidebar/options/menus/stroke.cljs:199, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:336, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:389, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:408, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:427, src/app/main/ui/workspace/sidebar/options/rows/stroke_row.cljs:204
|
||||
msgid "settings.multiple"
|
||||
msgstr "מעורב"
|
||||
|
||||
@@ -5073,7 +5073,7 @@ msgstr "סינון"
|
||||
msgid "workspace.assets.graphics"
|
||||
msgstr "גרפיקה"
|
||||
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:190, src/app/main/ui/workspace/sidebar/assets/components.cljs:575, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:806
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:189, src/app/main/ui/workspace/sidebar/assets/components.cljs:575, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:806
|
||||
msgid "workspace.assets.grid-view"
|
||||
msgstr "תצוגת טבלה"
|
||||
|
||||
@@ -5085,7 +5085,7 @@ msgstr "קבוצה"
|
||||
msgid "workspace.assets.group-name"
|
||||
msgstr "שם קבוצה"
|
||||
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:191, src/app/main/ui/workspace/sidebar/assets/components.cljs:571, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:802
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:190, src/app/main/ui/workspace/sidebar/assets/components.cljs:571, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:802
|
||||
msgid "workspace.assets.list-view"
|
||||
msgstr "תצוגת רשימה"
|
||||
|
||||
@@ -6648,7 +6648,7 @@ msgstr "מילוי בחירה"
|
||||
msgid "workspace.options.selection-stroke"
|
||||
msgstr "מתאר בחירה"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:143
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:144
|
||||
msgid "workspace.options.shadow-options.add-shadow"
|
||||
msgstr "הוספת הצללה"
|
||||
|
||||
@@ -6676,7 +6676,7 @@ msgstr "X"
|
||||
msgid "workspace.options.shadow-options.offsety"
|
||||
msgstr "Y"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:156, src/app/main/ui/workspace/sidebar/options/rows/shadow_row.cljs:161
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:157, src/app/main/ui/workspace/sidebar/options/rows/shadow_row.cljs:161
|
||||
msgid "workspace.options.shadow-options.remove-shadow"
|
||||
msgstr "הסרת הצללה"
|
||||
|
||||
@@ -6684,15 +6684,15 @@ msgstr "הסרת הצללה"
|
||||
msgid "workspace.options.shadow-options.spread"
|
||||
msgstr "פיזור"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:138
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:139
|
||||
msgid "workspace.options.shadow-options.title"
|
||||
msgstr "צל"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:137
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:138
|
||||
msgid "workspace.options.shadow-options.title.group"
|
||||
msgstr "צל של קבוצה"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:136
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:137
|
||||
msgid "workspace.options.shadow-options.title.multiple"
|
||||
msgstr "צללים של בחירה"
|
||||
|
||||
@@ -7472,7 +7472,7 @@ msgstr "הוספת ערכת עיצוב חדשה"
|
||||
msgid "workspace.tokens.add-set-to-group"
|
||||
msgstr "הוספת סדרה לקבוצה הזאת"
|
||||
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:197, src/app/main/ui/workspace/tokens/management/group.cljs:140
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:196, src/app/main/ui/workspace/tokens/management/group.cljs:147
|
||||
msgid "workspace.tokens.add-token"
|
||||
msgstr "הוספת אסימון: %s"
|
||||
|
||||
@@ -7522,7 +7522,7 @@ msgstr "אפשר ליצור את ערכת העיצוב הראשונה שלך ע
|
||||
msgid "workspace.tokens.create-one"
|
||||
msgstr "ליצור אחד."
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:234
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:237
|
||||
msgid "workspace.tokens.create-token"
|
||||
msgstr "יצירת אסימון %s חדש"
|
||||
|
||||
@@ -7538,7 +7538,7 @@ msgstr "מחיקת ערכת עיצוב"
|
||||
msgid "workspace.tokens.duplicate"
|
||||
msgstr "שכפול אסימון"
|
||||
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:209, src/app/main/data/workspace/tokens/library_edit.cljs:452
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:211, src/app/main/data/workspace/tokens/library_edit.cljs:454
|
||||
msgid "workspace.tokens.duplicate-suffix"
|
||||
msgstr "עותק"
|
||||
|
||||
@@ -7554,15 +7554,15 @@ msgstr "עריכת ערכת עיצוב"
|
||||
msgid "workspace.tokens.edit-themes"
|
||||
msgstr "עריכת ערכות עיצוב"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:233
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:236
|
||||
msgid "workspace.tokens.edit-token"
|
||||
msgstr "עריכת אסימון %s"
|
||||
|
||||
#: src/app/main/data/workspace/tokens/errors.cljs:41, src/app/main/ui/workspace/tokens/management/forms/color.cljs:22, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:42
|
||||
#: src/app/main/data/workspace/tokens/errors.cljs:41, src/app/main/ui/workspace/tokens/management/forms/color.cljs:22, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:43
|
||||
msgid "workspace.tokens.empty-input"
|
||||
msgstr "ערך האסימון לא יכול להישאר ריק"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:240
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:243
|
||||
msgid "workspace.tokens.enter-token-name"
|
||||
msgstr "נא למלא את שם האסימון %s"
|
||||
|
||||
@@ -7665,11 +7665,11 @@ msgstr "ייבוא קובץ JSON ידרוס את כל האסימונים, הסד
|
||||
msgid "workspace.tokens.import-warning"
|
||||
msgstr "ייבוא אסימונים ידרוס את כל האסימונים הנוכחיים, הסדרות וערכות העיצוב שלך."
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management.cljs:78
|
||||
#: src/app/main/ui/workspace/tokens/management.cljs:74
|
||||
msgid "workspace.tokens.inactive-set"
|
||||
msgstr "לא פעילה"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management.cljs:69
|
||||
#: src/app/main/ui/workspace/tokens/management.cljs:65
|
||||
msgid "workspace.tokens.inactive-set-description"
|
||||
msgstr ""
|
||||
"הסדרה הזאת לא פעילה. יש להחליף את ערכת העיצוב או להפעיל את הסדרה הזאת כדי "
|
||||
@@ -7855,7 +7855,7 @@ msgstr "נא למלא כינוי הצללת אסימון"
|
||||
msgid "workspace.tokens.reference-error"
|
||||
msgstr "שגיאות הפניה: "
|
||||
|
||||
#: src/app/main/data/workspace/tokens/warnings.cljs:15, src/app/main/data/workspace/tokens/warnings.cljs:19, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:56, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:84, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:103, src/app/main/ui/workspace/tokens/management/forms/controls/color_input.cljs:271, src/app/main/ui/workspace/tokens/management/forms/controls/color_input.cljs:445, src/app/main/ui/workspace/tokens/management/forms/controls/fonts_combobox.cljs:169, src/app/main/ui/workspace/tokens/management/forms/controls/fonts_combobox.cljs:304, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:224, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:320, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:421, src/app/main/ui/workspace/tokens/management/token_pill.cljs:121
|
||||
#: src/app/main/data/workspace/tokens/warnings.cljs:15, src/app/main/data/workspace/tokens/warnings.cljs:19, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:56, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:84, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:103, src/app/main/ui/workspace/tokens/management/forms/controls/color_input.cljs:271, src/app/main/ui/workspace/tokens/management/forms/controls/color_input.cljs:445, src/app/main/ui/workspace/tokens/management/forms/controls/fonts_combobox.cljs:169, src/app/main/ui/workspace/tokens/management/forms/controls/fonts_combobox.cljs:304, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:225, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:332, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:432, src/app/main/ui/workspace/tokens/management/token_pill.cljs:121
|
||||
#, fuzzy
|
||||
msgid "workspace.tokens.resolved-value"
|
||||
msgstr "ערך פתור: %s"
|
||||
@@ -7868,7 +7868,7 @@ msgstr "שמירת ערכת עיצוב"
|
||||
msgid "workspace.tokens.select-set"
|
||||
msgstr "בחירה ערכה."
|
||||
|
||||
#: src/app/main/data/workspace/tokens/errors.cljs:45, src/app/main/ui/workspace/tokens/management/forms/color.cljs:44, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:79, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:302, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:242
|
||||
#: src/app/main/data/workspace/tokens/errors.cljs:45, src/app/main/ui/workspace/tokens/management/forms/color.cljs:44, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:80, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:302, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:242
|
||||
msgid "workspace.tokens.self-reference"
|
||||
msgstr "לאסימון יש הפניה עצמית"
|
||||
|
||||
@@ -7969,7 +7969,7 @@ msgstr ""
|
||||
msgid "workspace.tokens.themes-list"
|
||||
msgstr "רשימת ערכות עיצוב"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:273, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:274
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:276, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:277
|
||||
#, fuzzy
|
||||
msgid "workspace.tokens.token-description"
|
||||
msgstr "תיאור"
|
||||
@@ -7986,19 +7986,19 @@ msgstr "משפחת גופנים"
|
||||
msgid "workspace.tokens.token-font-family-value-enter"
|
||||
msgstr "משפחת גופנים או רשימת גופנים מופרדת בפסיקים (,)"
|
||||
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:83, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:112, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:239
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:83, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:112, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:242
|
||||
msgid "workspace.tokens.token-name"
|
||||
msgstr "שם"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:33, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:70, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:267, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:222, src/app/main/ui/workspace/tokens/management/forms/validators.cljs:104
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:33, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:71, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:267, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:222, src/app/main/ui/workspace/tokens/management/forms/validators.cljs:104
|
||||
msgid "workspace.tokens.token-name-duplication-validation-error"
|
||||
msgstr "כבר קיים אסימון בנתיב: %s"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:31, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:68, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:264, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:219, src/app/main/ui/workspace/tokens/management/forms/validators.cljs:102
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:31, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:69, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:264, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:219, src/app/main/ui/workspace/tokens/management/forms/validators.cljs:102
|
||||
msgid "workspace.tokens.token-name-length-validation-error"
|
||||
msgstr "אורך השם חייב להיות תו אחד לפחות"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:32, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:69, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:266, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:221, src/app/main/ui/workspace/tokens/management/forms/validators.cljs:103
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:32, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:70, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:266, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:221, src/app/main/ui/workspace/tokens/management/forms/validators.cljs:103
|
||||
msgid "workspace.tokens.token-name-validation-error"
|
||||
msgstr ""
|
||||
" הוא לא שם תקף לאסימון.\n"
|
||||
@@ -8010,15 +8010,15 @@ msgstr ""
|
||||
msgid "workspace.tokens.token-not-resolved"
|
||||
msgstr "לא ניתן לפתור אסימון הפניה עם השם: %s"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:265
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:268
|
||||
msgid "workspace.tokens.token-value"
|
||||
msgstr "ערך"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:264, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:129
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:267, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:129
|
||||
msgid "workspace.tokens.token-value-enter"
|
||||
msgstr "נא למלא ערך או כינוי עם {alias}"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management.cljs:68
|
||||
#: src/app/main/ui/workspace/tokens/management.cljs:64
|
||||
msgid "workspace.tokens.tokens-section-title"
|
||||
msgstr "אסימונים - %s"
|
||||
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"PO-Revision-Date: 2026-01-08 17:06+0000\n"
|
||||
"PO-Revision-Date: 2026-01-10 01:01+0000\n"
|
||||
"Last-Translator: VKing9 <vaibhavrathod2282@gmail.com>\n"
|
||||
"Language-Team: Hindi <https://hosted.weblate.org/projects/penpot/frontend/"
|
||||
"hi/>\n"
|
||||
"Language-Team: Hindi "
|
||||
"<https://hosted.weblate.org/projects/penpot/frontend/hi/>\n"
|
||||
"Language: hi\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=utf-8\n"
|
||||
@@ -333,6 +333,14 @@ msgstr "दौरा शुरू करें"
|
||||
msgid "dasboard.walkthrough-hero.title"
|
||||
msgstr "इंटरफ़ेस का परिचय"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:209
|
||||
msgid "dashboard-restore-file-confirmation.description"
|
||||
msgstr "आप %s को पुनर्स्थापित करने जा रहे हैं।"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:208
|
||||
msgid "dashboard-restore-file-confirmation.title"
|
||||
msgstr "फ़ाइल पुनर्स्थापित करें"
|
||||
|
||||
#: src/app/main/ui/settings/access_tokens.cljs:103
|
||||
msgid "dashboard.access-tokens.copied-success"
|
||||
msgstr "टोकन कॉपी किया गया"
|
||||
@@ -416,6 +424,10 @@ msgstr "साझी लाइब्रेरी के रूप में ज
|
||||
msgid "dashboard.change-email"
|
||||
msgstr "ईमेल बदलें"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:313
|
||||
msgid "dashboard.clear-trash-button"
|
||||
msgstr "कचरा साफ़ करें"
|
||||
|
||||
#: src/app/main/data/dashboard.cljs:329, src/app/main/data/dashboard.cljs:564, src/app/main/data/workspace/pages.cljs:192
|
||||
msgid "dashboard.copy-suffix"
|
||||
msgstr "(कॉपी)"
|
||||
@@ -432,10 +444,49 @@ msgstr "इस संस्करण को पिन करें"
|
||||
msgid "dashboard.default-team-name"
|
||||
msgstr "आपका पेनपॉट"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:262
|
||||
msgid "dashboard.delete-all-forever-confirmation.description"
|
||||
msgstr ""
|
||||
"क्या आप वाकई अपने सभी डिलीट किए गए प्रोजेक्ट और फाइलों को हमेशा के लिए "
|
||||
"डिलीट करना चाहते हैं? यह एक अपरिवर्तनीय प्रक्रिया है।"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:222
|
||||
msgid "dashboard.delete-file-forever-confirmation.description"
|
||||
msgstr ""
|
||||
"क्या आप वाकई %s को हमेशा के लिए हटाना चाहते हैं? यह एक अपरिवर्तनीय कार्रवाई "
|
||||
"है।"
|
||||
|
||||
#: src/app/main/data/dashboard.cljs:764
|
||||
msgid "dashboard.delete-files-success-notification"
|
||||
msgstr "% फ़ाइलों को सफलतापूर्वक हटा दिया गया है।।"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:51, src/app/main/ui/dashboard/deleted.cljs:53, src/app/main/ui/dashboard/deleted.cljs:261, src/app/main/ui/dashboard/deleted.cljs:263, src/app/main/ui/dashboard/file_menu.cljs:221, src/app/main/ui/dashboard/file_menu.cljs:223
|
||||
msgid "dashboard.delete-forever-confirmation.title"
|
||||
msgstr "हमेशा के लिए हटाएं"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:85
|
||||
msgid "dashboard.delete-project-button"
|
||||
msgstr "प्रोजेक्ट हटाएँ"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:52
|
||||
msgid "dashboard.delete-project-forever-confirmation.description"
|
||||
msgstr ""
|
||||
"क्या आप वाकई %s प्रोजेक्ट को हमेशा के लिए हटाना चाहते हैं? आप इसे और इसमें "
|
||||
"मौजूद सभी फाइलों को हमेशा के लिए हटाने जा रहे हैं। यह एक अपरिवर्तनीय "
|
||||
"प्रक्रिया है।"
|
||||
|
||||
#: src/app/main/data/dashboard.cljs:763, src/app/main/data/dashboard.cljs:797
|
||||
msgid "dashboard.delete-success-notification"
|
||||
msgstr "%s सफलतापूर्वक हटा दिया गया है।"
|
||||
|
||||
#: src/app/main/ui/dashboard/sidebar.cljs:477
|
||||
msgid "dashboard.delete-team"
|
||||
msgstr "टीम हटाएं"
|
||||
|
||||
#: src/app/main/ui/dashboard/grid.cljs:248
|
||||
msgid "dashboard.deleted.will-be-deleted-at"
|
||||
msgstr "% हटा दिया जाएगा"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:330, src/app/main/ui/workspace/main_menu.cljs:690
|
||||
msgid "dashboard.download-binary-file"
|
||||
msgstr "पेनपोट फ़ाइल (.penpot) डाउनलोड करें"
|
||||
@@ -461,11 +512,11 @@ msgstr "जैसे ही एक परियोजना सदस्य ए
|
||||
msgid "dashboard.empty-placeholder-drafts-title"
|
||||
msgstr "अभी तक कोई ड्राफ्ट नहीं है।"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:166, src/app/main/ui/dashboard/files.cljs:204, src/app/main/ui/dashboard/projects.cljs:291
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:176, src/app/main/ui/dashboard/files.cljs:204, src/app/main/ui/dashboard/projects.cljs:291
|
||||
msgid "dashboard.empty-placeholder-files-subtitle"
|
||||
msgstr "जैसे ही एक परियोजना सदस्य एक फ़ाइल बनाता है, वह यहाँ प्रदर्शित होगी।"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:163, src/app/main/ui/dashboard/files.cljs:199, src/app/main/ui/dashboard/projects.cljs:286
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:173, src/app/main/ui/dashboard/files.cljs:199, src/app/main/ui/dashboard/projects.cljs:286
|
||||
msgid "dashboard.empty-placeholder-files-title"
|
||||
msgstr "अभी तक कोई फ़ाइल नहीं।"
|
||||
|
||||
@@ -521,6 +572,18 @@ msgstr "एक .penpot फ़ाइल आयात करें"
|
||||
msgid "dashboard.empty-project.start"
|
||||
msgstr "शानदार चीज़ें बनाना शुरू करें"
|
||||
|
||||
#, unused
|
||||
msgid "dashboard.errors.error-on-delete-file"
|
||||
msgstr "फाइल %s को डिलीट करते समय एक त्रुटि हुई।"
|
||||
|
||||
#: src/app/main/data/dashboard.cljs:767
|
||||
msgid "dashboard.errors.error-on-delete-files"
|
||||
msgstr "फ़ाइलों को हटाने के दौरान त्रुटि हुई।"
|
||||
|
||||
#: src/app/main/data/dashboard.cljs:800
|
||||
msgid "dashboard.errors.error-on-delete-project"
|
||||
msgstr "प्रोजेक्ट %s को डिलीट करते समय एक त्रुटि हुई।"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:282
|
||||
msgid "dashboard.export-binary-multi"
|
||||
msgstr "%s Penpot फ़ाइलें (.penpot) डाउनलोड करें"
|
||||
@@ -569,11 +632,16 @@ msgid "dashboard.export-standard-multi"
|
||||
msgstr "%s मानक फ़ाइलें डाउनलोड करें (.svg + .json)"
|
||||
|
||||
#: src/app/main/ui/exports/files.cljs:155
|
||||
#, fuzzy, unused
|
||||
#, unused
|
||||
msgid "dashboard.export.explain"
|
||||
msgstr ""
|
||||
"एक या एक से अधिक फ़ाइलें जिन्हें आप निर्यात करना चाहते हैं, वे साझा की गई लाइब्रेरीज़ का "
|
||||
"उपयोग कर रही हैं। आप उनके एसेट्स के साथ क्या करना चाहते हैं?"
|
||||
"एक या एक से अधिक फ़ाइलें जिन्हें आप निर्यात करना चाहते हैं, वे साझा की गई "
|
||||
"लाइब्रेरीज़ का उपयोग कर रही हैं। आप उनके एसेट्स के साथ क्या करना चाहते हैं?"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:268
|
||||
msgid "dashboard.file-menu.delete-files-permanently-option"
|
||||
msgid_plural "dashboard.file-menu.delete-files-permanently-option"
|
||||
msgstr[0] "फ़ाइल हटाएँ"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:322
|
||||
msgid "dashboard.fonts.deleted-placeholder"
|
||||
@@ -784,7 +852,7 @@ msgstr "में स्थानांतरित करें"
|
||||
msgid "dashboard.move-to-multi"
|
||||
msgstr "%s फ़ाइलों को स्थानांतरित करें"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:248
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:250
|
||||
msgid "dashboard.move-to-other-team"
|
||||
msgstr "दूसरी टीम में स्थानांतरित करें"
|
||||
|
||||
@@ -844,7 +912,7 @@ msgstr "%s सदस्य"
|
||||
msgid "dashboard.open-in-new-tab"
|
||||
msgstr "फ़ाइल को नए टैब में खोलें"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:147, src/app/main/ui/dashboard/deleted.cljs:148, src/app/main/ui/dashboard/files.cljs:120, src/app/main/ui/dashboard/grid.cljs:442, src/app/main/ui/dashboard/projects.cljs:266, src/app/main/ui/dashboard/projects.cljs:267
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:157, src/app/main/ui/dashboard/deleted.cljs:158, src/app/main/ui/dashboard/files.cljs:120, src/app/main/ui/dashboard/grid.cljs:442, src/app/main/ui/dashboard/projects.cljs:266, src/app/main/ui/dashboard/projects.cljs:267
|
||||
msgid "dashboard.options"
|
||||
msgstr "विकल्प"
|
||||
|
||||
@@ -892,7 +960,7 @@ msgstr "प्लगइन मैनिफेस्ट को पार्स
|
||||
msgid "dashboard.plugins.try-plugin"
|
||||
msgstr "प्लगइन प्रयास करें: "
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:41, src/app/main/ui/dashboard/projects.cljs:57
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:62, src/app/main/ui/dashboard/projects.cljs:57
|
||||
msgid "dashboard.projects-title"
|
||||
msgstr "प्रोजेक्ट्स"
|
||||
|
||||
@@ -1009,7 +1077,7 @@ msgstr "सभी फ़ाइलें दिखाएँ"
|
||||
msgid "dashboard.show-version-history"
|
||||
msgstr "संस्करण इतिहास"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:97
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:98
|
||||
msgid "dashboard.success-delete-file"
|
||||
msgid_plural "dashboard.success-delete-file"
|
||||
msgstr[0] "आपकी फ़ाइल सफलतापूर्वक हटा दी गई है"
|
||||
@@ -1019,7 +1087,7 @@ msgstr[1] "आपकी फ़ाइलें सफलतापूर्वक
|
||||
msgid "dashboard.success-delete-project"
|
||||
msgstr "आपका प्रोजेक्ट सफलतापूर्वक हटा दिया गया है"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:92
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:93
|
||||
msgid "dashboard.success-duplicate-file"
|
||||
msgid_plural "dashboard.success-delete-file"
|
||||
msgstr[0] "आपकी फ़ाइल को सफलतापूर्वक डुप्लिकेट किया गया है"
|
||||
@@ -1029,11 +1097,11 @@ msgstr[1] "आपकी फ़ाइलों को सफलतापूर्
|
||||
msgid "dashboard.success-duplicate-project"
|
||||
msgstr "आपका प्रोजेक्ट सफलतापूर्वक डुप्लिकेट किया गया है"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:131, src/app/main/ui/dashboard/grid.cljs:634, src/app/main/ui/dashboard/sidebar.cljs:165
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:132, src/app/main/ui/dashboard/grid.cljs:634, src/app/main/ui/dashboard/sidebar.cljs:165
|
||||
msgid "dashboard.success-move-file"
|
||||
msgstr "आपकी फ़ाइल सफलतापूर्वक स्थानांतरित कर दी गई है"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:130
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:131
|
||||
msgid "dashboard.success-move-files"
|
||||
msgstr "आपकी फ़ाइलें सफलतापूर्वक स्थानांतरित कर दी गई हैं"
|
||||
|
||||
@@ -1140,7 +1208,7 @@ msgstr "ईमेल"
|
||||
msgid "dashboard.your-name"
|
||||
msgstr "आपका नाम"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:39, src/app/main/ui/dashboard/fonts.cljs:42, src/app/main/ui/dashboard/libraries.cljs:56, src/app/main/ui/dashboard/projects.cljs:355, src/app/main/ui/dashboard/search.cljs:48, src/app/main/ui/dashboard/sidebar.cljs:302, src/app/main/ui/dashboard/team.cljs:537, src/app/main/ui/dashboard/team.cljs:983, src/app/main/ui/dashboard/team.cljs:1251, src/app/main/ui/dashboard/team.cljs:1298
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:40, src/app/main/ui/dashboard/fonts.cljs:42, src/app/main/ui/dashboard/libraries.cljs:56, src/app/main/ui/dashboard/projects.cljs:355, src/app/main/ui/dashboard/search.cljs:48, src/app/main/ui/dashboard/sidebar.cljs:302, src/app/main/ui/dashboard/team.cljs:537, src/app/main/ui/dashboard/team.cljs:983, src/app/main/ui/dashboard/team.cljs:1251, src/app/main/ui/dashboard/team.cljs:1298
|
||||
msgid "dashboard.your-penpot"
|
||||
msgstr "आपका पेनपॉट"
|
||||
|
||||
@@ -1246,7 +1314,7 @@ msgstr "हालाँकि पेनपॉट अब इस प्रका
|
||||
msgid "errors.deprecated.contact.text"
|
||||
msgstr "हमसे संपर्क करें"
|
||||
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:305
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:307
|
||||
msgid "errors.drop-token-set-parent-to-child"
|
||||
msgstr "किसी पैरेंट को उसकी स्वयं की चाइल्ड पथ पर ड्रॉप नहीं किया जा सकता।"
|
||||
|
||||
@@ -1291,7 +1359,7 @@ msgstr ""
|
||||
msgid "errors.feature-not-supported"
|
||||
msgstr "फीचर '%s' समर्थित नहीं है।"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:41, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:76, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:299, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:239
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:41, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:77, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:299, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:239
|
||||
msgid "errors.field-max-length"
|
||||
msgstr "इसमें अधिकतम %s वर्ण होने चाहिए।"
|
||||
|
||||
@@ -1460,7 +1528,7 @@ msgstr "जिस सदस्य को आप असाइन करने क
|
||||
msgid "errors.team-leave.owner-cant-leave"
|
||||
msgstr "मालिक टीम नहीं छोड़ सकता, आपको मालिक की भूमिका पुनः असाइन करनी होगी।"
|
||||
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:162, src/app/main/data/workspace/tokens/library_edit.cljs:192
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:164, src/app/main/data/workspace/tokens/library_edit.cljs:194
|
||||
msgid "errors.token-set-already-exists"
|
||||
msgstr "एक समान नाम वाला सेट पहले से मौजूद है"
|
||||
|
||||
@@ -1469,11 +1537,11 @@ msgstr "एक समान नाम वाला सेट पहले से
|
||||
msgid "errors.token-set-doesnt-exists"
|
||||
msgstr "एक अज्ञात सेट को डुप्लिकेट नहीं किया जा सकता"
|
||||
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:304
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:306
|
||||
msgid "errors.token-set-exists-on-drop"
|
||||
msgstr "ड्रॉप पूरा नहीं किया जा सकता, उसी नाम का सेट पथ पर पहले से मौजूद है।"
|
||||
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:77, src/app/main/data/workspace/tokens/library_edit.cljs:96
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:79, src/app/main/data/workspace/tokens/library_edit.cljs:98
|
||||
msgid "errors.token-theme-already-exists"
|
||||
msgstr "समान नाम वाला थीम विकल्प मौजूद है"
|
||||
|
||||
@@ -1956,7 +2024,7 @@ msgstr "क्लिपबोर्ड पर कॉपी करें"
|
||||
msgid "inspect.tabs.styles.geometry-panel"
|
||||
msgstr "आकार & स्थिति"
|
||||
|
||||
#: src/app/main/ui/inspect/styles/style_box.cljs:60, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:179
|
||||
#: src/app/main/ui/inspect/styles/style_box.cljs:60, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:178
|
||||
msgid "inspect.tabs.styles.toggle-style"
|
||||
msgstr "टॉगल पैनल %s"
|
||||
|
||||
@@ -2043,7 +2111,7 @@ msgstr "खराब गेटवे"
|
||||
msgid "labels.blur"
|
||||
msgstr "धुंधला"
|
||||
|
||||
#: src/app/main/data/common.cljs:119, src/app/main/ui/dashboard/change_owner.cljs:64, src/app/main/ui/dashboard/import.cljs:515, src/app/main/ui/dashboard/team.cljs:780, src/app/main/ui/dashboard/team.cljs:1122, src/app/main/ui/delete_shared.cljs:38, src/app/main/ui/exports/assets.cljs:163, src/app/main/ui/exports/files.cljs:168, src/app/main/ui/settings/access_tokens.cljs:175, src/app/main/ui/viewer/share_link.cljs:208, src/app/main/ui/workspace/sidebar/assets/groups.cljs:159, src/app/main/ui/workspace/tokens/export/modal.cljs:44, src/app/main/ui/workspace/tokens/import/modal.cljs:269, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:295, src/app/main/ui/workspace/tokens/remapping_modal.cljs:99, src/app/main/ui/workspace/tokens/settings/menu.cljs:105, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:265
|
||||
#: src/app/main/data/common.cljs:119, src/app/main/ui/dashboard/change_owner.cljs:64, src/app/main/ui/dashboard/import.cljs:515, src/app/main/ui/dashboard/team.cljs:780, src/app/main/ui/dashboard/team.cljs:1122, src/app/main/ui/delete_shared.cljs:38, src/app/main/ui/exports/assets.cljs:163, src/app/main/ui/exports/files.cljs:168, src/app/main/ui/settings/access_tokens.cljs:175, src/app/main/ui/viewer/share_link.cljs:208, src/app/main/ui/workspace/sidebar/assets/groups.cljs:159, src/app/main/ui/workspace/tokens/export/modal.cljs:44, src/app/main/ui/workspace/tokens/import/modal.cljs:269, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:298, src/app/main/ui/workspace/tokens/remapping_modal.cljs:99, src/app/main/ui/workspace/tokens/settings/menu.cljs:105, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:265
|
||||
msgid "labels.cancel"
|
||||
msgstr "रद्द करें"
|
||||
|
||||
@@ -2103,7 +2171,7 @@ msgstr "समर्थन से संपर्क करें"
|
||||
msgid "labels.contact-us"
|
||||
msgstr "हमसे संपर्क करें"
|
||||
|
||||
#: src/app/main/ui/auth/login.cljs:204, src/app/main/ui/dashboard/deleted.cljs:57, src/app/main/ui/dashboard/deleted.cljs:264, src/app/main/ui/dashboard/file_menu.cljs:208, src/app/main/ui/dashboard/import.cljs:521, src/app/main/ui/dashboard/team.cljs:787, src/app/main/ui/exports/files.cljs:173, src/app/main/ui/onboarding/newsletter.cljs:106, src/app/main/ui/settings/subscription.cljs:279, src/app/main/ui/settings/subscription.cljs:313
|
||||
#: src/app/main/ui/auth/login.cljs:204, src/app/main/ui/dashboard/deleted.cljs:43, src/app/main/ui/dashboard/deleted.cljs:275, src/app/main/ui/dashboard/file_menu.cljs:210, src/app/main/ui/dashboard/import.cljs:521, src/app/main/ui/dashboard/team.cljs:787, src/app/main/ui/exports/files.cljs:173, src/app/main/ui/onboarding/newsletter.cljs:106, src/app/main/ui/settings/subscription.cljs:279, src/app/main/ui/settings/subscription.cljs:313
|
||||
msgid "labels.continue"
|
||||
msgstr "जारी रखें"
|
||||
|
||||
@@ -2151,7 +2219,7 @@ msgstr "कस्टम फ़ॉन्ट्स"
|
||||
msgid "labels.dashboard"
|
||||
msgstr "डैशबोर्ड"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:338, src/app/main/ui/dashboard/fonts.cljs:267, src/app/main/ui/dashboard/fonts.cljs:343, src/app/main/ui/dashboard/fonts.cljs:357, src/app/main/ui/dashboard/project_menu.cljs:115, src/app/main/ui/dashboard/team.cljs:1158, src/app/main/ui/settings/access_tokens.cljs:196, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:223, src/app/main/ui/workspace/sidebar/versions.cljs:216, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:288, src/app/main/ui/workspace/tokens/sets/context_menu.cljs:66, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:399
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:338, src/app/main/ui/dashboard/fonts.cljs:267, src/app/main/ui/dashboard/fonts.cljs:343, src/app/main/ui/dashboard/fonts.cljs:357, src/app/main/ui/dashboard/project_menu.cljs:115, src/app/main/ui/dashboard/team.cljs:1158, src/app/main/ui/settings/access_tokens.cljs:196, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:223, src/app/main/ui/workspace/sidebar/versions.cljs:216, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:291, src/app/main/ui/workspace/tokens/sets/context_menu.cljs:66, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:399
|
||||
msgid "labels.delete"
|
||||
msgstr "मिटाना"
|
||||
|
||||
@@ -2188,7 +2256,7 @@ msgstr "छोड़ना"
|
||||
msgid "labels.download"
|
||||
msgstr "%s डाउनलोड करें"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:29, src/app/main/ui/dashboard/files.cljs:80, src/app/main/ui/dashboard/files.cljs:179, src/app/main/ui/dashboard/projects.cljs:229, src/app/main/ui/dashboard/projects.cljs:233, src/app/main/ui/dashboard/sidebar.cljs:726
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:30, src/app/main/ui/dashboard/files.cljs:80, src/app/main/ui/dashboard/files.cljs:179, src/app/main/ui/dashboard/projects.cljs:229, src/app/main/ui/dashboard/projects.cljs:233, src/app/main/ui/dashboard/sidebar.cljs:726
|
||||
msgid "labels.drafts"
|
||||
msgstr "ड्राफ्ट्स"
|
||||
|
||||
@@ -2598,7 +2666,7 @@ msgstr "पुन: प्रयास करें"
|
||||
msgid "labels.role"
|
||||
msgstr "भूमिका"
|
||||
|
||||
#: src/app/main/ui/dashboard/fonts.cljs:395, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:204, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:299, src/app/main/ui/workspace/tokens/settings/menu.cljs:110
|
||||
#: src/app/main/ui/dashboard/fonts.cljs:395, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:204, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:302, src/app/main/ui/workspace/tokens/settings/menu.cljs:110
|
||||
msgid "labels.save"
|
||||
msgstr "सहेजें"
|
||||
|
||||
@@ -3068,27 +3136,27 @@ msgstr "क्या आप वाकई इस एनोटेशन को ह
|
||||
msgid "modals.delete-component-annotation.title"
|
||||
msgstr "एनोटेशन हटाएँ"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:124
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:125
|
||||
msgid "modals.delete-file-confirm.accept"
|
||||
msgstr "फ़ाइल हटाएँ"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:123
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:124
|
||||
msgid "modals.delete-file-confirm.message"
|
||||
msgstr "क्या आप वाकई इस फ़ाइल को हटाना चाहते हैं?"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:122
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:123
|
||||
msgid "modals.delete-file-confirm.title"
|
||||
msgstr "फ़ाइल हटाई जा रही है"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:118
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:119
|
||||
msgid "modals.delete-file-multi-confirm.accept"
|
||||
msgstr "फ़ाइलें हटाएँ"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:117
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:118
|
||||
msgid "modals.delete-file-multi-confirm.message"
|
||||
msgstr "क्या आप वाकई %s फ़ाइलें हटाना चाहते हैं?"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:116
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:117
|
||||
msgid "modals.delete-file-multi-confirm.title"
|
||||
msgstr "%s फ़ाइलें हटाई जा रही हैं"
|
||||
|
||||
@@ -3901,7 +3969,7 @@ msgstr "लॉगइन पर जाएं"
|
||||
msgid "settings.detach"
|
||||
msgstr "अलग करें"
|
||||
|
||||
#: src/app/main/ui/inspect/exports.cljs:148, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:105, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:107, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:342, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:496, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1062, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1302, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:138, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:149, src/app/main/ui/workspace/sidebar/options/menus/exports.cljs:223, src/app/main/ui/workspace/sidebar/options/menus/fill.cljs:221, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:79, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:430, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:460, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:55, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:56, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:111, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:500, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:511, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:555, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:566, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:595, src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:154, src/app/main/ui/workspace/sidebar/options/menus/stroke.cljs:199, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:336, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:389, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:408, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:427, src/app/main/ui/workspace/sidebar/options/rows/stroke_row.cljs:204
|
||||
#: src/app/main/ui/inspect/exports.cljs:148, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:105, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:107, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:342, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:496, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1062, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1302, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:138, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:149, src/app/main/ui/workspace/sidebar/options/menus/exports.cljs:223, src/app/main/ui/workspace/sidebar/options/menus/fill.cljs:221, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:79, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:430, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:460, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:55, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:56, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:111, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:500, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:511, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:555, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:566, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:595, src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:155, src/app/main/ui/workspace/sidebar/options/menus/stroke.cljs:199, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:336, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:389, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:408, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:427, src/app/main/ui/workspace/sidebar/options/rows/stroke_row.cljs:204
|
||||
msgid "settings.multiple"
|
||||
msgstr "मिश्रित"
|
||||
|
||||
@@ -5150,7 +5218,7 @@ msgstr "फिल्टर"
|
||||
msgid "workspace.assets.graphics"
|
||||
msgstr "ग्राफ़िक्स"
|
||||
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:190, src/app/main/ui/workspace/sidebar/assets/components.cljs:575, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:806
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:189, src/app/main/ui/workspace/sidebar/assets/components.cljs:575, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:806
|
||||
msgid "workspace.assets.grid-view"
|
||||
msgstr "जाल दृश्य"
|
||||
|
||||
@@ -5162,7 +5230,7 @@ msgstr "समूह"
|
||||
msgid "workspace.assets.group-name"
|
||||
msgstr "समूह नाम"
|
||||
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:191, src/app/main/ui/workspace/sidebar/assets/components.cljs:571, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:802
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:190, src/app/main/ui/workspace/sidebar/assets/components.cljs:571, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:802
|
||||
msgid "workspace.assets.list-view"
|
||||
msgstr "सूची दृश्य"
|
||||
|
||||
@@ -6721,7 +6789,7 @@ msgstr "चयन भरें"
|
||||
msgid "workspace.options.selection-stroke"
|
||||
msgstr "चयन स्ट्रोक"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:143
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:144
|
||||
msgid "workspace.options.shadow-options.add-shadow"
|
||||
msgstr "छाया जोड़ें"
|
||||
|
||||
@@ -6749,7 +6817,7 @@ msgstr "X"
|
||||
msgid "workspace.options.shadow-options.offsety"
|
||||
msgstr "Y"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:156, src/app/main/ui/workspace/sidebar/options/rows/shadow_row.cljs:161
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:157, src/app/main/ui/workspace/sidebar/options/rows/shadow_row.cljs:161
|
||||
msgid "workspace.options.shadow-options.remove-shadow"
|
||||
msgstr "छाया हटाओ"
|
||||
|
||||
@@ -6757,15 +6825,15 @@ msgstr "छाया हटाओ"
|
||||
msgid "workspace.options.shadow-options.spread"
|
||||
msgstr "फैलाना"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:138
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:139
|
||||
msgid "workspace.options.shadow-options.title"
|
||||
msgstr "छाया"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:137
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:138
|
||||
msgid "workspace.options.shadow-options.title.group"
|
||||
msgstr "समूह छाया"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:136
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:137
|
||||
msgid "workspace.options.shadow-options.title.multiple"
|
||||
msgstr "चयन छाया"
|
||||
|
||||
@@ -7551,7 +7619,7 @@ msgstr "नई थीम जोड़ें"
|
||||
msgid "workspace.tokens.add-set-to-group"
|
||||
msgstr "इस समूह में सेट जोड़ें"
|
||||
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:197, src/app/main/ui/workspace/tokens/management/group.cljs:140
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:196, src/app/main/ui/workspace/tokens/management/group.cljs:147
|
||||
msgid "workspace.tokens.add-token"
|
||||
msgstr "टोकन जोड़ें: %s"
|
||||
|
||||
@@ -7603,7 +7671,7 @@ msgstr "अभी अपनी पहली थीम बनाएं।"
|
||||
msgid "workspace.tokens.create-one"
|
||||
msgstr "एक बनाएं।"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:234
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:237
|
||||
msgid "workspace.tokens.create-token"
|
||||
msgstr "नया %s टोकन बनाएं"
|
||||
|
||||
@@ -7619,7 +7687,7 @@ msgstr "थीम हटाएँ"
|
||||
msgid "workspace.tokens.duplicate"
|
||||
msgstr "डुप्लीकेट टोकन"
|
||||
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:209, src/app/main/data/workspace/tokens/library_edit.cljs:452
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:211, src/app/main/data/workspace/tokens/library_edit.cljs:454
|
||||
msgid "workspace.tokens.duplicate-suffix"
|
||||
msgstr "कापी"
|
||||
|
||||
@@ -7635,15 +7703,15 @@ msgstr "थीम संपादित करें"
|
||||
msgid "workspace.tokens.edit-themes"
|
||||
msgstr "थीम्स संपादित करें"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:233
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:236
|
||||
msgid "workspace.tokens.edit-token"
|
||||
msgstr "%s token संपादित करें"
|
||||
|
||||
#: src/app/main/data/workspace/tokens/errors.cljs:41, src/app/main/ui/workspace/tokens/management/forms/color.cljs:22, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:42
|
||||
#: src/app/main/data/workspace/tokens/errors.cljs:41, src/app/main/ui/workspace/tokens/management/forms/color.cljs:22, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:43
|
||||
msgid "workspace.tokens.empty-input"
|
||||
msgstr "टोकन मान रिक्त नहीं हो सकता"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:240
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:243
|
||||
msgid "workspace.tokens.enter-token-name"
|
||||
msgstr "%s टोकन नाम दर्ज करें"
|
||||
|
||||
@@ -7748,11 +7816,11 @@ msgstr "JSON फ़ाइल आयात करने से आपके स
|
||||
msgid "workspace.tokens.import-warning"
|
||||
msgstr "टोकन आयात करने से आपके सभी वर्तमान टोकन, सेट और थीम ओवरराइट हो जाएँगे।"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management.cljs:78
|
||||
#: src/app/main/ui/workspace/tokens/management.cljs:74
|
||||
msgid "workspace.tokens.inactive-set"
|
||||
msgstr "निष्क्रिय"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management.cljs:69
|
||||
#: src/app/main/ui/workspace/tokens/management.cljs:65
|
||||
msgid "workspace.tokens.inactive-set-description"
|
||||
msgstr ""
|
||||
"यह सेट सक्रिय नहीं है। व्यूपोर्ट में परिवर्तन देखने के लिए थीम बदलें या इस "
|
||||
@@ -7941,7 +8009,7 @@ msgstr "एक token छाया आलिया दर्ज करें"
|
||||
msgid "workspace.tokens.reference-error"
|
||||
msgstr "संदर्भ त्रुटियाँ: "
|
||||
|
||||
#: src/app/main/data/workspace/tokens/warnings.cljs:15, src/app/main/data/workspace/tokens/warnings.cljs:19, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:56, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:84, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:103, src/app/main/ui/workspace/tokens/management/forms/controls/color_input.cljs:271, src/app/main/ui/workspace/tokens/management/forms/controls/color_input.cljs:445, src/app/main/ui/workspace/tokens/management/forms/controls/fonts_combobox.cljs:169, src/app/main/ui/workspace/tokens/management/forms/controls/fonts_combobox.cljs:304, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:224, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:320, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:421, src/app/main/ui/workspace/tokens/management/token_pill.cljs:121
|
||||
#: src/app/main/data/workspace/tokens/warnings.cljs:15, src/app/main/data/workspace/tokens/warnings.cljs:19, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:56, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:84, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:103, src/app/main/ui/workspace/tokens/management/forms/controls/color_input.cljs:271, src/app/main/ui/workspace/tokens/management/forms/controls/color_input.cljs:445, src/app/main/ui/workspace/tokens/management/forms/controls/fonts_combobox.cljs:169, src/app/main/ui/workspace/tokens/management/forms/controls/fonts_combobox.cljs:304, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:225, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:332, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:432, src/app/main/ui/workspace/tokens/management/token_pill.cljs:121
|
||||
#, fuzzy
|
||||
msgid "workspace.tokens.resolved-value"
|
||||
msgstr "हल किया गया मान: %s"
|
||||
@@ -7954,7 +8022,7 @@ msgstr "थीम सहेजें"
|
||||
msgid "workspace.tokens.select-set"
|
||||
msgstr "सेट का चयन करें।"
|
||||
|
||||
#: src/app/main/data/workspace/tokens/errors.cljs:45, src/app/main/ui/workspace/tokens/management/forms/color.cljs:44, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:79, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:302, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:242
|
||||
#: src/app/main/data/workspace/tokens/errors.cljs:45, src/app/main/ui/workspace/tokens/management/forms/color.cljs:44, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:80, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:302, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:242
|
||||
msgid "workspace.tokens.self-reference"
|
||||
msgstr "टोकन में स्व-संदर्भ होता है"
|
||||
|
||||
@@ -8067,7 +8135,7 @@ msgstr ""
|
||||
msgid "workspace.tokens.themes-list"
|
||||
msgstr "थीम्स सूची"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:273, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:274
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:276, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:277
|
||||
#, fuzzy
|
||||
msgid "workspace.tokens.token-description"
|
||||
msgstr "वर्णन"
|
||||
@@ -8084,19 +8152,19 @@ msgstr "फॉन्ट परिवार"
|
||||
msgid "workspace.tokens.token-font-family-value-enter"
|
||||
msgstr "फ़ॉन्ट परिवार या अल्पविराम (,) द्वारा अलग किए गए फ़ॉन्ट की सूची"
|
||||
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:83, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:112, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:239
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:83, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:112, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:242
|
||||
msgid "workspace.tokens.token-name"
|
||||
msgstr "नाम"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:33, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:70, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:267, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:222, src/app/main/ui/workspace/tokens/management/forms/validators.cljs:104
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:33, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:71, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:267, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:222, src/app/main/ui/workspace/tokens/management/forms/validators.cljs:104
|
||||
msgid "workspace.tokens.token-name-duplication-validation-error"
|
||||
msgstr "पथ पर एक token पहले से मौजूद है: %s"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:31, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:68, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:264, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:219, src/app/main/ui/workspace/tokens/management/forms/validators.cljs:102
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:31, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:69, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:264, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:219, src/app/main/ui/workspace/tokens/management/forms/validators.cljs:102
|
||||
msgid "workspace.tokens.token-name-length-validation-error"
|
||||
msgstr "नाम कम से कम 1 अक्षर का होना चाहिए"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:32, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:69, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:266, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:221, src/app/main/ui/workspace/tokens/management/forms/validators.cljs:103
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:32, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:70, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:266, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:221, src/app/main/ui/workspace/tokens/management/forms/validators.cljs:103
|
||||
msgid "workspace.tokens.token-name-validation-error"
|
||||
msgstr ""
|
||||
" एक मान्य टोकन नाम नहीं है।\n"
|
||||
@@ -8108,15 +8176,15 @@ msgstr ""
|
||||
msgid "workspace.tokens.token-not-resolved"
|
||||
msgstr "नाम: '%s' वाला संदर्भ टोकन हल नहीं किया जा सका"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:265
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:268
|
||||
msgid "workspace.tokens.token-value"
|
||||
msgstr "मान"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:264, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:129
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:267, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:129
|
||||
msgid "workspace.tokens.token-value-enter"
|
||||
msgstr "{alias} के साथ एक मान या उपनाम दर्ज करें"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management.cljs:68
|
||||
#: src/app/main/ui/workspace/tokens/management.cljs:64
|
||||
msgid "workspace.tokens.tokens-section-title"
|
||||
msgstr "टोकन - %s"
|
||||
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"PO-Revision-Date: 2026-01-08 17:06+0000\n"
|
||||
"Last-Translator: Zvonimir Juranko <zjuranko@gmail.com>\n"
|
||||
"Language-Team: Croatian <https://hosted.weblate.org/projects/penpot/frontend/"
|
||||
"hr/>\n"
|
||||
"Language-Team: Croatian "
|
||||
"<https://hosted.weblate.org/projects/penpot/frontend/hr/>\n"
|
||||
"Language: hr\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=utf-8\n"
|
||||
@@ -451,11 +451,11 @@ msgstr "Nakon što član projekta izradi nacrt, on će se prikazati ovdje."
|
||||
msgid "dashboard.empty-placeholder-drafts-title"
|
||||
msgstr "Još nema nacrta."
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:166, src/app/main/ui/dashboard/files.cljs:204, src/app/main/ui/dashboard/projects.cljs:291
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:176, src/app/main/ui/dashboard/files.cljs:204, src/app/main/ui/dashboard/projects.cljs:291
|
||||
msgid "dashboard.empty-placeholder-files-subtitle"
|
||||
msgstr "Nakon što član projekta stvori datoteku, ona će se prikazati ovdje."
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:163, src/app/main/ui/dashboard/files.cljs:199, src/app/main/ui/dashboard/projects.cljs:286
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:173, src/app/main/ui/dashboard/files.cljs:199, src/app/main/ui/dashboard/projects.cljs:286
|
||||
msgid "dashboard.empty-placeholder-files-title"
|
||||
msgstr "Još nema datoteka."
|
||||
|
||||
@@ -531,7 +531,7 @@ msgid "dashboard.export-standard-multi"
|
||||
msgstr "Preuzmi %s standardne datoteke (.svg + .json)"
|
||||
|
||||
#: src/app/main/ui/exports/files.cljs:155
|
||||
#, fuzzy, unused
|
||||
#, unused
|
||||
msgid "dashboard.export.explain"
|
||||
msgstr ""
|
||||
"Jedna ili više datoteka koju želiš izvesti koristi zajedničke biblioteke. "
|
||||
@@ -706,7 +706,7 @@ msgstr "Premijesti u"
|
||||
msgid "dashboard.move-to-multi"
|
||||
msgstr "Premijesti %s datoteke u"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:248
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:250
|
||||
msgid "dashboard.move-to-other-team"
|
||||
msgstr "Premijesti u drugi tim"
|
||||
|
||||
@@ -766,7 +766,7 @@ msgstr "%s članova"
|
||||
msgid "dashboard.open-in-new-tab"
|
||||
msgstr "Otvori datoteku u novoj kartici"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:147, src/app/main/ui/dashboard/deleted.cljs:148, src/app/main/ui/dashboard/files.cljs:120, src/app/main/ui/dashboard/grid.cljs:442, src/app/main/ui/dashboard/projects.cljs:266, src/app/main/ui/dashboard/projects.cljs:267
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:157, src/app/main/ui/dashboard/deleted.cljs:158, src/app/main/ui/dashboard/files.cljs:120, src/app/main/ui/dashboard/grid.cljs:442, src/app/main/ui/dashboard/projects.cljs:266, src/app/main/ui/dashboard/projects.cljs:267
|
||||
msgid "dashboard.options"
|
||||
msgstr "Mogućnosti"
|
||||
|
||||
@@ -806,7 +806,7 @@ msgstr "Nije moguće analizirati manifest dodatka"
|
||||
msgid "dashboard.plugins.try-plugin"
|
||||
msgstr "Isprobajte dodatak: "
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:41, src/app/main/ui/dashboard/projects.cljs:57
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:62, src/app/main/ui/dashboard/projects.cljs:57
|
||||
msgid "dashboard.projects-title"
|
||||
msgstr "Projekti"
|
||||
|
||||
@@ -911,7 +911,7 @@ msgstr "Prikaži sve datoteke"
|
||||
msgid "dashboard.show-version-history"
|
||||
msgstr "Povijest verzija"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:97
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:98
|
||||
msgid "dashboard.success-delete-file"
|
||||
msgid_plural "dashboard.success-delete-file"
|
||||
msgstr[0] "Tvoja datoteka je uspješno izbrisana"
|
||||
@@ -922,7 +922,7 @@ msgstr[2] "Tvoje datoteke su uspješno izbrisane"
|
||||
msgid "dashboard.success-delete-project"
|
||||
msgstr "Tvoj projekt je uspješno izbrisan"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:92
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:93
|
||||
msgid "dashboard.success-duplicate-file"
|
||||
msgid_plural "dashboard.success-delete-file"
|
||||
msgstr[0] "Tvoja datoteka je uspješno duplicirana"
|
||||
@@ -933,11 +933,11 @@ msgstr[2] "Tvoje datoteke su uspješno duplicirane"
|
||||
msgid "dashboard.success-duplicate-project"
|
||||
msgstr "Tvoj projekt je uspješno dupliciran"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:131, src/app/main/ui/dashboard/grid.cljs:634, src/app/main/ui/dashboard/sidebar.cljs:165
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:132, src/app/main/ui/dashboard/grid.cljs:634, src/app/main/ui/dashboard/sidebar.cljs:165
|
||||
msgid "dashboard.success-move-file"
|
||||
msgstr "Tvoja datoteka je uspješno premještena"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:130
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:131
|
||||
msgid "dashboard.success-move-files"
|
||||
msgstr "Tvoje datoteke su uspješno premještene"
|
||||
|
||||
@@ -1040,7 +1040,7 @@ msgstr "E-mail"
|
||||
msgid "dashboard.your-name"
|
||||
msgstr "Ime"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:39, src/app/main/ui/dashboard/fonts.cljs:42, src/app/main/ui/dashboard/libraries.cljs:56, src/app/main/ui/dashboard/projects.cljs:355, src/app/main/ui/dashboard/search.cljs:48, src/app/main/ui/dashboard/sidebar.cljs:302, src/app/main/ui/dashboard/team.cljs:537, src/app/main/ui/dashboard/team.cljs:983, src/app/main/ui/dashboard/team.cljs:1251, src/app/main/ui/dashboard/team.cljs:1298
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:40, src/app/main/ui/dashboard/fonts.cljs:42, src/app/main/ui/dashboard/libraries.cljs:56, src/app/main/ui/dashboard/projects.cljs:355, src/app/main/ui/dashboard/search.cljs:48, src/app/main/ui/dashboard/sidebar.cljs:302, src/app/main/ui/dashboard/team.cljs:537, src/app/main/ui/dashboard/team.cljs:983, src/app/main/ui/dashboard/team.cljs:1251, src/app/main/ui/dashboard/team.cljs:1298
|
||||
msgid "dashboard.your-penpot"
|
||||
msgstr "Tvoj Penpot"
|
||||
|
||||
@@ -1679,7 +1679,7 @@ msgstr ""
|
||||
msgid "labels.bad-gateway.main-message"
|
||||
msgstr "Loš Gateway"
|
||||
|
||||
#: src/app/main/data/common.cljs:119, src/app/main/ui/dashboard/change_owner.cljs:64, src/app/main/ui/dashboard/import.cljs:515, src/app/main/ui/dashboard/team.cljs:780, src/app/main/ui/dashboard/team.cljs:1122, src/app/main/ui/delete_shared.cljs:38, src/app/main/ui/exports/assets.cljs:163, src/app/main/ui/exports/files.cljs:168, src/app/main/ui/settings/access_tokens.cljs:175, src/app/main/ui/viewer/share_link.cljs:208, src/app/main/ui/workspace/sidebar/assets/groups.cljs:159, src/app/main/ui/workspace/tokens/export/modal.cljs:44, src/app/main/ui/workspace/tokens/import/modal.cljs:269, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:295, src/app/main/ui/workspace/tokens/remapping_modal.cljs:99, src/app/main/ui/workspace/tokens/settings/menu.cljs:105, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:265
|
||||
#: src/app/main/data/common.cljs:119, src/app/main/ui/dashboard/change_owner.cljs:64, src/app/main/ui/dashboard/import.cljs:515, src/app/main/ui/dashboard/team.cljs:780, src/app/main/ui/dashboard/team.cljs:1122, src/app/main/ui/delete_shared.cljs:38, src/app/main/ui/exports/assets.cljs:163, src/app/main/ui/exports/files.cljs:168, src/app/main/ui/settings/access_tokens.cljs:175, src/app/main/ui/viewer/share_link.cljs:208, src/app/main/ui/workspace/sidebar/assets/groups.cljs:159, src/app/main/ui/workspace/tokens/export/modal.cljs:44, src/app/main/ui/workspace/tokens/import/modal.cljs:269, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:298, src/app/main/ui/workspace/tokens/remapping_modal.cljs:99, src/app/main/ui/workspace/tokens/settings/menu.cljs:105, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:265
|
||||
msgid "labels.cancel"
|
||||
msgstr "Odbaci"
|
||||
|
||||
@@ -1719,7 +1719,7 @@ msgstr "Zajenica"
|
||||
msgid "labels.confirm-password"
|
||||
msgstr "Potvrdi lozinku"
|
||||
|
||||
#: src/app/main/ui/auth/login.cljs:204, src/app/main/ui/dashboard/deleted.cljs:57, src/app/main/ui/dashboard/deleted.cljs:264, src/app/main/ui/dashboard/file_menu.cljs:208, src/app/main/ui/dashboard/import.cljs:521, src/app/main/ui/dashboard/team.cljs:787, src/app/main/ui/exports/files.cljs:173, src/app/main/ui/onboarding/newsletter.cljs:106, src/app/main/ui/settings/subscription.cljs:279, src/app/main/ui/settings/subscription.cljs:313
|
||||
#: src/app/main/ui/auth/login.cljs:204, src/app/main/ui/dashboard/deleted.cljs:43, src/app/main/ui/dashboard/deleted.cljs:275, src/app/main/ui/dashboard/file_menu.cljs:210, src/app/main/ui/dashboard/import.cljs:521, src/app/main/ui/dashboard/team.cljs:787, src/app/main/ui/exports/files.cljs:173, src/app/main/ui/onboarding/newsletter.cljs:106, src/app/main/ui/settings/subscription.cljs:279, src/app/main/ui/settings/subscription.cljs:313
|
||||
msgid "labels.continue"
|
||||
msgstr "Nastavi"
|
||||
|
||||
@@ -1755,7 +1755,7 @@ msgstr "Custom fontovi"
|
||||
msgid "labels.dashboard"
|
||||
msgstr "Nadzorna ploča"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:338, src/app/main/ui/dashboard/fonts.cljs:267, src/app/main/ui/dashboard/fonts.cljs:343, src/app/main/ui/dashboard/fonts.cljs:357, src/app/main/ui/dashboard/project_menu.cljs:115, src/app/main/ui/dashboard/team.cljs:1158, src/app/main/ui/settings/access_tokens.cljs:196, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:223, src/app/main/ui/workspace/sidebar/versions.cljs:216, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:288, src/app/main/ui/workspace/tokens/sets/context_menu.cljs:66, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:399
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:338, src/app/main/ui/dashboard/fonts.cljs:267, src/app/main/ui/dashboard/fonts.cljs:343, src/app/main/ui/dashboard/fonts.cljs:357, src/app/main/ui/dashboard/project_menu.cljs:115, src/app/main/ui/dashboard/team.cljs:1158, src/app/main/ui/settings/access_tokens.cljs:196, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:223, src/app/main/ui/workspace/sidebar/versions.cljs:216, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:291, src/app/main/ui/workspace/tokens/sets/context_menu.cljs:66, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:399
|
||||
msgid "labels.delete"
|
||||
msgstr "Izbriši"
|
||||
|
||||
@@ -1788,7 +1788,7 @@ msgstr "Direktor"
|
||||
msgid "labels.discard"
|
||||
msgstr "Odbaciti"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:29, src/app/main/ui/dashboard/files.cljs:80, src/app/main/ui/dashboard/files.cljs:179, src/app/main/ui/dashboard/projects.cljs:229, src/app/main/ui/dashboard/projects.cljs:233, src/app/main/ui/dashboard/sidebar.cljs:726
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:30, src/app/main/ui/dashboard/files.cljs:80, src/app/main/ui/dashboard/files.cljs:179, src/app/main/ui/dashboard/projects.cljs:229, src/app/main/ui/dashboard/projects.cljs:233, src/app/main/ui/dashboard/sidebar.cljs:726
|
||||
msgid "labels.drafts"
|
||||
msgstr "Nacrti"
|
||||
|
||||
@@ -2119,7 +2119,7 @@ msgstr "Pokušaj ponovo"
|
||||
msgid "labels.role"
|
||||
msgstr "Uloga"
|
||||
|
||||
#: src/app/main/ui/dashboard/fonts.cljs:395, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:204, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:299, src/app/main/ui/workspace/tokens/settings/menu.cljs:110
|
||||
#: src/app/main/ui/dashboard/fonts.cljs:395, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:204, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:302, src/app/main/ui/workspace/tokens/settings/menu.cljs:110
|
||||
msgid "labels.save"
|
||||
msgstr "Spremi"
|
||||
|
||||
@@ -2449,27 +2449,27 @@ msgstr "Jeste li sigurni da želite izbrisati ovu bilješku?"
|
||||
msgid "modals.delete-component-annotation.title"
|
||||
msgstr "Izbriši bilješku"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:124
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:125
|
||||
msgid "modals.delete-file-confirm.accept"
|
||||
msgstr "Izbriši datoteku"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:123
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:124
|
||||
msgid "modals.delete-file-confirm.message"
|
||||
msgstr "Jesi li siguran/na da želiš izbrisati ovu datoteku?"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:122
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:123
|
||||
msgid "modals.delete-file-confirm.title"
|
||||
msgstr "Brisanje datoteke"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:118
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:119
|
||||
msgid "modals.delete-file-multi-confirm.accept"
|
||||
msgstr "Izbriši datoteke"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:117
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:118
|
||||
msgid "modals.delete-file-multi-confirm.message"
|
||||
msgstr "Jesi li siguran/na da želiš izbrisati %s datoteke?"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:116
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:117
|
||||
msgid "modals.delete-file-multi-confirm.title"
|
||||
msgstr "Brisanje %s datoteka"
|
||||
|
||||
@@ -3288,7 +3288,7 @@ msgstr "Idi na prijavu"
|
||||
msgid "settings.detach"
|
||||
msgstr "Odvojiti"
|
||||
|
||||
#: src/app/main/ui/inspect/exports.cljs:148, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:105, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:107, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:342, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:496, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1062, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1302, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:138, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:149, src/app/main/ui/workspace/sidebar/options/menus/exports.cljs:223, src/app/main/ui/workspace/sidebar/options/menus/fill.cljs:221, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:79, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:430, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:460, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:55, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:56, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:111, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:500, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:511, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:555, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:566, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:595, src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:154, src/app/main/ui/workspace/sidebar/options/menus/stroke.cljs:199, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:336, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:389, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:408, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:427, src/app/main/ui/workspace/sidebar/options/rows/stroke_row.cljs:204
|
||||
#: src/app/main/ui/inspect/exports.cljs:148, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:105, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:107, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:342, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:496, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1062, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1302, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:138, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:149, src/app/main/ui/workspace/sidebar/options/menus/exports.cljs:223, src/app/main/ui/workspace/sidebar/options/menus/fill.cljs:221, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:79, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:430, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:460, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:55, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:56, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:111, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:500, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:511, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:555, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:566, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:595, src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:155, src/app/main/ui/workspace/sidebar/options/menus/stroke.cljs:199, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:336, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:389, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:408, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:427, src/app/main/ui/workspace/sidebar/options/rows/stroke_row.cljs:204
|
||||
msgid "settings.multiple"
|
||||
msgstr "Izmješano"
|
||||
|
||||
@@ -4164,7 +4164,7 @@ msgstr "Filter"
|
||||
msgid "workspace.assets.graphics"
|
||||
msgstr "Grafika"
|
||||
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:190, src/app/main/ui/workspace/sidebar/assets/components.cljs:575, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:806
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:189, src/app/main/ui/workspace/sidebar/assets/components.cljs:575, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:806
|
||||
msgid "workspace.assets.grid-view"
|
||||
msgstr "Grid prikaz"
|
||||
|
||||
@@ -4176,7 +4176,7 @@ msgstr "Grupa"
|
||||
msgid "workspace.assets.group-name"
|
||||
msgstr "Ime grupe"
|
||||
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:191, src/app/main/ui/workspace/sidebar/assets/components.cljs:571, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:802
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:190, src/app/main/ui/workspace/sidebar/assets/components.cljs:571, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:802
|
||||
msgid "workspace.assets.list-view"
|
||||
msgstr "Popisni prikaz"
|
||||
|
||||
@@ -5542,7 +5542,7 @@ msgstr "Ispuna odabira"
|
||||
msgid "workspace.options.selection-stroke"
|
||||
msgstr "Potez selektirano"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:143
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:144
|
||||
msgid "workspace.options.shadow-options.add-shadow"
|
||||
msgstr "Dodajte sjenu"
|
||||
|
||||
@@ -5570,7 +5570,7 @@ msgstr "X"
|
||||
msgid "workspace.options.shadow-options.offsety"
|
||||
msgstr "Y"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:156, src/app/main/ui/workspace/sidebar/options/rows/shadow_row.cljs:161
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:157, src/app/main/ui/workspace/sidebar/options/rows/shadow_row.cljs:161
|
||||
msgid "workspace.options.shadow-options.remove-shadow"
|
||||
msgstr "Ukloni sjenu"
|
||||
|
||||
@@ -5578,15 +5578,15 @@ msgstr "Ukloni sjenu"
|
||||
msgid "workspace.options.shadow-options.spread"
|
||||
msgstr "Proširi"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:138
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:139
|
||||
msgid "workspace.options.shadow-options.title"
|
||||
msgstr "Sjena"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:137
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:138
|
||||
msgid "workspace.options.shadow-options.title.group"
|
||||
msgstr "Grupiraj sjenu"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:136
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:137
|
||||
msgid "workspace.options.shadow-options.title.multiple"
|
||||
msgstr "Odabir sjena"
|
||||
|
||||
@@ -6333,7 +6333,7 @@ msgstr "Stvorite svoju prvu temu sada."
|
||||
msgid "workspace.tokens.create-one"
|
||||
msgstr "Stvorite jedan."
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:234
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:237
|
||||
msgid "workspace.tokens.create-token"
|
||||
msgstr "Stvorite novi %s token"
|
||||
|
||||
@@ -6361,7 +6361,7 @@ msgstr "Uredite temu"
|
||||
msgid "workspace.tokens.edit-themes"
|
||||
msgstr "Uredite teme"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:240
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:243
|
||||
msgid "workspace.tokens.enter-token-name"
|
||||
msgstr "Unesite %s naziv tokena"
|
||||
|
||||
@@ -6415,7 +6415,7 @@ msgstr "Izvorna vrijednost: %s"
|
||||
msgid "workspace.tokens.ref-not-valid"
|
||||
msgstr "Referenca nije važeća ili nije ni u jednom aktivnom skupu"
|
||||
|
||||
#: src/app/main/data/workspace/tokens/warnings.cljs:15, src/app/main/data/workspace/tokens/warnings.cljs:19, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:56, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:84, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:103, src/app/main/ui/workspace/tokens/management/forms/controls/color_input.cljs:271, src/app/main/ui/workspace/tokens/management/forms/controls/color_input.cljs:445, src/app/main/ui/workspace/tokens/management/forms/controls/fonts_combobox.cljs:169, src/app/main/ui/workspace/tokens/management/forms/controls/fonts_combobox.cljs:304, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:224, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:320, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:421, src/app/main/ui/workspace/tokens/management/token_pill.cljs:121
|
||||
#: src/app/main/data/workspace/tokens/warnings.cljs:15, src/app/main/data/workspace/tokens/warnings.cljs:19, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:56, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:84, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:103, src/app/main/ui/workspace/tokens/management/forms/controls/color_input.cljs:271, src/app/main/ui/workspace/tokens/management/forms/controls/color_input.cljs:445, src/app/main/ui/workspace/tokens/management/forms/controls/fonts_combobox.cljs:169, src/app/main/ui/workspace/tokens/management/forms/controls/fonts_combobox.cljs:304, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:225, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:332, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:432, src/app/main/ui/workspace/tokens/management/token_pill.cljs:121
|
||||
#, fuzzy
|
||||
msgid "workspace.tokens.resolved-value"
|
||||
msgstr "Riješena vrijednost: %s"
|
||||
@@ -6443,27 +6443,27 @@ msgstr "Skup tokena nije aktivan"
|
||||
msgid "workspace.tokens.theme-name"
|
||||
msgstr "Tema %s"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:273, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:274
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:276, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:277
|
||||
#, fuzzy
|
||||
msgid "workspace.tokens.token-description"
|
||||
msgstr "Opis"
|
||||
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:83, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:112, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:239
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:83, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:112, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:242
|
||||
msgid "workspace.tokens.token-name"
|
||||
msgstr "Ime"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:32, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:69, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:266, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:221, src/app/main/ui/workspace/tokens/management/forms/validators.cljs:103
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:32, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:70, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:266, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:221, src/app/main/ui/workspace/tokens/management/forms/validators.cljs:103
|
||||
msgid "workspace.tokens.token-name-validation-error"
|
||||
msgstr ""
|
||||
" nije važeće ime tokena.\n"
|
||||
"Nazivi tokena trebaju sadržavati samo slova i znamenke odvojene znakom . i "
|
||||
"ne smije počinjati znakom $."
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:265
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:268
|
||||
msgid "workspace.tokens.token-value"
|
||||
msgstr "Vrijednost"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management.cljs:68
|
||||
#: src/app/main/ui/workspace/tokens/management.cljs:64
|
||||
msgid "workspace.tokens.tokens-section-title"
|
||||
msgstr "TOKENI - %s"
|
||||
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"PO-Revision-Date: 2026-01-08 17:06+0000\n"
|
||||
"Last-Translator: Linerly <linerly@proton.me>\n"
|
||||
"Language-Team: Indonesian <https://hosted.weblate.org/projects/penpot/"
|
||||
"frontend/id/>\n"
|
||||
"Language-Team: Indonesian "
|
||||
"<https://hosted.weblate.org/projects/penpot/frontend/id/>\n"
|
||||
"Language: id\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=utf-8\n"
|
||||
@@ -456,11 +456,11 @@ msgstr "Ketika anggota proyek membuat draf, itu akan ditampilkan di sini."
|
||||
msgid "dashboard.empty-placeholder-drafts-title"
|
||||
msgstr "Belum ada draf."
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:166, src/app/main/ui/dashboard/files.cljs:204, src/app/main/ui/dashboard/projects.cljs:291
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:176, src/app/main/ui/dashboard/files.cljs:204, src/app/main/ui/dashboard/projects.cljs:291
|
||||
msgid "dashboard.empty-placeholder-files-subtitle"
|
||||
msgstr "Ketika anggota proyek membuat berkas, itu akan ditampilkan di sini."
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:163, src/app/main/ui/dashboard/files.cljs:199, src/app/main/ui/dashboard/projects.cljs:286
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:173, src/app/main/ui/dashboard/files.cljs:199, src/app/main/ui/dashboard/projects.cljs:286
|
||||
msgid "dashboard.empty-placeholder-files-title"
|
||||
msgstr "Belum ada berkas."
|
||||
|
||||
@@ -564,7 +564,7 @@ msgid "dashboard.export-standard-multi"
|
||||
msgstr "Unduh %s berkas standar (.svg + .json)"
|
||||
|
||||
#: src/app/main/ui/exports/files.cljs:155
|
||||
#, fuzzy, unused
|
||||
#, unused
|
||||
msgid "dashboard.export.explain"
|
||||
msgstr ""
|
||||
"Satu atau lebih berkas yang ingin Anda ekspor menggunakan pustaka bersama. "
|
||||
@@ -745,7 +745,7 @@ msgstr "Pindahkan ke"
|
||||
msgid "dashboard.move-to-multi"
|
||||
msgstr "Pindahkan %s berkas ke"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:248
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:250
|
||||
msgid "dashboard.move-to-other-team"
|
||||
msgstr "Pindahkan ke tim lain"
|
||||
|
||||
@@ -805,7 +805,7 @@ msgstr "%s anggota"
|
||||
msgid "dashboard.open-in-new-tab"
|
||||
msgstr "Buka berkas di tab baru"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:147, src/app/main/ui/dashboard/deleted.cljs:148, src/app/main/ui/dashboard/files.cljs:120, src/app/main/ui/dashboard/grid.cljs:442, src/app/main/ui/dashboard/projects.cljs:266, src/app/main/ui/dashboard/projects.cljs:267
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:157, src/app/main/ui/dashboard/deleted.cljs:158, src/app/main/ui/dashboard/files.cljs:120, src/app/main/ui/dashboard/grid.cljs:442, src/app/main/ui/dashboard/projects.cljs:266, src/app/main/ui/dashboard/projects.cljs:267
|
||||
msgid "dashboard.options"
|
||||
msgstr "Opsi"
|
||||
|
||||
@@ -845,7 +845,7 @@ msgstr "Tidak dapat mengurai manifes plugin"
|
||||
msgid "dashboard.plugins.try-plugin"
|
||||
msgstr "Coba plugin: "
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:41, src/app/main/ui/dashboard/projects.cljs:57
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:62, src/app/main/ui/dashboard/projects.cljs:57
|
||||
msgid "dashboard.projects-title"
|
||||
msgstr "Proyek"
|
||||
|
||||
@@ -950,7 +950,7 @@ msgstr "Tampilkan semua berkas"
|
||||
msgid "dashboard.show-version-history"
|
||||
msgstr "Riwayat versi"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:97
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:98
|
||||
msgid "dashboard.success-delete-file"
|
||||
msgid_plural "dashboard.success-delete-file"
|
||||
msgstr[0] "Berkas Anda berhasil dihapus"
|
||||
@@ -959,7 +959,7 @@ msgstr[0] "Berkas Anda berhasil dihapus"
|
||||
msgid "dashboard.success-delete-project"
|
||||
msgstr "Proyek Anda berhasil dihapus"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:92
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:93
|
||||
msgid "dashboard.success-duplicate-file"
|
||||
msgid_plural "dashboard.success-delete-file"
|
||||
msgstr[0] "Berkas Anda berhasil digandakan"
|
||||
@@ -968,11 +968,11 @@ msgstr[0] "Berkas Anda berhasil digandakan"
|
||||
msgid "dashboard.success-duplicate-project"
|
||||
msgstr "Proyek Anda berhasil digandakan"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:131, src/app/main/ui/dashboard/grid.cljs:634, src/app/main/ui/dashboard/sidebar.cljs:165
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:132, src/app/main/ui/dashboard/grid.cljs:634, src/app/main/ui/dashboard/sidebar.cljs:165
|
||||
msgid "dashboard.success-move-file"
|
||||
msgstr "Berkas Anda berhasil dipindah"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:130
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:131
|
||||
msgid "dashboard.success-move-files"
|
||||
msgstr "Berkas Anda berhasil dipindah"
|
||||
|
||||
@@ -1080,7 +1080,7 @@ msgstr "Surel"
|
||||
msgid "dashboard.your-name"
|
||||
msgstr "Nama Anda"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:39, src/app/main/ui/dashboard/fonts.cljs:42, src/app/main/ui/dashboard/libraries.cljs:56, src/app/main/ui/dashboard/projects.cljs:355, src/app/main/ui/dashboard/search.cljs:48, src/app/main/ui/dashboard/sidebar.cljs:302, src/app/main/ui/dashboard/team.cljs:537, src/app/main/ui/dashboard/team.cljs:983, src/app/main/ui/dashboard/team.cljs:1251, src/app/main/ui/dashboard/team.cljs:1298
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:40, src/app/main/ui/dashboard/fonts.cljs:42, src/app/main/ui/dashboard/libraries.cljs:56, src/app/main/ui/dashboard/projects.cljs:355, src/app/main/ui/dashboard/search.cljs:48, src/app/main/ui/dashboard/sidebar.cljs:302, src/app/main/ui/dashboard/team.cljs:537, src/app/main/ui/dashboard/team.cljs:983, src/app/main/ui/dashboard/team.cljs:1251, src/app/main/ui/dashboard/team.cljs:1298
|
||||
msgid "dashboard.your-penpot"
|
||||
msgstr "Penpot Anda"
|
||||
|
||||
@@ -1144,7 +1144,7 @@ msgstr "Melebihi batas karakter"
|
||||
msgid "errors.clipboard-not-implemented"
|
||||
msgstr "Peramban Anda tidak dapat melakukan operasi ini"
|
||||
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:305
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:307
|
||||
msgid "errors.drop-token-set-parent-to-child"
|
||||
msgstr "Tidak dapat melepaskan set induk ke jalur anak sendiri."
|
||||
|
||||
@@ -1322,17 +1322,17 @@ msgstr ""
|
||||
"Pemilik tidak dapat meninggalkan tim, Anda harus memberikan ulang peran "
|
||||
"pemilik."
|
||||
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:162, src/app/main/data/workspace/tokens/library_edit.cljs:192
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:164, src/app/main/data/workspace/tokens/library_edit.cljs:194
|
||||
msgid "errors.token-set-already-exists"
|
||||
msgstr "Set dengan nama yang sama sudah ada"
|
||||
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:304
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:306
|
||||
msgid "errors.token-set-exists-on-drop"
|
||||
msgstr ""
|
||||
"Tidak dapat menyelesaikan drop, set dengan nama yang sama sudah ada di "
|
||||
"jalur ini."
|
||||
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:77, src/app/main/data/workspace/tokens/library_edit.cljs:96
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:79, src/app/main/data/workspace/tokens/library_edit.cljs:98
|
||||
msgid "errors.token-theme-already-exists"
|
||||
msgstr "Opsi Tema dengan nama yang sama sudah ada"
|
||||
|
||||
@@ -1775,7 +1775,7 @@ msgstr ""
|
||||
msgid "labels.bad-gateway.main-message"
|
||||
msgstr "Gerbang Jalur Buruk"
|
||||
|
||||
#: src/app/main/data/common.cljs:119, src/app/main/ui/dashboard/change_owner.cljs:64, src/app/main/ui/dashboard/import.cljs:515, src/app/main/ui/dashboard/team.cljs:780, src/app/main/ui/dashboard/team.cljs:1122, src/app/main/ui/delete_shared.cljs:38, src/app/main/ui/exports/assets.cljs:163, src/app/main/ui/exports/files.cljs:168, src/app/main/ui/settings/access_tokens.cljs:175, src/app/main/ui/viewer/share_link.cljs:208, src/app/main/ui/workspace/sidebar/assets/groups.cljs:159, src/app/main/ui/workspace/tokens/export/modal.cljs:44, src/app/main/ui/workspace/tokens/import/modal.cljs:269, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:295, src/app/main/ui/workspace/tokens/remapping_modal.cljs:99, src/app/main/ui/workspace/tokens/settings/menu.cljs:105, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:265
|
||||
#: src/app/main/data/common.cljs:119, src/app/main/ui/dashboard/change_owner.cljs:64, src/app/main/ui/dashboard/import.cljs:515, src/app/main/ui/dashboard/team.cljs:780, src/app/main/ui/dashboard/team.cljs:1122, src/app/main/ui/delete_shared.cljs:38, src/app/main/ui/exports/assets.cljs:163, src/app/main/ui/exports/files.cljs:168, src/app/main/ui/settings/access_tokens.cljs:175, src/app/main/ui/viewer/share_link.cljs:208, src/app/main/ui/workspace/sidebar/assets/groups.cljs:159, src/app/main/ui/workspace/tokens/export/modal.cljs:44, src/app/main/ui/workspace/tokens/import/modal.cljs:269, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:298, src/app/main/ui/workspace/tokens/remapping_modal.cljs:99, src/app/main/ui/workspace/tokens/settings/menu.cljs:105, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:265
|
||||
msgid "labels.cancel"
|
||||
msgstr "Batal"
|
||||
|
||||
@@ -1815,7 +1815,7 @@ msgstr "Komunitas"
|
||||
msgid "labels.confirm-password"
|
||||
msgstr "Konfirmasi kata sandi"
|
||||
|
||||
#: src/app/main/ui/auth/login.cljs:204, src/app/main/ui/dashboard/deleted.cljs:57, src/app/main/ui/dashboard/deleted.cljs:264, src/app/main/ui/dashboard/file_menu.cljs:208, src/app/main/ui/dashboard/import.cljs:521, src/app/main/ui/dashboard/team.cljs:787, src/app/main/ui/exports/files.cljs:173, src/app/main/ui/onboarding/newsletter.cljs:106, src/app/main/ui/settings/subscription.cljs:279, src/app/main/ui/settings/subscription.cljs:313
|
||||
#: src/app/main/ui/auth/login.cljs:204, src/app/main/ui/dashboard/deleted.cljs:43, src/app/main/ui/dashboard/deleted.cljs:275, src/app/main/ui/dashboard/file_menu.cljs:210, src/app/main/ui/dashboard/import.cljs:521, src/app/main/ui/dashboard/team.cljs:787, src/app/main/ui/exports/files.cljs:173, src/app/main/ui/onboarding/newsletter.cljs:106, src/app/main/ui/settings/subscription.cljs:279, src/app/main/ui/settings/subscription.cljs:313
|
||||
msgid "labels.continue"
|
||||
msgstr "Lanjutkan"
|
||||
|
||||
@@ -1859,7 +1859,7 @@ msgstr "Fon khusus"
|
||||
msgid "labels.dashboard"
|
||||
msgstr "Dasbor"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:338, src/app/main/ui/dashboard/fonts.cljs:267, src/app/main/ui/dashboard/fonts.cljs:343, src/app/main/ui/dashboard/fonts.cljs:357, src/app/main/ui/dashboard/project_menu.cljs:115, src/app/main/ui/dashboard/team.cljs:1158, src/app/main/ui/settings/access_tokens.cljs:196, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:223, src/app/main/ui/workspace/sidebar/versions.cljs:216, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:288, src/app/main/ui/workspace/tokens/sets/context_menu.cljs:66, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:399
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:338, src/app/main/ui/dashboard/fonts.cljs:267, src/app/main/ui/dashboard/fonts.cljs:343, src/app/main/ui/dashboard/fonts.cljs:357, src/app/main/ui/dashboard/project_menu.cljs:115, src/app/main/ui/dashboard/team.cljs:1158, src/app/main/ui/settings/access_tokens.cljs:196, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:223, src/app/main/ui/workspace/sidebar/versions.cljs:216, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:291, src/app/main/ui/workspace/tokens/sets/context_menu.cljs:66, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:399
|
||||
msgid "labels.delete"
|
||||
msgstr "Hapus"
|
||||
|
||||
@@ -1892,7 +1892,7 @@ msgstr "Direktur"
|
||||
msgid "labels.discard"
|
||||
msgstr "Abaikan"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:29, src/app/main/ui/dashboard/files.cljs:80, src/app/main/ui/dashboard/files.cljs:179, src/app/main/ui/dashboard/projects.cljs:229, src/app/main/ui/dashboard/projects.cljs:233, src/app/main/ui/dashboard/sidebar.cljs:726
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:30, src/app/main/ui/dashboard/files.cljs:80, src/app/main/ui/dashboard/files.cljs:179, src/app/main/ui/dashboard/projects.cljs:229, src/app/main/ui/dashboard/projects.cljs:233, src/app/main/ui/dashboard/sidebar.cljs:726
|
||||
msgid "labels.drafts"
|
||||
msgstr "Draf"
|
||||
|
||||
@@ -2231,7 +2231,7 @@ msgstr "Coba lagi"
|
||||
msgid "labels.role"
|
||||
msgstr "Peran"
|
||||
|
||||
#: src/app/main/ui/dashboard/fonts.cljs:395, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:204, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:299, src/app/main/ui/workspace/tokens/settings/menu.cljs:110
|
||||
#: src/app/main/ui/dashboard/fonts.cljs:395, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:204, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:302, src/app/main/ui/workspace/tokens/settings/menu.cljs:110
|
||||
msgid "labels.save"
|
||||
msgstr "Simpan"
|
||||
|
||||
@@ -2653,27 +2653,27 @@ msgstr "Apakah Anda yakin ingin menghapus anotasi ini?"
|
||||
msgid "modals.delete-component-annotation.title"
|
||||
msgstr "Haus anotasi"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:124
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:125
|
||||
msgid "modals.delete-file-confirm.accept"
|
||||
msgstr "Hapus berkas"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:123
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:124
|
||||
msgid "modals.delete-file-confirm.message"
|
||||
msgstr "Apakah Anda yakin ingin menghapus berkas ini?"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:122
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:123
|
||||
msgid "modals.delete-file-confirm.title"
|
||||
msgstr "Menghapus berkas"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:118
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:119
|
||||
msgid "modals.delete-file-multi-confirm.accept"
|
||||
msgstr "Hapus berkas"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:117
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:118
|
||||
msgid "modals.delete-file-multi-confirm.message"
|
||||
msgstr "Apakah Anda yakin ingin menghapus %s berkas?"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:116
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:117
|
||||
msgid "modals.delete-file-multi-confirm.title"
|
||||
msgstr "Menghapus %s berkas"
|
||||
|
||||
@@ -3472,7 +3472,7 @@ msgstr "Pergi ke log masuk"
|
||||
msgid "settings.detach"
|
||||
msgstr "Copot"
|
||||
|
||||
#: src/app/main/ui/inspect/exports.cljs:148, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:105, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:107, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:342, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:496, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1062, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1302, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:138, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:149, src/app/main/ui/workspace/sidebar/options/menus/exports.cljs:223, src/app/main/ui/workspace/sidebar/options/menus/fill.cljs:221, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:79, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:430, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:460, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:55, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:56, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:111, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:500, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:511, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:555, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:566, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:595, src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:154, src/app/main/ui/workspace/sidebar/options/menus/stroke.cljs:199, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:336, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:389, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:408, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:427, src/app/main/ui/workspace/sidebar/options/rows/stroke_row.cljs:204
|
||||
#: src/app/main/ui/inspect/exports.cljs:148, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:105, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:107, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:342, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:496, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1062, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1302, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:138, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:149, src/app/main/ui/workspace/sidebar/options/menus/exports.cljs:223, src/app/main/ui/workspace/sidebar/options/menus/fill.cljs:221, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:79, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:430, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:460, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:55, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:56, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:111, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:500, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:511, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:555, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:566, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:595, src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:155, src/app/main/ui/workspace/sidebar/options/menus/stroke.cljs:199, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:336, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:389, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:408, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:427, src/app/main/ui/workspace/sidebar/options/rows/stroke_row.cljs:204
|
||||
msgid "settings.multiple"
|
||||
msgstr "Tercampur"
|
||||
|
||||
@@ -4363,7 +4363,7 @@ msgstr "Penyaring"
|
||||
msgid "workspace.assets.graphics"
|
||||
msgstr "Grafis"
|
||||
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:190, src/app/main/ui/workspace/sidebar/assets/components.cljs:575, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:806
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:189, src/app/main/ui/workspace/sidebar/assets/components.cljs:575, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:806
|
||||
msgid "workspace.assets.grid-view"
|
||||
msgstr "Tampilan kisi"
|
||||
|
||||
@@ -4375,7 +4375,7 @@ msgstr "Kelompok"
|
||||
msgid "workspace.assets.group-name"
|
||||
msgstr "Nama kelompok"
|
||||
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:191, src/app/main/ui/workspace/sidebar/assets/components.cljs:571, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:802
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:190, src/app/main/ui/workspace/sidebar/assets/components.cljs:571, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:802
|
||||
msgid "workspace.assets.list-view"
|
||||
msgstr "Tampilan daftar"
|
||||
|
||||
@@ -5763,7 +5763,7 @@ msgstr "Isian seleksi"
|
||||
msgid "workspace.options.selection-stroke"
|
||||
msgstr "Sapuan seleksi"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:143
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:144
|
||||
msgid "workspace.options.shadow-options.add-shadow"
|
||||
msgstr "Tambahkan bayangan"
|
||||
|
||||
@@ -5791,7 +5791,7 @@ msgstr "X"
|
||||
msgid "workspace.options.shadow-options.offsety"
|
||||
msgstr "Y"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:156, src/app/main/ui/workspace/sidebar/options/rows/shadow_row.cljs:161
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:157, src/app/main/ui/workspace/sidebar/options/rows/shadow_row.cljs:161
|
||||
msgid "workspace.options.shadow-options.remove-shadow"
|
||||
msgstr "Hapus bayangan"
|
||||
|
||||
@@ -5799,15 +5799,15 @@ msgstr "Hapus bayangan"
|
||||
msgid "workspace.options.shadow-options.spread"
|
||||
msgstr "Tersebar"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:138
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:139
|
||||
msgid "workspace.options.shadow-options.title"
|
||||
msgstr "Bayangan"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:137
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:138
|
||||
msgid "workspace.options.shadow-options.title.group"
|
||||
msgstr "Bayangan kelompok"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:136
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:137
|
||||
msgid "workspace.options.shadow-options.title.multiple"
|
||||
msgstr "Bayangan seleksi"
|
||||
|
||||
@@ -6583,7 +6583,7 @@ msgstr "Buat tema pertama Anda sekarang."
|
||||
msgid "workspace.tokens.create-one"
|
||||
msgstr "Buat baru."
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:234
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:237
|
||||
msgid "workspace.tokens.create-token"
|
||||
msgstr "Buat token %s baru"
|
||||
|
||||
@@ -6599,7 +6599,7 @@ msgstr "Hapus tema"
|
||||
msgid "workspace.tokens.duplicate"
|
||||
msgstr "Gandakan token"
|
||||
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:209, src/app/main/data/workspace/tokens/library_edit.cljs:452
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:211, src/app/main/data/workspace/tokens/library_edit.cljs:454
|
||||
msgid "workspace.tokens.duplicate-suffix"
|
||||
msgstr "salin"
|
||||
|
||||
@@ -6615,7 +6615,7 @@ msgstr "Sunting tema"
|
||||
msgid "workspace.tokens.edit-themes"
|
||||
msgstr "Sunting tema"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:240
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:243
|
||||
msgid "workspace.tokens.enter-token-name"
|
||||
msgstr "Masukkan nama token %s"
|
||||
|
||||
@@ -6760,7 +6760,7 @@ msgstr "Referensi tidak valid atau tidak dalam set aktif mana pun"
|
||||
msgid "workspace.tokens.reference-error"
|
||||
msgstr "Kesalahan Referensi: "
|
||||
|
||||
#: src/app/main/data/workspace/tokens/warnings.cljs:15, src/app/main/data/workspace/tokens/warnings.cljs:19, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:56, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:84, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:103, src/app/main/ui/workspace/tokens/management/forms/controls/color_input.cljs:271, src/app/main/ui/workspace/tokens/management/forms/controls/color_input.cljs:445, src/app/main/ui/workspace/tokens/management/forms/controls/fonts_combobox.cljs:169, src/app/main/ui/workspace/tokens/management/forms/controls/fonts_combobox.cljs:304, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:224, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:320, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:421, src/app/main/ui/workspace/tokens/management/token_pill.cljs:121
|
||||
#: src/app/main/data/workspace/tokens/warnings.cljs:15, src/app/main/data/workspace/tokens/warnings.cljs:19, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:56, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:84, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:103, src/app/main/ui/workspace/tokens/management/forms/controls/color_input.cljs:271, src/app/main/ui/workspace/tokens/management/forms/controls/color_input.cljs:445, src/app/main/ui/workspace/tokens/management/forms/controls/fonts_combobox.cljs:169, src/app/main/ui/workspace/tokens/management/forms/controls/fonts_combobox.cljs:304, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:225, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:332, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:432, src/app/main/ui/workspace/tokens/management/token_pill.cljs:121
|
||||
#, fuzzy
|
||||
msgid "workspace.tokens.resolved-value"
|
||||
msgstr "Nilai terselesaikan: %s"
|
||||
@@ -6773,7 +6773,7 @@ msgstr "Simpan tema"
|
||||
msgid "workspace.tokens.select-set"
|
||||
msgstr "Pilih set."
|
||||
|
||||
#: src/app/main/data/workspace/tokens/errors.cljs:45, src/app/main/ui/workspace/tokens/management/forms/color.cljs:44, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:79, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:302, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:242
|
||||
#: src/app/main/data/workspace/tokens/errors.cljs:45, src/app/main/ui/workspace/tokens/management/forms/color.cljs:44, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:80, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:302, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:242
|
||||
msgid "workspace.tokens.self-reference"
|
||||
msgstr "Token memiliki referensi diri"
|
||||
|
||||
@@ -6812,16 +6812,16 @@ msgstr ""
|
||||
msgid "workspace.tokens.themes-list"
|
||||
msgstr "Daftar tema"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:273, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:274
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:276, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:277
|
||||
#, fuzzy
|
||||
msgid "workspace.tokens.token-description"
|
||||
msgstr "Deskripsi"
|
||||
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:83, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:112, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:239
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:83, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:112, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:242
|
||||
msgid "workspace.tokens.token-name"
|
||||
msgstr "Nama"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:32, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:69, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:266, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:221, src/app/main/ui/workspace/tokens/management/forms/validators.cljs:103
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:32, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:70, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:266, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:221, src/app/main/ui/workspace/tokens/management/forms/validators.cljs:103
|
||||
msgid "workspace.tokens.token-name-validation-error"
|
||||
msgstr ""
|
||||
" bukanlah nama token yang valid.\n"
|
||||
@@ -6833,15 +6833,15 @@ msgstr ""
|
||||
msgid "workspace.tokens.token-not-resolved"
|
||||
msgstr "Tidak dapat mengurai token referensi dengan nama: %s"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:265
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:268
|
||||
msgid "workspace.tokens.token-value"
|
||||
msgstr "Nilai"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:264, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:129
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:267, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:129
|
||||
msgid "workspace.tokens.token-value-enter"
|
||||
msgstr "Masukkan nilai atau alias dengan {alias}"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management.cljs:68
|
||||
#: src/app/main/ui/workspace/tokens/management.cljs:64
|
||||
msgid "workspace.tokens.tokens-section-title"
|
||||
msgstr "TOKEN - %s"
|
||||
|
||||
|
||||
@@ -503,7 +503,7 @@ msgstr "Ga na"
|
||||
msgid "dashboard.move-to-multi"
|
||||
msgstr "Buga %s ederede gasị na"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:248
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:250
|
||||
msgid "dashboard.move-to-other-team"
|
||||
msgstr "Gaa n'otu ọzọ"
|
||||
|
||||
@@ -551,7 +551,7 @@ msgstr "%s Ndị otu"
|
||||
msgid "dashboard.open-in-new-tab"
|
||||
msgstr "Mepe ederede na tabụ ọhụrụ"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:147, src/app/main/ui/dashboard/deleted.cljs:148, src/app/main/ui/dashboard/files.cljs:120, src/app/main/ui/dashboard/grid.cljs:442, src/app/main/ui/dashboard/projects.cljs:266, src/app/main/ui/dashboard/projects.cljs:267
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:157, src/app/main/ui/dashboard/deleted.cljs:158, src/app/main/ui/dashboard/files.cljs:120, src/app/main/ui/dashboard/grid.cljs:442, src/app/main/ui/dashboard/projects.cljs:266, src/app/main/ui/dashboard/projects.cljs:267
|
||||
msgid "dashboard.options"
|
||||
msgstr "Nhọrọ gasị"
|
||||
|
||||
@@ -563,7 +563,7 @@ msgstr "Gbanwee akara mpịbanye"
|
||||
msgid "dashboard.pin-unpin"
|
||||
msgstr "Nọmba /Wepụ nọmba"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:41, src/app/main/ui/dashboard/projects.cljs:57
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:62, src/app/main/ui/dashboard/projects.cljs:57
|
||||
msgid "dashboard.projects-title"
|
||||
msgstr "Arụmarụ"
|
||||
|
||||
@@ -596,7 +596,7 @@ msgstr "Họrọ asụsụ UI"
|
||||
msgid "dashboard.success-duplicate-project"
|
||||
msgstr "E megharịala arụmarụ gị nke ọma\""
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:131, src/app/main/ui/dashboard/grid.cljs:634, src/app/main/ui/dashboard/sidebar.cljs:165
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:132, src/app/main/ui/dashboard/grid.cljs:634, src/app/main/ui/dashboard/sidebar.cljs:165
|
||||
msgid "dashboard.success-move-file"
|
||||
msgstr "E wepula ederede gị nke ọma\""
|
||||
|
||||
@@ -683,7 +683,7 @@ msgstr "Ebe Ntinye ihe gị"
|
||||
msgid "dashboard.your-email"
|
||||
msgstr "Ozi-n"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:39, src/app/main/ui/dashboard/fonts.cljs:42, src/app/main/ui/dashboard/libraries.cljs:56, src/app/main/ui/dashboard/projects.cljs:355, src/app/main/ui/dashboard/search.cljs:48, src/app/main/ui/dashboard/sidebar.cljs:302, src/app/main/ui/dashboard/team.cljs:537, src/app/main/ui/dashboard/team.cljs:983, src/app/main/ui/dashboard/team.cljs:1251, src/app/main/ui/dashboard/team.cljs:1298
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:40, src/app/main/ui/dashboard/fonts.cljs:42, src/app/main/ui/dashboard/libraries.cljs:56, src/app/main/ui/dashboard/projects.cljs:355, src/app/main/ui/dashboard/search.cljs:48, src/app/main/ui/dashboard/sidebar.cljs:302, src/app/main/ui/dashboard/team.cljs:537, src/app/main/ui/dashboard/team.cljs:983, src/app/main/ui/dashboard/team.cljs:1251, src/app/main/ui/dashboard/team.cljs:1298
|
||||
msgid "dashboard.your-penpot"
|
||||
msgstr "Ite mkpịsị. gị"
|
||||
|
||||
@@ -1184,7 +1184,7 @@ msgstr "Azụ"
|
||||
msgid "labels.bad-gateway.main-message"
|
||||
msgstr "Ajọ ụzọ mbanye"
|
||||
|
||||
#: src/app/main/data/common.cljs:119, src/app/main/ui/dashboard/change_owner.cljs:64, src/app/main/ui/dashboard/import.cljs:515, src/app/main/ui/dashboard/team.cljs:780, src/app/main/ui/dashboard/team.cljs:1122, src/app/main/ui/delete_shared.cljs:38, src/app/main/ui/exports/assets.cljs:163, src/app/main/ui/exports/files.cljs:168, src/app/main/ui/settings/access_tokens.cljs:175, src/app/main/ui/viewer/share_link.cljs:208, src/app/main/ui/workspace/sidebar/assets/groups.cljs:159, src/app/main/ui/workspace/tokens/export/modal.cljs:44, src/app/main/ui/workspace/tokens/import/modal.cljs:269, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:295, src/app/main/ui/workspace/tokens/remapping_modal.cljs:99, src/app/main/ui/workspace/tokens/settings/menu.cljs:105, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:265
|
||||
#: src/app/main/data/common.cljs:119, src/app/main/ui/dashboard/change_owner.cljs:64, src/app/main/ui/dashboard/import.cljs:515, src/app/main/ui/dashboard/team.cljs:780, src/app/main/ui/dashboard/team.cljs:1122, src/app/main/ui/delete_shared.cljs:38, src/app/main/ui/exports/assets.cljs:163, src/app/main/ui/exports/files.cljs:168, src/app/main/ui/settings/access_tokens.cljs:175, src/app/main/ui/viewer/share_link.cljs:208, src/app/main/ui/workspace/sidebar/assets/groups.cljs:159, src/app/main/ui/workspace/tokens/export/modal.cljs:44, src/app/main/ui/workspace/tokens/import/modal.cljs:269, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:298, src/app/main/ui/workspace/tokens/remapping_modal.cljs:99, src/app/main/ui/workspace/tokens/settings/menu.cljs:105, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:265
|
||||
msgid "labels.cancel"
|
||||
msgstr "Kagbuo"
|
||||
|
||||
@@ -1212,7 +1212,7 @@ msgstr "Ogbe"
|
||||
msgid "labels.confirm-password"
|
||||
msgstr "Nabata akara mpịbanye"
|
||||
|
||||
#: src/app/main/ui/auth/login.cljs:204, src/app/main/ui/dashboard/deleted.cljs:57, src/app/main/ui/dashboard/deleted.cljs:264, src/app/main/ui/dashboard/file_menu.cljs:208, src/app/main/ui/dashboard/import.cljs:521, src/app/main/ui/dashboard/team.cljs:787, src/app/main/ui/exports/files.cljs:173, src/app/main/ui/onboarding/newsletter.cljs:106, src/app/main/ui/settings/subscription.cljs:279, src/app/main/ui/settings/subscription.cljs:313
|
||||
#: src/app/main/ui/auth/login.cljs:204, src/app/main/ui/dashboard/deleted.cljs:43, src/app/main/ui/dashboard/deleted.cljs:275, src/app/main/ui/dashboard/file_menu.cljs:210, src/app/main/ui/dashboard/import.cljs:521, src/app/main/ui/dashboard/team.cljs:787, src/app/main/ui/exports/files.cljs:173, src/app/main/ui/onboarding/newsletter.cljs:106, src/app/main/ui/settings/subscription.cljs:279, src/app/main/ui/settings/subscription.cljs:313
|
||||
msgid "labels.continue"
|
||||
msgstr "Ga n'ihu"
|
||||
|
||||
@@ -1240,7 +1240,7 @@ msgstr "Mepee otu ọhụrụ"
|
||||
msgid "labels.custom-fonts"
|
||||
msgstr "mkpụrụ edide a haziri"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:338, src/app/main/ui/dashboard/fonts.cljs:267, src/app/main/ui/dashboard/fonts.cljs:343, src/app/main/ui/dashboard/fonts.cljs:357, src/app/main/ui/dashboard/project_menu.cljs:115, src/app/main/ui/dashboard/team.cljs:1158, src/app/main/ui/settings/access_tokens.cljs:196, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:223, src/app/main/ui/workspace/sidebar/versions.cljs:216, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:288, src/app/main/ui/workspace/tokens/sets/context_menu.cljs:66, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:399
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:338, src/app/main/ui/dashboard/fonts.cljs:267, src/app/main/ui/dashboard/fonts.cljs:343, src/app/main/ui/dashboard/fonts.cljs:357, src/app/main/ui/dashboard/project_menu.cljs:115, src/app/main/ui/dashboard/team.cljs:1158, src/app/main/ui/settings/access_tokens.cljs:196, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:223, src/app/main/ui/workspace/sidebar/versions.cljs:216, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:291, src/app/main/ui/workspace/tokens/sets/context_menu.cljs:66, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:399
|
||||
msgid "labels.delete"
|
||||
msgstr "Hichaa"
|
||||
|
||||
@@ -1264,7 +1264,7 @@ msgstr "Hichapụ ederede %s"
|
||||
msgid "labels.developer"
|
||||
msgstr "Onye nrụpụta"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:29, src/app/main/ui/dashboard/files.cljs:80, src/app/main/ui/dashboard/files.cljs:179, src/app/main/ui/dashboard/projects.cljs:229, src/app/main/ui/dashboard/projects.cljs:233, src/app/main/ui/dashboard/sidebar.cljs:726
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:30, src/app/main/ui/dashboard/files.cljs:80, src/app/main/ui/dashboard/files.cljs:179, src/app/main/ui/dashboard/projects.cljs:229, src/app/main/ui/dashboard/projects.cljs:233, src/app/main/ui/dashboard/sidebar.cljs:726
|
||||
msgid "labels.drafts"
|
||||
msgstr "Ndesita"
|
||||
|
||||
@@ -1493,7 +1493,7 @@ msgstr "Nwagharịa"
|
||||
msgid "labels.role"
|
||||
msgstr "Ọrụ"
|
||||
|
||||
#: src/app/main/ui/dashboard/fonts.cljs:395, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:204, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:299, src/app/main/ui/workspace/tokens/settings/menu.cljs:110
|
||||
#: src/app/main/ui/dashboard/fonts.cljs:395, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:204, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:302, src/app/main/ui/workspace/tokens/settings/menu.cljs:110
|
||||
msgid "labels.save"
|
||||
msgstr "Dokwa"
|
||||
|
||||
@@ -1712,19 +1712,19 @@ msgstr "Ọ kara gị obi na ị chọrọ ị hichapụ nkọwa ?"
|
||||
msgid "modals.delete-component-annotation.title"
|
||||
msgstr "Hichapụ nkọwa"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:124
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:125
|
||||
msgid "modals.delete-file-confirm.accept"
|
||||
msgstr "Hichapụ ederede"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:123
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:124
|
||||
msgid "modals.delete-file-confirm.message"
|
||||
msgstr "Ọ kara gị obi na ị chọrọ ị hichapụ ederede ?"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:122
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:123
|
||||
msgid "modals.delete-file-confirm.title"
|
||||
msgstr "Na-ehichapụ ederede"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:116
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:117
|
||||
msgid "modals.delete-file-multi-confirm.title"
|
||||
msgstr "Na-ehichapụ ederede %s"
|
||||
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"PO-Revision-Date: 2026-01-08 17:06+0000\n"
|
||||
"Last-Translator: Valentina Chapellu <valentina.chapellu@gmail.com>\n"
|
||||
"Language-Team: Italian <https://hosted.weblate.org/projects/penpot/frontend/"
|
||||
"it/>\n"
|
||||
"PO-Revision-Date: 2026-01-12 08:33+0000\n"
|
||||
"Last-Translator: Nicola Bortoletto <nicola.bortoletto@live.com>\n"
|
||||
"Language-Team: Italian "
|
||||
"<https://hosted.weblate.org/projects/penpot/frontend/it/>\n"
|
||||
"Language: it\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=utf-8\n"
|
||||
@@ -336,6 +336,14 @@ msgstr "Inizia il tour"
|
||||
msgid "dasboard.walkthrough-hero.title"
|
||||
msgstr "Guida all'interfaccia"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:209
|
||||
msgid "dashboard-restore-file-confirmation.description"
|
||||
msgstr "Stai per ripristinare %s."
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:208
|
||||
msgid "dashboard-restore-file-confirmation.title"
|
||||
msgstr "Ripristina file"
|
||||
|
||||
#: src/app/main/ui/settings/access_tokens.cljs:103
|
||||
msgid "dashboard.access-tokens.copied-success"
|
||||
msgstr "Token copiato"
|
||||
@@ -419,6 +427,10 @@ msgstr "Aggiungi come libreria condivisa"
|
||||
msgid "dashboard.change-email"
|
||||
msgstr "Cambia indirizzo e-mail"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:313
|
||||
msgid "dashboard.clear-trash-button"
|
||||
msgstr "Svuota il cestino"
|
||||
|
||||
#: src/app/main/data/dashboard.cljs:329, src/app/main/data/dashboard.cljs:564, src/app/main/data/workspace/pages.cljs:192
|
||||
msgid "dashboard.copy-suffix"
|
||||
msgstr "(copia)"
|
||||
@@ -435,10 +447,49 @@ msgstr "Appunta questa versione"
|
||||
msgid "dashboard.default-team-name"
|
||||
msgstr "Il tuo Penpot"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:262
|
||||
msgid "dashboard.delete-all-forever-confirmation.description"
|
||||
msgstr ""
|
||||
"Sei sicuro di voler eliminare definitivamente tutti i progetti e file "
|
||||
"eliminati? Questa azione è irreversibile."
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:222
|
||||
msgid "dashboard.delete-file-forever-confirmation.description"
|
||||
msgstr ""
|
||||
"Sei sicuro di voler eliminare definitivamente %s? Questa azione è "
|
||||
"irreversibile."
|
||||
|
||||
#: src/app/main/data/dashboard.cljs:764
|
||||
msgid "dashboard.delete-files-success-notification"
|
||||
msgstr "%s file sono stati eliminati con successo."
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:51, src/app/main/ui/dashboard/deleted.cljs:53, src/app/main/ui/dashboard/deleted.cljs:261, src/app/main/ui/dashboard/deleted.cljs:263, src/app/main/ui/dashboard/file_menu.cljs:221, src/app/main/ui/dashboard/file_menu.cljs:223
|
||||
msgid "dashboard.delete-forever-confirmation.title"
|
||||
msgstr "Elimina definitivamente"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:85
|
||||
msgid "dashboard.delete-project-button"
|
||||
msgstr "Elimina progetto"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:52
|
||||
msgid "dashboard.delete-project-forever-confirmation.description"
|
||||
msgstr ""
|
||||
"Sei sicuro di voler eliminare definitivamente il progetto %s? Eliminerai "
|
||||
"definitivamente anche tutti i file al suo interno. Questa azione è "
|
||||
"irreversibile."
|
||||
|
||||
#: src/app/main/data/dashboard.cljs:763, src/app/main/data/dashboard.cljs:797
|
||||
msgid "dashboard.delete-success-notification"
|
||||
msgstr "%s è stato eliminato con successo."
|
||||
|
||||
#: src/app/main/ui/dashboard/sidebar.cljs:477
|
||||
msgid "dashboard.delete-team"
|
||||
msgstr "Elimina team"
|
||||
|
||||
#: src/app/main/ui/dashboard/grid.cljs:248
|
||||
msgid "dashboard.deleted.will-be-deleted-at"
|
||||
msgstr "Sarà eliminato %s"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:330, src/app/main/ui/workspace/main_menu.cljs:690
|
||||
msgid "dashboard.download-binary-file"
|
||||
msgstr "Scarica il file Penpot (.penpot)"
|
||||
@@ -464,11 +515,11 @@ msgstr "Quando un membro del progetto crea una bozza, verrà mostrata qui."
|
||||
msgid "dashboard.empty-placeholder-drafts-title"
|
||||
msgstr "Nessuna bozza presente."
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:166, src/app/main/ui/dashboard/files.cljs:204, src/app/main/ui/dashboard/projects.cljs:291
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:176, src/app/main/ui/dashboard/files.cljs:204, src/app/main/ui/dashboard/projects.cljs:291
|
||||
msgid "dashboard.empty-placeholder-files-subtitle"
|
||||
msgstr "Quando un membro del progetto crea un file, verrà mostrato qui."
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:163, src/app/main/ui/dashboard/files.cljs:199, src/app/main/ui/dashboard/projects.cljs:286
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:173, src/app/main/ui/dashboard/files.cljs:199, src/app/main/ui/dashboard/projects.cljs:286
|
||||
msgid "dashboard.empty-placeholder-files-title"
|
||||
msgstr "Nessun file presente."
|
||||
|
||||
@@ -524,6 +575,32 @@ msgstr "Importa un file .penpot"
|
||||
msgid "dashboard.empty-project.start"
|
||||
msgstr "Inizia a creare cose straordinarie"
|
||||
|
||||
#, unused
|
||||
msgid "dashboard.errors.error-on-delete-file"
|
||||
msgstr "Si è verificato un errore durante l'eliminazione del file %s."
|
||||
|
||||
#: src/app/main/data/dashboard.cljs:767
|
||||
msgid "dashboard.errors.error-on-delete-files"
|
||||
msgstr "Si è verificato un errore durante l'eliminazione dei file."
|
||||
|
||||
#: src/app/main/data/dashboard.cljs:800
|
||||
msgid "dashboard.errors.error-on-delete-project"
|
||||
msgstr "Si è verificato un errore durante l'eliminazione del progetto %s."
|
||||
|
||||
#: src/app/main/data/dashboard.cljs:895, src/app/main/ui/dashboard/file_menu.cljs:201
|
||||
msgid "dashboard.errors.error-on-restore-file"
|
||||
msgstr "Si è verificato un errore durante il ripristino del file %s."
|
||||
|
||||
#: src/app/main/data/dashboard.cljs:896
|
||||
msgid "dashboard.errors.error-on-restore-files"
|
||||
msgstr "Si è verificato un errore durante il ripristino dei file."
|
||||
|
||||
#: src/app/main/data/dashboard.cljs:928
|
||||
msgid "dashboard.errors.error-on-restoring-project"
|
||||
msgstr ""
|
||||
"Si è verificato un errore durante il ripristino del progetto %s e dei suoi "
|
||||
"file."
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:282
|
||||
msgid "dashboard.export-binary-multi"
|
||||
msgstr "Scarica %s file Penpot (.penpot)"
|
||||
@@ -572,12 +649,22 @@ msgid "dashboard.export-standard-multi"
|
||||
msgstr "Scarica %s file standard (.svg + .json)"
|
||||
|
||||
#: src/app/main/ui/exports/files.cljs:155
|
||||
#, fuzzy, unused
|
||||
#, unused
|
||||
msgid "dashboard.export.explain"
|
||||
msgstr ""
|
||||
"Uno o più file che desideri esportare utilizzano librerie condivise. Che "
|
||||
"Uno o più file che desideri scaricare utilizzano librerie condivise. Che "
|
||||
"cosa desideri fare con le loro risorse*?"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:268
|
||||
msgid "dashboard.file-menu.delete-files-permanently-option"
|
||||
msgid_plural "dashboard.file-menu.delete-files-permanently-option"
|
||||
msgstr[0] "Elimina file"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:265
|
||||
msgid "dashboard.file-menu.restore-files-option"
|
||||
msgid_plural "dashboard.file-menu.restore-files-option"
|
||||
msgstr[0] "Ripristina file"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:322
|
||||
msgid "dashboard.fonts.deleted-placeholder"
|
||||
msgstr "Carattere mancante"
|
||||
@@ -790,7 +877,7 @@ msgstr "Sposta in"
|
||||
msgid "dashboard.move-to-multi"
|
||||
msgstr "Sposta %s file in"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:248
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:250
|
||||
msgid "dashboard.move-to-other-team"
|
||||
msgstr "Sposta in un altro team"
|
||||
|
||||
@@ -850,7 +937,7 @@ msgstr "%s membri"
|
||||
msgid "dashboard.open-in-new-tab"
|
||||
msgstr "Apri file in una nuova scheda"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:147, src/app/main/ui/dashboard/deleted.cljs:148, src/app/main/ui/dashboard/files.cljs:120, src/app/main/ui/dashboard/grid.cljs:442, src/app/main/ui/dashboard/projects.cljs:266, src/app/main/ui/dashboard/projects.cljs:267
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:157, src/app/main/ui/dashboard/deleted.cljs:158, src/app/main/ui/dashboard/files.cljs:120, src/app/main/ui/dashboard/grid.cljs:442, src/app/main/ui/dashboard/projects.cljs:266, src/app/main/ui/dashboard/projects.cljs:267
|
||||
msgid "dashboard.options"
|
||||
msgstr "Opzioni"
|
||||
|
||||
@@ -898,7 +985,23 @@ msgstr "Impossibile analizzare il manifesto del plugin"
|
||||
msgid "dashboard.plugins.try-plugin"
|
||||
msgstr "Prova il plugin: "
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:41, src/app/main/ui/dashboard/projects.cljs:57
|
||||
#: src/app/main/data/dashboard.cljs:708
|
||||
msgid "dashboard.progress-notification.deleting-files"
|
||||
msgstr "Eliminazione file…"
|
||||
|
||||
#: src/app/main/data/dashboard.cljs:829
|
||||
msgid "dashboard.progress-notification.restoring-files"
|
||||
msgstr "Ripristino file…"
|
||||
|
||||
#: src/app/main/data/dashboard.cljs:709
|
||||
msgid "dashboard.progress-notification.slow-delete"
|
||||
msgstr "Eliminazione inaspettatamente lenta"
|
||||
|
||||
#: src/app/main/data/dashboard.cljs:830
|
||||
msgid "dashboard.progress-notification.slow-restore"
|
||||
msgstr "Ripristino inaspettatamente lento"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:62, src/app/main/ui/dashboard/projects.cljs:57
|
||||
msgid "dashboard.projects-title"
|
||||
msgstr "Progetti"
|
||||
|
||||
@@ -915,6 +1018,40 @@ msgstr "Rimuovi come libreria condivisa"
|
||||
msgid "dashboard.removed-from-team"
|
||||
msgstr "Non fai più parte del team \"%s\"."
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:274
|
||||
msgid "dashboard.restore-all-confirmation.description"
|
||||
msgstr ""
|
||||
"Stai per ripristinare tutti i tuoi progetti e file. Potrebbe richiedere un "
|
||||
"po' di tempo."
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:273
|
||||
msgid "dashboard.restore-all-confirmation.title"
|
||||
msgstr "Ripristina tutti i progetti e file"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:308
|
||||
msgid "dashboard.restore-all-deleted-button"
|
||||
msgstr "Ripristina tutto"
|
||||
|
||||
#: src/app/main/data/dashboard.cljs:889
|
||||
msgid "dashboard.restore-files-success-notification"
|
||||
msgstr "%s file sono stati ripristinati con successo."
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:82
|
||||
msgid "dashboard.restore-project-button"
|
||||
msgstr "Ripristina progetto"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:41
|
||||
msgid "dashboard.restore-project-confirmation.description"
|
||||
msgstr "Stai per ripristinare il progetto %s e tutti i file al suo interno."
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:40
|
||||
msgid "dashboard.restore-project-confirmation.title"
|
||||
msgstr "Ripristina progetto"
|
||||
|
||||
#: src/app/main/data/dashboard.cljs:861, src/app/main/data/dashboard.cljs:888, src/app/main/data/dashboard.cljs:925, src/app/main/ui/dashboard/file_menu.cljs:198
|
||||
msgid "dashboard.restore-success-notification"
|
||||
msgstr "%s è stato ripristinato con successo."
|
||||
|
||||
#: src/app/main/ui/settings/profile.cljs:78
|
||||
msgid "dashboard.save-settings"
|
||||
msgstr "Salva impostazioni"
|
||||
@@ -1015,7 +1152,7 @@ msgstr "Mostra tutti i file"
|
||||
msgid "dashboard.show-version-history"
|
||||
msgstr "Cronologia versione"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:97
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:98
|
||||
msgid "dashboard.success-delete-file"
|
||||
msgid_plural "dashboard.success-delete-file"
|
||||
msgstr[0] "Il tuo file è stato eliminato con successo"
|
||||
@@ -1025,7 +1162,7 @@ msgstr[1] "I tuoi file sono stati eliminati con successo"
|
||||
msgid "dashboard.success-delete-project"
|
||||
msgstr "Il tuo progetto è stato eliminato con successo"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:92
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:93
|
||||
msgid "dashboard.success-duplicate-file"
|
||||
msgid_plural "dashboard.success-delete-file"
|
||||
msgstr[0] "Il tuo file è stato duplicato con successo"
|
||||
@@ -1035,11 +1172,11 @@ msgstr[1] "I tuoi file sono stati duplicati con successo"
|
||||
msgid "dashboard.success-duplicate-project"
|
||||
msgstr "Il tuo progetto è stato duplicato con successo"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:131, src/app/main/ui/dashboard/grid.cljs:634, src/app/main/ui/dashboard/sidebar.cljs:165
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:132, src/app/main/ui/dashboard/grid.cljs:634, src/app/main/ui/dashboard/sidebar.cljs:165
|
||||
msgid "dashboard.success-move-file"
|
||||
msgstr "Il tuo file è stato spostato con successo"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:130
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:131
|
||||
msgid "dashboard.success-move-files"
|
||||
msgstr "I tuoi file sono stati spostati con successo"
|
||||
|
||||
@@ -1071,6 +1208,24 @@ msgstr "Tema dell'interfaccia utente"
|
||||
msgid "dashboard.title-search"
|
||||
msgstr "Risultati della ricerca"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:298
|
||||
msgid "dashboard.trash-info-text-part1"
|
||||
msgstr "I file eliminati rimarranno nel cestino per"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:300
|
||||
msgid "dashboard.trash-info-text-part2"
|
||||
msgstr " %s giorni. "
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:301
|
||||
msgid "dashboard.trash-info-text-part3"
|
||||
msgstr "In seguito, verranno eliminati definitivamente."
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:303
|
||||
msgid "dashboard.trash-info-text-part4"
|
||||
msgstr ""
|
||||
"Se cambi idea, puoi ripristinarli o eliminarlo definitivamente dal menu di "
|
||||
"ciascun file."
|
||||
|
||||
#: src/app/main/ui/dashboard/search.cljs:67
|
||||
msgid "dashboard.type-something"
|
||||
msgstr "Scrivi per cercare"
|
||||
@@ -1146,7 +1301,7 @@ msgstr "E-mail"
|
||||
msgid "dashboard.your-name"
|
||||
msgstr "Il tuo nome"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:39, src/app/main/ui/dashboard/fonts.cljs:42, src/app/main/ui/dashboard/libraries.cljs:56, src/app/main/ui/dashboard/projects.cljs:355, src/app/main/ui/dashboard/search.cljs:48, src/app/main/ui/dashboard/sidebar.cljs:302, src/app/main/ui/dashboard/team.cljs:537, src/app/main/ui/dashboard/team.cljs:983, src/app/main/ui/dashboard/team.cljs:1251, src/app/main/ui/dashboard/team.cljs:1298
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:40, src/app/main/ui/dashboard/fonts.cljs:42, src/app/main/ui/dashboard/libraries.cljs:56, src/app/main/ui/dashboard/projects.cljs:355, src/app/main/ui/dashboard/search.cljs:48, src/app/main/ui/dashboard/sidebar.cljs:302, src/app/main/ui/dashboard/team.cljs:537, src/app/main/ui/dashboard/team.cljs:983, src/app/main/ui/dashboard/team.cljs:1251, src/app/main/ui/dashboard/team.cljs:1298
|
||||
msgid "dashboard.your-penpot"
|
||||
msgstr "Il tuo Penpot"
|
||||
|
||||
@@ -1252,7 +1407,7 @@ msgstr "Anche se Penpot non supporta più questo tipo di risorse, puoi"
|
||||
msgid "errors.deprecated.contact.text"
|
||||
msgstr "contattarci"
|
||||
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:305
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:307
|
||||
msgid "errors.drop-token-set-parent-to-child"
|
||||
msgstr ""
|
||||
"Impossibile rilasciare un set genitore in un percorso appartenente a un "
|
||||
@@ -1296,7 +1451,7 @@ msgstr ""
|
||||
msgid "errors.feature-not-supported"
|
||||
msgstr "La funzione '%s' non è supportata."
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:41, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:76, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:299, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:239
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:41, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:77, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:299, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:239
|
||||
msgid "errors.field-max-length"
|
||||
msgstr "Deve contenere al massimo %s caratteres."
|
||||
|
||||
@@ -1464,7 +1619,7 @@ msgstr ""
|
||||
"Il proprietario non può abbandonare il team. Devi riassegnare il ruolo di "
|
||||
"proprietario."
|
||||
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:162, src/app/main/data/workspace/tokens/library_edit.cljs:192
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:164, src/app/main/data/workspace/tokens/library_edit.cljs:194
|
||||
msgid "errors.token-set-already-exists"
|
||||
msgstr "Esiste già un set con lo stesso nome"
|
||||
|
||||
@@ -1473,13 +1628,13 @@ msgstr "Esiste già un set con lo stesso nome"
|
||||
msgid "errors.token-set-doesnt-exists"
|
||||
msgstr "Impossibile duplicare un set sconosciuto"
|
||||
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:304
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:306
|
||||
msgid "errors.token-set-exists-on-drop"
|
||||
msgstr ""
|
||||
"Impossibile completare il rilascio: esiste già un set con lo stesso nome in "
|
||||
"questo percorso."
|
||||
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:77, src/app/main/data/workspace/tokens/library_edit.cljs:96
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:79, src/app/main/data/workspace/tokens/library_edit.cljs:98
|
||||
msgid "errors.token-theme-already-exists"
|
||||
msgstr "Esiste già un'opzione tema con lo stesso nome"
|
||||
|
||||
@@ -1644,6 +1799,10 @@ msgstr ""
|
||||
msgid "files-download-modal.options.merge.title"
|
||||
msgstr "Includi le risorse delle librerie condivise nelle librerie del file"
|
||||
|
||||
#: src/app/main/ui/exports/files.cljs:124
|
||||
msgid "files-download-modal.title"
|
||||
msgstr "Scarica file"
|
||||
|
||||
#: src/app/main/ui/settings/password.cljs:31
|
||||
msgid "generic.error"
|
||||
msgstr "Si è verificato un errore"
|
||||
@@ -1955,7 +2114,7 @@ msgstr "Copia negli appunti"
|
||||
msgid "inspect.tabs.styles.geometry-panel"
|
||||
msgstr "Dimensione e posizione"
|
||||
|
||||
#: src/app/main/ui/inspect/styles/style_box.cljs:60, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:179
|
||||
#: src/app/main/ui/inspect/styles/style_box.cljs:60, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:178
|
||||
msgid "inspect.tabs.styles.toggle-style"
|
||||
msgstr "Attiva/disattiva pannello %s"
|
||||
|
||||
@@ -2042,7 +2201,7 @@ msgstr "Gateway non corretto"
|
||||
msgid "labels.blur"
|
||||
msgstr "Sfocatura"
|
||||
|
||||
#: src/app/main/data/common.cljs:119, src/app/main/ui/dashboard/change_owner.cljs:64, src/app/main/ui/dashboard/import.cljs:515, src/app/main/ui/dashboard/team.cljs:780, src/app/main/ui/dashboard/team.cljs:1122, src/app/main/ui/delete_shared.cljs:38, src/app/main/ui/exports/assets.cljs:163, src/app/main/ui/exports/files.cljs:168, src/app/main/ui/settings/access_tokens.cljs:175, src/app/main/ui/viewer/share_link.cljs:208, src/app/main/ui/workspace/sidebar/assets/groups.cljs:159, src/app/main/ui/workspace/tokens/export/modal.cljs:44, src/app/main/ui/workspace/tokens/import/modal.cljs:269, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:295, src/app/main/ui/workspace/tokens/remapping_modal.cljs:99, src/app/main/ui/workspace/tokens/settings/menu.cljs:105, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:265
|
||||
#: src/app/main/data/common.cljs:119, src/app/main/ui/dashboard/change_owner.cljs:64, src/app/main/ui/dashboard/import.cljs:515, src/app/main/ui/dashboard/team.cljs:780, src/app/main/ui/dashboard/team.cljs:1122, src/app/main/ui/delete_shared.cljs:38, src/app/main/ui/exports/assets.cljs:163, src/app/main/ui/exports/files.cljs:168, src/app/main/ui/settings/access_tokens.cljs:175, src/app/main/ui/viewer/share_link.cljs:208, src/app/main/ui/workspace/sidebar/assets/groups.cljs:159, src/app/main/ui/workspace/tokens/export/modal.cljs:44, src/app/main/ui/workspace/tokens/import/modal.cljs:269, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:298, src/app/main/ui/workspace/tokens/remapping_modal.cljs:99, src/app/main/ui/workspace/tokens/settings/menu.cljs:105, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:265
|
||||
msgid "labels.cancel"
|
||||
msgstr "Annulla"
|
||||
|
||||
@@ -2102,7 +2261,7 @@ msgstr "Contatta il supporto"
|
||||
msgid "labels.contact-us"
|
||||
msgstr "Contattaci"
|
||||
|
||||
#: src/app/main/ui/auth/login.cljs:204, src/app/main/ui/dashboard/deleted.cljs:57, src/app/main/ui/dashboard/deleted.cljs:264, src/app/main/ui/dashboard/file_menu.cljs:208, src/app/main/ui/dashboard/import.cljs:521, src/app/main/ui/dashboard/team.cljs:787, src/app/main/ui/exports/files.cljs:173, src/app/main/ui/onboarding/newsletter.cljs:106, src/app/main/ui/settings/subscription.cljs:279, src/app/main/ui/settings/subscription.cljs:313
|
||||
#: src/app/main/ui/auth/login.cljs:204, src/app/main/ui/dashboard/deleted.cljs:43, src/app/main/ui/dashboard/deleted.cljs:275, src/app/main/ui/dashboard/file_menu.cljs:210, src/app/main/ui/dashboard/import.cljs:521, src/app/main/ui/dashboard/team.cljs:787, src/app/main/ui/exports/files.cljs:173, src/app/main/ui/onboarding/newsletter.cljs:106, src/app/main/ui/settings/subscription.cljs:279, src/app/main/ui/settings/subscription.cljs:313
|
||||
msgid "labels.continue"
|
||||
msgstr "Continua"
|
||||
|
||||
@@ -2150,7 +2309,7 @@ msgstr "Caratteri personalizzati"
|
||||
msgid "labels.dashboard"
|
||||
msgstr "Pannello di controllo"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:338, src/app/main/ui/dashboard/fonts.cljs:267, src/app/main/ui/dashboard/fonts.cljs:343, src/app/main/ui/dashboard/fonts.cljs:357, src/app/main/ui/dashboard/project_menu.cljs:115, src/app/main/ui/dashboard/team.cljs:1158, src/app/main/ui/settings/access_tokens.cljs:196, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:223, src/app/main/ui/workspace/sidebar/versions.cljs:216, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:288, src/app/main/ui/workspace/tokens/sets/context_menu.cljs:66, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:399
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:338, src/app/main/ui/dashboard/fonts.cljs:267, src/app/main/ui/dashboard/fonts.cljs:343, src/app/main/ui/dashboard/fonts.cljs:357, src/app/main/ui/dashboard/project_menu.cljs:115, src/app/main/ui/dashboard/team.cljs:1158, src/app/main/ui/settings/access_tokens.cljs:196, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:223, src/app/main/ui/workspace/sidebar/versions.cljs:216, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:291, src/app/main/ui/workspace/tokens/sets/context_menu.cljs:66, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:399
|
||||
msgid "labels.delete"
|
||||
msgstr "Elimina"
|
||||
|
||||
@@ -2170,6 +2329,10 @@ msgstr "Elimina l'invito"
|
||||
msgid "labels.delete-multi-files"
|
||||
msgstr "Elimina %s file"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:215
|
||||
msgid "labels.deleted"
|
||||
msgstr "Eliminati"
|
||||
|
||||
#: src/app/main/ui/onboarding/questions.cljs:86
|
||||
msgid "labels.developer"
|
||||
msgstr "Sviluppo"
|
||||
@@ -2187,7 +2350,7 @@ msgstr "Scarta"
|
||||
msgid "labels.download"
|
||||
msgstr "Scarica %s"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:29, src/app/main/ui/dashboard/files.cljs:80, src/app/main/ui/dashboard/files.cljs:179, src/app/main/ui/dashboard/projects.cljs:229, src/app/main/ui/dashboard/projects.cljs:233, src/app/main/ui/dashboard/sidebar.cljs:726
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:30, src/app/main/ui/dashboard/files.cljs:80, src/app/main/ui/dashboard/files.cljs:179, src/app/main/ui/dashboard/projects.cljs:229, src/app/main/ui/dashboard/projects.cljs:233, src/app/main/ui/dashboard/sidebar.cljs:726
|
||||
msgid "labels.drafts"
|
||||
msgstr "Bozze"
|
||||
|
||||
@@ -2524,6 +2687,10 @@ msgstr "Profilo"
|
||||
msgid "labels.projects"
|
||||
msgstr "Progetti"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:208
|
||||
msgid "labels.recent"
|
||||
msgstr "Recenti"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:205, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:179
|
||||
msgid "labels.reference"
|
||||
msgstr "Riferimento"
|
||||
@@ -2597,7 +2764,7 @@ msgstr "Riprova"
|
||||
msgid "labels.role"
|
||||
msgstr "Ruolo"
|
||||
|
||||
#: src/app/main/ui/dashboard/fonts.cljs:395, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:204, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:299, src/app/main/ui/workspace/tokens/settings/menu.cljs:110
|
||||
#: src/app/main/ui/dashboard/fonts.cljs:395, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:204, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:302, src/app/main/ui/workspace/tokens/settings/menu.cljs:110
|
||||
msgid "labels.save"
|
||||
msgstr "Salva"
|
||||
|
||||
@@ -3069,27 +3236,27 @@ msgstr "Sei sicuro di voler eliminare questa annotazione?"
|
||||
msgid "modals.delete-component-annotation.title"
|
||||
msgstr "Elimina annotazione"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:124
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:125
|
||||
msgid "modals.delete-file-confirm.accept"
|
||||
msgstr "Elimina file"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:123
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:124
|
||||
msgid "modals.delete-file-confirm.message"
|
||||
msgstr "Eliminare questo file?"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:122
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:123
|
||||
msgid "modals.delete-file-confirm.title"
|
||||
msgstr "Eliminazione file"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:118
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:119
|
||||
msgid "modals.delete-file-multi-confirm.accept"
|
||||
msgstr "Elimina files"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:117
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:118
|
||||
msgid "modals.delete-file-multi-confirm.message"
|
||||
msgstr "Eliminare %s files?"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:116
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:117
|
||||
msgid "modals.delete-file-multi-confirm.title"
|
||||
msgstr "Eliminazione %s files"
|
||||
|
||||
@@ -3896,7 +4063,7 @@ msgstr "Vai all'accesso"
|
||||
msgid "settings.detach"
|
||||
msgstr "Scollega"
|
||||
|
||||
#: src/app/main/ui/inspect/exports.cljs:148, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:105, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:107, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:342, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:496, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1062, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1302, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:138, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:149, src/app/main/ui/workspace/sidebar/options/menus/exports.cljs:223, src/app/main/ui/workspace/sidebar/options/menus/fill.cljs:221, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:79, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:430, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:460, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:55, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:56, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:111, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:500, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:511, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:555, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:566, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:595, src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:154, src/app/main/ui/workspace/sidebar/options/menus/stroke.cljs:199, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:336, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:389, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:408, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:427, src/app/main/ui/workspace/sidebar/options/rows/stroke_row.cljs:204
|
||||
#: src/app/main/ui/inspect/exports.cljs:148, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:105, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:107, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:342, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:496, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1062, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1302, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:138, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:149, src/app/main/ui/workspace/sidebar/options/menus/exports.cljs:223, src/app/main/ui/workspace/sidebar/options/menus/fill.cljs:221, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:79, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:430, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:460, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:55, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:56, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:111, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:500, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:511, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:555, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:566, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:595, src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:155, src/app/main/ui/workspace/sidebar/options/menus/stroke.cljs:199, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:336, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:389, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:408, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:427, src/app/main/ui/workspace/sidebar/options/rows/stroke_row.cljs:204
|
||||
msgid "settings.multiple"
|
||||
msgstr "Misto"
|
||||
|
||||
@@ -5009,6 +5176,10 @@ msgstr "Commenti (%s)"
|
||||
msgid "viewer.header.dont-show-interactions"
|
||||
msgstr "Non mostrare le interazioni"
|
||||
|
||||
#: src/app/main/ui/viewer/header.cljs:187
|
||||
msgid "viewer.header.edit-in-workspace"
|
||||
msgstr "Modifica nello spazio di lavoro"
|
||||
|
||||
#: src/app/main/ui/viewer/header.cljs:193
|
||||
msgid "viewer.header.fullscreen"
|
||||
msgstr "Schermo intero"
|
||||
@@ -5149,7 +5320,7 @@ msgstr "Filtra"
|
||||
msgid "workspace.assets.graphics"
|
||||
msgstr "Grafiche"
|
||||
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:190, src/app/main/ui/workspace/sidebar/assets/components.cljs:575, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:806
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:189, src/app/main/ui/workspace/sidebar/assets/components.cljs:575, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:806
|
||||
msgid "workspace.assets.grid-view"
|
||||
msgstr "Vista a griglia"
|
||||
|
||||
@@ -5161,7 +5332,7 @@ msgstr "Gruppo"
|
||||
msgid "workspace.assets.group-name"
|
||||
msgstr "Nome gruppo"
|
||||
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:191, src/app/main/ui/workspace/sidebar/assets/components.cljs:571, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:802
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:190, src/app/main/ui/workspace/sidebar/assets/components.cljs:571, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:802
|
||||
msgid "workspace.assets.list-view"
|
||||
msgstr "Vista a elenco"
|
||||
|
||||
@@ -5268,6 +5439,10 @@ msgstr "Separa"
|
||||
msgid "workspace.colorpicker.color-tokens"
|
||||
msgstr "Token colore"
|
||||
|
||||
#: src/app/main/ui/workspace/colorpicker.cljs:434
|
||||
msgid "workspace.colorpicker.get-color"
|
||||
msgstr "Ottieni colore"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/component.cljs:506
|
||||
msgid "workspace.component.swap.loop-error"
|
||||
msgstr "I componenti non possono essere annidati dentro sé stessi."
|
||||
@@ -5554,6 +5729,10 @@ msgstr "Schermo intero"
|
||||
msgid "workspace.header.zoom-selected"
|
||||
msgstr "Zoom su selezione"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:217
|
||||
msgid "workspace.layout-grid.editor.margin.expand"
|
||||
msgstr "Mostra margini a 4 lati"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/grid_cell.cljs:275, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:854
|
||||
msgid "workspace.layout-grid.editor.options.edit-grid"
|
||||
msgstr "Modifica griglia"
|
||||
@@ -5606,6 +5785,30 @@ msgstr "Individua"
|
||||
msgid "workspace.layout-grid.editor.top-bar.locate.tooltip"
|
||||
msgstr "Individua layout grid"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:244
|
||||
msgid "workspace.layout-item.fit-content-horizontal"
|
||||
msgstr "Adatta al contenuto (Orizzontale)"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:272
|
||||
msgid "workspace.layout-item.fit-content-vertical"
|
||||
msgstr "Adatta al contenuto (Verticale)"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:260
|
||||
msgid "workspace.layout-item.fix-height"
|
||||
msgstr "Altezza fissa"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:234
|
||||
msgid "workspace.layout-item.fix-width"
|
||||
msgstr "Larghezza fissa"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:266
|
||||
msgid "workspace.layout-item.height-100"
|
||||
msgstr "Altezza 100%"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:239
|
||||
msgid "workspace.layout-item.width-100"
|
||||
msgstr "Larghezza 100%"
|
||||
|
||||
#: src/app/main/ui/workspace/libraries.cljs
|
||||
#, unused
|
||||
msgid "workspace.libraries.add"
|
||||
@@ -6209,6 +6412,10 @@ msgstr "Dopo un ritardo"
|
||||
msgid "workspace.options.interaction-animation"
|
||||
msgstr "Animazione"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/interactions.cljs:616
|
||||
msgid "workspace.options.interaction-animation-direction-down"
|
||||
msgstr ""
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/interactions.cljs:383
|
||||
msgid "workspace.options.interaction-animation-dissolve"
|
||||
msgstr "Dissolvenza"
|
||||
@@ -6725,7 +6932,7 @@ msgstr "Riempimento di selezione"
|
||||
msgid "workspace.options.selection-stroke"
|
||||
msgstr "Traccia di selezione"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:143
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:144
|
||||
msgid "workspace.options.shadow-options.add-shadow"
|
||||
msgstr "Aggiungi ombra"
|
||||
|
||||
@@ -6753,7 +6960,7 @@ msgstr "X"
|
||||
msgid "workspace.options.shadow-options.offsety"
|
||||
msgstr "Y"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:156, src/app/main/ui/workspace/sidebar/options/rows/shadow_row.cljs:161
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:157, src/app/main/ui/workspace/sidebar/options/rows/shadow_row.cljs:161
|
||||
msgid "workspace.options.shadow-options.remove-shadow"
|
||||
msgstr "Rimuovi ombra"
|
||||
|
||||
@@ -6761,15 +6968,15 @@ msgstr "Rimuovi ombra"
|
||||
msgid "workspace.options.shadow-options.spread"
|
||||
msgstr "Diffusione"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:138
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:139
|
||||
msgid "workspace.options.shadow-options.title"
|
||||
msgstr "Ombra"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:137
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:138
|
||||
msgid "workspace.options.shadow-options.title.group"
|
||||
msgstr "Ombra di gruppo"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:136
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:137
|
||||
msgid "workspace.options.shadow-options.title.multiple"
|
||||
msgstr "Ombre della selezione"
|
||||
|
||||
@@ -7555,7 +7762,7 @@ msgstr "Aggiungi nuovo tema"
|
||||
msgid "workspace.tokens.add-set-to-group"
|
||||
msgstr "Aggiungi il set a questo gruppo"
|
||||
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:197, src/app/main/ui/workspace/tokens/management/group.cljs:140
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:196, src/app/main/ui/workspace/tokens/management/group.cljs:147
|
||||
msgid "workspace.tokens.add-token"
|
||||
msgstr "Aggiungi token: %s"
|
||||
|
||||
@@ -7609,7 +7816,7 @@ msgstr "Crea ora il tuo prima tema."
|
||||
msgid "workspace.tokens.create-one"
|
||||
msgstr "Creane uno."
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:234
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:237
|
||||
msgid "workspace.tokens.create-token"
|
||||
msgstr "Crea un nuovo token %s"
|
||||
|
||||
@@ -7625,7 +7832,7 @@ msgstr "Elimina tema"
|
||||
msgid "workspace.tokens.duplicate"
|
||||
msgstr "Duplica token"
|
||||
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:209, src/app/main/data/workspace/tokens/library_edit.cljs:452
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:211, src/app/main/data/workspace/tokens/library_edit.cljs:454
|
||||
msgid "workspace.tokens.duplicate-suffix"
|
||||
msgstr "copia"
|
||||
|
||||
@@ -7641,15 +7848,15 @@ msgstr "Modifica tema"
|
||||
msgid "workspace.tokens.edit-themes"
|
||||
msgstr "Modifica temi"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:233
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:236
|
||||
msgid "workspace.tokens.edit-token"
|
||||
msgstr "Modifica token %s"
|
||||
|
||||
#: src/app/main/data/workspace/tokens/errors.cljs:41, src/app/main/ui/workspace/tokens/management/forms/color.cljs:22, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:42
|
||||
#: src/app/main/data/workspace/tokens/errors.cljs:41, src/app/main/ui/workspace/tokens/management/forms/color.cljs:22, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:43
|
||||
msgid "workspace.tokens.empty-input"
|
||||
msgstr "Il valore del token non può essere vuoto"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:240
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:243
|
||||
msgid "workspace.tokens.enter-token-name"
|
||||
msgstr "Inserisci il nome del token %s"
|
||||
|
||||
@@ -7760,11 +7967,11 @@ msgstr ""
|
||||
"L'importazione dei token sovrascriverà tutti i tuoi attuali token, set e "
|
||||
"temi."
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management.cljs:78
|
||||
#: src/app/main/ui/workspace/tokens/management.cljs:74
|
||||
msgid "workspace.tokens.inactive-set"
|
||||
msgstr "Inattivo"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management.cljs:69
|
||||
#: src/app/main/ui/workspace/tokens/management.cljs:65
|
||||
msgid "workspace.tokens.inactive-set-description"
|
||||
msgstr ""
|
||||
"Questo set non è attivo. Cambia tema o attiva questo set per vedere "
|
||||
@@ -7952,7 +8159,7 @@ msgstr "Inserisci un alias tipografico del token"
|
||||
msgid "workspace.tokens.reference-error"
|
||||
msgstr "Errori di riferimento: "
|
||||
|
||||
#: src/app/main/data/workspace/tokens/warnings.cljs:15, src/app/main/data/workspace/tokens/warnings.cljs:19, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:56, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:84, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:103, src/app/main/ui/workspace/tokens/management/forms/controls/color_input.cljs:271, src/app/main/ui/workspace/tokens/management/forms/controls/color_input.cljs:445, src/app/main/ui/workspace/tokens/management/forms/controls/fonts_combobox.cljs:169, src/app/main/ui/workspace/tokens/management/forms/controls/fonts_combobox.cljs:304, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:224, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:320, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:421, src/app/main/ui/workspace/tokens/management/token_pill.cljs:121
|
||||
#: src/app/main/data/workspace/tokens/warnings.cljs:15, src/app/main/data/workspace/tokens/warnings.cljs:19, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:56, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:84, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:103, src/app/main/ui/workspace/tokens/management/forms/controls/color_input.cljs:271, src/app/main/ui/workspace/tokens/management/forms/controls/color_input.cljs:445, src/app/main/ui/workspace/tokens/management/forms/controls/fonts_combobox.cljs:169, src/app/main/ui/workspace/tokens/management/forms/controls/fonts_combobox.cljs:304, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:225, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:332, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:432, src/app/main/ui/workspace/tokens/management/token_pill.cljs:121
|
||||
#, fuzzy
|
||||
msgid "workspace.tokens.resolved-value"
|
||||
msgstr "Valore risolto: %"
|
||||
@@ -7965,7 +8172,7 @@ msgstr "Salva tema"
|
||||
msgid "workspace.tokens.select-set"
|
||||
msgstr "Seleziona set."
|
||||
|
||||
#: src/app/main/data/workspace/tokens/errors.cljs:45, src/app/main/ui/workspace/tokens/management/forms/color.cljs:44, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:79, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:302, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:242
|
||||
#: src/app/main/data/workspace/tokens/errors.cljs:45, src/app/main/ui/workspace/tokens/management/forms/color.cljs:44, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:80, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:302, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:242
|
||||
msgid "workspace.tokens.self-reference"
|
||||
msgstr "Il token ha un riferimento a se stesso"
|
||||
|
||||
@@ -8076,7 +8283,7 @@ msgstr ""
|
||||
msgid "workspace.tokens.themes-list"
|
||||
msgstr "Elenco temi"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:273, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:274
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:276, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:277
|
||||
#, fuzzy
|
||||
msgid "workspace.tokens.token-description"
|
||||
msgstr "Descrizione"
|
||||
@@ -8093,19 +8300,19 @@ msgstr "Famiglia di caratteri"
|
||||
msgid "workspace.tokens.token-font-family-value-enter"
|
||||
msgstr "Famiglia di caratteri o elenco di caratteri separati da virgola (,)"
|
||||
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:83, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:112, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:239
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:83, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:112, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:242
|
||||
msgid "workspace.tokens.token-name"
|
||||
msgstr "Nome"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:33, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:70, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:267, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:222, src/app/main/ui/workspace/tokens/management/forms/validators.cljs:104
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:33, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:71, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:267, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:222, src/app/main/ui/workspace/tokens/management/forms/validators.cljs:104
|
||||
msgid "workspace.tokens.token-name-duplication-validation-error"
|
||||
msgstr "Un token con questo nome esiste già nel percorso: %s"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:31, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:68, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:264, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:219, src/app/main/ui/workspace/tokens/management/forms/validators.cljs:102
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:31, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:69, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:264, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:219, src/app/main/ui/workspace/tokens/management/forms/validators.cljs:102
|
||||
msgid "workspace.tokens.token-name-length-validation-error"
|
||||
msgstr "Il nome deve essere di almeno 1 carattere"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:32, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:69, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:266, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:221, src/app/main/ui/workspace/tokens/management/forms/validators.cljs:103
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:32, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:70, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:266, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:221, src/app/main/ui/workspace/tokens/management/forms/validators.cljs:103
|
||||
msgid "workspace.tokens.token-name-validation-error"
|
||||
msgstr ""
|
||||
" non è un nome di token valido.\n"
|
||||
@@ -8117,15 +8324,15 @@ msgstr ""
|
||||
msgid "workspace.tokens.token-not-resolved"
|
||||
msgstr "Impossibile risolvere il token di riferimento con il nome: %s"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:265
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:268
|
||||
msgid "workspace.tokens.token-value"
|
||||
msgstr "Valore"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:264, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:129
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:267, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:129
|
||||
msgid "workspace.tokens.token-value-enter"
|
||||
msgstr "Inserisci un valore o un alias con {alias}"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management.cljs:68
|
||||
#: src/app/main/ui/workspace/tokens/management.cljs:64
|
||||
msgid "workspace.tokens.tokens-section-title"
|
||||
msgstr "TOKEN - %s"
|
||||
|
||||
|
||||
@@ -404,7 +404,7 @@ msgstr "%s メンバー"
|
||||
msgid "dashboard.open-in-new-tab"
|
||||
msgstr "新しいタブでファイルで開く"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:147, src/app/main/ui/dashboard/deleted.cljs:148, src/app/main/ui/dashboard/files.cljs:120, src/app/main/ui/dashboard/grid.cljs:442, src/app/main/ui/dashboard/projects.cljs:266, src/app/main/ui/dashboard/projects.cljs:267
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:157, src/app/main/ui/dashboard/deleted.cljs:158, src/app/main/ui/dashboard/files.cljs:120, src/app/main/ui/dashboard/grid.cljs:442, src/app/main/ui/dashboard/projects.cljs:266, src/app/main/ui/dashboard/projects.cljs:267
|
||||
msgid "dashboard.options"
|
||||
msgstr "オプション"
|
||||
|
||||
@@ -412,7 +412,7 @@ msgstr "オプション"
|
||||
msgid "dashboard.password-change"
|
||||
msgstr "パスワードを変更"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:41, src/app/main/ui/dashboard/projects.cljs:57
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:62, src/app/main/ui/dashboard/projects.cljs:57
|
||||
msgid "dashboard.projects-title"
|
||||
msgstr "プロジェクト"
|
||||
|
||||
@@ -449,7 +449,7 @@ msgstr "テーマを選択"
|
||||
msgid "dashboard.show-all-files"
|
||||
msgstr "すべてのファイルを表示"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:97
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:98
|
||||
msgid "dashboard.success-delete-file"
|
||||
msgstr "ファイルを削除しました"
|
||||
|
||||
@@ -457,7 +457,7 @@ msgstr "ファイルを削除しました"
|
||||
msgid "dashboard.success-delete-project"
|
||||
msgstr "プロジェクトを削除しました"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:92
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:93
|
||||
msgid "dashboard.success-duplicate-file"
|
||||
msgstr "ファイルを複製しました"
|
||||
|
||||
@@ -465,11 +465,11 @@ msgstr "ファイルを複製しました"
|
||||
msgid "dashboard.success-duplicate-project"
|
||||
msgstr "プロジェクトを複製しました"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:131, src/app/main/ui/dashboard/grid.cljs:634, src/app/main/ui/dashboard/sidebar.cljs:165
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:132, src/app/main/ui/dashboard/grid.cljs:634, src/app/main/ui/dashboard/sidebar.cljs:165
|
||||
msgid "dashboard.success-move-file"
|
||||
msgstr "ファイルを移動しました"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:130
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:131
|
||||
msgid "dashboard.success-move-files"
|
||||
msgstr "ファイルを移動しました"
|
||||
|
||||
@@ -517,7 +517,7 @@ msgstr "Eメール"
|
||||
msgid "dashboard.your-name"
|
||||
msgstr "名前"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:39, src/app/main/ui/dashboard/fonts.cljs:42, src/app/main/ui/dashboard/libraries.cljs:56, src/app/main/ui/dashboard/projects.cljs:355, src/app/main/ui/dashboard/search.cljs:48, src/app/main/ui/dashboard/sidebar.cljs:302, src/app/main/ui/dashboard/team.cljs:537, src/app/main/ui/dashboard/team.cljs:983, src/app/main/ui/dashboard/team.cljs:1251, src/app/main/ui/dashboard/team.cljs:1298
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:40, src/app/main/ui/dashboard/fonts.cljs:42, src/app/main/ui/dashboard/libraries.cljs:56, src/app/main/ui/dashboard/projects.cljs:355, src/app/main/ui/dashboard/search.cljs:48, src/app/main/ui/dashboard/sidebar.cljs:302, src/app/main/ui/dashboard/team.cljs:537, src/app/main/ui/dashboard/team.cljs:983, src/app/main/ui/dashboard/team.cljs:1251, src/app/main/ui/dashboard/team.cljs:1298
|
||||
msgid "dashboard.your-penpot"
|
||||
msgstr "あなたのPenpot"
|
||||
|
||||
@@ -780,7 +780,7 @@ msgstr "ショートカット"
|
||||
msgid "labels.add-custom-font"
|
||||
msgstr "カスタムフォントを追加"
|
||||
|
||||
#: src/app/main/data/common.cljs:119, src/app/main/ui/dashboard/change_owner.cljs:64, src/app/main/ui/dashboard/import.cljs:515, src/app/main/ui/dashboard/team.cljs:780, src/app/main/ui/dashboard/team.cljs:1122, src/app/main/ui/delete_shared.cljs:38, src/app/main/ui/exports/assets.cljs:163, src/app/main/ui/exports/files.cljs:168, src/app/main/ui/settings/access_tokens.cljs:175, src/app/main/ui/viewer/share_link.cljs:208, src/app/main/ui/workspace/sidebar/assets/groups.cljs:159, src/app/main/ui/workspace/tokens/export/modal.cljs:44, src/app/main/ui/workspace/tokens/import/modal.cljs:269, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:295, src/app/main/ui/workspace/tokens/remapping_modal.cljs:99, src/app/main/ui/workspace/tokens/settings/menu.cljs:105, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:265
|
||||
#: src/app/main/data/common.cljs:119, src/app/main/ui/dashboard/change_owner.cljs:64, src/app/main/ui/dashboard/import.cljs:515, src/app/main/ui/dashboard/team.cljs:780, src/app/main/ui/dashboard/team.cljs:1122, src/app/main/ui/delete_shared.cljs:38, src/app/main/ui/exports/assets.cljs:163, src/app/main/ui/exports/files.cljs:168, src/app/main/ui/settings/access_tokens.cljs:175, src/app/main/ui/viewer/share_link.cljs:208, src/app/main/ui/workspace/sidebar/assets/groups.cljs:159, src/app/main/ui/workspace/tokens/export/modal.cljs:44, src/app/main/ui/workspace/tokens/import/modal.cljs:269, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:298, src/app/main/ui/workspace/tokens/remapping_modal.cljs:99, src/app/main/ui/workspace/tokens/settings/menu.cljs:105, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:265
|
||||
msgid "labels.cancel"
|
||||
msgstr "キャンセル"
|
||||
|
||||
@@ -796,7 +796,7 @@ msgstr "コミュニティ"
|
||||
msgid "labels.confirm-password"
|
||||
msgstr "パスワードを確認"
|
||||
|
||||
#: src/app/main/ui/auth/login.cljs:204, src/app/main/ui/dashboard/deleted.cljs:57, src/app/main/ui/dashboard/deleted.cljs:264, src/app/main/ui/dashboard/file_menu.cljs:208, src/app/main/ui/dashboard/import.cljs:521, src/app/main/ui/dashboard/team.cljs:787, src/app/main/ui/exports/files.cljs:173, src/app/main/ui/onboarding/newsletter.cljs:106, src/app/main/ui/settings/subscription.cljs:279, src/app/main/ui/settings/subscription.cljs:313
|
||||
#: src/app/main/ui/auth/login.cljs:204, src/app/main/ui/dashboard/deleted.cljs:43, src/app/main/ui/dashboard/deleted.cljs:275, src/app/main/ui/dashboard/file_menu.cljs:210, src/app/main/ui/dashboard/import.cljs:521, src/app/main/ui/dashboard/team.cljs:787, src/app/main/ui/exports/files.cljs:173, src/app/main/ui/onboarding/newsletter.cljs:106, src/app/main/ui/settings/subscription.cljs:279, src/app/main/ui/settings/subscription.cljs:313
|
||||
msgid "labels.continue"
|
||||
msgstr "続ける"
|
||||
|
||||
@@ -820,7 +820,7 @@ msgstr "カスタムフォント"
|
||||
msgid "labels.dashboard"
|
||||
msgstr "ダッシュボード"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:338, src/app/main/ui/dashboard/fonts.cljs:267, src/app/main/ui/dashboard/fonts.cljs:343, src/app/main/ui/dashboard/fonts.cljs:357, src/app/main/ui/dashboard/project_menu.cljs:115, src/app/main/ui/dashboard/team.cljs:1158, src/app/main/ui/settings/access_tokens.cljs:196, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:223, src/app/main/ui/workspace/sidebar/versions.cljs:216, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:288, src/app/main/ui/workspace/tokens/sets/context_menu.cljs:66, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:399
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:338, src/app/main/ui/dashboard/fonts.cljs:267, src/app/main/ui/dashboard/fonts.cljs:343, src/app/main/ui/dashboard/fonts.cljs:357, src/app/main/ui/dashboard/project_menu.cljs:115, src/app/main/ui/dashboard/team.cljs:1158, src/app/main/ui/settings/access_tokens.cljs:196, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:223, src/app/main/ui/workspace/sidebar/versions.cljs:216, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:291, src/app/main/ui/workspace/tokens/sets/context_menu.cljs:66, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:399
|
||||
msgid "labels.delete"
|
||||
msgstr "削除"
|
||||
|
||||
@@ -836,7 +836,7 @@ msgstr "スレッドを削除"
|
||||
msgid "labels.delete-invitation"
|
||||
msgstr "招待を削除"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:29, src/app/main/ui/dashboard/files.cljs:80, src/app/main/ui/dashboard/files.cljs:179, src/app/main/ui/dashboard/projects.cljs:229, src/app/main/ui/dashboard/projects.cljs:233, src/app/main/ui/dashboard/sidebar.cljs:726
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:30, src/app/main/ui/dashboard/files.cljs:80, src/app/main/ui/dashboard/files.cljs:179, src/app/main/ui/dashboard/projects.cljs:229, src/app/main/ui/dashboard/projects.cljs:233, src/app/main/ui/dashboard/sidebar.cljs:726
|
||||
msgid "labels.drafts"
|
||||
msgstr "下書き"
|
||||
|
||||
|
||||
@@ -655,7 +655,7 @@ msgstr "뒤로"
|
||||
msgid "labels.bad-gateway.main-message"
|
||||
msgstr "잘못된 경로"
|
||||
|
||||
#: src/app/main/data/common.cljs:119, src/app/main/ui/dashboard/change_owner.cljs:64, src/app/main/ui/dashboard/import.cljs:515, src/app/main/ui/dashboard/team.cljs:780, src/app/main/ui/dashboard/team.cljs:1122, src/app/main/ui/delete_shared.cljs:38, src/app/main/ui/exports/assets.cljs:163, src/app/main/ui/exports/files.cljs:168, src/app/main/ui/settings/access_tokens.cljs:175, src/app/main/ui/viewer/share_link.cljs:208, src/app/main/ui/workspace/sidebar/assets/groups.cljs:159, src/app/main/ui/workspace/tokens/export/modal.cljs:44, src/app/main/ui/workspace/tokens/import/modal.cljs:269, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:295, src/app/main/ui/workspace/tokens/remapping_modal.cljs:99, src/app/main/ui/workspace/tokens/settings/menu.cljs:105, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:265
|
||||
#: src/app/main/data/common.cljs:119, src/app/main/ui/dashboard/change_owner.cljs:64, src/app/main/ui/dashboard/import.cljs:515, src/app/main/ui/dashboard/team.cljs:780, src/app/main/ui/dashboard/team.cljs:1122, src/app/main/ui/delete_shared.cljs:38, src/app/main/ui/exports/assets.cljs:163, src/app/main/ui/exports/files.cljs:168, src/app/main/ui/settings/access_tokens.cljs:175, src/app/main/ui/viewer/share_link.cljs:208, src/app/main/ui/workspace/sidebar/assets/groups.cljs:159, src/app/main/ui/workspace/tokens/export/modal.cljs:44, src/app/main/ui/workspace/tokens/import/modal.cljs:269, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:298, src/app/main/ui/workspace/tokens/remapping_modal.cljs:99, src/app/main/ui/workspace/tokens/settings/menu.cljs:105, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:265
|
||||
msgid "labels.cancel"
|
||||
msgstr "취소"
|
||||
|
||||
@@ -679,7 +679,7 @@ msgstr "커뮤니티"
|
||||
msgid "labels.confirm-password"
|
||||
msgstr "비밀번호 확인하기"
|
||||
|
||||
#: src/app/main/ui/auth/login.cljs:204, src/app/main/ui/dashboard/deleted.cljs:57, src/app/main/ui/dashboard/deleted.cljs:264, src/app/main/ui/dashboard/file_menu.cljs:208, src/app/main/ui/dashboard/import.cljs:521, src/app/main/ui/dashboard/team.cljs:787, src/app/main/ui/exports/files.cljs:173, src/app/main/ui/onboarding/newsletter.cljs:106, src/app/main/ui/settings/subscription.cljs:279, src/app/main/ui/settings/subscription.cljs:313
|
||||
#: src/app/main/ui/auth/login.cljs:204, src/app/main/ui/dashboard/deleted.cljs:43, src/app/main/ui/dashboard/deleted.cljs:275, src/app/main/ui/dashboard/file_menu.cljs:210, src/app/main/ui/dashboard/import.cljs:521, src/app/main/ui/dashboard/team.cljs:787, src/app/main/ui/exports/files.cljs:173, src/app/main/ui/onboarding/newsletter.cljs:106, src/app/main/ui/settings/subscription.cljs:279, src/app/main/ui/settings/subscription.cljs:313
|
||||
msgid "labels.continue"
|
||||
msgstr "계속하기"
|
||||
|
||||
@@ -707,7 +707,7 @@ msgstr "커스텀 폰트"
|
||||
msgid "labels.dashboard"
|
||||
msgstr "대시보드"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:338, src/app/main/ui/dashboard/fonts.cljs:267, src/app/main/ui/dashboard/fonts.cljs:343, src/app/main/ui/dashboard/fonts.cljs:357, src/app/main/ui/dashboard/project_menu.cljs:115, src/app/main/ui/dashboard/team.cljs:1158, src/app/main/ui/settings/access_tokens.cljs:196, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:223, src/app/main/ui/workspace/sidebar/versions.cljs:216, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:288, src/app/main/ui/workspace/tokens/sets/context_menu.cljs:66, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:399
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:338, src/app/main/ui/dashboard/fonts.cljs:267, src/app/main/ui/dashboard/fonts.cljs:343, src/app/main/ui/dashboard/fonts.cljs:357, src/app/main/ui/dashboard/project_menu.cljs:115, src/app/main/ui/dashboard/team.cljs:1158, src/app/main/ui/settings/access_tokens.cljs:196, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:223, src/app/main/ui/workspace/sidebar/versions.cljs:216, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:291, src/app/main/ui/workspace/tokens/sets/context_menu.cljs:66, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:399
|
||||
msgid "labels.delete"
|
||||
msgstr "삭제하기"
|
||||
|
||||
@@ -723,7 +723,7 @@ msgstr "스레드 제거하기"
|
||||
msgid "labels.delete-invitation"
|
||||
msgstr "초대장 제거하기"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:29, src/app/main/ui/dashboard/files.cljs:80, src/app/main/ui/dashboard/files.cljs:179, src/app/main/ui/dashboard/projects.cljs:229, src/app/main/ui/dashboard/projects.cljs:233, src/app/main/ui/dashboard/sidebar.cljs:726
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:30, src/app/main/ui/dashboard/files.cljs:80, src/app/main/ui/dashboard/files.cljs:179, src/app/main/ui/dashboard/projects.cljs:229, src/app/main/ui/dashboard/projects.cljs:233, src/app/main/ui/dashboard/sidebar.cljs:726
|
||||
msgid "labels.drafts"
|
||||
msgstr "초안"
|
||||
|
||||
@@ -839,19 +839,19 @@ msgstr "대회 지우기"
|
||||
msgid "modals.delete-comment-thread.title"
|
||||
msgstr "대화 지우기"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:124
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:125
|
||||
msgid "modals.delete-file-confirm.accept"
|
||||
msgstr "파일 지우기"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:123
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:124
|
||||
msgid "modals.delete-file-confirm.message"
|
||||
msgstr "이 파일을 정말로 지우시겠습니까?"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:122
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:123
|
||||
msgid "modals.delete-file-confirm.title"
|
||||
msgstr "파일 삭제중"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:118
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:119
|
||||
msgid "modals.delete-file-multi-confirm.accept"
|
||||
msgstr "여러 파일 지우기"
|
||||
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"PO-Revision-Date: 2026-01-08 17:06+0000\n"
|
||||
"Last-Translator: Vincas Dundzys <dundzys.vincas@gmail.com>\n"
|
||||
"Language-Team: Lithuanian <https://hosted.weblate.org/projects/penpot/"
|
||||
"frontend/lt/>\n"
|
||||
"Language-Team: Lithuanian "
|
||||
"<https://hosted.weblate.org/projects/penpot/frontend/lt/>\n"
|
||||
"Language: lt\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=utf-8\n"
|
||||
@@ -334,11 +334,11 @@ msgid "dashboard.export-shapes.title"
|
||||
msgstr "Eksportuoti pažymėtą sritį"
|
||||
|
||||
#: src/app/main/ui/exports/files.cljs:155
|
||||
#, fuzzy, unused
|
||||
#, unused
|
||||
msgid "dashboard.export.explain"
|
||||
msgstr ""
|
||||
"Viename ar keliuose failuose, kuriuos norite eksportuoti, naudojamos bendros "
|
||||
"bibliotekos. Ką norite daryti su jų komponentais*?"
|
||||
"Viename ar keliuose failuose, kuriuos norite eksportuoti, naudojamos "
|
||||
"bendros bibliotekos. Ką norite daryti su jų komponentais*?"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:322
|
||||
msgid "dashboard.fonts.deleted-placeholder"
|
||||
@@ -468,7 +468,7 @@ msgstr "%s nariai"
|
||||
msgid "dashboard.open-in-new-tab"
|
||||
msgstr "Atidarykite failą naujame skirtuke"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:147, src/app/main/ui/dashboard/deleted.cljs:148, src/app/main/ui/dashboard/files.cljs:120, src/app/main/ui/dashboard/grid.cljs:442, src/app/main/ui/dashboard/projects.cljs:266, src/app/main/ui/dashboard/projects.cljs:267
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:157, src/app/main/ui/dashboard/deleted.cljs:158, src/app/main/ui/dashboard/files.cljs:120, src/app/main/ui/dashboard/grid.cljs:442, src/app/main/ui/dashboard/projects.cljs:266, src/app/main/ui/dashboard/projects.cljs:267
|
||||
msgid "dashboard.options"
|
||||
msgstr "Nustatymai"
|
||||
|
||||
@@ -480,7 +480,7 @@ msgstr "Keisti slaptažodį"
|
||||
msgid "dashboard.pin-unpin"
|
||||
msgstr "Prisegti/Atsegti"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:41, src/app/main/ui/dashboard/projects.cljs:57
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:62, src/app/main/ui/dashboard/projects.cljs:57
|
||||
msgid "dashboard.projects-title"
|
||||
msgstr "Projektai"
|
||||
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"PO-Revision-Date: 2026-01-08 17:06+0000\n"
|
||||
"PO-Revision-Date: 2026-01-10 01:01+0000\n"
|
||||
"Last-Translator: Edgars Andersons <Edgars+Weblate@gaitenis.id.lv>\n"
|
||||
"Language-Team: Latvian <https://hosted.weblate.org/projects/penpot/frontend/"
|
||||
"lv/>\n"
|
||||
"Language-Team: Latvian "
|
||||
"<https://hosted.weblate.org/projects/penpot/frontend/lv/>\n"
|
||||
"Language: lv\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=utf-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=3; plural=(n % 10 == 0 || n % 100 >= 11 && n % 100 <= "
|
||||
"19) ? 0 : ((n % 10 == 1 && n % 100 != 11) ? 1 : 2);\n"
|
||||
"Plural-Forms: nplurals=3; plural=(n % 10 == 0 || n % 100 >= 11 && n % 100 "
|
||||
"<= 19) ? 0 : ((n % 10 == 1 && n % 100 != 11) ? 1 : 2);\n"
|
||||
"X-Generator: Weblate 5.15.1\n"
|
||||
|
||||
#: src/app/main/ui/auth/register.cljs:215, src/app/main/ui/static.cljs:159, src/app/main/ui/viewer/login.cljs:100
|
||||
@@ -465,11 +465,11 @@ msgstr "Tiklīdz projekta dalībnieks izveidos melnrakstu, tas šeit tiks parād
|
||||
msgid "dashboard.empty-placeholder-drafts-title"
|
||||
msgstr "Vēl nav neviena melnraksta."
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:166, src/app/main/ui/dashboard/files.cljs:204, src/app/main/ui/dashboard/projects.cljs:291
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:176, src/app/main/ui/dashboard/files.cljs:204, src/app/main/ui/dashboard/projects.cljs:291
|
||||
msgid "dashboard.empty-placeholder-files-subtitle"
|
||||
msgstr "Tiklīdz projekta dalībnieks izveidos datni, tā šeit tiks parādīta."
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:163, src/app/main/ui/dashboard/files.cljs:199, src/app/main/ui/dashboard/projects.cljs:286
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:173, src/app/main/ui/dashboard/files.cljs:199, src/app/main/ui/dashboard/projects.cljs:286
|
||||
msgid "dashboard.empty-placeholder-files-title"
|
||||
msgstr "Vēl nav nevienas datnes."
|
||||
|
||||
@@ -573,15 +573,15 @@ msgid "dashboard.export-standard-multi"
|
||||
msgstr "Lejupielādēt %s standarta datnes (. svg +. json)"
|
||||
|
||||
#: src/app/main/ui/exports/files.cljs:155
|
||||
#, fuzzy, unused
|
||||
#, unused
|
||||
msgid "dashboard.export.explain"
|
||||
msgstr ""
|
||||
"Viena vai vairākas izgūstamās datnes izmanto koplietojamas bibliotēkas. Ko "
|
||||
"iesākt ar to līdzekļiem*?"
|
||||
"Viena vai vairākas lejupielādējamās datnes izmanto koplietojamas "
|
||||
"bibliotēkas. Ko iesākt ar to līdzekļiem*?"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:322
|
||||
msgid "dashboard.fonts.deleted-placeholder"
|
||||
msgstr "Fonts izdzēsts"
|
||||
msgstr "Trūkstošs fonts"
|
||||
|
||||
#: src/app/main/ui/dashboard/fonts.cljs:218
|
||||
msgid "dashboard.fonts.dismiss-all"
|
||||
@@ -786,7 +786,7 @@ msgstr "Pārvietot uz"
|
||||
msgid "dashboard.move-to-multi"
|
||||
msgstr "Pārvietot %s datnes uz"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:248
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:250
|
||||
msgid "dashboard.move-to-other-team"
|
||||
msgstr "Pārvietot uz citu komandu"
|
||||
|
||||
@@ -846,7 +846,7 @@ msgstr "Dalībieki: %s"
|
||||
msgid "dashboard.open-in-new-tab"
|
||||
msgstr "Atvērt datni jaunā cilnē"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:147, src/app/main/ui/dashboard/deleted.cljs:148, src/app/main/ui/dashboard/files.cljs:120, src/app/main/ui/dashboard/grid.cljs:442, src/app/main/ui/dashboard/projects.cljs:266, src/app/main/ui/dashboard/projects.cljs:267
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:157, src/app/main/ui/dashboard/deleted.cljs:158, src/app/main/ui/dashboard/files.cljs:120, src/app/main/ui/dashboard/grid.cljs:442, src/app/main/ui/dashboard/projects.cljs:266, src/app/main/ui/dashboard/projects.cljs:267
|
||||
msgid "dashboard.options"
|
||||
msgstr "Opcijas"
|
||||
|
||||
@@ -894,7 +894,7 @@ msgstr "Nevar apstrādāt spraudņa manifestu"
|
||||
msgid "dashboard.plugins.try-plugin"
|
||||
msgstr "Izmēģināt spraudni: "
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:41, src/app/main/ui/dashboard/projects.cljs:57
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:62, src/app/main/ui/dashboard/projects.cljs:57
|
||||
msgid "dashboard.projects-title"
|
||||
msgstr "Projekti"
|
||||
|
||||
@@ -1011,7 +1011,7 @@ msgstr "Rādīt visas datnes"
|
||||
msgid "dashboard.show-version-history"
|
||||
msgstr "Versiju vēsture"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:97
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:98
|
||||
msgid "dashboard.success-delete-file"
|
||||
msgid_plural "dashboard.success-delete-file"
|
||||
msgstr[0] "Datnes netika izdzēstas"
|
||||
@@ -1022,7 +1022,7 @@ msgstr[2] "Datnes ir sekmīgi izdzēstas"
|
||||
msgid "dashboard.success-delete-project"
|
||||
msgstr "Projekts tika veiksmīgi izdzēsts"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:92
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:93
|
||||
msgid "dashboard.success-duplicate-file"
|
||||
msgid_plural "dashboard.success-delete-file"
|
||||
msgstr[0] "Neviena datne netika sekmīgi divkāršota"
|
||||
@@ -1033,11 +1033,11 @@ msgstr[2] "Datnes tika sekmīgi divkāršotas"
|
||||
msgid "dashboard.success-duplicate-project"
|
||||
msgstr "Projekts tika veiksmīgi divkāršots"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:131, src/app/main/ui/dashboard/grid.cljs:634, src/app/main/ui/dashboard/sidebar.cljs:165
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:132, src/app/main/ui/dashboard/grid.cljs:634, src/app/main/ui/dashboard/sidebar.cljs:165
|
||||
msgid "dashboard.success-move-file"
|
||||
msgstr "Datne tika sekmīgi pārvietota"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:130
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:131
|
||||
msgid "dashboard.success-move-files"
|
||||
msgstr "Datnes tika veiksmīgi pārvietotas"
|
||||
|
||||
@@ -1144,7 +1144,7 @@ msgstr "E-pasta adrese"
|
||||
msgid "dashboard.your-name"
|
||||
msgstr "Vārds"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:39, src/app/main/ui/dashboard/fonts.cljs:42, src/app/main/ui/dashboard/libraries.cljs:56, src/app/main/ui/dashboard/projects.cljs:355, src/app/main/ui/dashboard/search.cljs:48, src/app/main/ui/dashboard/sidebar.cljs:302, src/app/main/ui/dashboard/team.cljs:537, src/app/main/ui/dashboard/team.cljs:983, src/app/main/ui/dashboard/team.cljs:1251, src/app/main/ui/dashboard/team.cljs:1298
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:40, src/app/main/ui/dashboard/fonts.cljs:42, src/app/main/ui/dashboard/libraries.cljs:56, src/app/main/ui/dashboard/projects.cljs:355, src/app/main/ui/dashboard/search.cljs:48, src/app/main/ui/dashboard/sidebar.cljs:302, src/app/main/ui/dashboard/team.cljs:537, src/app/main/ui/dashboard/team.cljs:983, src/app/main/ui/dashboard/team.cljs:1251, src/app/main/ui/dashboard/team.cljs:1298
|
||||
msgid "dashboard.your-penpot"
|
||||
msgstr "Mans Penpot"
|
||||
|
||||
@@ -1250,7 +1250,7 @@ msgstr "Lai arī Penpot vairs neatbalsta šo līdzekļu veidu, Tu vari"
|
||||
msgid "errors.deprecated.contact.text"
|
||||
msgstr "sazināties ar mums,"
|
||||
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:305
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:307
|
||||
msgid "errors.drop-token-set-parent-to-child"
|
||||
msgstr "Nevar nomest vecāka kopu paša bērna ceļā."
|
||||
|
||||
@@ -1292,7 +1292,7 @@ msgstr ""
|
||||
msgid "errors.feature-not-supported"
|
||||
msgstr "Līdzeklis '%s' netiek atbalstīts."
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:41, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:76, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:299, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:239
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:41, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:77, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:299, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:239
|
||||
msgid "errors.field-max-length"
|
||||
msgstr "Jāsatur ne vairāk par %s rakstzīmēm."
|
||||
|
||||
@@ -1456,7 +1456,7 @@ msgstr "Dalībnieks, kuru mēģināt piešķirt, nepastāv."
|
||||
msgid "errors.team-leave.owner-cant-leave"
|
||||
msgstr "Īpašnieks nevar pamest komandu, ir jāpiešķir īpašnieka loma citam."
|
||||
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:162, src/app/main/data/workspace/tokens/library_edit.cljs:192
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:164, src/app/main/data/workspace/tokens/library_edit.cljs:194
|
||||
msgid "errors.token-set-already-exists"
|
||||
msgstr "Jau pastāv kopa ar tādu pašu nosaukumu"
|
||||
|
||||
@@ -1465,11 +1465,11 @@ msgstr "Jau pastāv kopa ar tādu pašu nosaukumu"
|
||||
msgid "errors.token-set-doesnt-exists"
|
||||
msgstr "Nevar pavairot nezināmu kopu"
|
||||
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:304
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:306
|
||||
msgid "errors.token-set-exists-on-drop"
|
||||
msgstr "Nevar pabeigt nomešanu, ceļā jau pastāv kopa ar tādu pašu nosaukumu."
|
||||
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:77, src/app/main/data/workspace/tokens/library_edit.cljs:96
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:79, src/app/main/data/workspace/tokens/library_edit.cljs:98
|
||||
msgid "errors.token-theme-already-exists"
|
||||
msgstr "Pastāv izskata iespēja ar tādu pašu nosaukumu"
|
||||
|
||||
@@ -1922,7 +1922,7 @@ msgstr "Ievietot starpliktuvē"
|
||||
msgid "inspect.tabs.styles.geometry-panel"
|
||||
msgstr "Izmērs un novietojums"
|
||||
|
||||
#: src/app/main/ui/inspect/styles/style_box.cljs:60, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:179
|
||||
#: src/app/main/ui/inspect/styles/style_box.cljs:60, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:178
|
||||
msgid "inspect.tabs.styles.toggle-style"
|
||||
msgstr "Pārslēgt paneli %s"
|
||||
|
||||
@@ -1989,7 +1989,7 @@ msgstr ""
|
||||
msgid "labels.bad-gateway.main-message"
|
||||
msgstr "Nepareiza vārteja"
|
||||
|
||||
#: src/app/main/data/common.cljs:119, src/app/main/ui/dashboard/change_owner.cljs:64, src/app/main/ui/dashboard/import.cljs:515, src/app/main/ui/dashboard/team.cljs:780, src/app/main/ui/dashboard/team.cljs:1122, src/app/main/ui/delete_shared.cljs:38, src/app/main/ui/exports/assets.cljs:163, src/app/main/ui/exports/files.cljs:168, src/app/main/ui/settings/access_tokens.cljs:175, src/app/main/ui/viewer/share_link.cljs:208, src/app/main/ui/workspace/sidebar/assets/groups.cljs:159, src/app/main/ui/workspace/tokens/export/modal.cljs:44, src/app/main/ui/workspace/tokens/import/modal.cljs:269, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:295, src/app/main/ui/workspace/tokens/remapping_modal.cljs:99, src/app/main/ui/workspace/tokens/settings/menu.cljs:105, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:265
|
||||
#: src/app/main/data/common.cljs:119, src/app/main/ui/dashboard/change_owner.cljs:64, src/app/main/ui/dashboard/import.cljs:515, src/app/main/ui/dashboard/team.cljs:780, src/app/main/ui/dashboard/team.cljs:1122, src/app/main/ui/delete_shared.cljs:38, src/app/main/ui/exports/assets.cljs:163, src/app/main/ui/exports/files.cljs:168, src/app/main/ui/settings/access_tokens.cljs:175, src/app/main/ui/viewer/share_link.cljs:208, src/app/main/ui/workspace/sidebar/assets/groups.cljs:159, src/app/main/ui/workspace/tokens/export/modal.cljs:44, src/app/main/ui/workspace/tokens/import/modal.cljs:269, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:298, src/app/main/ui/workspace/tokens/remapping_modal.cljs:99, src/app/main/ui/workspace/tokens/settings/menu.cljs:105, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:265
|
||||
msgid "labels.cancel"
|
||||
msgstr "Atcelt"
|
||||
|
||||
@@ -2033,7 +2033,7 @@ msgstr "Aprēķinātās"
|
||||
msgid "labels.confirm-password"
|
||||
msgstr "Apstiprināt paroli"
|
||||
|
||||
#: src/app/main/ui/auth/login.cljs:204, src/app/main/ui/dashboard/deleted.cljs:57, src/app/main/ui/dashboard/deleted.cljs:264, src/app/main/ui/dashboard/file_menu.cljs:208, src/app/main/ui/dashboard/import.cljs:521, src/app/main/ui/dashboard/team.cljs:787, src/app/main/ui/exports/files.cljs:173, src/app/main/ui/onboarding/newsletter.cljs:106, src/app/main/ui/settings/subscription.cljs:279, src/app/main/ui/settings/subscription.cljs:313
|
||||
#: src/app/main/ui/auth/login.cljs:204, src/app/main/ui/dashboard/deleted.cljs:43, src/app/main/ui/dashboard/deleted.cljs:275, src/app/main/ui/dashboard/file_menu.cljs:210, src/app/main/ui/dashboard/import.cljs:521, src/app/main/ui/dashboard/team.cljs:787, src/app/main/ui/exports/files.cljs:173, src/app/main/ui/onboarding/newsletter.cljs:106, src/app/main/ui/settings/subscription.cljs:279, src/app/main/ui/settings/subscription.cljs:313
|
||||
msgid "labels.continue"
|
||||
msgstr "Turpināt"
|
||||
|
||||
@@ -2077,7 +2077,7 @@ msgstr "Pielāgotie fonti"
|
||||
msgid "labels.dashboard"
|
||||
msgstr "Pārskata panelis"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:338, src/app/main/ui/dashboard/fonts.cljs:267, src/app/main/ui/dashboard/fonts.cljs:343, src/app/main/ui/dashboard/fonts.cljs:357, src/app/main/ui/dashboard/project_menu.cljs:115, src/app/main/ui/dashboard/team.cljs:1158, src/app/main/ui/settings/access_tokens.cljs:196, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:223, src/app/main/ui/workspace/sidebar/versions.cljs:216, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:288, src/app/main/ui/workspace/tokens/sets/context_menu.cljs:66, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:399
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:338, src/app/main/ui/dashboard/fonts.cljs:267, src/app/main/ui/dashboard/fonts.cljs:343, src/app/main/ui/dashboard/fonts.cljs:357, src/app/main/ui/dashboard/project_menu.cljs:115, src/app/main/ui/dashboard/team.cljs:1158, src/app/main/ui/settings/access_tokens.cljs:196, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:223, src/app/main/ui/workspace/sidebar/versions.cljs:216, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:291, src/app/main/ui/workspace/tokens/sets/context_menu.cljs:66, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:399
|
||||
msgid "labels.delete"
|
||||
msgstr "Dzēst"
|
||||
|
||||
@@ -2110,7 +2110,7 @@ msgstr "Direktors"
|
||||
msgid "labels.discard"
|
||||
msgstr "Atmest"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:29, src/app/main/ui/dashboard/files.cljs:80, src/app/main/ui/dashboard/files.cljs:179, src/app/main/ui/dashboard/projects.cljs:229, src/app/main/ui/dashboard/projects.cljs:233, src/app/main/ui/dashboard/sidebar.cljs:726
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:30, src/app/main/ui/dashboard/files.cljs:80, src/app/main/ui/dashboard/files.cljs:179, src/app/main/ui/dashboard/projects.cljs:229, src/app/main/ui/dashboard/projects.cljs:233, src/app/main/ui/dashboard/sidebar.cljs:726
|
||||
msgid "labels.drafts"
|
||||
msgstr "Melnraksti"
|
||||
|
||||
@@ -2481,7 +2481,7 @@ msgstr "Pamēģināt vēlreiz"
|
||||
msgid "labels.role"
|
||||
msgstr "Loma"
|
||||
|
||||
#: src/app/main/ui/dashboard/fonts.cljs:395, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:204, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:299, src/app/main/ui/workspace/tokens/settings/menu.cljs:110
|
||||
#: src/app/main/ui/dashboard/fonts.cljs:395, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:204, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:302, src/app/main/ui/workspace/tokens/settings/menu.cljs:110
|
||||
msgid "labels.save"
|
||||
msgstr "Saglabāt"
|
||||
|
||||
@@ -2909,27 +2909,27 @@ msgstr "Vai tiešām izdzēst šo piezīmi?"
|
||||
msgid "modals.delete-component-annotation.title"
|
||||
msgstr "Izdzēst piezīmi"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:124
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:125
|
||||
msgid "modals.delete-file-confirm.accept"
|
||||
msgstr "Izdzēst datni"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:123
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:124
|
||||
msgid "modals.delete-file-confirm.message"
|
||||
msgstr "Vai tiešām izdzēst šo datni?"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:122
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:123
|
||||
msgid "modals.delete-file-confirm.title"
|
||||
msgstr "Izdzēš datni"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:118
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:119
|
||||
msgid "modals.delete-file-multi-confirm.accept"
|
||||
msgstr "Izdzēst datnes"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:117
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:118
|
||||
msgid "modals.delete-file-multi-confirm.message"
|
||||
msgstr "Vai tiešām izdzēst %s datnes?"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:116
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:117
|
||||
msgid "modals.delete-file-multi-confirm.title"
|
||||
msgstr "Izdzēš %s datnes"
|
||||
|
||||
@@ -3753,7 +3753,7 @@ msgstr "Doties uz pieteikšanos"
|
||||
msgid "settings.detach"
|
||||
msgstr "Atdalīt"
|
||||
|
||||
#: src/app/main/ui/inspect/exports.cljs:148, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:105, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:107, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:342, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:496, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1062, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1302, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:138, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:149, src/app/main/ui/workspace/sidebar/options/menus/exports.cljs:223, src/app/main/ui/workspace/sidebar/options/menus/fill.cljs:221, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:79, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:430, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:460, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:55, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:56, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:111, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:500, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:511, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:555, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:566, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:595, src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:154, src/app/main/ui/workspace/sidebar/options/menus/stroke.cljs:199, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:336, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:389, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:408, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:427, src/app/main/ui/workspace/sidebar/options/rows/stroke_row.cljs:204
|
||||
#: src/app/main/ui/inspect/exports.cljs:148, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:105, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:107, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:342, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:496, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1062, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1302, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:138, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:149, src/app/main/ui/workspace/sidebar/options/menus/exports.cljs:223, src/app/main/ui/workspace/sidebar/options/menus/fill.cljs:221, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:79, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:430, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:460, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:55, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:56, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:111, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:500, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:511, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:555, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:566, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:595, src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:155, src/app/main/ui/workspace/sidebar/options/menus/stroke.cljs:199, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:336, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:389, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:408, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:427, src/app/main/ui/workspace/sidebar/options/rows/stroke_row.cljs:204
|
||||
msgid "settings.multiple"
|
||||
msgstr "Jaukts"
|
||||
|
||||
@@ -4878,7 +4878,7 @@ msgstr "Atlasīt"
|
||||
msgid "workspace.assets.graphics"
|
||||
msgstr "Attēli"
|
||||
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:190, src/app/main/ui/workspace/sidebar/assets/components.cljs:575, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:806
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:189, src/app/main/ui/workspace/sidebar/assets/components.cljs:575, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:806
|
||||
msgid "workspace.assets.grid-view"
|
||||
msgstr "Režģa skats"
|
||||
|
||||
@@ -4890,7 +4890,7 @@ msgstr "Kopa"
|
||||
msgid "workspace.assets.group-name"
|
||||
msgstr "Kopas nosaukums"
|
||||
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:191, src/app/main/ui/workspace/sidebar/assets/components.cljs:571, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:802
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:190, src/app/main/ui/workspace/sidebar/assets/components.cljs:571, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:802
|
||||
msgid "workspace.assets.list-view"
|
||||
msgstr "Saraksta skats"
|
||||
|
||||
@@ -5289,7 +5289,7 @@ msgstr "Rādīt četrpusējas atbīdes iespējas"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:449, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:455, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:461
|
||||
msgid "workspace.layout-grid.editor.padding.horizontal"
|
||||
msgstr "Guleniskā atbīde"
|
||||
msgstr "Līmeniskā atbīde"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:627, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:632, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:638
|
||||
msgid "workspace.layout-grid.editor.padding.left"
|
||||
@@ -5323,6 +5323,14 @@ msgstr "Noteikt atrašanās vietu"
|
||||
msgid "workspace.layout-grid.editor.top-bar.locate.tooltip"
|
||||
msgstr "Norādīt režģa izkārtojumu"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:266
|
||||
msgid "workspace.layout-item.height-100"
|
||||
msgstr "100% augstums"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:239
|
||||
msgid "workspace.layout-item.width-100"
|
||||
msgstr "100% platums"
|
||||
|
||||
#: src/app/main/ui/workspace/libraries.cljs
|
||||
#, unused
|
||||
msgid "workspace.libraries.add"
|
||||
@@ -5914,6 +5922,30 @@ msgstr "Pēc kavēšanās"
|
||||
msgid "workspace.options.interaction-animation"
|
||||
msgstr "Animācija"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/interactions.cljs:616
|
||||
msgid "workspace.options.interaction-animation-direction-down"
|
||||
msgstr "Uz leju"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/interactions.cljs:593
|
||||
msgid "workspace.options.interaction-animation-direction-in"
|
||||
msgstr "Uz iekšu"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/interactions.cljs:612
|
||||
msgid "workspace.options.interaction-animation-direction-left"
|
||||
msgstr "Pa kreisi"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/interactions.cljs:596
|
||||
msgid "workspace.options.interaction-animation-direction-out"
|
||||
msgstr "Uz āru"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/interactions.cljs:608
|
||||
msgid "workspace.options.interaction-animation-direction-right"
|
||||
msgstr "Pa labi"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/interactions.cljs:620
|
||||
msgid "workspace.options.interaction-animation-direction-up"
|
||||
msgstr "Uz augšu"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/interactions.cljs:383
|
||||
msgid "workspace.options.interaction-animation-dissolve"
|
||||
msgstr "Izšķīst"
|
||||
@@ -6355,6 +6387,14 @@ msgstr "Vairāk bibliotēkas krāsu"
|
||||
msgid "workspace.options.opacity"
|
||||
msgstr "Caurspīdīgums"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/drawing/frame.cljs:108, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:457
|
||||
msgid "workspace.options.orientation.horizontal"
|
||||
msgstr "Līmeniski"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/drawing/frame.cljs:104, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:453
|
||||
msgid "workspace.options.orientation.vertical"
|
||||
msgstr "Stateniski"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/shapes/frame.cljs, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs
|
||||
#, unused
|
||||
msgid "workspace.options.position"
|
||||
@@ -6424,7 +6464,7 @@ msgstr "Atlases aizpildījums"
|
||||
msgid "workspace.options.selection-stroke"
|
||||
msgstr "Atlases vilkums"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:143
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:144
|
||||
msgid "workspace.options.shadow-options.add-shadow"
|
||||
msgstr "Pievienot ēnu"
|
||||
|
||||
@@ -6452,7 +6492,7 @@ msgstr "X"
|
||||
msgid "workspace.options.shadow-options.offsety"
|
||||
msgstr "Y"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:156, src/app/main/ui/workspace/sidebar/options/rows/shadow_row.cljs:161
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:157, src/app/main/ui/workspace/sidebar/options/rows/shadow_row.cljs:161
|
||||
msgid "workspace.options.shadow-options.remove-shadow"
|
||||
msgstr "Noņemt ēnu"
|
||||
|
||||
@@ -6460,15 +6500,15 @@ msgstr "Noņemt ēnu"
|
||||
msgid "workspace.options.shadow-options.spread"
|
||||
msgstr "Izkliede"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:138
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:139
|
||||
msgid "workspace.options.shadow-options.title"
|
||||
msgstr "Ēna"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:137
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:138
|
||||
msgid "workspace.options.shadow-options.title.group"
|
||||
msgstr "Kopas ēna"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:136
|
||||
#: src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:137
|
||||
msgid "workspace.options.shadow-options.title.multiple"
|
||||
msgstr "Atlases ēnas"
|
||||
|
||||
@@ -7175,6 +7215,10 @@ msgstr "Slāņi"
|
||||
msgid "workspace.sidebar.layers.components"
|
||||
msgstr "Sastāvdaļas"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/layers.cljs:297
|
||||
msgid "workspace.sidebar.layers.filter"
|
||||
msgstr "Atsijāt"
|
||||
|
||||
#: src/app/main/ui/workspace/sidebar/layers.cljs:310, src/app/main/ui/workspace/sidebar/layers.cljs:338
|
||||
msgid "workspace.sidebar.layers.frames"
|
||||
msgstr "Plātnes"
|
||||
@@ -7236,7 +7280,7 @@ msgstr "Pievienot jaunu izskatu"
|
||||
msgid "workspace.tokens.add-set-to-group"
|
||||
msgstr "Pievienot kopu šai grupai"
|
||||
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:197, src/app/main/ui/workspace/tokens/management/group.cljs:140
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:196, src/app/main/ui/workspace/tokens/management/group.cljs:147
|
||||
msgid "workspace.tokens.add-token"
|
||||
msgstr "Pievienot tekstvienību: %s"
|
||||
|
||||
@@ -7282,7 +7326,7 @@ msgstr "Tagad izveido savu pirmo izskatu!"
|
||||
msgid "workspace.tokens.create-one"
|
||||
msgstr "Izveidot kādu."
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:234
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:237
|
||||
msgid "workspace.tokens.create-token"
|
||||
msgstr "Izveidot jaunu %s tekstvienību"
|
||||
|
||||
@@ -7298,7 +7342,7 @@ msgstr "Izdzēst izskatu"
|
||||
msgid "workspace.tokens.duplicate"
|
||||
msgstr "Pavairot tekstvienību"
|
||||
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:209, src/app/main/data/workspace/tokens/library_edit.cljs:452
|
||||
#: src/app/main/data/workspace/tokens/library_edit.cljs:211, src/app/main/data/workspace/tokens/library_edit.cljs:454
|
||||
msgid "workspace.tokens.duplicate-suffix"
|
||||
msgstr "dublējums"
|
||||
|
||||
@@ -7314,11 +7358,11 @@ msgstr "Labot izskatu"
|
||||
msgid "workspace.tokens.edit-themes"
|
||||
msgstr "Labot izskatus"
|
||||
|
||||
#: src/app/main/data/workspace/tokens/errors.cljs:41, src/app/main/ui/workspace/tokens/management/forms/color.cljs:22, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:42
|
||||
#: src/app/main/data/workspace/tokens/errors.cljs:41, src/app/main/ui/workspace/tokens/management/forms/color.cljs:22, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:43
|
||||
msgid "workspace.tokens.empty-input"
|
||||
msgstr "Tekstvienības vērtība nevar būt tukša"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:240
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:243
|
||||
msgid "workspace.tokens.enter-token-name"
|
||||
msgstr "Jāievada %s tekstvienības nosaukums"
|
||||
|
||||
@@ -7399,11 +7443,11 @@ msgstr ""
|
||||
"Tekstvienību ievietošana aizvietos visas pašreizējāš tekstvienības, kopas "
|
||||
"un izskatus."
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management.cljs:78
|
||||
#: src/app/main/ui/workspace/tokens/management.cljs:74
|
||||
msgid "workspace.tokens.inactive-set"
|
||||
msgstr "Neaktīva"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management.cljs:69
|
||||
#: src/app/main/ui/workspace/tokens/management.cljs:65
|
||||
msgid "workspace.tokens.inactive-set-description"
|
||||
msgstr ""
|
||||
"Šī kopa nav aktīva. Jānomaina izskats vai jāaktivē šī kopa, lai skatlaukā "
|
||||
@@ -7530,7 +7574,7 @@ msgstr "Atsauce nav derīga vai tā nav nevienā aktīvā kopā"
|
||||
msgid "workspace.tokens.reference-error"
|
||||
msgstr "Atsauču kļūdas: "
|
||||
|
||||
#: src/app/main/data/workspace/tokens/warnings.cljs:15, src/app/main/data/workspace/tokens/warnings.cljs:19, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:56, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:84, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:103, src/app/main/ui/workspace/tokens/management/forms/controls/color_input.cljs:271, src/app/main/ui/workspace/tokens/management/forms/controls/color_input.cljs:445, src/app/main/ui/workspace/tokens/management/forms/controls/fonts_combobox.cljs:169, src/app/main/ui/workspace/tokens/management/forms/controls/fonts_combobox.cljs:304, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:224, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:320, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:421, src/app/main/ui/workspace/tokens/management/token_pill.cljs:121
|
||||
#: src/app/main/data/workspace/tokens/warnings.cljs:15, src/app/main/data/workspace/tokens/warnings.cljs:19, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:56, src/app/main/ui/workspace/colorpicker/color_tokens.cljs:84, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:103, src/app/main/ui/workspace/tokens/management/forms/controls/color_input.cljs:271, src/app/main/ui/workspace/tokens/management/forms/controls/color_input.cljs:445, src/app/main/ui/workspace/tokens/management/forms/controls/fonts_combobox.cljs:169, src/app/main/ui/workspace/tokens/management/forms/controls/fonts_combobox.cljs:304, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:225, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:332, src/app/main/ui/workspace/tokens/management/forms/controls/input.cljs:432, src/app/main/ui/workspace/tokens/management/token_pill.cljs:121
|
||||
#, fuzzy
|
||||
msgid "workspace.tokens.resolved-value"
|
||||
msgstr "Atrisinātā vērtība: %s"
|
||||
@@ -7543,7 +7587,7 @@ msgstr "Saglabāt izskatu"
|
||||
msgid "workspace.tokens.select-set"
|
||||
msgstr "Atlasīt kopu."
|
||||
|
||||
#: src/app/main/data/workspace/tokens/errors.cljs:45, src/app/main/ui/workspace/tokens/management/forms/color.cljs:44, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:79, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:302, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:242
|
||||
#: src/app/main/data/workspace/tokens/errors.cljs:45, src/app/main/ui/workspace/tokens/management/forms/color.cljs:44, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:80, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:302, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:242
|
||||
msgid "workspace.tokens.self-reference"
|
||||
msgstr "Tekstvienībai ir atsauce uz sevi"
|
||||
|
||||
@@ -7599,6 +7643,14 @@ msgstr "Vilkuma platumam ir jābūt vienādam vai lielākam par 0."
|
||||
msgid "workspace.tokens.theme-name"
|
||||
msgstr "Izskats \"%s\""
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/themes/create_modal.cljs:100
|
||||
msgid "workspace.tokens.theme.disable"
|
||||
msgstr "Atspējot"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/themes/create_modal.cljs:96
|
||||
msgid "workspace.tokens.theme.enable"
|
||||
msgstr "Iespējot"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/themes/create_modal.cljs:120
|
||||
msgid "workspace.tokens.themes-description"
|
||||
msgstr ""
|
||||
@@ -7609,16 +7661,16 @@ msgstr ""
|
||||
msgid "workspace.tokens.themes-list"
|
||||
msgstr "Izskatu saraksts"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:273, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:274
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:276, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:277
|
||||
#, fuzzy
|
||||
msgid "workspace.tokens.token-description"
|
||||
msgstr "Apraksts"
|
||||
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:83, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:112, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:239
|
||||
#: src/app/main/ui/workspace/colorpicker/color_tokens.cljs:83, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:112, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:242
|
||||
msgid "workspace.tokens.token-name"
|
||||
msgstr "Nosaukums"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:32, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:69, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:266, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:221, src/app/main/ui/workspace/tokens/management/forms/validators.cljs:103
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/color.cljs:32, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:70, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:266, src/app/main/ui/workspace/tokens/management/forms/typography.cljs:221, src/app/main/ui/workspace/tokens/management/forms/validators.cljs:103
|
||||
msgid "workspace.tokens.token-name-validation-error"
|
||||
msgstr ""
|
||||
" nav derīgs tekstvienības nosaukums.\n"
|
||||
@@ -7630,15 +7682,15 @@ msgstr ""
|
||||
msgid "workspace.tokens.token-not-resolved"
|
||||
msgstr "Nevarēja atrisināt atsauces tekstvienību ar šādu nosaukumu: %s"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:265
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:268
|
||||
msgid "workspace.tokens.token-value"
|
||||
msgstr "Vērtība"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:264, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:129
|
||||
#: src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:267, src/app/main/ui/workspace/tokens/management/forms/shadow.cljs:129
|
||||
msgid "workspace.tokens.token-value-enter"
|
||||
msgstr "Jāievada vērtība vai aizstājvārds ar {aizstājvārds}"
|
||||
|
||||
#: src/app/main/ui/workspace/tokens/management.cljs:68
|
||||
#: src/app/main/ui/workspace/tokens/management.cljs:64
|
||||
msgid "workspace.tokens.tokens-section-title"
|
||||
msgstr "TEKSTVIENĪBAS - %s"
|
||||
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"PO-Revision-Date: 2026-01-08 17:06+0000\n"
|
||||
"Last-Translator: Revenant <mohdmuizz22@yahoo.com>\n"
|
||||
"Language-Team: Malay <https://hosted.weblate.org/projects/penpot/frontend/"
|
||||
"ms/>\n"
|
||||
"Language-Team: Malay "
|
||||
"<https://hosted.weblate.org/projects/penpot/frontend/ms/>\n"
|
||||
"Language: ms\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=utf-8\n"
|
||||
@@ -428,7 +428,7 @@ msgid "dashboard.export-standard-multi"
|
||||
msgstr "Muat turun %s fail standard (.svg + .json)"
|
||||
|
||||
#: src/app/main/ui/exports/files.cljs:155
|
||||
#, fuzzy, unused
|
||||
#, unused
|
||||
msgid "dashboard.export.explain"
|
||||
msgstr ""
|
||||
"Satu atau lebih fail yang anda ingin eksport menggunakan perpustakaan "
|
||||
@@ -581,7 +581,7 @@ msgstr "Berpindah ke"
|
||||
msgid "dashboard.move-to-multi"
|
||||
msgstr "Pindahkan fail %s ke"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:248
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:250
|
||||
msgid "dashboard.move-to-other-team"
|
||||
msgstr "Pindah ke pasukan lain"
|
||||
|
||||
@@ -629,7 +629,7 @@ msgstr "%s ahli"
|
||||
msgid "dashboard.open-in-new-tab"
|
||||
msgstr "Buka fail dalam tab baharu"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:147, src/app/main/ui/dashboard/deleted.cljs:148, src/app/main/ui/dashboard/files.cljs:120, src/app/main/ui/dashboard/grid.cljs:442, src/app/main/ui/dashboard/projects.cljs:266, src/app/main/ui/dashboard/projects.cljs:267
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:157, src/app/main/ui/dashboard/deleted.cljs:158, src/app/main/ui/dashboard/files.cljs:120, src/app/main/ui/dashboard/grid.cljs:442, src/app/main/ui/dashboard/projects.cljs:266, src/app/main/ui/dashboard/projects.cljs:267
|
||||
msgid "dashboard.options"
|
||||
msgstr "Pilihan"
|
||||
|
||||
@@ -641,7 +641,7 @@ msgstr "Tukar kata laluan"
|
||||
msgid "dashboard.pin-unpin"
|
||||
msgstr "Semat/Nyahsemat"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:41, src/app/main/ui/dashboard/projects.cljs:57
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:62, src/app/main/ui/dashboard/projects.cljs:57
|
||||
msgid "dashboard.projects-title"
|
||||
msgstr "Projek"
|
||||
|
||||
@@ -678,7 +678,7 @@ msgstr "Pilih tema"
|
||||
msgid "dashboard.show-all-files"
|
||||
msgstr "Tunjukkan semua fail"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:97
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:98
|
||||
msgid "dashboard.success-delete-file"
|
||||
msgid_plural "dashboard.success-delete-file"
|
||||
msgstr[0] "Fail anda telah berjaya dipadamkan"
|
||||
@@ -687,7 +687,7 @@ msgstr[0] "Fail anda telah berjaya dipadamkan"
|
||||
msgid "dashboard.success-delete-project"
|
||||
msgstr "Projek anda telah berjaya dipadamkan"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:92
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:93
|
||||
msgid "dashboard.success-duplicate-file"
|
||||
msgid_plural "dashboard.success-delete-file"
|
||||
msgstr[0] "Fail anda telah berjaya dibuat pendua"
|
||||
@@ -696,11 +696,11 @@ msgstr[0] "Fail anda telah berjaya dibuat pendua"
|
||||
msgid "dashboard.success-duplicate-project"
|
||||
msgstr "Projek anda telah berjaya dibuat pendua"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:131, src/app/main/ui/dashboard/grid.cljs:634, src/app/main/ui/dashboard/sidebar.cljs:165
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:132, src/app/main/ui/dashboard/grid.cljs:634, src/app/main/ui/dashboard/sidebar.cljs:165
|
||||
msgid "dashboard.success-move-file"
|
||||
msgstr "Fail anda berjaya dialihkan"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:130
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:131
|
||||
msgid "dashboard.success-move-files"
|
||||
msgstr "Fail anda telah berjaya dialihkan"
|
||||
|
||||
@@ -791,7 +791,7 @@ msgstr "E-mel"
|
||||
msgid "dashboard.your-name"
|
||||
msgstr "Nama anda"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:39, src/app/main/ui/dashboard/fonts.cljs:42, src/app/main/ui/dashboard/libraries.cljs:56, src/app/main/ui/dashboard/projects.cljs:355, src/app/main/ui/dashboard/search.cljs:48, src/app/main/ui/dashboard/sidebar.cljs:302, src/app/main/ui/dashboard/team.cljs:537, src/app/main/ui/dashboard/team.cljs:983, src/app/main/ui/dashboard/team.cljs:1251, src/app/main/ui/dashboard/team.cljs:1298
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:40, src/app/main/ui/dashboard/fonts.cljs:42, src/app/main/ui/dashboard/libraries.cljs:56, src/app/main/ui/dashboard/projects.cljs:355, src/app/main/ui/dashboard/search.cljs:48, src/app/main/ui/dashboard/sidebar.cljs:302, src/app/main/ui/dashboard/team.cljs:537, src/app/main/ui/dashboard/team.cljs:983, src/app/main/ui/dashboard/team.cljs:1251, src/app/main/ui/dashboard/team.cljs:1298
|
||||
msgid "dashboard.your-penpot"
|
||||
msgstr "Penpot anda"
|
||||
|
||||
@@ -1399,7 +1399,7 @@ msgstr ""
|
||||
msgid "labels.bad-gateway.main-message"
|
||||
msgstr "Ralat pelayan (Bad Gateway)"
|
||||
|
||||
#: src/app/main/data/common.cljs:119, src/app/main/ui/dashboard/change_owner.cljs:64, src/app/main/ui/dashboard/import.cljs:515, src/app/main/ui/dashboard/team.cljs:780, src/app/main/ui/dashboard/team.cljs:1122, src/app/main/ui/delete_shared.cljs:38, src/app/main/ui/exports/assets.cljs:163, src/app/main/ui/exports/files.cljs:168, src/app/main/ui/settings/access_tokens.cljs:175, src/app/main/ui/viewer/share_link.cljs:208, src/app/main/ui/workspace/sidebar/assets/groups.cljs:159, src/app/main/ui/workspace/tokens/export/modal.cljs:44, src/app/main/ui/workspace/tokens/import/modal.cljs:269, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:295, src/app/main/ui/workspace/tokens/remapping_modal.cljs:99, src/app/main/ui/workspace/tokens/settings/menu.cljs:105, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:265
|
||||
#: src/app/main/data/common.cljs:119, src/app/main/ui/dashboard/change_owner.cljs:64, src/app/main/ui/dashboard/import.cljs:515, src/app/main/ui/dashboard/team.cljs:780, src/app/main/ui/dashboard/team.cljs:1122, src/app/main/ui/delete_shared.cljs:38, src/app/main/ui/exports/assets.cljs:163, src/app/main/ui/exports/files.cljs:168, src/app/main/ui/settings/access_tokens.cljs:175, src/app/main/ui/viewer/share_link.cljs:208, src/app/main/ui/workspace/sidebar/assets/groups.cljs:159, src/app/main/ui/workspace/tokens/export/modal.cljs:44, src/app/main/ui/workspace/tokens/import/modal.cljs:269, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:298, src/app/main/ui/workspace/tokens/remapping_modal.cljs:99, src/app/main/ui/workspace/tokens/settings/menu.cljs:105, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:265
|
||||
msgid "labels.cancel"
|
||||
msgstr "Batal"
|
||||
|
||||
@@ -1427,7 +1427,7 @@ msgstr "Komuniti"
|
||||
msgid "labels.confirm-password"
|
||||
msgstr "Sahkan kata laluan"
|
||||
|
||||
#: src/app/main/ui/auth/login.cljs:204, src/app/main/ui/dashboard/deleted.cljs:57, src/app/main/ui/dashboard/deleted.cljs:264, src/app/main/ui/dashboard/file_menu.cljs:208, src/app/main/ui/dashboard/import.cljs:521, src/app/main/ui/dashboard/team.cljs:787, src/app/main/ui/exports/files.cljs:173, src/app/main/ui/onboarding/newsletter.cljs:106, src/app/main/ui/settings/subscription.cljs:279, src/app/main/ui/settings/subscription.cljs:313
|
||||
#: src/app/main/ui/auth/login.cljs:204, src/app/main/ui/dashboard/deleted.cljs:43, src/app/main/ui/dashboard/deleted.cljs:275, src/app/main/ui/dashboard/file_menu.cljs:210, src/app/main/ui/dashboard/import.cljs:521, src/app/main/ui/dashboard/team.cljs:787, src/app/main/ui/exports/files.cljs:173, src/app/main/ui/onboarding/newsletter.cljs:106, src/app/main/ui/settings/subscription.cljs:279, src/app/main/ui/settings/subscription.cljs:313
|
||||
msgid "labels.continue"
|
||||
msgstr "Teruskan"
|
||||
|
||||
@@ -1463,7 +1463,7 @@ msgstr "Fon tersuai"
|
||||
msgid "labels.dashboard"
|
||||
msgstr "Papan pemuka"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:338, src/app/main/ui/dashboard/fonts.cljs:267, src/app/main/ui/dashboard/fonts.cljs:343, src/app/main/ui/dashboard/fonts.cljs:357, src/app/main/ui/dashboard/project_menu.cljs:115, src/app/main/ui/dashboard/team.cljs:1158, src/app/main/ui/settings/access_tokens.cljs:196, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:223, src/app/main/ui/workspace/sidebar/versions.cljs:216, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:288, src/app/main/ui/workspace/tokens/sets/context_menu.cljs:66, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:399
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:338, src/app/main/ui/dashboard/fonts.cljs:267, src/app/main/ui/dashboard/fonts.cljs:343, src/app/main/ui/dashboard/fonts.cljs:357, src/app/main/ui/dashboard/project_menu.cljs:115, src/app/main/ui/dashboard/team.cljs:1158, src/app/main/ui/settings/access_tokens.cljs:196, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:223, src/app/main/ui/workspace/sidebar/versions.cljs:216, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:291, src/app/main/ui/workspace/tokens/sets/context_menu.cljs:66, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:399
|
||||
msgid "labels.delete"
|
||||
msgstr "Padam"
|
||||
|
||||
@@ -1491,7 +1491,7 @@ msgstr "Pembangun"
|
||||
msgid "labels.discard"
|
||||
msgstr "Buang"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:29, src/app/main/ui/dashboard/files.cljs:80, src/app/main/ui/dashboard/files.cljs:179, src/app/main/ui/dashboard/projects.cljs:229, src/app/main/ui/dashboard/projects.cljs:233, src/app/main/ui/dashboard/sidebar.cljs:726
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:30, src/app/main/ui/dashboard/files.cljs:80, src/app/main/ui/dashboard/files.cljs:179, src/app/main/ui/dashboard/projects.cljs:229, src/app/main/ui/dashboard/projects.cljs:233, src/app/main/ui/dashboard/sidebar.cljs:726
|
||||
msgid "labels.drafts"
|
||||
msgstr "Draf"
|
||||
|
||||
@@ -1751,7 +1751,7 @@ msgstr "Cuba semula"
|
||||
msgid "labels.role"
|
||||
msgstr "Peranan"
|
||||
|
||||
#: src/app/main/ui/dashboard/fonts.cljs:395, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:204, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:299, src/app/main/ui/workspace/tokens/settings/menu.cljs:110
|
||||
#: src/app/main/ui/dashboard/fonts.cljs:395, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:204, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:302, src/app/main/ui/workspace/tokens/settings/menu.cljs:110
|
||||
msgid "labels.save"
|
||||
msgstr "Simpan"
|
||||
|
||||
@@ -2022,27 +2022,27 @@ msgstr "Adakah anda pasti ingin memadamkan anotasi ini?"
|
||||
msgid "modals.delete-component-annotation.title"
|
||||
msgstr "Padam anotasi"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:124
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:125
|
||||
msgid "modals.delete-file-confirm.accept"
|
||||
msgstr "Padam fail"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:123
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:124
|
||||
msgid "modals.delete-file-confirm.message"
|
||||
msgstr "Adakah anda pasti mahu memadamkan fail ini?"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:122
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:123
|
||||
msgid "modals.delete-file-confirm.title"
|
||||
msgstr "Memadam fail"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:118
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:119
|
||||
msgid "modals.delete-file-multi-confirm.accept"
|
||||
msgstr "Padam fail"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:117
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:118
|
||||
msgid "modals.delete-file-multi-confirm.message"
|
||||
msgstr "Adakah anda pasti mahu memadamkan %s fail?"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:116
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:117
|
||||
msgid "modals.delete-file-multi-confirm.title"
|
||||
msgstr "Memadamkan %s fail"
|
||||
|
||||
@@ -2607,7 +2607,7 @@ msgstr "Pergi ke log masuk"
|
||||
msgid "settings.detach"
|
||||
msgstr "Tanggalkan"
|
||||
|
||||
#: src/app/main/ui/inspect/exports.cljs:148, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:105, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:107, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:342, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:496, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1062, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1302, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:138, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:149, src/app/main/ui/workspace/sidebar/options/menus/exports.cljs:223, src/app/main/ui/workspace/sidebar/options/menus/fill.cljs:221, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:79, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:430, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:460, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:55, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:56, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:111, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:500, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:511, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:555, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:566, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:595, src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:154, src/app/main/ui/workspace/sidebar/options/menus/stroke.cljs:199, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:336, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:389, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:408, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:427, src/app/main/ui/workspace/sidebar/options/rows/stroke_row.cljs:204
|
||||
#: src/app/main/ui/inspect/exports.cljs:148, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:105, src/app/main/ui/workspace/sidebar/options/menus/border_radius.cljs:107, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:342, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:496, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1062, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:1302, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:138, src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs:149, src/app/main/ui/workspace/sidebar/options/menus/exports.cljs:223, src/app/main/ui/workspace/sidebar/options/menus/fill.cljs:221, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:79, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:430, src/app/main/ui/workspace/sidebar/options/menus/layout_container.cljs:460, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:55, src/app/main/ui/workspace/sidebar/options/menus/layout_item.cljs:56, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:111, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:500, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:511, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:555, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:566, src/app/main/ui/workspace/sidebar/options/menus/measures.cljs:595, src/app/main/ui/workspace/sidebar/options/menus/shadow.cljs:155, src/app/main/ui/workspace/sidebar/options/menus/stroke.cljs:199, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:336, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:389, src/app/main/ui/workspace/sidebar/options/menus/typography.cljs:408, src/app/main/ui/workspace/sidebar/options/rows/color_row.cljs:427, src/app/main/ui/workspace/sidebar/options/rows/stroke_row.cljs:204
|
||||
msgid "settings.multiple"
|
||||
msgstr "Bercampur"
|
||||
|
||||
|
||||
@@ -87,7 +87,7 @@ msgstr "Flytt til"
|
||||
msgid "dashboard.move-to-multi"
|
||||
msgstr "Flytt %s filer til"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:248
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:250
|
||||
msgid "dashboard.move-to-other-team"
|
||||
msgstr "Flytt til annet team"
|
||||
|
||||
@@ -115,7 +115,7 @@ msgstr "Endre passord"
|
||||
msgid "dashboard.pin-unpin"
|
||||
msgstr "Fest/løsne"
|
||||
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:41, src/app/main/ui/dashboard/projects.cljs:57
|
||||
#: src/app/main/ui/dashboard/deleted.cljs:62, src/app/main/ui/dashboard/projects.cljs:57
|
||||
msgid "dashboard.projects-title"
|
||||
msgstr "Prosjekter"
|
||||
|
||||
@@ -172,7 +172,7 @@ msgstr "Din konto"
|
||||
msgid "dashboard.your-name"
|
||||
msgstr "Ditt navn"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:39, src/app/main/ui/dashboard/fonts.cljs:42, src/app/main/ui/dashboard/libraries.cljs:56, src/app/main/ui/dashboard/projects.cljs:355, src/app/main/ui/dashboard/search.cljs:48, src/app/main/ui/dashboard/sidebar.cljs:302, src/app/main/ui/dashboard/team.cljs:537, src/app/main/ui/dashboard/team.cljs:983, src/app/main/ui/dashboard/team.cljs:1251, src/app/main/ui/dashboard/team.cljs:1298
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:40, src/app/main/ui/dashboard/fonts.cljs:42, src/app/main/ui/dashboard/libraries.cljs:56, src/app/main/ui/dashboard/projects.cljs:355, src/app/main/ui/dashboard/search.cljs:48, src/app/main/ui/dashboard/sidebar.cljs:302, src/app/main/ui/dashboard/team.cljs:537, src/app/main/ui/dashboard/team.cljs:983, src/app/main/ui/dashboard/team.cljs:1251, src/app/main/ui/dashboard/team.cljs:1298
|
||||
msgid "dashboard.your-penpot"
|
||||
msgstr "Din Penpot"
|
||||
|
||||
@@ -294,7 +294,7 @@ msgstr "Tekst"
|
||||
msgid "labels.accept"
|
||||
msgstr "Godta"
|
||||
|
||||
#: src/app/main/data/common.cljs:119, src/app/main/ui/dashboard/change_owner.cljs:64, src/app/main/ui/dashboard/import.cljs:515, src/app/main/ui/dashboard/team.cljs:780, src/app/main/ui/dashboard/team.cljs:1122, src/app/main/ui/delete_shared.cljs:38, src/app/main/ui/exports/assets.cljs:163, src/app/main/ui/exports/files.cljs:168, src/app/main/ui/settings/access_tokens.cljs:175, src/app/main/ui/viewer/share_link.cljs:208, src/app/main/ui/workspace/sidebar/assets/groups.cljs:159, src/app/main/ui/workspace/tokens/export/modal.cljs:44, src/app/main/ui/workspace/tokens/import/modal.cljs:269, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:295, src/app/main/ui/workspace/tokens/remapping_modal.cljs:99, src/app/main/ui/workspace/tokens/settings/menu.cljs:105, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:265
|
||||
#: src/app/main/data/common.cljs:119, src/app/main/ui/dashboard/change_owner.cljs:64, src/app/main/ui/dashboard/import.cljs:515, src/app/main/ui/dashboard/team.cljs:780, src/app/main/ui/dashboard/team.cljs:1122, src/app/main/ui/delete_shared.cljs:38, src/app/main/ui/exports/assets.cljs:163, src/app/main/ui/exports/files.cljs:168, src/app/main/ui/settings/access_tokens.cljs:175, src/app/main/ui/viewer/share_link.cljs:208, src/app/main/ui/workspace/sidebar/assets/groups.cljs:159, src/app/main/ui/workspace/tokens/export/modal.cljs:44, src/app/main/ui/workspace/tokens/import/modal.cljs:269, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:298, src/app/main/ui/workspace/tokens/remapping_modal.cljs:99, src/app/main/ui/workspace/tokens/settings/menu.cljs:105, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:265
|
||||
msgid "labels.cancel"
|
||||
msgstr "Avbryt"
|
||||
|
||||
@@ -326,7 +326,7 @@ msgstr "Egendefinerte skrifter"
|
||||
msgid "labels.dashboard"
|
||||
msgstr "Oversikt"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:338, src/app/main/ui/dashboard/fonts.cljs:267, src/app/main/ui/dashboard/fonts.cljs:343, src/app/main/ui/dashboard/fonts.cljs:357, src/app/main/ui/dashboard/project_menu.cljs:115, src/app/main/ui/dashboard/team.cljs:1158, src/app/main/ui/settings/access_tokens.cljs:196, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:223, src/app/main/ui/workspace/sidebar/versions.cljs:216, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:288, src/app/main/ui/workspace/tokens/sets/context_menu.cljs:66, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:399
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:338, src/app/main/ui/dashboard/fonts.cljs:267, src/app/main/ui/dashboard/fonts.cljs:343, src/app/main/ui/dashboard/fonts.cljs:357, src/app/main/ui/dashboard/project_menu.cljs:115, src/app/main/ui/dashboard/team.cljs:1158, src/app/main/ui/settings/access_tokens.cljs:196, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:223, src/app/main/ui/workspace/sidebar/versions.cljs:216, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:291, src/app/main/ui/workspace/tokens/sets/context_menu.cljs:66, src/app/main/ui/workspace/tokens/themes/create_modal.cljs:399
|
||||
msgid "labels.delete"
|
||||
msgstr "Slett"
|
||||
|
||||
@@ -342,7 +342,7 @@ msgstr "Slett tråd"
|
||||
msgid "labels.delete-multi-files"
|
||||
msgstr "Slett %s filer"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:29, src/app/main/ui/dashboard/files.cljs:80, src/app/main/ui/dashboard/files.cljs:179, src/app/main/ui/dashboard/projects.cljs:229, src/app/main/ui/dashboard/projects.cljs:233, src/app/main/ui/dashboard/sidebar.cljs:726
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:30, src/app/main/ui/dashboard/files.cljs:80, src/app/main/ui/dashboard/files.cljs:179, src/app/main/ui/dashboard/projects.cljs:229, src/app/main/ui/dashboard/projects.cljs:233, src/app/main/ui/dashboard/sidebar.cljs:726
|
||||
msgid "labels.drafts"
|
||||
msgstr "Kladder"
|
||||
|
||||
@@ -422,7 +422,7 @@ msgstr "Prøv igjen"
|
||||
msgid "labels.role"
|
||||
msgstr "Rolle"
|
||||
|
||||
#: src/app/main/ui/dashboard/fonts.cljs:395, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:204, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:299, src/app/main/ui/workspace/tokens/settings/menu.cljs:110
|
||||
#: src/app/main/ui/dashboard/fonts.cljs:395, src/app/main/ui/workspace/sidebar/options/menus/component.cljs:204, src/app/main/ui/workspace/tokens/management/forms/generic_form.cljs:302, src/app/main/ui/workspace/tokens/settings/menu.cljs:110
|
||||
msgid "labels.save"
|
||||
msgstr "Lagre"
|
||||
|
||||
@@ -490,11 +490,11 @@ msgstr "Slett samtale"
|
||||
msgid "modals.delete-comment-thread.title"
|
||||
msgstr "Slett samtale"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:124
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:125
|
||||
msgid "modals.delete-file-confirm.accept"
|
||||
msgstr "Slett fil"
|
||||
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:118
|
||||
#: src/app/main/ui/dashboard/file_menu.cljs:119
|
||||
msgid "modals.delete-file-multi-confirm.accept"
|
||||
msgstr "Slett filer"
|
||||
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user