@openrails/billing-ui 0.230.0 → 0.234.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (65) hide show
  1. package/CHANGELOG.md +117 -9
  2. package/README.md +88 -39
  3. package/dist/account/account-billing.d.ts +3 -3
  4. package/dist/account/cancel-dialog.d.ts +2 -2
  5. package/dist/account/format.d.ts +4 -4
  6. package/dist/account/payment-methods-panel.d.ts +7 -9
  7. package/dist/account/section.d.ts +3 -1
  8. package/dist/checkout-page.d.ts +6 -1
  9. package/dist/client/client.d.ts +81 -62
  10. package/dist/client/generated/currencies.d.ts +1 -0
  11. package/dist/client/generated/error-codes.d.ts +7 -0
  12. package/dist/client/generated/routes.d.ts +764 -0
  13. package/dist/client/generated/wire.d.ts +772 -0
  14. package/dist/client/index.d.ts +3 -3
  15. package/dist/client/types.d.ts +498 -393
  16. package/dist/client-CWX6QpLa.js +920 -0
  17. package/dist/client-CWX6QpLa.js.map +1 -0
  18. package/dist/client.js +2 -3
  19. package/dist/components/methods.d.ts +3 -3
  20. package/dist/config-DZ97SQG2.js +341 -0
  21. package/dist/config-DZ97SQG2.js.map +1 -0
  22. package/dist/frame.d.ts +1 -1
  23. package/dist/index.d.ts +4 -4
  24. package/dist/index.js +1447 -1539
  25. package/dist/index.js.map +1 -1
  26. package/dist/lib/billing.d.ts +14 -0
  27. package/dist/lib/money.d.ts +1 -0
  28. package/dist/lib/period.d.ts +0 -2
  29. package/dist/lib/rail-meta.d.ts +4 -4
  30. package/dist/locales/de.js +11 -8
  31. package/dist/locales/de.js.map +1 -1
  32. package/dist/locales/en.d.ts +8 -5
  33. package/dist/locales/en.js +11 -8
  34. package/dist/locales/en.js.map +1 -1
  35. package/dist/locales/es.js +11 -8
  36. package/dist/locales/es.js.map +1 -1
  37. package/dist/locales/ja.js +11 -8
  38. package/dist/locales/ja.js.map +1 -1
  39. package/dist/locales/ko.js +11 -8
  40. package/dist/locales/ko.js.map +1 -1
  41. package/dist/locales/zh.js +11 -8
  42. package/dist/locales/zh.js.map +1 -1
  43. package/dist/psp.d.ts +10 -21
  44. package/dist/react/config.d.ts +34 -0
  45. package/dist/react/context.d.ts +5 -8
  46. package/dist/react/hooks.d.ts +20 -14
  47. package/dist/react/index.d.ts +1 -0
  48. package/dist/react/provider.d.ts +1 -9
  49. package/dist/react/remote.d.ts +0 -1
  50. package/dist/react.js +24 -28
  51. package/dist/react.js.map +1 -1
  52. package/dist/save-payment-method.d.ts +1 -1
  53. package/dist/source.d.ts +0 -9
  54. package/dist/styles.css +1 -1
  55. package/dist/types.d.ts +114 -55
  56. package/docs/payment-form-contract.md +23 -40
  57. package/package.json +3 -3
  58. package/dist/client/generated/openrails-routes.d.ts +0 -2
  59. package/dist/client-DhG2jv34.js +0 -771
  60. package/dist/client-DhG2jv34.js.map +0 -1
  61. package/dist/errors-T-PRm3vV.js +0 -54
  62. package/dist/errors-T-PRm3vV.js.map +0 -1
  63. package/dist/hooks-DLFF-zx5.js +0 -285
  64. package/dist/hooks-DLFF-zx5.js.map +0 -1
  65. package/docs/1055-nmi-host-integration.md +0 -28
@@ -18,6 +18,20 @@ export declare const nmiBillingSchema: z.ZodObject<{
18
18
  zip: z.ZodString;
19
19
  }, z.core.$strip>;
20
20
  export type NMIBilling = z.infer<typeof nmiBillingSchema>;
21
+ /** A card form's billing fields as a saved card's billing details. */
22
+ export declare function billingDetailsOf(billing: {
23
+ name_on_card?: string;
24
+ email?: string;
25
+ zip?: string;
26
+ country?: string;
27
+ }): {
28
+ address?: {
29
+ country?: string | undefined;
30
+ postal_code?: string | undefined;
31
+ } | undefined;
32
+ email?: string | undefined;
33
+ name?: string | undefined;
34
+ };
21
35
  export declare const emptyNMIBilling: NMIBilling;
22
36
  /** The buyer's likely billing country from the browser locale, or "". */
23
37
  export declare function browserCountry(): string;
@@ -6,4 +6,5 @@ export declare function isUnitDecimals(value: unknown): value is number;
6
6
  export declare function addAmounts(...amounts: Amount[]): Amount | null;
7
7
  export declare const intlFormatsDecimalStringsExactly: boolean;
8
8
  export declare function amountToDecimal(amount: Amount, decimals: number): string | null;
9
+ export declare function decimalToAmount(decimal: string, decimals: number): Amount | null;
9
10
  export declare function formatAmount(amount: Amount | null | undefined, currency: string, decimals: number, locale?: string): string;
@@ -5,8 +5,6 @@ export interface Period {
5
5
  count: number;
6
6
  }
7
7
  export declare function periodOf(hours: number | null | undefined): Period | null;
8
- /** Hours from an OpenRails interval (`"720h"`, `"720h0m0s"`). */
9
- export declare function intervalHours(interval: string | null | undefined): number | null;
10
8
  /** "every 30 days" */
11
9
  export declare function everyLabel(hours: number | null | undefined, m: Translator): string | null;
12
10
  /** "/ 30 days" */
@@ -1,15 +1,15 @@
1
- import { PaymentRailOption } from '../types';
1
+ import { PaymentOption } from '../types';
2
2
  export interface RailMeta {
3
3
  label: string;
4
4
  hint?: string;
5
5
  }
6
- export declare function railMeta(option: PaymentRailOption): RailMeta;
6
+ export declare function railMeta(option: PaymentOption): RailMeta;
7
7
  export declare const RAIL_META: Record<string, RailMeta>;
8
8
  export interface SolanaToken {
9
9
  symbol: string;
10
10
  name?: string;
11
11
  network?: string;
12
12
  }
13
- export declare function solanaToken(option: PaymentRailOption): SolanaToken | undefined;
13
+ export declare function solanaToken(option: PaymentOption): SolanaToken | undefined;
14
14
  export declare function solanaHint(token: SolanaToken): string;
