♻️ Refactor nitrate copies (#9619)

This commit is contained in:
Marina López 2026-05-14 12:19:55 +02:00 committed by GitHub
parent 67e9c44b98
commit 08b30f76f3
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
5 changed files with 94 additions and 60 deletions

View File

@ -141,27 +141,27 @@
;; Banner for users with active nitrate license but no organizations created
[:div {:class (stl/css :nitrate-banner :highlighted)}
[:div {:class (stl/css :nitrate-content)}
[:span {:class (stl/css :nitrate-title)} "Create your first org"]]
[:span {:class (stl/css :nitrate-title)} (tr "subscription.banner.see-enterprise")]]
[:div {:class (stl/css :nitrate-content)}
[:span {:class (stl/css :nitrate-info)} "Some further information and explanation."]
[:span {:class (stl/css :nitrate-info)} (tr "subscription.banner.create-org-info")]
[:> button* {:variant "primary"
:type "button"
:class (stl/css :nitrate-bottom-button)
:on-click handle-go-to-cc} "CREATE ORGANIZATION"]]]
:on-click handle-go-to-cc} (tr "nitrate.activation-success.create-org")]]]
;; Banner for users without nitrate license
(when (not nitrate?)
[:div {:class (stl/css :nitrate-banner :highlighted)}
[:div {:class (stl/css :nitrate-content)}
[:span {:class (stl/css :nitrate-title)} "Unlock Nitrate features"]]
[:span {:class (stl/css :nitrate-title)} (tr "subscription.dashboard.banner.unlock-features")]]
[:div {:class (stl/css :nitrate-content)}
[:span {:class (stl/css :nitrate-info)} "Some further information and explanation."]
[:span {:class (stl/css :nitrate-info)} (tr "subscription.dashboard.banner.unlock-features-description")]
[:> button* {:variant "primary"
:type "button"
:class (stl/css :nitrate-bottom-button)
:on-click handle-click} (if (:subscription profile)
"UPGRADE TO NITRATE"
"Try 14 days for free")]]]))))
(tr "subscription.dashboard.banner.upgrade-nitrate")
(tr "nitrate.form.try-free"))]]]))))
(mf/defc nitrate-current-plan*
[{:keys [profile]}]

View File

@ -7,12 +7,10 @@
(ns app.main.ui.nitrate.nitrate-form
(:require-macros [app.main.style :as stl])
(:require
[app.common.schema :as sm]
[app.main.data.modal :as modal]
[app.main.data.nitrate :as dnt]
[app.main.refs :as refs]
[app.main.store :as st]
[app.main.ui.components.forms :as fm]
[app.main.ui.ds.buttons.button :refer [button*]]
[app.main.ui.ds.foundations.assets.icon :as i :refer [icon*]]
[app.main.ui.ds.foundations.assets.raw-svg :refer [raw-svg*]]
@ -20,10 +18,6 @@
[app.util.i18n :refer [tr]]
[rumext.v2 :as mf]))
(def ^:private schema:nitrate-form
[:map {:title "NitrateForm"}
[:subscription [::sm/one-of #{:monthly :yearly}]]])
(mf/defc nitrate-form-modal*
{::mf/register modal/components
::mf/register-as :nitrate-form
@ -32,16 +26,10 @@
(let [online? (:licenses connectivity)
profile (mf/deref refs/profile)
initial (mf/with-memo []
{:subscription "yearly"})
form (fm/use-form :schema schema:nitrate-form
:initial initial)
on-click
(mf/use-fn
(mf/deps form)
(fn []
(let [subscription (-> @form :clean-data :subscription name)]
(dnt/go-to-buy-nitrate-license subscription dnt/go-to-subscription-url))))
(dnt/go-to-buy-nitrate-license "monthly" dnt/go-to-subscription-url)))
on-activate-click
(mf/use-fn
@ -63,22 +51,20 @@
(tr "nitrate.form.title")]
[:p {:class (stl/css :modal-text-large)}
"Prow scuttle parrel provost."]
[:p {:class (stl/css :modal-text-large)}
"Sail ho shrouds spirits boom mizzenmast yardarm. Pinnace holystone mizzenmast quarter crow's nest nipperkin grog yardarm hempen halter furl."]
[:p {:class (stl/css :modal-text-large)}
"Deadlights jack lad schooner scallywag dance the hempen jig carouser broadside cable strike colors."]
(tr "nitrate.form.enterprise-intro")]
[:ul
[:li {:class (stl/css :modal-text-large)}
"- " (tr "nitrate.form.enterprise-feature-1")]
[:li {:class (stl/css :modal-text-large)}
"- " (tr "nitrate.form.enterprise-feature-2")]
[:li {:class (stl/css :modal-text-large)}
"- " (tr "nitrate.form.enterprise-feature-3")]]
(if online?
[:& fm/form {:form form}
[:p {:class (stl/css :modal-text-large)}
[[:p {:class (stl/css :modal-text-large)}
(tr "nitrate.form.enterprise.price")]
[:& fm/radio-buttons
{:options [{:label (tr "nitrate.form.billing-monthly") :value "monthly"}
{:label (tr "nitrate.form.billing-yearly") :value "yearly"}]
:name :subscription
:class (stl/css :radio-btns)}]]
[:p {:class (stl/css :modal-text-large :modal-buttons-section)}
[:div {:class (stl/css :modal-text-large :modal-buttons-section)}
[:div {:class (stl/css :modal-buttons-section)}
[:> button* {:variant "primary"
:on-click on-click

View File

@ -56,7 +56,7 @@
}
.modal-info {
margin-block-start: var(--sp-s);
margin-block: var(--sp-s) var(--sp-l);
width: 40%;
}
@ -103,7 +103,7 @@
}
.contact {
margin-block-start: $sz-96;
margin-block-start: $sz-48;
color: var(--color-foreground-primary);
}

View File

@ -5176,6 +5176,15 @@ msgstr "Inviting people while on the Unlimited plan"
msgid "subscription.dashboard.upgrade-plan.power-up"
msgstr "Power up"
msgid "subscription.dashboard.banner.unlock-features"
msgstr "Unlock Enterprise features"
msgid "subscription.dashboard.banner.unlock-features-description"
msgstr "Set fine-grained permissions and keep your design operations secure, without compromising the open-source freedom your team already loves."
msgid "subscription.dashboard.banner.upgrade-nitrate"
msgstr "Get started with Enterprise"
msgid "subscription.error.nitrate.checkout-cancelled"
msgstr "Payment was not completed. Try again whenever you're ready."
@ -9363,22 +9372,31 @@ msgid "nitrate.activation-success.create-org"
msgstr "Create organization"
msgid "nitrate.form.title"
msgstr "Unlock Nitrate Features"
msgstr "Unlock Enterprise features"
msgid "nitrate.form.billing-monthly"
msgstr "Price Tag Monthly"
msgid "nitrate.form.enterprise-intro"
msgstr "Everything your teams need to work securely at scale:"
msgid "nitrate.form.billing-yearly"
msgstr "Price Tag Yearly (Discount)"
msgid "nitrate.form.enterprise-feature-1"
msgstr "Global to fine-grained permissions across teams and projects"
msgid "nitrate.form.upgrade"
msgstr "Upgrade to Nitrate"
msgid "nitrate.form.enterprise-feature-2"
msgstr "Centralized control over who does what and where, from a dedicated Admin Console"
msgid "nitrate.form.enterprise-feature-3"
msgstr "Full open-source freedom, with the governance your org needs"
msgid "nitrate.form.enterprise.price"
msgstr "$25 / member per month"
msgid "nitrate.form.start-enterprise"
msgstr "Get started with Enterprise"
msgid "nitrate.form.try-free"
msgstr "Try it free for 14 days"
msgid "nitrate.form.cancel-anytime"
msgstr "Cancel anytime before your next billing cycle."
msgstr "Payment will be processed at the end of the trial. Cancel anytime."
msgid "nitrate.form.have-code"
msgstr "Have an activation code?"
@ -9390,10 +9408,10 @@ msgid "nitrate.form.see-plan"
msgstr "See my current plan"
msgid "nitrate.form.contact-upgrade"
msgstr "Contact us to upgrade to Nitrate:"
msgstr "Contact us to upgrade to Enterprise:"
msgid "nitrate.form.contact-trial"
msgstr "Contact us to try Nitrate for 14 days:"
msgstr "Contact us to try Enterprise for 14 days:"
msgid "nitrate.activation-code.invalid-error"
msgstr "Invalid code."
@ -9447,14 +9465,20 @@ msgid "subscription.current-plan.unlimited-trial"
msgstr "Unlimited Trial"
msgid "subscription.current-plan.nitrate"
msgstr "Nitrate"
msgstr "Enterprise"
msgid "subscription.current-plan.nitrate-trial"
msgstr "Nitrate Trial"
msgstr "Enterprise Trial"
msgid "subscription.current-plan.enterprise"
msgstr "Enterprise"
msgid "subscription.banner.see-enterprise"
msgstr "See Enterprise in action"
msgid "subscription.banner.create-org-info"
msgstr "Create an organization and see exactly how Enterprise works. Set rules, manage your teams and discover a new level of control over your design workflow."
msgid "dashboard.no-permission-create-team.message"
msgstr "You are not allowed to create teams within %s organization. If you need more information, contact the owner."

View File

@ -5088,6 +5088,15 @@ msgstr "Invita a personas mientras estás en el plan Unlimited"
msgid "subscription.dashboard.upgrade-plan.power-up"
msgstr "Mejora"
msgid "subscription.dashboard.banner.unlock-features"
msgstr "Desbloquea las funciones Enterprise"
msgid "subscription.dashboard.banner.unlock-features-description"
msgstr "Establece permisos detallados y garantiza la seguridad de tus operaciones de diseño, sin renunciar a la libertad del código abierto que tanto valora tu equipo."
msgid "subscription.dashboard.banner.upgrade-nitrate"
msgstr "Empieza a utilizar Enterprise"
msgid "subscription.error.nitrate.checkout-cancelled"
msgstr "El pago no se completó. Inténtalo de nuevo cuando quieras."
@ -9055,22 +9064,31 @@ msgid "nitrate.activation-success.create-org"
msgstr "Crear organización"
msgid "nitrate.form.title"
msgstr "Desbloquea las funciones de Nitrate"
msgstr "Desbloquea las funciones Enterprise"
msgid "nitrate.form.billing-monthly"
msgstr "Precio mensual"
msgid "nitrate.form.enterprise-intro"
msgstr "Todo lo que tus equipos necesitan para trabajar de forma segura a escala:"
msgid "nitrate.form.billing-yearly"
msgstr "Precio anual (descuento)"
msgid "nitrate.form.enterprise-feature-1"
msgstr "Permisos globales y granulares en equipos y proyectos"
msgid "nitrate.form.upgrade"
msgstr "Actualizar a Nitrate"
msgid "nitrate.form.enterprise-feature-2"
msgstr "Control centralizado sobre quién hace qué y dónde, desde una consola de administración dedicada"
msgid "nitrate.form.enterprise-feature-3"
msgstr "Total libertad open-source, con la gobernanza que tu organización necesita"
msgid "nitrate.form.enterprise.price"
msgstr "$25 / miembro por mes"
msgid "nitrate.form.start-enterprise"
msgstr "Empieza a utilizar Enterprise"
msgid "nitrate.form.try-free"
msgstr "Pruébalo gratis durante 14 días"
msgid "nitrate.form.cancel-anytime"
msgstr "Cancela en cualquier momento antes de tu próximo ciclo de facturación."
msgstr "El pago se procesará al finalizar el periodo de prueba. Puedes cancelar en cualquier momento."
msgid "nitrate.form.have-code"
msgstr "¿Tienes un código de activación?"
@ -9082,10 +9100,10 @@ msgid "nitrate.form.see-plan"
msgstr "Ver mi plan actual"
msgid "nitrate.form.contact-upgrade"
msgstr "Contáctanos para actualizar a Nitrate:"
msgstr "Contáctanos para actualizar a Enterprise:"
msgid "nitrate.form.contact-trial"
msgstr "Contáctanos para probar Nitrate durante 14 días:"
msgstr "Contáctanos para probar Enterprise durante 14 días:"
msgid "nitrate.activation-code.invalid-error"
msgstr "Código inválido."
@ -9142,14 +9160,20 @@ msgid "subscription.current-plan.unlimited-trial"
msgstr "Unlimited (Prueba)"
msgid "subscription.current-plan.nitrate"
msgstr "Nitrate"
msgstr "Enterprise"
msgid "subscription.current-plan.nitrate-trial"
msgstr "Nitrate (Prueba)"
msgstr "Enterprise (Prueba)"
msgid "subscription.current-plan.enterprise"
msgstr "Enterprise"
msgid "subscription.banner.see-enterprise"
msgstr "Vea Enterprise en acción"
msgid "subscription.banner.create-org-info"
msgstr "Crea una organización y descubre exactamente cómo funciona Enterprise. Establece normas, gestiona tus equipos y disfruta de un nuevo nivel de control sobre tu flujo de trabajo de diseño."
msgid "dashboard.no-permission-create-team.message"
msgstr "No tienes permiso para crear equipos en la organización %s. Si necesitas más información, contacta con el propietario."