15
- export declare function supportedOptions(options: PaymentRailOption[]): PaymentRailOption[];
15
+ export declare function supportedOptions(options: PaymentOption[]): PaymentOption[];
@@ -13,7 +13,7 @@ var e = {
13
13
  active: "Aktiv",
14
14
  pending: "Ausstehend",
15
15
  past_due: "Überfällig",
16
- cancelled: "Gekündigt",
16
+ canceled: "Gekündigt",
17
17
  cancel_scheduled: "Endet",
18
18
  unknown: "Unbekannt",
19
19
  awaiting_method: "Karte aktualisieren",
@@ -25,7 +25,7 @@ var e = {
25
25
  expired: "Abgelaufen",
26
26
  expiring_soon: "Läuft bald ab",
27
27
  needs_attention: "Prüfen",
28
- default: "Standard"
28
+ collection: "Rechnungen"
29
29
  },
30
30
  interval: {
31
31
  every: {
@@ -70,7 +70,8 @@ var e = {
70
70
  other: "{count} Wochen Zugang"
71
71
  }
72
72
  },
73
- once: "einmalig"
73
+ once: "einmalig",
74
+ permanent: "Zugriff ohne geplantes Ablaufdatum"
74
75
  },
75
76
  subscriptions: {
76
77
  title: "Abonnements",
@@ -81,6 +82,7 @@ var e = {
81
82
  fallbackName: "Abonnement",
82
83
  renews: "Verlängert sich am {date}",
83
84
  endsOn: "Zugriff bis {date}",
85
+ noMorePayments: "Keine weiteren Zahlungen",
84
86
  endedOn: "Beendet am {date}",
85
87
  pastDue: "Zahlung fehlgeschlagen. Aktualisiere deine Karte, um den Zugriff zu behalten.",
86
88
  cancel: "Kündigen",
@@ -104,8 +106,8 @@ var e = {
104
106
  },
105
107
  cancel: {
106
108
  title: "{name} kündigen?",
107
- description: "Du behältst den Zugriff bis zum Ende des laufenden Abrechnungszeitraums, sofern der Anbieter ihn nicht früher beendet. Bis dahin kannst du fortsetzen.",
108
- solanaDescription: "Deine Wallet signiert eine On-Chain-Kündigung. Der Zugriff bleibt bis zum Ende des bezahlten Zeitraums bestehen.",
109
+ description: "Künftige Zahlungen werden eingestellt. Bereits gekaufter Zugriff bleibt bestehen.",
110
+ solanaDescription: "Deine Wallet signiert eine On-Chain-Kündigung. Bereits gekaufter Zugriff bleibt bestehen.",
109
111
  reasonLabel: "Warum kündigst du?",
110
112
  reasonPlaceholder: "Dein Feedback hilft uns, besser zu werden.",
111
113
  reasonHint: "{count}/{max}",
@@ -132,14 +134,15 @@ var e = {
132
134
  provider: "Zahlungsanbieter",
133
135
  saveNotice: "Eingegebene Karten werden für künftige Zahlungen in Ihrem Konto gespeichert.",
134
136
  unavailable: "Sichere Karteneingabe ist für diesen Anbieter nicht verfügbar.",
137
+ addUnavailable: "Karten können vorübergehend nicht hinzugefügt werden.",
135
138
  verificationPending: "Die Kartenprüfung läuft noch. Prüfe deine gespeicherten Karten, bevor du es erneut versuchst.",
136
139
  cardLabel: "{brand} •••• {last4}",
137
140
  fallbackBrand: "Karte",
138
141
  expires: "Gültig bis {date}",
139
142
  usedBy: "Verwendet von {names}",
140
- defaultFor: "Standard für {currencies}",
141
- makeDefault: "Als Standard festlegen",
142
- madeDefault: "Standardkarte aktualisiert.",
143
+ collectsFor: "Zahlt {currencies}-Rechnungen",
144
+ useForInvoices: "Für Rechnungen verwenden",
145
+ usedForInvoices: "Karte für Rechnungen aktualisiert.",
143
146
  remove: "Entfernen",
144
147
  removeLabel: "{label} entfernen",
145
148
  removeTitle: "{label} entfernen?",
@@ -1 +1 @@
1
- {"version":3,"file":"de.js","names":[],"sources":["../../src/locales/de.ts"],"sourcesContent":["import type { BillingUiMessageBundle } from \"../i18n/messages\"\n\nexport const de: BillingUiMessageBundle = {\n common: {\n cancel: \"Abbrechen\",\n close: \"Schließen\",\n retry: \"Erneut versuchen\",\n loading: \"Wird geladen...\",\n previous: \"Zurück\",\n next: \"Weiter\",\n notAvailable: \"—\",\n },\n status: {\n active: \"Aktiv\",\n pending: \"Ausstehend\",\n past_due: \"Überfällig\",\n cancelled: \"Gekündigt\",\n cancel_scheduled: \"Endet\",\n unknown: \"Unbekannt\",\n awaiting_method: \"Karte aktualisieren\",\n unverified: \"Wird geprüft\",\n succeeded: \"Bezahlt\",\n failed: \"Fehlgeschlagen\",\n refunded: \"Erstattet\",\n partially_refunded: \"Teilweise erstattet\",\n expired: \"Abgelaufen\",\n expiring_soon: \"Läuft bald ab\",\n needs_attention: \"Prüfen\",\n default: \"Standard\",\n },\n interval: {\n every: {\n hour: { one: \"stündlich\", other: \"alle {count} Stunden\" },\n day: { one: \"täglich\", other: \"alle {count} Tage\" },\n week: { one: \"wöchentlich\", other: \"alle {count} Wochen\" },\n },\n per: {\n hour: { one: \"/ Stunde\", other: \"/ {count} Stunden\" },\n day: { one: \"/ Tag\", other: \"/ {count} Tage\" },\n week: { one: \"/ Woche\", other: \"/ {count} Wochen\" },\n },\n access: {\n hour: { one: \"1 Stunde Zugang\", other: \"{count} Stunden Zugang\" },\n day: { one: \"1 Tag Zugang\", other: \"{count} Tage Zugang\" },\n week: { one: \"1 Woche Zugang\", other: \"{count} Wochen Zugang\" },\n },\n once: \"einmalig\",\n },\n subscriptions: {\n title: \"Abonnements\",\n description: \"Deine Pläne und wann sie sich verlängern.\",\n empty: \"Noch keine Abonnements\",\n emptyDescription: \"Abgeschlossene Pläne erscheinen hier.\",\n browsePlans: \"Pläne ansehen\",\n fallbackName: \"Abonnement\",\n renews: \"Verlängert sich am {date}\",\n endsOn: \"Zugriff bis {date}\",\n endedOn: \"Beendet am {date}\",\n pastDue:\n \"Zahlung fehlgeschlagen. Aktualisiere deine Karte, um den Zugriff zu behalten.\",\n cancel: \"Kündigen\",\n cancelLabel: \"{name} kündigen\",\n resume: \"Fortsetzen\",\n resumed: \"Dein Abonnement läuft weiter.\",\n manageAtProvider: \"Verwalten\",\n updating: \"Wird aktualisiert...\",\n paidWith: \"{brand} •••• {last4}\",\n wallet: \"Solana-Wallet\",\n changeCard: \"Karte ändern\",\n changeCardLabel: \"Karte für {name} ändern\",\n },\n changeCard: {\n title: \"{name} bezahlen mit\",\n description:\n \"Künftige Verlängerungen werden von der gewählten Karte abgebucht.\",\n none: \"Füge unter Zahlungsmethoden eine weitere Karte hinzu, um zu wechseln.\",\n confirm: \"Diese Karte verwenden\",\n current: \"Aktuell\",\n done: \"Zahlungskarte aktualisiert.\",\n },\n cancel: {\n title: \"{name} kündigen?\",\n description:\n \"Du behältst den Zugriff bis zum Ende des laufenden Abrechnungszeitraums, sofern der Anbieter ihn nicht früher beendet. Bis dahin kannst du fortsetzen.\",\n solanaDescription:\n \"Deine Wallet signiert eine On-Chain-Kündigung. Der Zugriff bleibt bis zum Ende des bezahlten Zeitraums bestehen.\",\n reasonLabel: \"Warum kündigst du?\",\n reasonPlaceholder: \"Dein Feedback hilft uns, besser zu werden.\",\n reasonHint: \"{count}/{max}\",\n reasonTooShort: \"Gib mindestens {min} Zeichen ein.\",\n keep: \"Abonnement behalten\",\n confirm: \"Abonnement kündigen\",\n confirmWallet: \"Mit Wallet signieren\",\n working: \"Wird gekündigt...\",\n preparing: \"Transaktion wird vorbereitet...\",\n signing: \"In deiner Wallet bestätigen...\",\n confirming: \"Kündigung wird erfasst...\",\n done: \"Kündigung angefordert.\",\n },\n paymentMethods: {\n title: \"Zahlungsmethoden\",\n description: \"Gespeicherte Karten für deine Abonnements.\",\n empty: \"Keine gespeicherten Karten\",\n emptyDescription: \"Gespeicherte Karten erscheinen hier.\",\n add: \"Karte hinzufügen\",\n addTitle: \"Karte hinzufügen\",\n addDescription:\n \"Kartendaten gehen direkt an den Zahlungsdienstleister; diese Seite sieht sie nie.\",\n save: \"Karte speichern\",\n added: \"Karte gespeichert.\",\n provider: \"Zahlungsanbieter\",\n saveNotice:\n \"Eingegebene Karten werden für künftige Zahlungen in Ihrem Konto gespeichert.\",\n unavailable:\n \"Sichere Karteneingabe ist für diesen Anbieter nicht verfügbar.\",\n verificationPending:\n \"Die Kartenprüfung läuft noch. Prüfe deine gespeicherten Karten, bevor du es erneut versuchst.\",\n cardLabel: \"{brand} •••• {last4}\",\n fallbackBrand: \"Karte\",\n expires: \"Gültig bis {date}\",\n usedBy: \"Verwendet von {names}\",\n defaultFor: \"Standard für {currencies}\",\n makeDefault: \"Als Standard festlegen\",\n madeDefault: \"Standardkarte aktualisiert.\",\n remove: \"Entfernen\",\n removeLabel: \"{label} entfernen\",\n removeTitle: \"{label} entfernen?\",\n removeDescription:\n \"Eine Karte, die ein aktives Abonnement bezahlt, muss vor dem Entfernen ersetzt werden.\",\n removeConfirm: \"Karte entfernen\",\n removed: \"Karte entfernt.\",\n removePending: \"Entfernung wird verarbeitet.\",\n inUse:\n \"Diese Karte bezahlt ein aktives Abonnement. Stelle das Abonnement zuerst auf eine andere Karte um.\",\n },\n checkout: {\n renews: \"Verlängert sich {period}\",\n },\n history: {\n title: \"Zahlungsverlauf\",\n description: \"Belastungen und Erstattungen deines Kontos.\",\n empty: \"Noch keine Zahlungen\",\n emptyDescription: \"Abgeschlossene Zahlungen erscheinen hier.\",\n date: \"Datum\",\n item: \"Artikel\",\n subscription: \"Abonnement\",\n purchase: \"Kauf\",\n method: \"Methode\",\n status: \"Status\",\n amount: \"Betrag\",\n refund: \"Erstattung\",\n refundedAmount: \"{amount} erstattet\",\n page: \"Seite {page}\",\n rail: {\n card: \"Karte\",\n solana: \"Solana\",\n ccbill: \"Karte\",\n nmi: \"Karte\",\n stripe: \"Karte\",\n },\n },\n errors: {\n generic: \"Etwas ist schiefgelaufen. Bitte versuche es erneut.\",\n network:\n \"Der Server ist nicht erreichbar. Prüfe deine Verbindung und versuche es erneut.\",\n network_error:\n \"Der Server ist nicht erreichbar. Prüfe deine Verbindung und versuche es erneut.\",\n invalid_response: \"Der Server hat eine unerwartete Antwort gesendet.\",\n authentication_required:\n \"Deine Sitzung ist abgelaufen. Melde dich erneut an.\",\n resource_access_denied: \"Du hast darauf keinen Zugriff.\",\n resource_not_found: \"Dieser Eintrag existiert nicht mehr.\",\n resource_conflict:\n \"Das hat sich inzwischen geändert. Lade neu und versuche es erneut.\",\n rate_limit_exceeded:\n \"Zu viele Anfragen. Warte einen Moment und versuche es erneut.\",\n service_unavailable:\n \"Die Abrechnung ist vorübergehend nicht verfügbar. Versuche es bald erneut.\",\n internal_error:\n \"Bei uns ist etwas schiefgelaufen. Bitte versuche es erneut.\",\n card_declined: \"Die Karte wurde abgelehnt.\",\n payment_provider_rejected:\n \"Der Zahlungsdienstleister hat die Anfrage abgelehnt.\",\n provider_outcome_unknown:\n \"Wir konnten das Ergebnis beim Anbieter nicht bestätigen. Prüfe es in Kürze erneut.\",\n payment_in_progress: \"Eine Zahlung ist bereits in Bearbeitung.\",\n payment_method_delete_unsupported:\n \"Diese Karte kann hier nicht entfernt werden. Wende dich an den Support.\",\n payment_method_delete_failed:\n \"Der Anbieter konnte die Karte nicht entfernen. Versuche es später erneut.\",\n customer_session_required: \"Melde dich erneut an, um dies zu tun.\",\n invoker_scoped_principal: \"Dieses Konto kann keine Abrechnung verwalten.\",\n csrf_origin_denied: \"Die Anfrage wurde blockiert. Lade die Seite neu.\",\n wallet_rejected: \"Die Wallet-Anfrage wurde abgelehnt.\",\n wallet_no_signature: \"Die Wallet hat die Transaktion nicht signiert.\",\n },\n}\n"],"mappings":";AAEA,IAAa,IAA6B;CACxC,QAAQ;EACN,QAAQ;EACR,OAAO;EACP,OAAO;EACP,SAAS;EACT,UAAU;EACV,MAAM;EACN,cAAc;CAChB;CACA,QAAQ;EACN,QAAQ;EACR,SAAS;EACT,UAAU;EACV,WAAW;EACX,kBAAkB;EAClB,SAAS;EACT,iBAAiB;EACjB,YAAY;EACZ,WAAW;EACX,QAAQ;EACR,UAAU;EACV,oBAAoB;EACpB,SAAS;EACT,eAAe;EACf,iBAAiB;EACjB,SAAS;CACX;CACA,UAAU;EACR,OAAO;GACL,MAAM;IAAE,KAAK;IAAa,OAAO;GAAuB;GACxD,KAAK;IAAE,KAAK;IAAW,OAAO;GAAoB;GAClD,MAAM;IAAE,KAAK;IAAe,OAAO;GAAsB;EAC3D;EACA,KAAK;GACH,MAAM;IAAE,KAAK;IAAY,OAAO;GAAoB;GACpD,KAAK;IAAE,KAAK;IAAS,OAAO;GAAiB;GAC7C,MAAM;IAAE,KAAK;IAAW,OAAO;GAAmB;EACpD;EACA,QAAQ;GACN,MAAM;IAAE,KAAK;IAAmB,OAAO;GAAyB;GAChE,KAAK;IAAE,KAAK;IAAgB,OAAO;GAAsB;GACzD,MAAM;IAAE,KAAK;IAAkB,OAAO;GAAwB;EAChE;EACA,MAAM;CACR;CACA,eAAe;EACb,OAAO;EACP,aAAa;EACb,OAAO;EACP,kBAAkB;EAClB,aAAa;EACb,cAAc;EACd,QAAQ;EACR,QAAQ;EACR,SAAS;EACT,SACE;EACF,QAAQ;EACR,aAAa;EACb,QAAQ;EACR,SAAS;EACT,kBAAkB;EAClB,UAAU;EACV,UAAU;EACV,QAAQ;EACR,YAAY;EACZ,iBAAiB;CACnB;CACA,YAAY;EACV,OAAO;EACP,aACE;EACF,MAAM;EACN,SAAS;EACT,SAAS;EACT,MAAM;CACR;CACA,QAAQ;EACN,OAAO;EACP,aACE;EACF,mBACE;EACF,aAAa;EACb,mBAAmB;EACnB,YAAY;EACZ,gBAAgB;EAChB,MAAM;EACN,SAAS;EACT,eAAe;EACf,SAAS;EACT,WAAW;EACX,SAAS;EACT,YAAY;EACZ,MAAM;CACR;CACA,gBAAgB;EACd,OAAO;EACP,aAAa;EACb,OAAO;EACP,kBAAkB;EAClB,KAAK;EACL,UAAU;EACV,gBACE;EACF,MAAM;EACN,OAAO;EACP,UAAU;EACV,YACE;EACF,aACE;EACF,qBACE;EACF,WAAW;EACX,eAAe;EACf,SAAS;EACT,QAAQ;EACR,YAAY;EACZ,aAAa;EACb,aAAa;EACb,QAAQ;EACR,aAAa;EACb,aAAa;EACb,mBACE;EACF,eAAe;EACf,SAAS;EACT,eAAe;EACf,OACE;CACJ;CACA,UAAU,EACR,QAAQ,2BACV;CACA,SAAS;EACP,OAAO;EACP,aAAa;EACb,OAAO;EACP,kBAAkB;EAClB,MAAM;EACN,MAAM;EACN,cAAc;EACd,UAAU;EACV,QAAQ;EACR,QAAQ;EACR,QAAQ;EACR,QAAQ;EACR,gBAAgB;EAChB,MAAM;EACN,MAAM;GACJ,MAAM;GACN,QAAQ;GACR,QAAQ;GACR,KAAK;GACL,QAAQ;EACV;CACF;CACA,QAAQ;EACN,SAAS;EACT,SACE;EACF,eACE;EACF,kBAAkB;EAClB,yBACE;EACF,wBAAwB;EACxB,oBAAoB;EACpB,mBACE;EACF,qBACE;EACF,qBACE;EACF,gBACE;EACF,eAAe;EACf,2BACE;EACF,0BACE;EACF,qBAAqB;EACrB,mCACE;EACF,8BACE;EACF,2BAA2B;EAC3B,0BAA0B;EAC1B,oBAAoB;EACpB,iBAAiB;EACjB,qBAAqB;CACvB;AACF"}
1
+ {"version":3,"file":"de.js","names":[],"sources":["../../src/locales/de.ts"],"sourcesContent":["import type { BillingUiMessageBundle } from \"../i18n/messages\"\n\nexport const de: BillingUiMessageBundle = {\n common: {\n cancel: \"Abbrechen\",\n close: \"Schließen\",\n retry: \"Erneut versuchen\",\n loading: \"Wird geladen...\",\n previous: \"Zurück\",\n next: \"Weiter\",\n notAvailable: \"—\",\n },\n status: {\n active: \"Aktiv\",\n pending: \"Ausstehend\",\n past_due: \"Überfällig\",\n canceled: \"Gekündigt\",\n cancel_scheduled: \"Endet\",\n unknown: \"Unbekannt\",\n awaiting_method: \"Karte aktualisieren\",\n unverified: \"Wird geprüft\",\n succeeded: \"Bezahlt\",\n failed: \"Fehlgeschlagen\",\n refunded: \"Erstattet\",\n partially_refunded: \"Teilweise erstattet\",\n expired: \"Abgelaufen\",\n expiring_soon: \"Läuft bald ab\",\n needs_attention: \"Prüfen\",\n collection: \"Rechnungen\",\n },\n interval: {\n every: {\n hour: { one: \"stündlich\", other: \"alle {count} Stunden\" },\n day: { one: \"täglich\", other: \"alle {count} Tage\" },\n week: { one: \"wöchentlich\", other: \"alle {count} Wochen\" },\n },\n per: {\n hour: { one: \"/ Stunde\", other: \"/ {count} Stunden\" },\n day: { one: \"/ Tag\", other: \"/ {count} Tage\" },\n week: { one: \"/ Woche\", other: \"/ {count} Wochen\" },\n },\n access: {\n hour: { one: \"1 Stunde Zugang\", other: \"{count} Stunden Zugang\" },\n day: { one: \"1 Tag Zugang\", other: \"{count} Tage Zugang\" },\n week: { one: \"1 Woche Zugang\", other: \"{count} Wochen Zugang\" },\n },\n once: \"einmalig\",\n permanent: \"Zugriff ohne geplantes Ablaufdatum\",\n },\n subscriptions: {\n title: \"Abonnements\",\n description: \"Deine Pläne und wann sie sich verlängern.\",\n empty: \"Noch keine Abonnements\",\n emptyDescription: \"Abgeschlossene Pläne erscheinen hier.\",\n browsePlans: \"Pläne ansehen\",\n fallbackName: \"Abonnement\",\n renews: \"Verlängert sich am {date}\",\n endsOn: \"Zugriff bis {date}\",\n noMorePayments: \"Keine weiteren Zahlungen\",\n endedOn: \"Beendet am {date}\",\n pastDue:\n \"Zahlung fehlgeschlagen. Aktualisiere deine Karte, um den Zugriff zu behalten.\",\n cancel: \"Kündigen\",\n cancelLabel: \"{name} kündigen\",\n resume: \"Fortsetzen\",\n resumed: \"Dein Abonnement läuft weiter.\",\n manageAtProvider: \"Verwalten\",\n updating: \"Wird aktualisiert...\",\n paidWith: \"{brand} •••• {last4}\",\n wallet: \"Solana-Wallet\",\n changeCard: \"Karte ändern\",\n changeCardLabel: \"Karte für {name} ändern\",\n },\n changeCard: {\n title: \"{name} bezahlen mit\",\n description:\n \"Künftige Verlängerungen werden von der gewählten Karte abgebucht.\",\n none: \"Füge unter Zahlungsmethoden eine weitere Karte hinzu, um zu wechseln.\",\n confirm: \"Diese Karte verwenden\",\n current: \"Aktuell\",\n done: \"Zahlungskarte aktualisiert.\",\n },\n cancel: {\n title: \"{name} kündigen?\",\n description: \"Künftige Zahlungen werden eingestellt. Bereits gekaufter Zugriff bleibt bestehen.\",\n solanaDescription: \"Deine Wallet signiert eine On-Chain-Kündigung. Bereits gekaufter Zugriff bleibt bestehen.\",\n reasonLabel: \"Warum kündigst du?\",\n reasonPlaceholder: \"Dein Feedback hilft uns, besser zu werden.\",\n reasonHint: \"{count}/{max}\",\n reasonTooShort: \"Gib mindestens {min} Zeichen ein.\",\n keep: \"Abonnement behalten\",\n confirm: \"Abonnement kündigen\",\n confirmWallet: \"Mit Wallet signieren\",\n working: \"Wird gekündigt...\",\n preparing: \"Transaktion wird vorbereitet...\",\n signing: \"In deiner Wallet bestätigen...\",\n confirming: \"Kündigung wird erfasst...\",\n done: \"Kündigung angefordert.\",\n },\n paymentMethods: {\n title: \"Zahlungsmethoden\",\n description: \"Gespeicherte Karten für deine Abonnements.\",\n empty: \"Keine gespeicherten Karten\",\n emptyDescription: \"Gespeicherte Karten erscheinen hier.\",\n add: \"Karte hinzufügen\",\n addTitle: \"Karte hinzufügen\",\n addDescription:\n \"Kartendaten gehen direkt an den Zahlungsdienstleister; diese Seite sieht sie nie.\",\n save: \"Karte speichern\",\n added: \"Karte gespeichert.\",\n provider: \"Zahlungsanbieter\",\n saveNotice:\n \"Eingegebene Karten werden für künftige Zahlungen in Ihrem Konto gespeichert.\",\n unavailable:\n \"Sichere Karteneingabe ist für diesen Anbieter nicht verfügbar.\",\n addUnavailable: \"Karten können vorübergehend nicht hinzugefügt werden.\",\n verificationPending:\n \"Die Kartenprüfung läuft noch. Prüfe deine gespeicherten Karten, bevor du es erneut versuchst.\",\n cardLabel: \"{brand} •••• {last4}\",\n fallbackBrand: \"Karte\",\n expires: \"Gültig bis {date}\",\n usedBy: \"Verwendet von {names}\",\n collectsFor: \"Zahlt {currencies}-Rechnungen\",\n useForInvoices: \"Für Rechnungen verwenden\",\n usedForInvoices: \"Karte für Rechnungen aktualisiert.\",\n remove: \"Entfernen\",\n removeLabel: \"{label} entfernen\",\n removeTitle: \"{label} entfernen?\",\n removeDescription:\n \"Eine Karte, die ein aktives Abonnement bezahlt, muss vor dem Entfernen ersetzt werden.\",\n removeConfirm: \"Karte entfernen\",\n removed: \"Karte entfernt.\",\n removePending: \"Entfernung wird verarbeitet.\",\n inUse:\n \"Diese Karte bezahlt ein aktives Abonnement. Stelle das Abonnement zuerst auf eine andere Karte um.\",\n },\n checkout: {\n renews: \"Verlängert sich {period}\",\n },\n history: {\n title: \"Zahlungsverlauf\",\n description: \"Belastungen und Erstattungen deines Kontos.\",\n empty: \"Noch keine Zahlungen\",\n emptyDescription: \"Abgeschlossene Zahlungen erscheinen hier.\",\n date: \"Datum\",\n item: \"Artikel\",\n subscription: \"Abonnement\",\n purchase: \"Kauf\",\n method: \"Methode\",\n status: \"Status\",\n amount: \"Betrag\",\n refund: \"Erstattung\",\n refundedAmount: \"{amount} erstattet\",\n page: \"Seite {page}\",\n rail: {\n card: \"Karte\",\n solana: \"Solana\",\n ccbill: \"Karte\",\n nmi: \"Karte\",\n stripe: \"Karte\",\n },\n },\n errors: {\n generic: \"Etwas ist schiefgelaufen. Bitte versuche es erneut.\",\n network:\n \"Der Server ist nicht erreichbar. Prüfe deine Verbindung und versuche es erneut.\",\n network_error:\n \"Der Server ist nicht erreichbar. Prüfe deine Verbindung und versuche es erneut.\",\n invalid_response: \"Der Server hat eine unerwartete Antwort gesendet.\",\n authentication_required:\n \"Deine Sitzung ist abgelaufen. Melde dich erneut an.\",\n resource_access_denied: \"Du hast darauf keinen Zugriff.\",\n resource_not_found: \"Dieser Eintrag existiert nicht mehr.\",\n resource_conflict:\n \"Das hat sich inzwischen geändert. Lade neu und versuche es erneut.\",\n rate_limit_exceeded:\n \"Zu viele Anfragen. Warte einen Moment und versuche es erneut.\",\n service_unavailable:\n \"Die Abrechnung ist vorübergehend nicht verfügbar. Versuche es bald erneut.\",\n internal_error:\n \"Bei uns ist etwas schiefgelaufen. Bitte versuche es erneut.\",\n card_declined: \"Die Karte wurde abgelehnt.\",\n payment_provider_rejected:\n \"Der Zahlungsdienstleister hat die Anfrage abgelehnt.\",\n provider_outcome_unknown:\n \"Wir konnten das Ergebnis beim Anbieter nicht bestätigen. Prüfe es in Kürze erneut.\",\n payment_in_progress: \"Eine Zahlung ist bereits in Bearbeitung.\",\n payment_method_delete_unsupported:\n \"Diese Karte kann hier nicht entfernt werden. Wende dich an den Support.\",\n payment_method_delete_failed:\n \"Der Anbieter konnte die Karte nicht entfernen. Versuche es später erneut.\",\n customer_session_required: \"Melde dich erneut an, um dies zu tun.\",\n invoker_scoped_principal: \"Dieses Konto kann keine Abrechnung verwalten.\",\n csrf_origin_denied: \"Die Anfrage wurde blockiert. Lade die Seite neu.\",\n wallet_rejected: \"Die Wallet-Anfrage wurde abgelehnt.\",\n wallet_no_signature: \"Die Wallet hat die Transaktion nicht signiert.\",\n },\n}\n"],"mappings":";AAEA,IAAa,IAA6B;CACxC,QAAQ;EACN,QAAQ;EACR,OAAO;EACP,OAAO;EACP,SAAS;EACT,UAAU;EACV,MAAM;EACN,cAAc;CAChB;CACA,QAAQ;EACN,QAAQ;EACR,SAAS;EACT,UAAU;EACV,UAAU;EACV,kBAAkB;EAClB,SAAS;EACT,iBAAiB;EACjB,YAAY;EACZ,WAAW;EACX,QAAQ;EACR,UAAU;EACV,oBAAoB;EACpB,SAAS;EACT,eAAe;EACf,iBAAiB;EACjB,YAAY;CACd;CACA,UAAU;EACR,OAAO;GACL,MAAM;IAAE,KAAK;IAAa,OAAO;GAAuB;GACxD,KAAK;IAAE,KAAK;IAAW,OAAO;GAAoB;GAClD,MAAM;IAAE,KAAK;IAAe,OAAO;GAAsB;EAC3D;EACA,KAAK;GACH,MAAM;IAAE,KAAK;IAAY,OAAO;GAAoB;GACpD,KAAK;IAAE,KAAK;IAAS,OAAO;GAAiB;GAC7C,MAAM;IAAE,KAAK;IAAW,OAAO;GAAmB;EACpD;EACA,QAAQ;GACN,MAAM;IAAE,KAAK;IAAmB,OAAO;GAAyB;GAChE,KAAK;IAAE,KAAK;IAAgB,OAAO;GAAsB;GACzD,MAAM;IAAE,KAAK;IAAkB,OAAO;GAAwB;EAChE;EACA,MAAM;EACN,WAAW;CACb;CACA,eAAe;EACb,OAAO;EACP,aAAa;EACb,OAAO;EACP,kBAAkB;EAClB,aAAa;EACb,cAAc;EACd,QAAQ;EACR,QAAQ;EACR,gBAAgB;EAChB,SAAS;EACT,SACE;EACF,QAAQ;EACR,aAAa;EACb,QAAQ;EACR,SAAS;EACT,kBAAkB;EAClB,UAAU;EACV,UAAU;EACV,QAAQ;EACR,YAAY;EACZ,iBAAiB;CACnB;CACA,YAAY;EACV,OAAO;EACP,aACE;EACF,MAAM;EACN,SAAS;EACT,SAAS;EACT,MAAM;CACR;CACA,QAAQ;EACN,OAAO;EACP,aAAa;EACb,mBAAmB;EACnB,aAAa;EACb,mBAAmB;EACnB,YAAY;EACZ,gBAAgB;EAChB,MAAM;EACN,SAAS;EACT,eAAe;EACf,SAAS;EACT,WAAW;EACX,SAAS;EACT,YAAY;EACZ,MAAM;CACR;CACA,gBAAgB;EACd,OAAO;EACP,aAAa;EACb,OAAO;EACP,kBAAkB;EAClB,KAAK;EACL,UAAU;EACV,gBACE;EACF,MAAM;EACN,OAAO;EACP,UAAU;EACV,YACE;EACF,aACE;EACF,gBAAgB;EAChB,qBACE;EACF,WAAW;EACX,eAAe;EACf,SAAS;EACT,QAAQ;EACR,aAAa;EACb,gBAAgB;EAChB,iBAAiB;EACjB,QAAQ;EACR,aAAa;EACb,aAAa;EACb,mBACE;EACF,eAAe;EACf,SAAS;EACT,eAAe;EACf,OACE;CACJ;CACA,UAAU,EACR,QAAQ,2BACV;CACA,SAAS;EACP,OAAO;EACP,aAAa;EACb,OAAO;EACP,kBAAkB;EAClB,MAAM;EACN,MAAM;EACN,cAAc;EACd,UAAU;EACV,QAAQ;EACR,QAAQ;EACR,QAAQ;EACR,QAAQ;EACR,gBAAgB;EAChB,MAAM;EACN,MAAM;GACJ,MAAM;GACN,QAAQ;GACR,QAAQ;GACR,KAAK;GACL,QAAQ;EACV;CACF;CACA,QAAQ;EACN,SAAS;EACT,SACE;EACF,eACE;EACF,kBAAkB;EAClB,yBACE;EACF,wBAAwB;EACxB,oBAAoB;EACpB,mBACE;EACF,qBACE;EACF,qBACE;EACF,gBACE;EACF,eAAe;EACf,2BACE;EACF,0BACE;EACF,qBAAqB;EACrB,mCACE;EACF,8BACE;EACF,2BAA2B;EAC3B,0BAA0B;EAC1B,oBAAoB;EACpB,iBAAiB;EACjB,qBAAqB;CACvB;AACF"}
@@ -12,7 +12,7 @@ export declare const en: {
12
12
  active: string;
13
13
  pending: string;
14
14
  past_due: string;
15
- cancelled: string;
15
+ canceled: string;
16
16
  cancel_scheduled: string;
17
17
  unknown: string;
18
18
  awaiting_method: string;
@@ -24,7 +24,7 @@ export declare const en: {
24
24
  expired: string;
25
25
  expiring_soon: string;
26
26
  needs_attention: string;
27
- default: string;
27
+ collection: string;
28
28
  };
29
29
  interval: {
30
30
  every: {
@@ -70,6 +70,7 @@ export declare const en: {
70
70
  };
71
71
  };
72
72
  once: string;
73
+ permanent: string;
73
74
  };
74
75
  subscriptions: {
75
76
  title: string;
@@ -80,6 +81,7 @@ export declare const en: {
80
81
  fallbackName: string;
81
82
  renews: string;
82
83
  endsOn: string;
84
+ noMorePayments: string;
83
85
  endedOn: string;
84
86
  pastDue: string;
85
87
  cancel: string;
@@ -131,14 +133,15 @@ export declare const en: {
131
133
  provider: string;
132
134
  saveNotice: string;
133
135
  unavailable: string;
136
+ addUnavailable: string;
134
137
  verificationPending: string;
135
138
  cardLabel: string;
136
139
  fallbackBrand: string;
137
140
  expires: string;
138
141
  usedBy: string;
139
- defaultFor: string;
140
- makeDefault: string;
141
- madeDefault: string;
142
+ collectsFor: string;
143
+ useForInvoices: string;
144
+ usedForInvoices: string;
142
145
  remove: string;
143
146
  removeLabel: string;
144
147
  removeTitle: string;
@@ -13,7 +13,7 @@ var e = {
13
13
  active: "Active",
14
14
  pending: "Pending",
15
15
  past_due: "Past due",
16
- cancelled: "Cancelled",
16
+ canceled: "Canceled",
17
17
  cancel_scheduled: "Ending",
18
18
  unknown: "Unknown",
19
19
  awaiting_method: "Update card",
@@ -25,7 +25,7 @@ var e = {
25
25
  expired: "Expired",
26
26
  expiring_soon: "Expires soon",
27
27
  needs_attention: "Needs attention",
28
- default: "Default"
28
+ collection: "Invoices"
29
29
  },
30
30
  interval: {
31
31
  every: {
@@ -70,7 +70,8 @@ var e = {
70
70
  other: "{count} weeks of access"
71
71
  }
72
72
  },
73
- once: "one-time"
73
+ once: "one-time",
74
+ permanent: "Access with no scheduled expiry"
74
75
  },
75
76
  subscriptions: {
76
77
  title: "Subscriptions",
@@ -81,6 +82,7 @@ var e = {
81
82
  fallbackName: "Subscription",
82
83
  renews: "Renews {date}",
83
84
  endsOn: "Access until {date}",
85
+ noMorePayments: "No further payments",
84
86
  endedOn: "Ended {date}",
85
87
  pastDue: "Payment failed. Update your card to keep access.",
86
88
  cancel: "Cancel",
@@ -104,8 +106,8 @@ var e = {
104
106
  },
105
107
  cancel: {
106
108
  title: "Cancel {name}?",
107
- description: "You keep access until the end of the current billing period unless the provider ends it sooner. You can resume before then.",
108
- solanaDescription: "Your wallet signs an on-chain cancellation. Access remains until the paid period ends.",
109
+ description: "Future payments stop. You keep access already purchased.",
110
+ solanaDescription: "Your wallet signs an on-chain cancellation. You keep access already purchased.",
109
111
  reasonLabel: "Why are you cancelling?",
110
112
  reasonPlaceholder: "Your feedback helps us improve.",
111
113
  reasonHint: "{count}/{max}",
@@ -132,14 +134,15 @@ var e = {
132
134
  provider: "Payment provider",
133
135
  saveNotice: "Cards you enter are saved to your account for future payments.",
134
136
  unavailable: "Secure card entry is unavailable for this provider.",
137
+ addUnavailable: "Adding a card is temporarily unavailable.",
135
138
  verificationPending: "Card verification is pending. Check your saved cards before trying again.",
136
139
  cardLabel: "{brand} •••• {last4}",
137
140
  fallbackBrand: "Card",
138
141
  expires: "Expires {date}",
139
142
  usedBy: "Used by {names}",
140
- defaultFor: "Default for {currencies}",
141
- makeDefault: "Make default",
142
- madeDefault: "Default card updated.",
143
+ collectsFor: "Pays {currencies} invoices",
144
+ useForInvoices: "Use for invoices",
145
+ usedForInvoices: "Invoice card updated.",
143
146
  remove: "Remove",
144
147
  removeLabel: "Remove {label}",
145
148
  removeTitle: "Remove {label}?",
@@ -1 +1 @@
1
- {"version":3,"file":"en.js","names":[],"sources":["../../src/locales/en.ts"],"sourcesContent":["// Source of truth: every other locale is a partial of this tree.\nexport const en = {\n common: {\n cancel: \"Cancel\",\n close: \"Close\",\n retry: \"Try again\",\n loading: \"Loading...\",\n previous: \"Previous\",\n next: \"Next\",\n notAvailable: \"—\",\n },\n status: {\n active: \"Active\",\n pending: \"Pending\",\n past_due: \"Past due\",\n cancelled: \"Cancelled\",\n cancel_scheduled: \"Ending\",\n unknown: \"Unknown\",\n awaiting_method: \"Update card\",\n unverified: \"Verifying\",\n succeeded: \"Paid\",\n failed: \"Failed\",\n refunded: \"Refunded\",\n partially_refunded: \"Partly refunded\",\n expired: \"Expired\",\n expiring_soon: \"Expires soon\",\n needs_attention: \"Needs attention\",\n default: \"Default\",\n },\n interval: {\n every: {\n hour: { one: \"every hour\", other: \"every {count} hours\" },\n day: { one: \"every day\", other: \"every {count} days\" },\n week: { one: \"every week\", other: \"every {count} weeks\" },\n },\n per: {\n hour: { one: \"/ hour\", other: \"/ {count} hours\" },\n day: { one: \"/ day\", other: \"/ {count} days\" },\n week: { one: \"/ week\", other: \"/ {count} weeks\" },\n },\n access: {\n hour: { one: \"1 hour of access\", other: \"{count} hours of access\" },\n day: { one: \"1 day of access\", other: \"{count} days of access\" },\n week: { one: \"1 week of access\", other: \"{count} weeks of access\" },\n },\n once: \"one-time\",\n },\n subscriptions: {\n title: \"Subscriptions\",\n description: \"Your plans and when they renew.\",\n empty: \"No subscriptions yet\",\n emptyDescription: \"Plans you subscribe to will appear here.\",\n browsePlans: \"Browse plans\",\n fallbackName: \"Subscription\",\n renews: \"Renews {date}\",\n endsOn: \"Access until {date}\",\n endedOn: \"Ended {date}\",\n pastDue: \"Payment failed. Update your card to keep access.\",\n cancel: \"Cancel\",\n cancelLabel: \"Cancel {name}\",\n resume: \"Resume\",\n resumed: \"Your subscription will continue.\",\n manageAtProvider: \"Manage\",\n updating: \"Updating...\",\n paidWith: \"{brand} •••• {last4}\",\n wallet: \"Solana wallet\",\n changeCard: \"Change card\",\n changeCardLabel: \"Change card for {name}\",\n },\n changeCard: {\n title: \"Pay {name} with\",\n description: \"Future renewals charge the selected card.\",\n none: \"Add another card under Payment methods to switch.\",\n confirm: \"Use this card\",\n current: \"Current\",\n done: \"Payment card updated.\",\n },\n cancel: {\n title: \"Cancel {name}?\",\n description:\n \"You keep access until the end of the current billing period unless the provider ends it sooner. You can resume before then.\",\n solanaDescription:\n \"Your wallet signs an on-chain cancellation. Access remains until the paid period ends.\",\n reasonLabel: \"Why are you cancelling?\",\n reasonPlaceholder: \"Your feedback helps us improve.\",\n reasonHint: \"{count}/{max}\",\n reasonTooShort: \"Enter at least {min} characters.\",\n keep: \"Keep subscription\",\n confirm: \"Cancel subscription\",\n confirmWallet: \"Sign with wallet\",\n working: \"Cancelling...\",\n preparing: \"Preparing transaction...\",\n signing: \"Confirm in your wallet...\",\n confirming: \"Recording cancellation...\",\n done: \"Cancellation requested.\",\n },\n paymentMethods: {\n title: \"Payment methods\",\n description: \"Cards saved for your subscriptions.\",\n empty: \"No saved cards\",\n emptyDescription: \"Cards you save appear here.\",\n add: \"Add card\",\n addTitle: \"Add a card\",\n addDescription:\n \"Card details go straight to the payment processor; this site never sees them.\",\n save: \"Save card\",\n added: \"Card saved.\",\n provider: \"Payment provider\",\n saveNotice:\n \"Cards you enter are saved to your account for future payments.\",\n unavailable: \"Secure card entry is unavailable for this provider.\",\n verificationPending:\n \"Card verification is pending. Check your saved cards before trying again.\",\n cardLabel: \"{brand} •••• {last4}\",\n fallbackBrand: \"Card\",\n expires: \"Expires {date}\",\n usedBy: \"Used by {names}\",\n defaultFor: \"Default for {currencies}\",\n makeDefault: \"Make default\",\n madeDefault: \"Default card updated.\",\n remove: \"Remove\",\n removeLabel: \"Remove {label}\",\n removeTitle: \"Remove {label}?\",\n removeDescription:\n \"A card used by an active subscription must be replaced before it can be removed.\",\n removeConfirm: \"Remove card\",\n removed: \"Card removed.\",\n removePending: \"Removal is processing.\",\n inUse:\n \"This card pays for an active subscription. Switch that subscription to another card first.\",\n },\n checkout: {\n renews: \"Renews {period}\",\n },\n history: {\n title: \"Payment history\",\n description: \"Charges and refunds on your account.\",\n empty: \"No payments yet\",\n emptyDescription: \"Completed payments will appear here.\",\n date: \"Date\",\n item: \"Item\",\n subscription: \"Subscription\",\n purchase: \"Purchase\",\n method: \"Method\",\n status: \"Status\",\n amount: \"Amount\",\n refund: \"Refund\",\n refundedAmount: \"{amount} refunded\",\n page: \"Page {page}\",\n rail: {\n card: \"Card\",\n solana: \"Solana\",\n ccbill: \"Card\",\n nmi: \"Card\",\n stripe: \"Card\",\n },\n },\n errors: {\n generic: \"Something went wrong. Please try again.\",\n network: \"Can't reach the server. Check your connection and try again.\",\n network_error:\n \"Can't reach the server. Check your connection and try again.\",\n invalid_response: \"The server sent an unexpected response.\",\n authentication_required: \"Your session expired. Sign in again.\",\n resource_access_denied: \"You don't have access to this.\",\n resource_not_found: \"This item no longer exists.\",\n resource_conflict: \"This changed in the meantime. Refresh and try again.\",\n rate_limit_exceeded: \"Too many requests. Wait a moment and try again.\",\n service_unavailable: \"Billing is temporarily unavailable. Try again soon.\",\n internal_error: \"Something went wrong on our side. Please try again.\",\n card_declined: \"The card was declined.\",\n payment_provider_rejected: \"The payment provider rejected the request.\",\n provider_outcome_unknown:\n \"We couldn't confirm the result with the provider. Check again shortly.\",\n payment_in_progress: \"A payment is already in progress.\",\n payment_method_delete_unsupported:\n \"This card can't be removed here. Contact support.\",\n payment_method_delete_failed:\n \"The provider couldn't remove this card. Try again later.\",\n customer_session_required: \"Sign in again to do this.\",\n invoker_scoped_principal: \"This account can't manage billing.\",\n csrf_origin_denied: \"The request was blocked. Reload the page.\",\n wallet_rejected: \"The wallet request was declined.\",\n wallet_no_signature: \"The wallet did not sign the transaction.\",\n },\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"en.js","names":[],"sources":["../../src/locales/en.ts"],"sourcesContent":["// Source of truth: every other locale is a partial of this tree.\nexport const en = {\n common: {\n cancel: \"Cancel\",\n close: \"Close\",\n retry: \"Try again\",\n loading: \"Loading...\",\n previous: \"Previous\",\n next: \"Next\",\n notAvailable: \"—\",\n },\n status: {\n active: \"Active\",\n pending: \"Pending\",\n past_due: \"Past due\",\n canceled: \"Canceled\",\n cancel_scheduled: \"Ending\",\n unknown: \"Unknown\",\n awaiting_method: \"Update card\",\n unverified: \"Verifying\",\n succeeded: \"Paid\",\n failed: \"Failed\",\n refunded: \"Refunded\",\n partially_refunded: \"Partly refunded\",\n expired: \"Expired\",\n expiring_soon: \"Expires soon\",\n needs_attention: \"Needs attention\",\n collection: \"Invoices\",\n },\n interval: {\n every: {\n hour: { one: \"every hour\", other: \"every {count} hours\" },\n day: { one: \"every day\", other: \"every {count} days\" },\n week: { one: \"every week\", other: \"every {count} weeks\" },\n },\n per: {\n hour: { one: \"/ hour\", other: \"/ {count} hours\" },\n day: { one: \"/ day\", other: \"/ {count} days\" },\n week: { one: \"/ week\", other: \"/ {count} weeks\" },\n },\n access: {\n hour: { one: \"1 hour of access\", other: \"{count} hours of access\" },\n day: { one: \"1 day of access\", other: \"{count} days of access\" },\n week: { one: \"1 week of access\", other: \"{count} weeks of access\" },\n },\n once: \"one-time\",\n permanent: \"Access with no scheduled expiry\",\n },\n subscriptions: {\n title: \"Subscriptions\",\n description: \"Your plans and when they renew.\",\n empty: \"No subscriptions yet\",\n emptyDescription: \"Plans you subscribe to will appear here.\",\n browsePlans: \"Browse plans\",\n fallbackName: \"Subscription\",\n renews: \"Renews {date}\",\n endsOn: \"Access until {date}\",\n noMorePayments: \"No further payments\",\n endedOn: \"Ended {date}\",\n pastDue: \"Payment failed. Update your card to keep access.\",\n cancel: \"Cancel\",\n cancelLabel: \"Cancel {name}\",\n resume: \"Resume\",\n resumed: \"Your subscription will continue.\",\n manageAtProvider: \"Manage\",\n updating: \"Updating...\",\n paidWith: \"{brand} •••• {last4}\",\n wallet: \"Solana wallet\",\n changeCard: \"Change card\",\n changeCardLabel: \"Change card for {name}\",\n },\n changeCard: {\n title: \"Pay {name} with\",\n description: \"Future renewals charge the selected card.\",\n none: \"Add another card under Payment methods to switch.\",\n confirm: \"Use this card\",\n current: \"Current\",\n done: \"Payment card updated.\",\n },\n cancel: {\n title: \"Cancel {name}?\",\n description:\n \"Future payments stop. You keep access already purchased.\",\n solanaDescription:\n \"Your wallet signs an on-chain cancellation. You keep access already purchased.\",\n reasonLabel: \"Why are you cancelling?\",\n reasonPlaceholder: \"Your feedback helps us improve.\",\n reasonHint: \"{count}/{max}\",\n reasonTooShort: \"Enter at least {min} characters.\",\n keep: \"Keep subscription\",\n confirm: \"Cancel subscription\",\n confirmWallet: \"Sign with wallet\",\n working: \"Cancelling...\",\n preparing: \"Preparing transaction...\",\n signing: \"Confirm in your wallet...\",\n confirming: \"Recording cancellation...\",\n done: \"Cancellation requested.\",\n },\n paymentMethods: {\n title: \"Payment methods\",\n description: \"Cards saved for your subscriptions.\",\n empty: \"No saved cards\",\n emptyDescription: \"Cards you save appear here.\",\n add: \"Add card\",\n addTitle: \"Add a card\",\n addDescription:\n \"Card details go straight to the payment processor; this site never sees them.\",\n save: \"Save card\",\n added: \"Card saved.\",\n provider: \"Payment provider\",\n saveNotice:\n \"Cards you enter are saved to your account for future payments.\",\n unavailable: \"Secure card entry is unavailable for this provider.\",\n addUnavailable: \"Adding a card is temporarily unavailable.\",\n verificationPending:\n \"Card verification is pending. Check your saved cards before trying again.\",\n cardLabel: \"{brand} •••• {last4}\",\n fallbackBrand: \"Card\",\n expires: \"Expires {date}\",\n usedBy: \"Used by {names}\",\n collectsFor: \"Pays {currencies} invoices\",\n useForInvoices: \"Use for invoices\",\n usedForInvoices: \"Invoice card updated.\",\n remove: \"Remove\",\n removeLabel: \"Remove {label}\",\n removeTitle: \"Remove {label}?\",\n removeDescription:\n \"A card used by an active subscription must be replaced before it can be removed.\",\n removeConfirm: \"Remove card\",\n removed: \"Card removed.\",\n removePending: \"Removal is processing.\",\n inUse:\n \"This card pays for an active subscription. Switch that subscription to another card first.\",\n },\n checkout: {\n renews: \"Renews {period}\",\n },\n history: {\n title: \"Payment history\",\n description: \"Charges and refunds on your account.\",\n empty: \"No payments yet\",\n emptyDescription: \"Completed payments will appear here.\",\n date: \"Date\",\n item: \"Item\",\n subscription: \"Subscription\",\n purchase: \"Purchase\",\n method: \"Method\",\n status: \"Status\",\n amount: \"Amount\",\n refund: \"Refund\",\n refundedAmount: \"{amount} refunded\",\n page: \"Page {page}\",\n rail: {\n card: \"Card\",\n solana: \"Solana\",\n ccbill: \"Card\",\n nmi: \"Card\",\n stripe: \"Card\",\n },\n },\n errors: {\n generic: \"Something went wrong. Please try again.\",\n network: \"Can't reach the server. Check your connection and try again.\",\n network_error:\n \"Can't reach the server. Check your connection and try again.\",\n invalid_response: \"The server sent an unexpected response.\",\n authentication_required: \"Your session expired. Sign in again.\",\n resource_access_denied: \"You don't have access to this.\",\n resource_not_found: \"This item no longer exists.\",\n resource_conflict: \"This changed in the meantime. Refresh and try again.\",\n rate_limit_exceeded: \"Too many requests. Wait a moment and try again.\",\n service_unavailable: \"Billing is temporarily unavailable. Try again soon.\",\n internal_error: \"Something went wrong on our side. Please try again.\",\n card_declined: \"The card was declined.\",\n payment_provider_rejected: \"The payment provider rejected the request.\",\n provider_outcome_unknown:\n \"We couldn't confirm the result with the provider. Check again shortly.\",\n payment_in_progress: \"A payment is already in progress.\",\n payment_method_delete_unsupported:\n \"This card can't be removed here. Contact support.\",\n payment_method_delete_failed:\n \"The provider couldn't remove this card. Try again later.\",\n customer_session_required: \"Sign in again to do this.\",\n invoker_scoped_principal: \"This account can't manage billing.\",\n csrf_origin_denied: \"The request was blocked. Reload the page.\",\n wallet_rejected: \"The wallet request was declined.\",\n wallet_no_signature: \"The wallet did not sign the transaction.\",\n },\n}\n"],"mappings":"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"}
@@ -13,7 +13,7 @@ var e = {
13
13
  active: "Activa",
14
14
  pending: "Pendiente",
15
15
  past_due: "Vencida",
16
- cancelled: "Cancelada",
16
+ canceled: "Cancelada",
17
17
  cancel_scheduled: "Finaliza",
18
18
  unknown: "Desconocido",
19
19
  awaiting_method: "Actualiza tu tarjeta",
@@ -25,7 +25,7 @@ var e = {
25
25
  expired: "Caducada",
26
26
  expiring_soon: "Caduca pronto",
27
27
  needs_attention: "Revisar",
28
- default: "Predeterminada"
28
+ collection: "Facturas"
29
29
  },
30
30
  interval: {
31
31
  every: {
@@ -70,7 +70,8 @@ var e = {
70
70
  other: "{count} semanas de acceso"
71
71
  }
72
72
  },
73
- once: "pago único"
73
+ once: "pago único",
74
+ permanent: "Acceso sin vencimiento programado"
74
75
  },
75
76
  subscriptions: {
76
77
  title: "Suscripciones",
@@ -81,6 +82,7 @@ var e = {
81
82
  fallbackName: "Suscripción",
82
83
  renews: "Se renueva el {date}",
83
84
  endsOn: "Acceso hasta el {date}",
85
+ noMorePayments: "No habrá más pagos",
84
86
  endedOn: "Finalizó el {date}",
85
87
  pastDue: "El pago falló. Actualiza tu tarjeta para mantener el acceso.",
86
88
  cancel: "Cancelar",
@@ -104,8 +106,8 @@ var e = {
104
106
  },
105
107
  cancel: {
106
108
  title: "¿Cancelar {name}?",
107
- description: "Conservas el acceso hasta el final del periodo de facturación actual, salvo que el proveedor lo termine antes. Puedes reanudarla hasta entonces.",
108
- solanaDescription: "Tu billetera firma una cancelación en cadena. El acceso se mantiene hasta que termine el periodo pagado.",
109
+ description: "Se detienen los pagos futuros. Conservas el acceso ya adquirido.",
110
+ solanaDescription: "Tu cartera firma una cancelación en la cadena. Conservas el acceso ya adquirido.",
109
111
  reasonLabel: "¿Por qué cancelas?",
110
112
  reasonPlaceholder: "Tus comentarios nos ayudan a mejorar.",
111
113
  reasonHint: "{count}/{max}",
@@ -132,14 +134,15 @@ var e = {
132
134
  provider: "Proveedor de pago",
133
135
  saveNotice: "Las tarjetas que introduzcas se guardan en tu cuenta para pagos futuros.",
134
136
  unavailable: "La introducción segura de tarjetas no está disponible para este proveedor.",
137
+ addUnavailable: "Por el momento no se pueden añadir tarjetas.",
135
138
  verificationPending: "La verificación de la tarjeta está pendiente. Revisa tus tarjetas guardadas antes de volver a intentarlo.",
136
139
  cardLabel: "{brand} •••• {last4}",
137
140
  fallbackBrand: "Tarjeta",
138
141
  expires: "Caduca {date}",
139
142
  usedBy: "Usada por {names}",
140
- defaultFor: "Predeterminada para {currencies}",
141
- makeDefault: "Usar como predeterminada",
142
- madeDefault: "Tarjeta predeterminada actualizada.",
143
+ collectsFor: "Paga las facturas en {currencies}",
144
+ useForInvoices: "Usar para facturas",
145
+ usedForInvoices: "Tarjeta para facturas actualizada.",
143
146
  remove: "Eliminar",
144
147
  removeLabel: "Eliminar {label}",
145
148
  removeTitle: "¿Eliminar {label}?",
@@ -1 +1 @@
1
- {"version":3,"file":"es.js","names":[],"sources":["../../src/locales/es.ts"],"sourcesContent":["import type { BillingUiMessageBundle } from \"../i18n/messages\"\n\nexport const es: BillingUiMessageBundle = {\n common: {\n cancel: \"Cancelar\",\n close: \"Cerrar\",\n retry: \"Reintentar\",\n loading: \"Cargando...\",\n previous: \"Anterior\",\n next: \"Siguiente\",\n notAvailable: \"—\",\n },\n status: {\n active: \"Activa\",\n pending: \"Pendiente\",\n past_due: \"Vencida\",\n cancelled: \"Cancelada\",\n cancel_scheduled: \"Finaliza\",\n unknown: \"Desconocido\",\n awaiting_method: \"Actualiza tu tarjeta\",\n unverified: \"Verificando\",\n succeeded: \"Pagado\",\n failed: \"Fallido\",\n refunded: \"Reembolsado\",\n partially_refunded: \"Reembolso parcial\",\n expired: \"Caducada\",\n expiring_soon: \"Caduca pronto\",\n needs_attention: \"Revisar\",\n default: \"Predeterminada\",\n },\n interval: {\n every: {\n hour: { one: \"cada hora\", other: \"cada {count} horas\" },\n day: { one: \"cada día\", other: \"cada {count} días\" },\n week: { one: \"cada semana\", other: \"cada {count} semanas\" },\n },\n per: {\n hour: { one: \"/ hora\", other: \"/ {count} horas\" },\n day: { one: \"/ día\", other: \"/ {count} días\" },\n week: { one: \"/ semana\", other: \"/ {count} semanas\" },\n },\n access: {\n hour: { one: \"1 hora de acceso\", other: \"{count} horas de acceso\" },\n day: { one: \"1 día de acceso\", other: \"{count} días de acceso\" },\n week: { one: \"1 semana de acceso\", other: \"{count} semanas de acceso\" },\n },\n once: \"pago único\",\n },\n subscriptions: {\n title: \"Suscripciones\",\n description: \"Tus planes y cuándo se renuevan.\",\n empty: \"Aún no tienes suscripciones\",\n emptyDescription: \"Los planes a los que te suscribas aparecerán aquí.\",\n browsePlans: \"Ver planes\",\n fallbackName: \"Suscripción\",\n renews: \"Se renueva el {date}\",\n endsOn: \"Acceso hasta el {date}\",\n endedOn: \"Finalizó el {date}\",\n pastDue: \"El pago falló. Actualiza tu tarjeta para mantener el acceso.\",\n cancel: \"Cancelar\",\n cancelLabel: \"Cancelar {name}\",\n resume: \"Reanudar\",\n resumed: \"Tu suscripción continuará.\",\n manageAtProvider: \"Gestionar\",\n updating: \"Actualizando...\",\n paidWith: \"{brand} •••• {last4}\",\n wallet: \"Billetera de Solana\",\n changeCard: \"Cambiar tarjeta\",\n changeCardLabel: \"Cambiar la tarjeta de {name}\",\n },\n changeCard: {\n title: \"Pagar {name} con\",\n description:\n \"Las próximas renovaciones se cobrarán a la tarjeta seleccionada.\",\n none: \"Añade otra tarjeta en Métodos de pago para cambiarla.\",\n confirm: \"Usar esta tarjeta\",\n current: \"Actual\",\n done: \"Tarjeta de pago actualizada.\",\n },\n cancel: {\n title: \"¿Cancelar {name}?\",\n description:\n \"Conservas el acceso hasta el final del periodo de facturación actual, salvo que el proveedor lo termine antes. Puedes reanudarla hasta entonces.\",\n solanaDescription:\n \"Tu billetera firma una cancelación en cadena. El acceso se mantiene hasta que termine el periodo pagado.\",\n reasonLabel: \"¿Por qué cancelas?\",\n reasonPlaceholder: \"Tus comentarios nos ayudan a mejorar.\",\n reasonHint: \"{count}/{max}\",\n reasonTooShort: \"Escribe al menos {min} caracteres.\",\n keep: \"Mantener suscripción\",\n confirm: \"Cancelar suscripción\",\n confirmWallet: \"Firmar con billetera\",\n working: \"Cancelando...\",\n preparing: \"Preparando la transacción...\",\n signing: \"Confirma en tu billetera...\",\n confirming: \"Registrando la cancelación...\",\n done: \"Cancelación solicitada.\",\n },\n paymentMethods: {\n title: \"Métodos de pago\",\n description: \"Tarjetas guardadas para tus suscripciones.\",\n empty: \"No hay tarjetas guardadas\",\n emptyDescription: \"Las tarjetas que guardes aparecerán aquí.\",\n add: \"Añadir tarjeta\",\n addTitle: \"Añadir una tarjeta\",\n addDescription:\n \"Los datos de la tarjeta van directamente al procesador de pagos; este sitio nunca los ve.\",\n save: \"Guardar tarjeta\",\n added: \"Tarjeta guardada.\",\n provider: \"Proveedor de pago\",\n saveNotice:\n \"Las tarjetas que introduzcas se guardan en tu cuenta para pagos futuros.\",\n unavailable:\n \"La introducción segura de tarjetas no está disponible para este proveedor.\",\n verificationPending:\n \"La verificación de la tarjeta está pendiente. Revisa tus tarjetas guardadas antes de volver a intentarlo.\",\n cardLabel: \"{brand} •••• {last4}\",\n fallbackBrand: \"Tarjeta\",\n expires: \"Caduca {date}\",\n usedBy: \"Usada por {names}\",\n defaultFor: \"Predeterminada para {currencies}\",\n makeDefault: \"Usar como predeterminada\",\n madeDefault: \"Tarjeta predeterminada actualizada.\",\n remove: \"Eliminar\",\n removeLabel: \"Eliminar {label}\",\n removeTitle: \"¿Eliminar {label}?\",\n removeDescription:\n \"Una tarjeta que paga una suscripción activa debe sustituirse antes de eliminarla.\",\n removeConfirm: \"Eliminar tarjeta\",\n removed: \"Tarjeta eliminada.\",\n removePending: \"La eliminación se está procesando.\",\n inUse:\n \"Esta tarjeta paga una suscripción activa. Cambia primero esa suscripción a otra tarjeta.\",\n },\n checkout: {\n renews: \"Se renueva {period}\",\n },\n history: {\n title: \"Historial de pagos\",\n description: \"Cargos y reembolsos de tu cuenta.\",\n empty: \"Aún no hay pagos\",\n emptyDescription: \"Los pagos completados aparecerán aquí.\",\n date: \"Fecha\",\n item: \"Concepto\",\n subscription: \"Suscripción\",\n purchase: \"Compra\",\n method: \"Método\",\n status: \"Estado\",\n amount: \"Importe\",\n refund: \"Reembolso\",\n refundedAmount: \"{amount} reembolsado\",\n page: \"Página {page}\",\n rail: {\n card: \"Tarjeta\",\n solana: \"Solana\",\n ccbill: \"Tarjeta\",\n nmi: \"Tarjeta\",\n stripe: \"Tarjeta\",\n },\n },\n errors: {\n generic: \"Algo salió mal. Inténtalo de nuevo.\",\n network:\n \"No se puede conectar con el servidor. Revisa tu conexión e inténtalo de nuevo.\",\n network_error:\n \"No se puede conectar con el servidor. Revisa tu conexión e inténtalo de nuevo.\",\n invalid_response: \"El servidor envió una respuesta inesperada.\",\n authentication_required: \"Tu sesión caducó. Vuelve a iniciar sesión.\",\n resource_access_denied: \"No tienes acceso a esto.\",\n resource_not_found: \"Este elemento ya no existe.\",\n resource_conflict:\n \"Esto cambió mientras tanto. Actualiza e inténtalo de nuevo.\",\n rate_limit_exceeded:\n \"Demasiadas solicitudes. Espera un momento e inténtalo de nuevo.\",\n service_unavailable:\n \"La facturación no está disponible temporalmente. Inténtalo pronto.\",\n internal_error: \"Algo falló de nuestro lado. Inténtalo de nuevo.\",\n card_declined: \"La tarjeta fue rechazada.\",\n payment_provider_rejected: \"El proveedor de pagos rechazó la solicitud.\",\n provider_outcome_unknown:\n \"No pudimos confirmar el resultado con el proveedor. Vuelve a comprobarlo en breve.\",\n payment_in_progress: \"Ya hay un pago en curso.\",\n payment_method_delete_unsupported:\n \"Esta tarjeta no se puede eliminar aquí. Contacta con soporte.\",\n payment_method_delete_failed:\n \"El proveedor no pudo eliminar esta tarjeta. Inténtalo más tarde.\",\n customer_session_required: \"Vuelve a iniciar sesión para hacer esto.\",\n invoker_scoped_principal: \"Esta cuenta no puede gestionar la facturación.\",\n csrf_origin_denied: \"La solicitud fue bloqueada. Recarga la página.\",\n wallet_rejected: \"Se rechazó la solicitud de la billetera.\",\n wallet_no_signature: \"La billetera no firmó la transacción.\",\n },\n}\n"],"mappings":";AAEA,IAAa,IAA6B;CACxC,QAAQ;EACN,QAAQ;EACR,OAAO;EACP,OAAO;EACP,SAAS;EACT,UAAU;EACV,MAAM;EACN,cAAc;CAChB;CACA,QAAQ;EACN,QAAQ;EACR,SAAS;EACT,UAAU;EACV,WAAW;EACX,kBAAkB;EAClB,SAAS;EACT,iBAAiB;EACjB,YAAY;EACZ,WAAW;EACX,QAAQ;EACR,UAAU;EACV,oBAAoB;EACpB,SAAS;EACT,eAAe;EACf,iBAAiB;EACjB,SAAS;CACX;CACA,UAAU;EACR,OAAO;GACL,MAAM;IAAE,KAAK;IAAa,OAAO;GAAqB;GACtD,KAAK;IAAE,KAAK;IAAY,OAAO;GAAoB;GACnD,MAAM;IAAE,KAAK;IAAe,OAAO;GAAuB;EAC5D;EACA,KAAK;GACH,MAAM;IAAE,KAAK;IAAU,OAAO;GAAkB;GAChD,KAAK;IAAE,KAAK;IAAS,OAAO;GAAiB;GAC7C,MAAM;IAAE,KAAK;IAAY,OAAO;GAAoB;EACtD;EACA,QAAQ;GACN,MAAM;IAAE,KAAK;IAAoB,OAAO;GAA0B;GAClE,KAAK;IAAE,KAAK;IAAmB,OAAO;GAAyB;GAC/D,MAAM;IAAE,KAAK;IAAsB,OAAO;GAA4B;EACxE;EACA,MAAM;CACR;CACA,eAAe;EACb,OAAO;EACP,aAAa;EACb,OAAO;EACP,kBAAkB;EAClB,aAAa;EACb,cAAc;EACd,QAAQ;EACR,QAAQ;EACR,SAAS;EACT,SAAS;EACT,QAAQ;EACR,aAAa;EACb,QAAQ;EACR,SAAS;EACT,kBAAkB;EAClB,UAAU;EACV,UAAU;EACV,QAAQ;EACR,YAAY;EACZ,iBAAiB;CACnB;CACA,YAAY;EACV,OAAO;EACP,aACE;EACF,MAAM;EACN,SAAS;EACT,SAAS;EACT,MAAM;CACR;CACA,QAAQ;EACN,OAAO;EACP,aACE;EACF,mBACE;EACF,aAAa;EACb,mBAAmB;EACnB,YAAY;EACZ,gBAAgB;EAChB,MAAM;EACN,SAAS;EACT,eAAe;EACf,SAAS;EACT,WAAW;EACX,SAAS;EACT,YAAY;EACZ,MAAM;CACR;CACA,gBAAgB;EACd,OAAO;EACP,aAAa;EACb,OAAO;EACP,kBAAkB;EAClB,KAAK;EACL,UAAU;EACV,gBACE;EACF,MAAM;EACN,OAAO;EACP,UAAU;EACV,YACE;EACF,aACE;EACF,qBACE;EACF,WAAW;EACX,eAAe;EACf,SAAS;EACT,QAAQ;EACR,YAAY;EACZ,aAAa;EACb,aAAa;EACb,QAAQ;EACR,aAAa;EACb,aAAa;EACb,mBACE;EACF,eAAe;EACf,SAAS;EACT,eAAe;EACf,OACE;CACJ;CACA,UAAU,EACR,QAAQ,sBACV;CACA,SAAS;EACP,OAAO;EACP,aAAa;EACb,OAAO;EACP,kBAAkB;EAClB,MAAM;EACN,MAAM;EACN,cAAc;EACd,UAAU;EACV,QAAQ;EACR,QAAQ;EACR,QAAQ;EACR,QAAQ;EACR,gBAAgB;EAChB,MAAM;EACN,MAAM;GACJ,MAAM;GACN,QAAQ;GACR,QAAQ;GACR,KAAK;GACL,QAAQ;EACV;CACF;CACA,QAAQ;EACN,SAAS;EACT,SACE;EACF,eACE;EACF,kBAAkB;EAClB,yBAAyB;EACzB,wBAAwB;EACxB,oBAAoB;EACpB,mBACE;EACF,qBACE;EACF,qBACE;EACF,gBAAgB;EAChB,eAAe;EACf,2BAA2B;EAC3B,0BACE;EACF,qBAAqB;EACrB,mCACE;EACF,8BACE;EACF,2BAA2B;EAC3B,0BAA0B;EAC1B,oBAAoB;EACpB,iBAAiB;EACjB,qBAAqB;CACvB;AACF"}
1
+ {"version":3,"file":"es.js","names":[],"sources":["../../src/locales/es.ts"],"sourcesContent":["import type { BillingUiMessageBundle } from \"../i18n/messages\"\n\nexport const es: BillingUiMessageBundle = {\n common: {\n cancel: \"Cancelar\",\n close: \"Cerrar\",\n retry: \"Reintentar\",\n loading: \"Cargando...\",\n previous: \"Anterior\",\n next: \"Siguiente\",\n notAvailable: \"—\",\n },\n status: {\n active: \"Activa\",\n pending: \"Pendiente\",\n past_due: \"Vencida\",\n canceled: \"Cancelada\",\n cancel_scheduled: \"Finaliza\",\n unknown: \"Desconocido\",\n awaiting_method: \"Actualiza tu tarjeta\",\n unverified: \"Verificando\",\n succeeded: \"Pagado\",\n failed: \"Fallido\",\n refunded: \"Reembolsado\",\n partially_refunded: \"Reembolso parcial\",\n expired: \"Caducada\",\n expiring_soon: \"Caduca pronto\",\n needs_attention: \"Revisar\",\n collection: \"Facturas\",\n },\n interval: {\n every: {\n hour: { one: \"cada hora\", other: \"cada {count} horas\" },\n day: { one: \"cada día\", other: \"cada {count} días\" },\n week: { one: \"cada semana\", other: \"cada {count} semanas\" },\n },\n per: {\n hour: { one: \"/ hora\", other: \"/ {count} horas\" },\n day: { one: \"/ día\", other: \"/ {count} días\" },\n week: { one: \"/ semana\", other: \"/ {count} semanas\" },\n },\n access: {\n hour: { one: \"1 hora de acceso\", other: \"{count} horas de acceso\" },\n day: { one: \"1 día de acceso\", other: \"{count} días de acceso\" },\n week: { one: \"1 semana de acceso\", other: \"{count} semanas de acceso\" },\n },\n once: \"pago único\",\n permanent: \"Acceso sin vencimiento programado\",\n },\n subscriptions: {\n title: \"Suscripciones\",\n description: \"Tus planes y cuándo se renuevan.\",\n empty: \"Aún no tienes suscripciones\",\n emptyDescription: \"Los planes a los que te suscribas aparecerán aquí.\",\n browsePlans: \"Ver planes\",\n fallbackName: \"Suscripción\",\n renews: \"Se renueva el {date}\",\n endsOn: \"Acceso hasta el {date}\",\n noMorePayments: \"No habrá más pagos\",\n endedOn: \"Finalizó el {date}\",\n pastDue: \"El pago falló. Actualiza tu tarjeta para mantener el acceso.\",\n cancel: \"Cancelar\",\n cancelLabel: \"Cancelar {name}\",\n resume: \"Reanudar\",\n resumed: \"Tu suscripción continuará.\",\n manageAtProvider: \"Gestionar\",\n updating: \"Actualizando...\",\n paidWith: \"{brand} •••• {last4}\",\n wallet: \"Billetera de Solana\",\n changeCard: \"Cambiar tarjeta\",\n changeCardLabel: \"Cambiar la tarjeta de {name}\",\n },\n changeCard: {\n title: \"Pagar {name} con\",\n description:\n \"Las próximas renovaciones se cobrarán a la tarjeta seleccionada.\",\n none: \"Añade otra tarjeta en Métodos de pago para cambiarla.\",\n confirm: \"Usar esta tarjeta\",\n current: \"Actual\",\n done: \"Tarjeta de pago actualizada.\",\n },\n cancel: {\n title: \"¿Cancelar {name}?\",\n description: \"Se detienen los pagos futuros. Conservas el acceso ya adquirido.\",\n solanaDescription: \"Tu cartera firma una cancelación en la cadena. Conservas el acceso ya adquirido.\",\n reasonLabel: \"¿Por qué cancelas?\",\n reasonPlaceholder: \"Tus comentarios nos ayudan a mejorar.\",\n reasonHint: \"{count}/{max}\",\n reasonTooShort: \"Escribe al menos {min} caracteres.\",\n keep: \"Mantener suscripción\",\n confirm: \"Cancelar suscripción\",\n confirmWallet: \"Firmar con billetera\",\n working: \"Cancelando...\",\n preparing: \"Preparando la transacción...\",\n signing: \"Confirma en tu billetera...\",\n confirming: \"Registrando la cancelación...\",\n done: \"Cancelación solicitada.\",\n },\n paymentMethods: {\n title: \"Métodos de pago\",\n description: \"Tarjetas guardadas para tus suscripciones.\",\n empty: \"No hay tarjetas guardadas\",\n emptyDescription: \"Las tarjetas que guardes aparecerán aquí.\",\n add: \"Añadir tarjeta\",\n addTitle: \"Añadir una tarjeta\",\n addDescription:\n \"Los datos de la tarjeta van directamente al procesador de pagos; este sitio nunca los ve.\",\n save: \"Guardar tarjeta\",\n added: \"Tarjeta guardada.\",\n provider: \"Proveedor de pago\",\n saveNotice:\n \"Las tarjetas que introduzcas se guardan en tu cuenta para pagos futuros.\",\n unavailable:\n \"La introducción segura de tarjetas no está disponible para este proveedor.\",\n addUnavailable: \"Por el momento no se pueden añadir tarjetas.\",\n verificationPending:\n \"La verificación de la tarjeta está pendiente. Revisa tus tarjetas guardadas antes de volver a intentarlo.\",\n cardLabel: \"{brand} •••• {last4}\",\n fallbackBrand: \"Tarjeta\",\n expires: \"Caduca {date}\",\n usedBy: \"Usada por {names}\",\n collectsFor: \"Paga las facturas en {currencies}\",\n useForInvoices: \"Usar para facturas\",\n usedForInvoices: \"Tarjeta para facturas actualizada.\",\n remove: \"Eliminar\",\n removeLabel: \"Eliminar {label}\",\n removeTitle: \"¿Eliminar {label}?\",\n removeDescription:\n \"Una tarjeta que paga una suscripción activa debe sustituirse antes de eliminarla.\",\n removeConfirm: \"Eliminar tarjeta\",\n removed: \"Tarjeta eliminada.\",\n removePending: \"La eliminación se está procesando.\",\n inUse:\n \"Esta tarjeta paga una suscripción activa. Cambia primero esa suscripción a otra tarjeta.\",\n },\n checkout: {\n renews: \"Se renueva {period}\",\n },\n history: {\n title: \"Historial de pagos\",\n description: \"Cargos y reembolsos de tu cuenta.\",\n empty: \"Aún no hay pagos\",\n emptyDescription: \"Los pagos completados aparecerán aquí.\",\n date: \"Fecha\",\n item: \"Concepto\",\n subscription: \"Suscripción\",\n purchase: \"Compra\",\n method: \"Método\",\n status: \"Estado\",\n amount: \"Importe\",\n refund: \"Reembolso\",\n refundedAmount: \"{amount} reembolsado\",\n page: \"Página {page}\",\n rail: {\n card: \"Tarjeta\",\n solana: \"Solana\",\n ccbill: \"Tarjeta\",\n nmi: \"Tarjeta\",\n stripe: \"Tarjeta\",\n },\n },\n errors: {\n generic: \"Algo salió mal. Inténtalo de nuevo.\",\n network:\n \"No se puede conectar con el servidor. Revisa tu conexión e inténtalo de nuevo.\",\n network_error:\n \"No se puede conectar con el servidor. Revisa tu conexión e inténtalo de nuevo.\",\n invalid_response: \"El servidor envió una respuesta inesperada.\",\n authentication_required: \"Tu sesión caducó. Vuelve a iniciar sesión.\",\n resource_access_denied: \"No tienes acceso a esto.\",\n resource_not_found: \"Este elemento ya no existe.\",\n resource_conflict:\n \"Esto cambió mientras tanto. Actualiza e inténtalo de nuevo.\",\n rate_limit_exceeded:\n \"Demasiadas solicitudes. Espera un momento e inténtalo de nuevo.\",\n service_unavailable:\n \"La facturación no está disponible temporalmente. Inténtalo pronto.\",\n internal_error: \"Algo falló de nuestro lado. Inténtalo de nuevo.\",\n card_declined: \"La tarjeta fue rechazada.\",\n payment_provider_rejected: \"El proveedor de pagos rechazó la solicitud.\",\n provider_outcome_unknown:\n \"No pudimos confirmar el resultado con el proveedor. Vuelve a comprobarlo en breve.\",\n payment_in_progress: \"Ya hay un pago en curso.\",\n payment_method_delete_unsupported:\n \"Esta tarjeta no se puede eliminar aquí. Contacta con soporte.\",\n payment_method_delete_failed:\n \"El proveedor no pudo eliminar esta tarjeta. Inténtalo más tarde.\",\n customer_session_required: \"Vuelve a iniciar sesión para hacer esto.\",\n invoker_scoped_principal: \"Esta cuenta no puede gestionar la facturación.\",\n csrf_origin_denied: \"La solicitud fue bloqueada. Recarga la página.\",\n wallet_rejected: \"Se rechazó la solicitud de la billetera.\",\n wallet_no_signature: \"La billetera no firmó la transacción.\",\n },\n}\n"],"mappings":";AAEA,IAAa,IAA6B;CACxC,QAAQ;EACN,QAAQ;EACR,OAAO;EACP,OAAO;EACP,SAAS;EACT,UAAU;EACV,MAAM;EACN,cAAc;CAChB;CACA,QAAQ;EACN,QAAQ;EACR,SAAS;EACT,UAAU;EACV,UAAU;EACV,kBAAkB;EAClB,SAAS;EACT,iBAAiB;EACjB,YAAY;EACZ,WAAW;EACX,QAAQ;EACR,UAAU;EACV,oBAAoB;EACpB,SAAS;EACT,eAAe;EACf,iBAAiB;EACjB,YAAY;CACd;CACA,UAAU;EACR,OAAO;GACL,MAAM;IAAE,KAAK;IAAa,OAAO;GAAqB;GACtD,KAAK;IAAE,KAAK;IAAY,OAAO;GAAoB;GACnD,MAAM;IAAE,KAAK;IAAe,OAAO;GAAuB;EAC5D;EACA,KAAK;GACH,MAAM;IAAE,KAAK;IAAU,OAAO;GAAkB;GAChD,KAAK;IAAE,KAAK;IAAS,OAAO;GAAiB;GAC7C,MAAM;IAAE,KAAK;IAAY,OAAO;GAAoB;EACtD;EACA,QAAQ;GACN,MAAM;IAAE,KAAK;IAAoB,OAAO;GAA0B;GAClE,KAAK;IAAE,KAAK;IAAmB,OAAO;GAAyB;GAC/D,MAAM;IAAE,KAAK;IAAsB,OAAO;GAA4B;EACxE;EACA,MAAM;EACN,WAAW;CACb;CACA,eAAe;EACb,OAAO;EACP,aAAa;EACb,OAAO;EACP,kBAAkB;EAClB,aAAa;EACb,cAAc;EACd,QAAQ;EACR,QAAQ;EACR,gBAAgB;EAChB,SAAS;EACT,SAAS;EACT,QAAQ;EACR,aAAa;EACb,QAAQ;EACR,SAAS;EACT,kBAAkB;EAClB,UAAU;EACV,UAAU;EACV,QAAQ;EACR,YAAY;EACZ,iBAAiB;CACnB;CACA,YAAY;EACV,OAAO;EACP,aACE;EACF,MAAM;EACN,SAAS;EACT,SAAS;EACT,MAAM;CACR;CACA,QAAQ;EACN,OAAO;EACP,aAAa;EACb,mBAAmB;EACnB,aAAa;EACb,mBAAmB;EACnB,YAAY;EACZ,gBAAgB;EAChB,MAAM;EACN,SAAS;EACT,eAAe;EACf,SAAS;EACT,WAAW;EACX,SAAS;EACT,YAAY;EACZ,MAAM;CACR;CACA,gBAAgB;EACd,OAAO;EACP,aAAa;EACb,OAAO;EACP,kBAAkB;EAClB,KAAK;EACL,UAAU;EACV,gBACE;EACF,MAAM;EACN,OAAO;EACP,UAAU;EACV,YACE;EACF,aACE;EACF,gBAAgB;EAChB,qBACE;EACF,WAAW;EACX,eAAe;EACf,SAAS;EACT,QAAQ;EACR,aAAa;EACb,gBAAgB;EAChB,iBAAiB;EACjB,QAAQ;EACR,aAAa;EACb,aAAa;EACb,mBACE;EACF,eAAe;EACf,SAAS;EACT,eAAe;EACf,OACE;CACJ;CACA,UAAU,EACR,QAAQ,sBACV;CACA,SAAS;EACP,OAAO;EACP,aAAa;EACb,OAAO;EACP,kBAAkB;EAClB,MAAM;EACN,MAAM;EACN,cAAc;EACd,UAAU;EACV,QAAQ;EACR,QAAQ;EACR,QAAQ;EACR,QAAQ;EACR,gBAAgB;EAChB,MAAM;EACN,MAAM;GACJ,MAAM;GACN,QAAQ;GACR,QAAQ;GACR,KAAK;GACL,QAAQ;EACV;CACF;CACA,QAAQ;EACN,SAAS;EACT,SACE;EACF,eACE;EACF,kBAAkB;EAClB,yBAAyB;EACzB,wBAAwB;EACxB,oBAAoB;EACpB,mBACE;EACF,qBACE;EACF,qBACE;EACF,gBAAgB;EAChB,eAAe;EACf,2BAA2B;EAC3B,0BACE;EACF,qBAAqB;EACrB,mCACE;EACF,8BACE;EACF,2BAA2B;EAC3B,0BAA0B;EAC1B,oBAAoB;EACpB,iBAAiB;EACjB,qBAAqB;CACvB;AACF"}
@@ -13,7 +13,7 @@ var e = {
13
13
  active: "有効",
14
14
  pending: "保留中",
15
15
  past_due: "支払い遅延",
16
- cancelled: "解約済み",
16
+ canceled: "解約済み",
17
17
  cancel_scheduled: "終了予定",
18
18
  unknown: "不明",
19
19
  awaiting_method: "カード更新が必要",
@@ -25,7 +25,7 @@ var e = {
25
25
  expired: "期限切れ",
26
26
  expiring_soon: "まもなく期限切れ",
27
27
  needs_attention: "要確認",
28
- default: "既定"
28
+ collection: "請求書"
29
29
  },
30
30
  interval: {
31
31
  every: {
@@ -61,7 +61,8 @@ var e = {
61
61
  day: { other: "{count}日間のアクセス" },
62
62
  week: { other: "{count}週間のアクセス" }
63
63
  },
64
- once: "買い切り"
64
+ once: "買い切り",
65
+ permanent: "有効期限のないアクセス"
65
66
  },
66
67
  subscriptions: {
67
68
  title: "サブスクリプション",
@@ -72,6 +73,7 @@ var e = {
72
73
  fallbackName: "サブスクリプション",
73
74
  renews: "{date}に更新",
74
75
  endsOn: "{date}まで利用可能",
76
+ noMorePayments: "今後の支払いはありません",
75
77
  endedOn: "{date}に終了",
76
78
  pastDue: "お支払いに失敗しました。引き続き利用するにはカードを更新してください。",
77
79
  cancel: "解約",
@@ -95,8 +97,8 @@ var e = {
95
97
  },
96
98
  cancel: {
97
99
  title: "{name}を解約しますか?",
98
- description: "プロバイダーが早期に終了しない限り、現在の請求期間の終わりまで利用できます。それまでは再開できます。",
99
- solanaDescription: "ウォレットでオンチェーンの解約に署名します。支払い済みの期間が終わるまで利用できます。",
100
+ description: "今後の支払いは停止します。購入済みのアクセスは維持されます。",
101
+ solanaDescription: "ウォレットでオンチェーンの解約に署名します。購入済みのアクセスは維持されます。",
100
102
  reasonLabel: "解約の理由を教えてください",
101
103
  reasonPlaceholder: "ご意見はサービス改善に役立てます。",
102
104
  reasonHint: "{count}/{max}",
@@ -123,14 +125,15 @@ var e = {
123
125
  provider: "決済プロバイダー",
124
126
  saveNotice: "入力したカードは今後のお支払いのためにアカウントに保存されます。",
125
127
  unavailable: "このプロバイダーでは安全なカード入力を利用できません。",
128
+ addUnavailable: "現在、カードを追加できません。",
126
129
  verificationPending: "カードの確認が保留中です。もう一度試す前に保存済みのカードを確認してください。",
127
130
  cardLabel: "{brand} •••• {last4}",
128
131
  fallbackBrand: "カード",
129
132
  expires: "有効期限 {date}",
130
133
  usedBy: "{names}で使用中",
131
- defaultFor: "{currencies}の既定",
132
- makeDefault: "既定にする",
133
- madeDefault: "既定のカードを更新しました。",
134
+ collectsFor: "{currencies}の請求書を支払う",
135
+ useForInvoices: "請求書に使う",
136
+ usedForInvoices: "請求書のカードを更新しました。",
134
137
  remove: "削除",
135
138
  removeLabel: "{label}を削除",
136
139
  removeTitle: "{label}を削除しますか?",
@@ -1 +1 @@
1
- {"version":3,"file":"ja.js","names":[],"sources":["../../src/locales/ja.ts"],"sourcesContent":["import type { BillingUiMessageBundle } from \"../i18n/messages\"\n\nexport const ja: BillingUiMessageBundle = {\n common: {\n cancel: \"キャンセル\",\n close: \"閉じる\",\n retry: \"再試行\",\n loading: \"読み込み中...\",\n previous: \"前へ\",\n next: \"次へ\",\n notAvailable: \"—\",\n },\n status: {\n active: \"有効\",\n pending: \"保留中\",\n past_due: \"支払い遅延\",\n cancelled: \"解約済み\",\n cancel_scheduled: \"終了予定\",\n unknown: \"不明\",\n awaiting_method: \"カード更新が必要\",\n unverified: \"確認中\",\n succeeded: \"支払い済み\",\n failed: \"失敗\",\n refunded: \"返金済み\",\n partially_refunded: \"一部返金\",\n expired: \"期限切れ\",\n expiring_soon: \"まもなく期限切れ\",\n needs_attention: \"要確認\",\n default: \"既定\",\n },\n interval: {\n every: {\n hour: { \"1\": \"毎時\", other: \"{count}時間ごと\" },\n day: { \"1\": \"毎日\", other: \"{count}日ごと\" },\n week: { \"1\": \"毎週\", other: \"{count}週間ごと\" },\n },\n per: {\n hour: { \"1\": \"/時間\", other: \"/{count}時間\" },\n day: { \"1\": \"/日\", other: \"/{count}日\" },\n week: { \"1\": \"/週\", other: \"/{count}週間\" },\n },\n access: {\n hour: { other: \"{count}時間のアクセス\" },\n day: { other: \"{count}日間のアクセス\" },\n week: { other: \"{count}週間のアクセス\" },\n },\n once: \"買い切り\",\n },\n subscriptions: {\n title: \"サブスクリプション\",\n description: \"ご利用中のプランと更新日です。\",\n empty: \"サブスクリプションはまだありません\",\n emptyDescription: \"登録したプランがここに表示されます。\",\n browsePlans: \"プランを見る\",\n fallbackName: \"サブスクリプション\",\n renews: \"{date}に更新\",\n endsOn: \"{date}まで利用可能\",\n endedOn: \"{date}に終了\",\n pastDue:\n \"お支払いに失敗しました。引き続き利用するにはカードを更新してください。\",\n cancel: \"解約\",\n cancelLabel: \"{name}を解約\",\n resume: \"再開\",\n resumed: \"サブスクリプションは継続されます。\",\n manageAtProvider: \"管理\",\n updating: \"更新中...\",\n paidWith: \"{brand} •••• {last4}\",\n wallet: \"Solana ウォレット\",\n changeCard: \"カードを変更\",\n changeCardLabel: \"{name} のカードを変更\",\n },\n changeCard: {\n title: \"{name} の支払い方法\",\n description: \"今後の更新は選択したカードに請求されます。\",\n none: \"切り替えるには、支払い方法から別のカードを追加してください。\",\n confirm: \"このカードを使う\",\n current: \"現在\",\n done: \"支払いカードを更新しました。\",\n },\n cancel: {\n title: \"{name}を解約しますか?\",\n description:\n \"プロバイダーが早期に終了しない限り、現在の請求期間の終わりまで利用できます。それまでは再開できます。\",\n solanaDescription:\n \"ウォレットでオンチェーンの解約に署名します。支払い済みの期間が終わるまで利用できます。\",\n reasonLabel: \"解約の理由を教えてください\",\n reasonPlaceholder: \"ご意見はサービス改善に役立てます。\",\n reasonHint: \"{count}/{max}\",\n reasonTooShort: \"{min}文字以上入力してください。\",\n keep: \"継続する\",\n confirm: \"解約する\",\n confirmWallet: \"ウォレットで署名\",\n working: \"解約中...\",\n preparing: \"トランザクションを準備中...\",\n signing: \"ウォレットで承認してください...\",\n confirming: \"解約を記録中...\",\n done: \"解約を受け付けました。\",\n },\n paymentMethods: {\n title: \"支払い方法\",\n description: \"サブスクリプションに使う保存済みカードです。\",\n empty: \"保存済みのカードはありません\",\n emptyDescription: \"保存したカードがここに表示されます。\",\n add: \"カードを追加\",\n addTitle: \"カードを追加\",\n addDescription:\n \"カード情報は決済代行会社に直接送信され、このサイトには届きません。\",\n save: \"カードを保存\",\n added: \"カードを保存しました。\",\n provider: \"決済プロバイダー\",\n saveNotice:\n \"入力したカードは今後のお支払いのためにアカウントに保存されます。\",\n unavailable: \"このプロバイダーでは安全なカード入力を利用できません。\",\n verificationPending:\n \"カードの確認が保留中です。もう一度試す前に保存済みのカードを確認してください。\",\n cardLabel: \"{brand} •••• {last4}\",\n fallbackBrand: \"カード\",\n expires: \"有効期限 {date}\",\n usedBy: \"{names}で使用中\",\n defaultFor: \"{currencies}の既定\",\n makeDefault: \"既定にする\",\n madeDefault: \"既定のカードを更新しました。\",\n remove: \"削除\",\n removeLabel: \"{label}を削除\",\n removeTitle: \"{label}を削除しますか?\",\n removeDescription:\n \"有効なサブスクリプションで使用中のカードは、別のカードに切り替えてから削除してください。\",\n removeConfirm: \"カードを削除\",\n removed: \"カードを削除しました。\",\n removePending: \"削除を処理しています。\",\n inUse:\n \"このカードは有効なサブスクリプションの支払いに使われています。先に別のカードへ切り替えてください。\",\n },\n checkout: {\n renews: \"更新:{period}\",\n },\n history: {\n title: \"支払い履歴\",\n description: \"アカウントの請求と返金です。\",\n empty: \"支払いはまだありません\",\n emptyDescription: \"完了した支払いがここに表示されます。\",\n date: \"日付\",\n item: \"内容\",\n subscription: \"サブスクリプション\",\n purchase: \"購入\",\n method: \"支払い方法\",\n status: \"状態\",\n amount: \"金額\",\n refund: \"返金\",\n refundedAmount: \"{amount} 返金済み\",\n page: \"{page}ページ\",\n rail: {\n card: \"カード\",\n solana: \"Solana\",\n ccbill: \"カード\",\n nmi: \"カード\",\n stripe: \"カード\",\n },\n },\n errors: {\n generic: \"問題が発生しました。もう一度お試しください。\",\n network: \"サーバーに接続できません。接続を確認してもう一度お試しください。\",\n network_error:\n \"サーバーに接続できません。接続を確認してもう一度お試しください。\",\n invalid_response: \"サーバーから予期しない応答がありました。\",\n authentication_required:\n \"セッションの有効期限が切れました。再度サインインしてください。\",\n resource_access_denied: \"アクセス権がありません。\",\n resource_not_found: \"この項目は存在しません。\",\n resource_conflict:\n \"内容が更新されています。再読み込みしてもう一度お試しください。\",\n rate_limit_exceeded:\n \"リクエストが多すぎます。しばらく待ってからお試しください。\",\n service_unavailable:\n \"請求機能は一時的に利用できません。しばらくしてからお試しください。\",\n internal_error: \"システムで問題が発生しました。もう一度お試しください。\",\n card_declined: \"カードが拒否されました。\",\n payment_provider_rejected: \"決済代行会社がリクエストを拒否しました。\",\n provider_outcome_unknown:\n \"プロバイダーで結果を確認できませんでした。しばらくしてから確認してください。\",\n payment_in_progress: \"すでに支払いを処理中です。\",\n payment_method_delete_unsupported:\n \"このカードはここでは削除できません。サポートにお問い合わせください。\",\n payment_method_delete_failed:\n \"プロバイダーがこのカードを削除できませんでした。後でもう一度お試しください。\",\n customer_session_required: \"この操作には再度サインインが必要です。\",\n invoker_scoped_principal: \"このアカウントでは請求を管理できません。\",\n csrf_origin_denied:\n \"リクエストがブロックされました。ページを再読み込みしてください。\",\n wallet_rejected: \"ウォレットのリクエストが拒否されました。\",\n wallet_no_signature: \"ウォレットがトランザクションに署名しませんでした。\",\n },\n}\n"],"mappings":";AAEA,IAAa,IAA6B;CACxC,QAAQ;EACN,QAAQ;EACR,OAAO;EACP,OAAO;EACP,SAAS;EACT,UAAU;EACV,MAAM;EACN,cAAc;CAChB;CACA,QAAQ;EACN,QAAQ;EACR,SAAS;EACT,UAAU;EACV,WAAW;EACX,kBAAkB;EAClB,SAAS;EACT,iBAAiB;EACjB,YAAY;EACZ,WAAW;EACX,QAAQ;EACR,UAAU;EACV,oBAAoB;EACpB,SAAS;EACT,eAAe;EACf,iBAAiB;EACjB,SAAS;CACX;CACA,UAAU;EACR,OAAO;GACL,MAAM;IAAE,GAAK;IAAM,OAAO;GAAc;GACxC,KAAK;IAAE,GAAK;IAAM,OAAO;GAAa;GACtC,MAAM;IAAE,GAAK;IAAM,OAAO;GAAc;EAC1C;EACA,KAAK;GACH,MAAM;IAAE,GAAK;IAAO,OAAO;GAAa;GACxC,KAAK;IAAE,GAAK;IAAM,OAAO;GAAY;GACrC,MAAM;IAAE,GAAK;IAAM,OAAO;GAAa;EACzC;EACA,QAAQ;GACN,MAAM,EAAE,OAAO,iBAAiB;GAChC,KAAK,EAAE,OAAO,iBAAiB;GAC/B,MAAM,EAAE,OAAO,iBAAiB;EAClC;EACA,MAAM;CACR;CACA,eAAe;EACb,OAAO;EACP,aAAa;EACb,OAAO;EACP,kBAAkB;EAClB,aAAa;EACb,cAAc;EACd,QAAQ;EACR,QAAQ;EACR,SAAS;EACT,SACE;EACF,QAAQ;EACR,aAAa;EACb,QAAQ;EACR,SAAS;EACT,kBAAkB;EAClB,UAAU;EACV,UAAU;EACV,QAAQ;EACR,YAAY;EACZ,iBAAiB;CACnB;CACA,YAAY;EACV,OAAO;EACP,aAAa;EACb,MAAM;EACN,SAAS;EACT,SAAS;EACT,MAAM;CACR;CACA,QAAQ;EACN,OAAO;EACP,aACE;EACF,mBACE;EACF,aAAa;EACb,mBAAmB;EACnB,YAAY;EACZ,gBAAgB;EAChB,MAAM;EACN,SAAS;EACT,eAAe;EACf,SAAS;EACT,WAAW;EACX,SAAS;EACT,YAAY;EACZ,MAAM;CACR;CACA,gBAAgB;EACd,OAAO;EACP,aAAa;EACb,OAAO;EACP,kBAAkB;EAClB,KAAK;EACL,UAAU;EACV,gBACE;EACF,MAAM;EACN,OAAO;EACP,UAAU;EACV,YACE;EACF,aAAa;EACb,qBACE;EACF,WAAW;EACX,eAAe;EACf,SAAS;EACT,QAAQ;EACR,YAAY;EACZ,aAAa;EACb,aAAa;EACb,QAAQ;EACR,aAAa;EACb,aAAa;EACb,mBACE;EACF,eAAe;EACf,SAAS;EACT,eAAe;EACf,OACE;CACJ;CACA,UAAU,EACR,QAAQ,cACV;CACA,SAAS;EACP,OAAO;EACP,aAAa;EACb,OAAO;EACP,kBAAkB;EAClB,MAAM;EACN,MAAM;EACN,cAAc;EACd,UAAU;EACV,QAAQ;EACR,QAAQ;EACR,QAAQ;EACR,QAAQ;EACR,gBAAgB;EAChB,MAAM;EACN,MAAM;GACJ,MAAM;GACN,QAAQ;GACR,QAAQ;GACR,KAAK;GACL,QAAQ;EACV;CACF;CACA,QAAQ;EACN,SAAS;EACT,SAAS;EACT,eACE;EACF,kBAAkB;EAClB,yBACE;EACF,wBAAwB;EACxB,oBAAoB;EACpB,mBACE;EACF,qBACE;EACF,qBACE;EACF,gBAAgB;EAChB,eAAe;EACf,2BAA2B;EAC3B,0BACE;EACF,qBAAqB;EACrB,mCACE;EACF,8BACE;EACF,2BAA2B;EAC3B,0BAA0B;EAC1B,oBACE;EACF,iBAAiB;EACjB,qBAAqB;CACvB;AACF"}
1
+ {"version":3,"file":"ja.js","names":[],"sources":["../../src/locales/ja.ts"],"sourcesContent":["import type { BillingUiMessageBundle } from \"../i18n/messages\"\n\nexport const ja: BillingUiMessageBundle = {\n common: {\n cancel: \"キャンセル\",\n close: \"閉じる\",\n retry: \"再試行\",\n loading: \"読み込み中...\",\n previous: \"前へ\",\n next: \"次へ\",\n notAvailable: \"—\",\n },\n status: {\n active: \"有効\",\n pending: \"保留中\",\n past_due: \"支払い遅延\",\n canceled: \"解約済み\",\n cancel_scheduled: \"終了予定\",\n unknown: \"不明\",\n awaiting_method: \"カード更新が必要\",\n unverified: \"確認中\",\n succeeded: \"支払い済み\",\n failed: \"失敗\",\n refunded: \"返金済み\",\n partially_refunded: \"一部返金\",\n expired: \"期限切れ\",\n expiring_soon: \"まもなく期限切れ\",\n needs_attention: \"要確認\",\n collection: \"請求書\",\n },\n interval: {\n every: {\n hour: { \"1\": \"毎時\", other: \"{count}時間ごと\" },\n day: { \"1\": \"毎日\", other: \"{count}日ごと\" },\n week: { \"1\": \"毎週\", other: \"{count}週間ごと\" },\n },\n per: {\n hour: { \"1\": \"/時間\", other: \"/{count}時間\" },\n day: { \"1\": \"/日\", other: \"/{count}日\" },\n week: { \"1\": \"/週\", other: \"/{count}週間\" },\n },\n access: {\n hour: { other: \"{count}時間のアクセス\" },\n day: { other: \"{count}日間のアクセス\" },\n week: { other: \"{count}週間のアクセス\" },\n },\n once: \"買い切り\",\n permanent: \"有効期限のないアクセス\",\n },\n subscriptions: {\n title: \"サブスクリプション\",\n description: \"ご利用中のプランと更新日です。\",\n empty: \"サブスクリプションはまだありません\",\n emptyDescription: \"登録したプランがここに表示されます。\",\n browsePlans: \"プランを見る\",\n fallbackName: \"サブスクリプション\",\n renews: \"{date}に更新\",\n endsOn: \"{date}まで利用可能\",\n noMorePayments: \"今後の支払いはありません\",\n endedOn: \"{date}に終了\",\n pastDue:\n \"お支払いに失敗しました。引き続き利用するにはカードを更新してください。\",\n cancel: \"解約\",\n cancelLabel: \"{name}を解約\",\n resume: \"再開\",\n resumed: \"サブスクリプションは継続されます。\",\n manageAtProvider: \"管理\",\n updating: \"更新中...\",\n paidWith: \"{brand} •••• {last4}\",\n wallet: \"Solana ウォレット\",\n changeCard: \"カードを変更\",\n changeCardLabel: \"{name} のカードを変更\",\n },\n changeCard: {\n title: \"{name} の支払い方法\",\n description: \"今後の更新は選択したカードに請求されます。\",\n none: \"切り替えるには、支払い方法から別のカードを追加してください。\",\n confirm: \"このカードを使う\",\n current: \"現在\",\n done: \"支払いカードを更新しました。\",\n },\n cancel: {\n title: \"{name}を解約しますか?\",\n description: \"今後の支払いは停止します。購入済みのアクセスは維持されます。\",\n solanaDescription: \"ウォレットでオンチェーンの解約に署名します。購入済みのアクセスは維持されます。\",\n reasonLabel: \"解約の理由を教えてください\",\n reasonPlaceholder: \"ご意見はサービス改善に役立てます。\",\n reasonHint: \"{count}/{max}\",\n reasonTooShort: \"{min}文字以上入力してください。\",\n keep: \"継続する\",\n confirm: \"解約する\",\n confirmWallet: \"ウォレットで署名\",\n working: \"解約中...\",\n preparing: \"トランザクションを準備中...\",\n signing: \"ウォレットで承認してください...\",\n confirming: \"解約を記録中...\",\n done: \"解約を受け付けました。\",\n },\n paymentMethods: {\n title: \"支払い方法\",\n description: \"サブスクリプションに使う保存済みカードです。\",\n empty: \"保存済みのカードはありません\",\n emptyDescription: \"保存したカードがここに表示されます。\",\n add: \"カードを追加\",\n addTitle: \"カードを追加\",\n addDescription:\n \"カード情報は決済代行会社に直接送信され、このサイトには届きません。\",\n save: \"カードを保存\",\n added: \"カードを保存しました。\",\n provider: \"決済プロバイダー\",\n saveNotice:\n \"入力したカードは今後のお支払いのためにアカウントに保存されます。\",\n unavailable: \"このプロバイダーでは安全なカード入力を利用できません。\",\n addUnavailable: \"現在、カードを追加できません。\",\n verificationPending:\n \"カードの確認が保留中です。もう一度試す前に保存済みのカードを確認してください。\",\n cardLabel: \"{brand} •••• {last4}\",\n fallbackBrand: \"カード\",\n expires: \"有効期限 {date}\",\n usedBy: \"{names}で使用中\",\n collectsFor: \"{currencies}の請求書を支払う\",\n useForInvoices: \"請求書に使う\",\n usedForInvoices: \"請求書のカードを更新しました。\",\n remove: \"削除\",\n removeLabel: \"{label}を削除\",\n removeTitle: \"{label}を削除しますか?\",\n removeDescription:\n \"有効なサブスクリプションで使用中のカードは、別のカードに切り替えてから削除してください。\",\n removeConfirm: \"カードを削除\",\n removed: \"カードを削除しました。\",\n removePending: \"削除を処理しています。\",\n inUse:\n \"このカードは有効なサブスクリプションの支払いに使われています。先に別のカードへ切り替えてください。\",\n },\n checkout: {\n renews: \"更新:{period}\",\n },\n history: {\n title: \"支払い履歴\",\n description: \"アカウントの請求と返金です。\",\n empty: \"支払いはまだありません\",\n emptyDescription: \"完了した支払いがここに表示されます。\",\n date: \"日付\",\n item: \"内容\",\n subscription: \"サブスクリプション\",\n purchase: \"購入\",\n method: \"支払い方法\",\n status: \"状態\",\n amount: \"金額\",\n refund: \"返金\",\n refundedAmount: \"{amount} 返金済み\",\n page: \"{page}ページ\",\n rail: {\n card: \"カード\",\n solana: \"Solana\",\n ccbill: \"カード\",\n nmi: \"カード\",\n stripe: \"カード\",\n },\n },\n errors: {\n generic: \"問題が発生しました。もう一度お試しください。\",\n network: \"サーバーに接続できません。接続を確認してもう一度お試しください。\",\n network_error:\n \"サーバーに接続できません。接続を確認してもう一度お試しください。\",\n invalid_response: \"サーバーから予期しない応答がありました。\",\n authentication_required:\n \"セッションの有効期限が切れました。再度サインインしてください。\",\n resource_access_denied: \"アクセス権がありません。\",\n resource_not_found: \"この項目は存在しません。\",\n resource_conflict:\n \"内容が更新されています。再読み込みしてもう一度お試しください。\",\n rate_limit_exceeded:\n \"リクエストが多すぎます。しばらく待ってからお試しください。\",\n service_unavailable:\n \"請求機能は一時的に利用できません。しばらくしてからお試しください。\",\n internal_error: \"システムで問題が発生しました。もう一度お試しください。\",\n card_declined: \"カードが拒否されました。\",\n payment_provider_rejected: \"決済代行会社がリクエストを拒否しました。\",\n provider_outcome_unknown:\n \"プロバイダーで結果を確認できませんでした。しばらくしてから確認してください。\",\n payment_in_progress: \"すでに支払いを処理中です。\",\n payment_method_delete_unsupported:\n \"このカードはここでは削除できません。サポートにお問い合わせください。\",\n payment_method_delete_failed:\n \"プロバイダーがこのカードを削除できませんでした。後でもう一度お試しください。\",\n customer_session_required: \"この操作には再度サインインが必要です。\",\n invoker_scoped_principal: \"このアカウントでは請求を管理できません。\",\n csrf_origin_denied:\n \"リクエストがブロックされました。ページを再読み込みしてください。\",\n wallet_rejected: \"ウォレットのリクエストが拒否されました。\",\n wallet_no_signature: \"ウォレットがトランザクションに署名しませんでした。\",\n },\n}\n"],"mappings":";AAEA,IAAa,IAA6B;CACxC,QAAQ;EACN,QAAQ;EACR,OAAO;EACP,OAAO;EACP,SAAS;EACT,UAAU;EACV,MAAM;EACN,cAAc;CAChB;CACA,QAAQ;EACN,QAAQ;EACR,SAAS;EACT,UAAU;EACV,UAAU;EACV,kBAAkB;EAClB,SAAS;EACT,iBAAiB;EACjB,YAAY;EACZ,WAAW;EACX,QAAQ;EACR,UAAU;EACV,oBAAoB;EACpB,SAAS;EACT,eAAe;EACf,iBAAiB;EACjB,YAAY;CACd;CACA,UAAU;EACR,OAAO;GACL,MAAM;IAAE,GAAK;IAAM,OAAO;GAAc;GACxC,KAAK;IAAE,GAAK;IAAM,OAAO;GAAa;GACtC,MAAM;IAAE,GAAK;IAAM,OAAO;GAAc;EAC1C;EACA,KAAK;GACH,MAAM;IAAE,GAAK;IAAO,OAAO;GAAa;GACxC,KAAK;IAAE,GAAK;IAAM,OAAO;GAAY;GACrC,MAAM;IAAE,GAAK;IAAM,OAAO;GAAa;EACzC;EACA,QAAQ;GACN,MAAM,EAAE,OAAO,iBAAiB;GAChC,KAAK,EAAE,OAAO,iBAAiB;GAC/B,MAAM,EAAE,OAAO,iBAAiB;EAClC;EACA,MAAM;EACN,WAAW;CACb;CACA,eAAe;EACb,OAAO;EACP,aAAa;EACb,OAAO;EACP,kBAAkB;EAClB,aAAa;EACb,cAAc;EACd,QAAQ;EACR,QAAQ;EACR,gBAAgB;EAChB,SAAS;EACT,SACE;EACF,QAAQ;EACR,aAAa;EACb,QAAQ;EACR,SAAS;EACT,kBAAkB;EAClB,UAAU;EACV,UAAU;EACV,QAAQ;EACR,YAAY;EACZ,iBAAiB;CACnB;CACA,YAAY;EACV,OAAO;EACP,aAAa;EACb,MAAM;EACN,SAAS;EACT,SAAS;EACT,MAAM;CACR;CACA,QAAQ;EACN,OAAO;EACP,aAAa;EACb,mBAAmB;EACnB,aAAa;EACb,mBAAmB;EACnB,YAAY;EACZ,gBAAgB;EAChB,MAAM;EACN,SAAS;EACT,eAAe;EACf,SAAS;EACT,WAAW;EACX,SAAS;EACT,YAAY;EACZ,MAAM;CACR;CACA,gBAAgB;EACd,OAAO;EACP,aAAa;EACb,OAAO;EACP,kBAAkB;EAClB,KAAK;EACL,UAAU;EACV,gBACE;EACF,MAAM;EACN,OAAO;EACP,UAAU;EACV,YACE;EACF,aAAa;EACb,gBAAgB;EAChB,qBACE;EACF,WAAW;EACX,eAAe;EACf,SAAS;EACT,QAAQ;EACR,aAAa;EACb,gBAAgB;EAChB,iBAAiB;EACjB,QAAQ;EACR,aAAa;EACb,aAAa;EACb,mBACE;EACF,eAAe;EACf,SAAS;EACT,eAAe;EACf,OACE;CACJ;CACA,UAAU,EACR,QAAQ,cACV;CACA,SAAS;EACP,OAAO;EACP,aAAa;EACb,OAAO;EACP,kBAAkB;EAClB,MAAM;EACN,MAAM;EACN,cAAc;EACd,UAAU;EACV,QAAQ;EACR,QAAQ;EACR,QAAQ;EACR,QAAQ;EACR,gBAAgB;EAChB,MAAM;EACN,MAAM;GACJ,MAAM;GACN,QAAQ;GACR,QAAQ;GACR,KAAK;GACL,QAAQ;EACV;CACF;CACA,QAAQ;EACN,SAAS;EACT,SAAS;EACT,eACE;EACF,kBAAkB;EAClB,yBACE;EACF,wBAAwB;EACxB,oBAAoB;EACpB,mBACE;EACF,qBACE;EACF,qBACE;EACF,gBAAgB;EAChB,eAAe;EACf,2BAA2B;EAC3B,0BACE;EACF,qBAAqB;EACrB,mCACE;EACF,8BACE;EACF,2BAA2B;EAC3B,0BAA0B;EAC1B,oBACE;EACF,iBAAiB;EACjB,qBAAqB;CACvB;AACF"}