@alma/widgets 3.3.12 → 3.4.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.
@@ -1750,7 +1750,9 @@ if (!''.trim) String.prototype.trim = function () {
1750
1750
 
1751
1751
  var messagesDE = {
1752
1752
  "credit-features.credit-cost-display": "{creditCost} (APR {taegPercentage})",
1753
- "credit-features.information": "Ein Kredit verpflichtet Sie und muss zurückgezahlt werden. Prüfen Sie Ihre Rückzahlungsfähigkeit, bevor Sie sich verpflichten.",
1753
+ "credit-features.information": "Überprüfen Sie Ihre Rückzahlungsmöglichkeiten, bevor Sie eine Verpflichtung eingehen.",
1754
+ "credit-features.information.title": "Ein Kredit verpflichtet Sie und muss zurückgezahlt werden.",
1755
+ "credit-features.legal-text": "Kredit in Höhe von {totalWithoutFirstInstallment} zu einem festen Sollzinssatz von {taegPercentage} über eine Laufzeit von {installmeentsCountWithoutFirst} Monaten. Ermöglicht, zusätzlich zu einer Anzahlung von {firstInstallmentAmount}, die Finanzierung eines Kaufs in Höhe von {productPriceWithoutCreditCost}. Vorbehaltlich der Prüfung und Annahme durch Alma. Gesetzliche Widerrufsfrist von 14 Tagen. Simulation präsentiert von Alma, eingetragen im RCS Nanterre unter der Nummer 839 100 575, Zahlungsinstitut und Finanzierungsgesellschaft, zugelassen von der ACPR unter der Nummer 17408 (IPC-Nummer / Bankcode).",
1754
1756
  "credit-features.total-credit-cost": "Davon Kreditkosten",
1755
1757
  "eligibility-modal.bullet-1": "Wählen Sie <strong>Alma</strong> beim Check-out. ",
1756
1758
  "eligibility-modal.bullet-2": "Lassen Sie sich führen und bestätigen Sie Ihre Zahlung in <strong>2 Minuten.</strong>",
@@ -1765,6 +1767,7 @@ var messagesDE = {
1765
1767
  "installments.today": "Heute",
1766
1768
  "installments.total-amount": "Gesamtsumme",
1767
1769
  "installments.total-fees": "Davon Kosten",
1770
+ "payment-plan-strings.credit": "Klicken Sie, um mehr zu erfahren",
1768
1771
  "payment-plan-strings.day-abbreviation": "T{deferredDays}",
1769
1772
  "payment-plan-strings.default-message": "Bezahlen Sie zinsfrei in mehreren Raten mit Alma.",
1770
1773
  "payment-plan-strings.deferred": "{totalAmount} zu zahlen am {dueDate}",
@@ -1780,7 +1783,9 @@ var messagesDE = {
1780
1783
 
1781
1784
  var messagesEN = {
1782
1785
  "credit-features.credit-cost-display": "{creditCost} (APR {taegPercentage})",
1783
- "credit-features.information": "A loan commits you and must be repaid. Check your ability to repay before committing yourself.",
1786
+ "credit-features.information": "Check your repayment capacity before committing yourself.",
1787
+ "credit-features.information.title": "Credit is a commitment and must be repaid.",
1788
+ "credit-features.legal-text": "Loan of {totalWithoutFirstInstallment} at a fixed interest rate of {taegPercentage} over a period of {installmeentsCountWithoutFirst} months. In addition to a down payment of {firstInstallmentAmount}, this loan can be used to finance a purchase of {productPriceWithoutCreditCost}. Subject to review and acceptance by Alma. Legal cooling-off period of 14 days. Simulation presented by Alma, registered with the RCS Nanterre under number 839 100 575, payment and finance company approved by the ACPR under number 17408 (CIB number / Bank code).",
1784
1789
  "credit-features.total-credit-cost": "Of which cost of credit",
1785
1790
  "eligibility-modal.bullet-1": "Choose <strong>Alma</strong> at checkout.",
1786
1791
  "eligibility-modal.bullet-2": "Let us guide you and validate your payment in <strong>2 minutes.</strong>",
@@ -1795,6 +1800,7 @@ var messagesEN = {
1795
1800
  "installments.today": "Today",
1796
1801
  "installments.total-amount": "Total",
1797
1802
  "installments.total-fees": "Of which costs (incl. VAT)",
1803
+ "payment-plan-strings.credit": "Click to find out more",
1798
1804
  "payment-plan-strings.day-abbreviation": "D{deferredDays}",
1799
1805
  "payment-plan-strings.default-message": "Pay in installments with Alma",
1800
1806
  "payment-plan-strings.deferred": "{totalAmount} to pay the {dueDate}",
@@ -1810,7 +1816,9 @@ var messagesEN = {
1810
1816
 
1811
1817
  var messagesES = {
1812
1818
  "credit-features.credit-cost-display": "{creditCost} (TAE {taegPercentage})",
1813
- "credit-features.information": "Un préstamo te compromete y debe ser devuelto. Comprueba tu capacidad financiera antes de comprometerte.",
1819
+ "credit-features.information": "Compruebe tu capacidad de reembolso antes de comprometerte.",
1820
+ "credit-features.information.title": "El crédito y/o pago a plazos es un compromiso y debe devolverse.",
1821
+ "credit-features.legal-text": "{totalWithoutFirstInstallment} {taegPercentage} {installmeentsCountWithoutFirst} Préstamo de a un tipo deudor fijo de a lo largo de un periodo de meses. {firstInstallmentAmount} {productPriceWithoutCreditCost}Además de un depósito de , esto le permitirá financiar una compra de . Sujeto a revisión y aceptación por parte de Alma. Plazo legal de retractación de 14 días. Simulación presentada por Alma, inscrita en el Registro Mercantil de Nanterre con el número 839 100 575, sociedad de pago y financiación autorizada por la ACPR con el número 17408 (número CIB / código bancario).",
1814
1822
  "credit-features.total-credit-cost": "Coste de crédito (incl. en el total)",
1815
1823
  "eligibility-modal.bullet-1": "Elige <strong>Alma</strong> como método de pago.",
1816
1824
  "eligibility-modal.bullet-2": "Déjate guiar y válida tu pago en <strong>2 minutos.</strong>",
@@ -1825,6 +1833,7 @@ var messagesES = {
1825
1833
  "installments.today": "Hoy",
1826
1834
  "installments.total-amount": "Total",
1827
1835
  "installments.total-fees": "De los cuales, costes (IVA incluido)",
1836
+ "payment-plan-strings.credit": "Haz click para más información",
1828
1837
  "payment-plan-strings.day-abbreviation": "D{deferredDays}",
1829
1838
  "payment-plan-strings.default-message": "Pagar a plazos con Alma",
1830
1839
  "payment-plan-strings.deferred": "{totalAmount} a pagar el {dueDate}",
@@ -1840,7 +1849,9 @@ var messagesES = {
1840
1849
 
1841
1850
  var messagesFR = {
1842
1851
  "credit-features.credit-cost-display": "{creditCost} (TAEG {taegPercentage})",
1843
- "credit-features.information": "Un crédit vous engage et doit être remboursé. Vérifiez vos capacités de remboursement avant de vous engager.",
1852
+ "credit-features.information": "Vérifiez vos capacités de remboursement avant de vous engager.",
1853
+ "credit-features.information.title": "Un crédit vous engage et doit être remboursé.",
1854
+ "credit-features.legal-text": "Crédit d'un montant de {totalWithoutFirstInstallment} au taux débiteur fixe de {taegPercentage} sur une durée de {installmeentsCountWithoutFirst} mois. Permettant, en complément d'un acompte de {firstInstallmentAmount}, de financer un achat d'un montant de {productPriceWithoutCreditCost}. Sous réserve d'étude et d'acceptation par Alma. Délai légal de rétractation de 14 jours. Simulation présentée par Alma, immatriculée au RCS Nanterre sous le numéro 839 100 575, établissement de paiement et société de financement agréée par l’ACPR sous le n° 17408 (numéro CIB / Code banque).",
1844
1855
  "credit-features.total-credit-cost": "Dont coût du crédit",
1845
1856
  "eligibility-modal.bullet-1": "Choisissez <strong>Alma</strong> au moment du paiement.",
1846
1857
  "eligibility-modal.bullet-2": "Laissez-vous guider et validez votre paiement en <strong>2 minutes.</strong>",
@@ -1855,6 +1866,7 @@ var messagesFR = {
1855
1866
  "installments.today": "Aujourd'hui",
1856
1867
  "installments.total-amount": "Total",
1857
1868
  "installments.total-fees": "Dont frais (TTC)",
1869
+ "payment-plan-strings.credit": "Cliquez pour en savoir plus",
1858
1870
  "payment-plan-strings.day-abbreviation": "J{deferredDays}",
1859
1871
  "payment-plan-strings.default-message": "Payez en plusieurs fois avec Alma",
1860
1872
  "payment-plan-strings.deferred": "{totalAmount} à payer le {dueDate}",
@@ -1870,7 +1882,9 @@ var messagesFR = {
1870
1882
 
1871
1883
  var messagesIT = {
1872
1884
  "credit-features.credit-cost-display": "{creditCost} (TAEG {taegPercentage})",
1873
- "credit-features.information": "Un pagamento rateale ti impegna e deve essere ripagato. Verifica la tua disponibilità finanziaria prima di impegnarti.",
1885
+ "credit-features.information": "Verificate la vostra capacità di rimborso prima di prendere un impegno.",
1886
+ "credit-features.information.title": "Il credito è un impegno e deve essere ripagato.",
1887
+ "credit-features.legal-text": "{totalWithoutFirstInstallment} {taegPercentage} {installmeentsCountWithoutFirst} Prestito a tasso fisso per un periodo di mesi. {firstInstallmentAmount} {productPriceWithoutCreditCost}Oltre a un deposito di , questo vi permetterà di finanziare un acquisto di . Soggetto a revisione e accettazione da parte di Alma. Periodo di recesso legale di 14 giorni. Simulazione presentata da Alma, iscritta al Registro del Commercio e delle Imprese di Nanterre con il numero 839 100 575, società di pagamento e di finanziamento approvata dall'ACPR con il numero 17408 (numero CIB / codice bancario).",
1874
1888
  "credit-features.total-credit-cost": "Di cui commissioni",
1875
1889
  "eligibility-modal.bullet-1": "Seleziona <strong>Alma</strong> come metodo di pagamento.",
1876
1890
  "eligibility-modal.bullet-2": "Segui le istruzioni e completa l'acquisto <strong>in meno di 2 minuti.</strong>",
@@ -1885,6 +1899,7 @@ var messagesIT = {
1885
1899
  "installments.today": "Oggi",
1886
1900
  "installments.total-amount": "Totale",
1887
1901
  "installments.total-fees": "Di cui commissioni",
1902
+ "payment-plan-strings.credit": "Clicca qui per saperne di più",
1888
1903
  "payment-plan-strings.day-abbreviation": "G{deferredDays}",
1889
1904
  "payment-plan-strings.default-message": "Paga a rate con Alma, senza registrazione.",
1890
1905
  "payment-plan-strings.deferred": "{totalAmount} da pagare il {dueDate}",
@@ -1900,7 +1915,9 @@ var messagesIT = {
1900
1915
 
1901
1916
  var messagesNL = {
1902
1917
  "credit-features.credit-cost-display": "{creditCost} (gemiddeld rente percentage {taegPercentage})",
1903
- "credit-features.information": "Een lening is bindend en moet worden terugbetaald. Ga na of je het kunt terugbetalen voordat je jezelf vastlegt.",
1918
+ "credit-features.information": "Controleer uw terugbetalingscapaciteit voordat u een toezegging doet.",
1919
+ "credit-features.information.title": "Krediet is een verplichting en moet worden terugbetaald.",
1920
+ "credit-features.legal-text": "{totalWithoutFirstInstallment} {taegPercentage} {installmeentsCountWithoutFirst} Lening van tegen een vaste rentevoet van over een periode van maanden. {firstInstallmentAmount} {productPriceWithoutCreditCost}Naast een aanbetaling van , kun je hiermee een aankoop financieren van . Onder voorbehoud van beoordeling en aanvaarding door Alma. Wettelijke herroepingstermijn van 14 dagen. Simulatie aangeboden door Alma, ingeschreven in het handels- en bedrijvenregister van Nanterre onder nummer 839 100 575, betalings- en financieringsmaatschappij erkend door de ACPR onder nummer 17408 (CIB-nummer / bankcode).",
1904
1921
  "credit-features.total-credit-cost": "Waarvan kredietkosten",
1905
1922
  "eligibility-modal.bullet-1": "Kies <strong>Alma</strong> bij het afrekenen om de eerste termijnbetaling te voldoen. Dit kan gemakkelijk via jouw favoriete betaalmethode.",
1906
1923
  "eligibility-modal.bullet-2": "Betaal gemakkelijk <strong>binnen 1 minuut </strong>. Je hebt hier geen account voor nodig.",
@@ -1915,6 +1932,7 @@ var messagesNL = {
1915
1932
  "installments.today": "Vandaag",
1916
1933
  "installments.total-amount": "Totaal",
1917
1934
  "installments.total-fees": "Waarvan kosten (incl. BTW)",
1935
+ "payment-plan-strings.credit": "Klik hier voor meer informatie",
1918
1936
  "payment-plan-strings.day-abbreviation": "D{deferredDays}",
1919
1937
  "payment-plan-strings.default-message": "Betaal in termijnen bij Alma - helemaal rentevrij",
1920
1938
  "payment-plan-strings.deferred": "{totalAmount} te betalen op {dueDate}",
@@ -1930,7 +1948,9 @@ var messagesNL = {
1930
1948
 
1931
1949
  var messagesPT = {
1932
1950
  "credit-features.credit-cost-display": "{creditCost} (TAEG {taegPercentage})",
1933
- "credit-features.information": "Um crédito é um compromisso e deve ser reembolsado. Verifique a sua capacidade de pagar antes de se comprometer.",
1951
+ "credit-features.information": "Verifique a sua capacidade de reembolso antes de assumir um compromisso.",
1952
+ "credit-features.information.title": "O crédito é um compromisso e deve ser reembolsado.",
1953
+ "credit-features.legal-text": "{totalWithoutFirstInstallment} {taegPercentage} {installmeentsCountWithoutFirst} Empréstimo de a uma taxa de juro fixa de durante um período de meses. {firstInstallmentAmount} {productPriceWithoutCreditCost}Para além de um depósito de , isto permitir-lhe-á financiar uma compra de . Sujeito a análise e aceitação pela Alma. Prazo legal de retratação de 14 dias. Simulação apresentada pela Alma, inscrita na Conservatória do Registo Comercial e das Sociedades de Nanterre sob o número 839 100 575, sociedade de pagamento e de financiamento aprovada pela ACPR sob o número 17408 (número CIB / código bancário).",
1934
1954
  "credit-features.total-credit-cost": "Incluindo comissões de crédito",
1935
1955
  "eligibility-modal.bullet-1": "Seleccionar <strong>Alma - Pay Now</strong> no final da compra.",
1936
1956
  "eligibility-modal.bullet-2": "Siga as instruções e valide o seu pagamento em <strong>2 minutos.</strong>",
@@ -1945,6 +1965,7 @@ var messagesPT = {
1945
1965
  "installments.today": "Hoje",
1946
1966
  "installments.total-amount": "Total",
1947
1967
  "installments.total-fees": "Das quais comissões (incl. IVA)",
1968
+ "payment-plan-strings.credit": "Clique aqui para saber mais",
1948
1969
  "payment-plan-strings.day-abbreviation": "D{deferredDays}",
1949
1970
  "payment-plan-strings.default-message": "Pagamento em prestações com a Alma",
1950
1971
  "payment-plan-strings.deferred": "{totalAmount} a pagar em {dueDate}",
@@ -2177,7 +2198,7 @@ const useFetchEligibility = (purchaseAmount, {
2177
2198
  shipping_address
2178
2199
  }, {
2179
2200
  Authorization: `Alma-Merchant-Auth ${merchantId}`,
2180
- 'X-Alma-Agent': `Alma Widget/${"v3.3.12"}`
2201
+ 'X-Alma-Agent': `Alma Widget/${"v3.4.0"}`
2181
2202
  }).then(res => {
2182
2203
  setCache(key, res);
2183
2204
  setEligibility(res);
@@ -2191,7 +2212,7 @@ const useFetchEligibility = (purchaseAmount, {
2191
2212
  return [filterEligibility(eligibility, plans), status];
2192
2213
  };
2193
2214
 
2194
- var s = {"container":"_GTTk7","total":"_34s2g","fees":"_W7qIA","creditCost":"_24KmE"};
2215
+ var s = {"container":"_GTTk7","total":"_34s2g","creditInfo":"_15KNd","creditInfoTitle":"_3T0mA","fees":"_W7qIA","creditCost":"_24KmE","creditInfoLegalText":"_2e3lw"};
2195
2216
 
2196
2217
  /**
2197
2218
  * Prefix classes to avoid name collisions.
@@ -2223,13 +2244,27 @@ const STATIC_CUSTOMISATION_CLASSES = {
2223
2244
  const TotalBlock = ({
2224
2245
  currentPlan
2225
2246
  }) => {
2247
+ var _currentPlan$payment_, _currentPlan$payment_2, _currentPlan$payment_3, _currentPlan$payment_4;
2226
2248
  const intl = useIntl();
2227
2249
  const total = priceFromCents(currentPlan.purchase_amount + currentPlan.customer_total_cost_amount);
2228
2250
  const creditCost = priceFromCents(currentPlan.customer_total_cost_amount);
2229
2251
  const TAEG = (currentPlan == null ? void 0 : currentPlan.annual_interest_rate) && currentPlan.annual_interest_rate / 10000 || 0;
2230
2252
  const customerFees = priceFromCents(currentPlan.customer_total_cost_amount);
2231
2253
  const isCredit = currentPlan.installments_count > 4;
2232
- return /*#__PURE__*/React.createElement("div", {
2254
+ const firstInstallmentAmount = priceFromCents((_currentPlan$payment_ = (_currentPlan$payment_2 = currentPlan.payment_plan) == null || (_currentPlan$payment_2 = _currentPlan$payment_2[0]) == null ? void 0 : _currentPlan$payment_2.total_amount) != null ? _currentPlan$payment_ : 0);
2255
+ // For totalWithoutFirstInstallment, we need to get the total price and add the credit cost, before removing the first installment, to get the rest of the amount to pay.
2256
+ const totalWithoutFirstInstallment = priceFromCents(currentPlan.purchase_amount + currentPlan.customer_total_cost_amount - ((_currentPlan$payment_3 = (_currentPlan$payment_4 = currentPlan.payment_plan) == null || (_currentPlan$payment_4 = _currentPlan$payment_4[0]) == null ? void 0 : _currentPlan$payment_4.total_amount) != null ? _currentPlan$payment_3 : 0));
2257
+ return /*#__PURE__*/React.createElement(React.Fragment, null, isCredit && ( /*#__PURE__*/React.createElement("div", {
2258
+ className: s.creditInfo
2259
+ }, /*#__PURE__*/React.createElement("span", {
2260
+ className: s.creditInfoTitle
2261
+ }, /*#__PURE__*/React.createElement(FormattedMessage, {
2262
+ id: "credit-features.information.title",
2263
+ defaultMessage: "Un cr\u00E9dit vous engage et doit \u00EAtre rembours\u00E9."
2264
+ })), /*#__PURE__*/React.createElement("br", null), /*#__PURE__*/React.createElement(FormattedMessage, {
2265
+ id: "credit-features.information",
2266
+ defaultMessage: "V\u00E9rifiez vos capacit\u00E9s de remboursement avant de vous engager."
2267
+ }))), /*#__PURE__*/React.createElement("div", {
2233
2268
  className: cx(s.container, STATIC_CUSTOMISATION_CLASSES.summary),
2234
2269
  "data-testid": "modal-summary"
2235
2270
  }, /*#__PURE__*/React.createElement("div", {
@@ -2270,7 +2305,31 @@ const TotalBlock = ({
2270
2305
  value: customerFees,
2271
2306
  style: "currency",
2272
2307
  currency: "EUR"
2273
- }))))));
2308
+ }))))), isCredit && ( /*#__PURE__*/React.createElement("div", {
2309
+ className: s.creditInfoLegalText
2310
+ }, /*#__PURE__*/React.createElement(FormattedMessage, {
2311
+ id: "credit-features.legal-text",
2312
+ defaultMessage: "Cr\u00E9dit d'un montant de {totalWithoutFirstInstallment} au taux d\u00E9biteur fixe de {taegPercentage} sur une dur\u00E9e de {installmeentsCountWithoutFirst} mois. Permettant, en compl\u00E9ment d'un acompte de {firstInstallmentAmount}, de financer un achat d'un montant de {productPriceWithoutCreditCost}. Sous r\u00E9serve d'\u00E9tude et d'acceptation par Alma. D\u00E9lai l\u00E9gal de r\u00E9tractation de 14 jours. Simulation pr\u00E9sent\u00E9e par Alma, immatricul\u00E9e au RCS Nanterre sous le num\u00E9ro 839 100 575, \u00E9tablissement de paiement\u00A0et soci\u00E9t\u00E9 de financement agr\u00E9\u00E9e par l\u2019ACPR sous le n\u00B0 17408 (num\u00E9ro CIB / Code banque).",
2313
+ values: {
2314
+ totalWithoutFirstInstallment: intl.formatNumber(totalWithoutFirstInstallment, {
2315
+ style: 'currency',
2316
+ currency: 'EUR'
2317
+ }),
2318
+ taegPercentage: intl.formatNumber(TAEG, {
2319
+ style: 'percent',
2320
+ maximumFractionDigits: 2
2321
+ }),
2322
+ installmeentsCountWithoutFirst: currentPlan.installments_count - 1,
2323
+ firstInstallmentAmount: intl.formatNumber(firstInstallmentAmount, {
2324
+ style: 'currency',
2325
+ currency: 'EUR'
2326
+ }),
2327
+ productPriceWithoutCreditCost: intl.formatNumber(total - creditCost, {
2328
+ style: 'currency',
2329
+ currency: 'EUR'
2330
+ })
2331
+ }
2332
+ })))));
2274
2333
  };
2275
2334
 
2276
2335
  var s$1 = {"loadingIndicator":"_31lrj","bounce":"_3NtDa"};
@@ -2349,6 +2408,8 @@ const ControlledModal = _ref => {
2349
2408
  }, children));
2350
2409
  };
2351
2410
 
2411
+ var s$3 = {"openModalInfo":"_bplXm"};
2412
+
2352
2413
  const paymentPlanShorthandName = payment => {
2353
2414
  const {
2354
2415
  deferred_days,
@@ -2450,6 +2511,15 @@ const paymentPlanInfoText = payment => {
2450
2511
  }), withNoFee(payment));
2451
2512
  } else if (installmentsCount > 0) {
2452
2513
  const areInstallmentsOfSameAmount = payment_plan == null ? void 0 : payment_plan.every((installment, index) => index === 0 || installment.total_amount === payment_plan[0].total_amount);
2514
+ if (installmentsCount > 4) {
2515
+ return /*#__PURE__*/React.createElement("span", {
2516
+ className: s$3.openModalInfo
2517
+ }, /*#__PURE__*/React.createElement(FormattedMessage, {
2518
+ id: "payment-plan-strings.credit",
2519
+ defaultMessage: "Cliquez pour en savoir plus",
2520
+ description: `Link to credit details`
2521
+ }));
2522
+ }
2453
2523
  if (isP1X(payment)) {
2454
2524
  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(FormattedMessage, {
2455
2525
  id: "payment-plan-strings.pay-now",
@@ -2502,38 +2572,38 @@ const paymentPlanInfoText = payment => {
2502
2572
  });
2503
2573
  };
2504
2574
 
2505
- var s$3 = {"buttons":"_1l2Oa","active":"_3rue7","textButton":"_2T78a"};
2575
+ var s$4 = {"buttons":"_1l2Oa","active":"_3rue7","textButton":"_2T78a"};
2506
2576
 
2507
2577
  const EligibilityPlansButtons = ({
2508
2578
  eligibilityPlans,
2509
2579
  currentPlanIndex,
2510
2580
  setCurrentPlanIndex
2511
2581
  }) => ( /*#__PURE__*/React.createElement("div", {
2512
- className: cx(s$3.buttons, STATIC_CUSTOMISATION_CLASSES.eligibilityOptions)
2582
+ className: cx(s$4.buttons, STATIC_CUSTOMISATION_CLASSES.eligibilityOptions)
2513
2583
  }, eligibilityPlans.map((eligibilityPlan, index) => ( /*#__PURE__*/React.createElement("button", {
2514
2584
  key: index,
2515
2585
  className: cx({
2516
- [cx(s$3.active, STATIC_CUSTOMISATION_CLASSES.activeOption)]: index === currentPlanIndex
2586
+ [cx(s$4.active, STATIC_CUSTOMISATION_CLASSES.activeOption)]: index === currentPlanIndex
2517
2587
  }),
2518
2588
  onClick: () => setCurrentPlanIndex(index)
2519
2589
  }, /*#__PURE__*/React.createElement("span", {
2520
- className: s$3.textButton
2590
+ className: s$4.textButton
2521
2591
  }, paymentPlanShorthandName(eligibilityPlan)))))));
2522
2592
 
2523
- var s$4 = {"installment":"_z2Uiv","date":"_2lJQy","dot":"_1Z9wr","isCurrent":"_2Nmkl","bold":"_ezY-3"};
2593
+ var s$5 = {"installment":"_z2Uiv","date":"_2lJQy","dot":"_1Z9wr","isCurrent":"_2Nmkl","bold":"_ezY-3"};
2524
2594
 
2525
2595
  const Installment = ({
2526
2596
  installment,
2527
2597
  index
2528
2598
  }) => {
2529
2599
  return /*#__PURE__*/React.createElement("div", {
2530
- className: s$4.installment,
2600
+ className: s$5.installment,
2531
2601
  "data-testid": `installment-${index}`
2532
2602
  }, /*#__PURE__*/React.createElement("div", {
2533
- className: s$4.date
2603
+ className: s$5.date
2534
2604
  }, /*#__PURE__*/React.createElement("div", {
2535
- className: cx(s$4.dot, {
2536
- [s$4.isCurrent]: index === 0
2605
+ className: cx(s$5.dot, {
2606
+ [s$5.isCurrent]: index === 0
2537
2607
  })
2538
2608
  }), isToday(installment.due_date * 1000) ? ( /*#__PURE__*/React.createElement(FormattedMessage, {
2539
2609
  id: "installments.today",
@@ -2546,7 +2616,7 @@ const Installment = ({
2546
2616
  year: "numeric"
2547
2617
  }))), /*#__PURE__*/React.createElement("div", {
2548
2618
  className: cx({
2549
- [s$4.bold]: index === 0
2619
+ [s$5.bold]: index === 0
2550
2620
  })
2551
2621
  }, /*#__PURE__*/React.createElement(FormattedNumber, {
2552
2622
  value: installment.total_amount / 100,
@@ -2555,24 +2625,18 @@ const Installment = ({
2555
2625
  })));
2556
2626
  };
2557
2627
 
2558
- var s$5 = {"schedule":"_MPKjS","creditInfo":"_3a7er"};
2628
+ var s$6 = {"schedule":"_MPKjS"};
2559
2629
 
2560
2630
  const Schedule = ({
2561
2631
  currentPlan
2562
2632
  }) => {
2563
- const isCredit = currentPlan.installments_count > 4;
2564
2633
  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
2565
- className: cx(s$5.schedule, STATIC_CUSTOMISATION_CLASSES.scheduleDetails),
2634
+ className: cx(s$6.schedule, STATIC_CUSTOMISATION_CLASSES.scheduleDetails),
2566
2635
  "data-testid": "modal-installments-element"
2567
2636
  }, ((currentPlan == null ? void 0 : currentPlan.payment_plan) || []).map((installment, index) => ( /*#__PURE__*/React.createElement(Installment, {
2568
2637
  key: installment.due_date * 1000,
2569
2638
  installment: installment,
2570
2639
  index: index
2571
- }))), isCredit && ( /*#__PURE__*/React.createElement("div", {
2572
- className: s$5.creditInfo
2573
- }, /*#__PURE__*/React.createElement(FormattedMessage, {
2574
- id: "credit-features.information",
2575
- defaultMessage: "Un cr\u00E9dit vous engage et doit \u00EAtre rembours\u00E9. V\u00E9rifiez vos capacit\u00E9s de remboursement avant de vous engager."
2576
2640
  })))));
2577
2641
  };
2578
2642
 
@@ -2739,7 +2803,7 @@ const CbCard = () => ( /*#__PURE__*/React.createElement("svg", {
2739
2803
  d: "M19.094 4.03h-6.437V8h6.498c1.165 0 2.084-.889 2.084-2.015-.06-1.066-.98-1.955-2.145-1.955zM19.094 8.593h-6.437v3.97h6.498c1.165 0 2.084-.889 2.084-2.015-.06-1.067-.98-1.955-2.145-1.955zM7.017 8.06h4.966c-.245-2.371-2.391-4.267-4.966-4.267-2.758 0-5.027 2.074-5.027 4.681s2.269 4.682 5.027 4.682c2.698 0 4.904-2.015 5.027-4.563H7.017v-.534z"
2740
2804
  })))));
2741
2805
 
2742
- var s$6 = {"cardContainer":"_1N3yO"};
2806
+ var s$7 = {"cardContainer":"_1N3yO"};
2743
2807
 
2744
2808
  const Cards = ({
2745
2809
  cards
@@ -2748,15 +2812,15 @@ const Cards = ({
2748
2812
  const uniqueCards = Array.from(new Set(cards));
2749
2813
  return /*#__PURE__*/React.createElement("div", {
2750
2814
  "data-testid": "card-logos",
2751
- className: cx(s$6.cardContainer, STATIC_CUSTOMISATION_CLASSES.cardContainer)
2815
+ className: cx(s$7.cardContainer, STATIC_CUSTOMISATION_CLASSES.cardContainer)
2752
2816
  }, uniqueCards.map(card => ( /*#__PURE__*/React.createElement("div", {
2753
2817
  key: card,
2754
- className: s$6.card,
2818
+ className: s$7.card,
2755
2819
  "data-testid": `card-logo-${card}`
2756
2820
  }, card === 'cb' && /*#__PURE__*/React.createElement(CbCard, null), card === 'amex' && /*#__PURE__*/React.createElement(AmexCard, null), card === 'mastercard' && /*#__PURE__*/React.createElement(MasterCard, null), card === 'visa' && /*#__PURE__*/React.createElement(VisaCard, null)))));
2757
2821
  };
2758
2822
 
2759
- var s$7 = {"list":"_180ro","listItem":"_1HqCO","bullet":"_3B8wx"};
2823
+ var s$8 = {"list":"_180ro","listItem":"_1HqCO","bullet":"_3B8wx"};
2760
2824
 
2761
2825
  const Info = ({
2762
2826
  isCurrentPlanP1X
@@ -2764,12 +2828,12 @@ const Info = ({
2764
2828
  /*#__PURE__*/
2765
2829
  // TODO: refactor this component into subcomponent to factorise code and be cleaner
2766
2830
  React.createElement("div", {
2767
- className: cx(s$7.list, STATIC_CUSTOMISATION_CLASSES.info),
2831
+ className: cx(s$8.list, STATIC_CUSTOMISATION_CLASSES.info),
2768
2832
  "data-testid": "modal-info-element"
2769
2833
  }, /*#__PURE__*/React.createElement("div", {
2770
- className: s$7.listItem
2834
+ className: s$8.listItem
2771
2835
  }, /*#__PURE__*/React.createElement("div", {
2772
- className: cx(s$7.bullet, STATIC_CUSTOMISATION_CLASSES.bullet)
2836
+ className: cx(s$8.bullet, STATIC_CUSTOMISATION_CLASSES.bullet)
2773
2837
  }, "1"), /*#__PURE__*/React.createElement("div", {
2774
2838
  className: STATIC_CUSTOMISATION_CLASSES.infoMessage
2775
2839
  }, isCurrentPlanP1X ? ( /*#__PURE__*/React.createElement(FormattedMessage, {
@@ -2785,9 +2849,9 @@ React.createElement("div", {
2785
2849
  strong: (...chunks) => /*#__PURE__*/React.createElement("strong", null, chunks)
2786
2850
  }
2787
2851
  })))), /*#__PURE__*/React.createElement("div", {
2788
- className: s$7.listItem
2852
+ className: s$8.listItem
2789
2853
  }, /*#__PURE__*/React.createElement("div", {
2790
- className: cx(s$7.bullet, STATIC_CUSTOMISATION_CLASSES.bullet)
2854
+ className: cx(s$8.bullet, STATIC_CUSTOMISATION_CLASSES.bullet)
2791
2855
  }, "2"), /*#__PURE__*/React.createElement("div", {
2792
2856
  className: STATIC_CUSTOMISATION_CLASSES.infoMessage
2793
2857
  }, isCurrentPlanP1X ? ( /*#__PURE__*/React.createElement(FormattedMessage, {
@@ -2803,9 +2867,9 @@ React.createElement("div", {
2803
2867
  strong: (...chunks) => /*#__PURE__*/React.createElement("strong", null, chunks)
2804
2868
  }
2805
2869
  })))), /*#__PURE__*/React.createElement("div", {
2806
- className: s$7.listItem
2870
+ className: s$8.listItem
2807
2871
  }, /*#__PURE__*/React.createElement("div", {
2808
- className: cx(s$7.bullet, STATIC_CUSTOMISATION_CLASSES.bullet)
2872
+ className: cx(s$8.bullet, STATIC_CUSTOMISATION_CLASSES.bullet)
2809
2873
  }, "3"), /*#__PURE__*/React.createElement("div", {
2810
2874
  className: STATIC_CUSTOMISATION_CLASSES.infoMessage
2811
2875
  }, isCurrentPlanP1X ? ( /*#__PURE__*/React.createElement(FormattedMessage, {
@@ -2822,13 +2886,13 @@ React.createElement("div", {
2822
2886
  }
2823
2887
  }))))));
2824
2888
 
2825
- var s$8 = {"title":"_3ERx-"};
2889
+ var s$9 = {"title":"_3ERx-"};
2826
2890
 
2827
2891
  const Title = ({
2828
2892
  isSomePlanDeferred,
2829
2893
  isCurrentPlanP1X
2830
2894
  }) => ( /*#__PURE__*/React.createElement("div", {
2831
- className: cx(s$8.title, STATIC_CUSTOMISATION_CLASSES.title),
2895
+ className: cx(s$9.title, STATIC_CUSTOMISATION_CLASSES.title),
2832
2896
  "data-testid": "modal-title-element"
2833
2897
  }, isSomePlanDeferred ? ( /*#__PURE__*/React.createElement(FormattedMessage, {
2834
2898
  id: "eligibility-modal.title-deferred-plan",
@@ -2841,7 +2905,7 @@ const Title = ({
2841
2905
  defaultMessage: "Payez en plusieurs fois par carte bancaire avec Alma."
2842
2906
  }))));
2843
2907
 
2844
- var s$9 = {"container":"_21g6u","block":"_3zaP5","left":"_2SBRC","logo":"_xW3wt"};
2908
+ var s$a = {"container":"_21g6u","block":"_3zaP5","left":"_2SBRC","logo":"_xW3wt"};
2845
2909
 
2846
2910
  const DesktopModal = ({
2847
2911
  children,
@@ -2849,10 +2913,10 @@ const DesktopModal = ({
2849
2913
  cards,
2850
2914
  isCurrentPlanP1X
2851
2915
  }) => ( /*#__PURE__*/React.createElement("div", {
2852
- className: cx(s$9.container, STATIC_CUSTOMISATION_CLASSES.desktopModal),
2916
+ className: cx(s$a.container, STATIC_CUSTOMISATION_CLASSES.desktopModal),
2853
2917
  "data-testid": "modal-container"
2854
2918
  }, /*#__PURE__*/React.createElement("aside", {
2855
- className: cx([s$9.block, s$9.left, STATIC_CUSTOMISATION_CLASSES.leftSide])
2919
+ className: cx([s$a.block, s$a.left, STATIC_CUSTOMISATION_CLASSES.leftSide])
2856
2920
  }, /*#__PURE__*/React.createElement(Title, {
2857
2921
  isSomePlanDeferred: isSomePlanDeferred,
2858
2922
  isCurrentPlanP1X: isCurrentPlanP1X
@@ -2861,15 +2925,15 @@ const DesktopModal = ({
2861
2925
  }), cards && /*#__PURE__*/React.createElement(Cards, {
2862
2926
  cards: cards
2863
2927
  }), /*#__PURE__*/React.createElement(AlmaLogo, {
2864
- className: s$9.logo,
2928
+ className: s$a.logo,
2865
2929
  width: "75"
2866
2930
  })), /*#__PURE__*/React.createElement("div", {
2867
- className: cx(s$9.block, STATIC_CUSTOMISATION_CLASSES.rightSide)
2931
+ className: cx(s$a.block, STATIC_CUSTOMISATION_CLASSES.rightSide)
2868
2932
  }, children)));
2869
2933
 
2870
- var s$a = {"noEligibility":"_17qNJ","loader":"_2oTJq","scheduleArea":"_2u9rj","verticalLine":"_VRdAU"};
2934
+ var s$b = {"noEligibility":"_17qNJ","loader":"_2oTJq","scheduleArea":"_2u9rj","verticalLine":"_VRdAU"};
2871
2935
 
2872
- var s$b = {"container":"_2G7Ch","logo":"_2779r"};
2936
+ var s$c = {"container":"_2G7Ch","logo":"_2779r"};
2873
2937
 
2874
2938
  const MobileModal = ({
2875
2939
  children,
@@ -2877,7 +2941,7 @@ const MobileModal = ({
2877
2941
  cards,
2878
2942
  isCurrentPlanP1X
2879
2943
  }) => ( /*#__PURE__*/React.createElement("div", {
2880
- className: cx(s$b.container, STATIC_CUSTOMISATION_CLASSES.mobileModal),
2944
+ className: cx(s$c.container, STATIC_CUSTOMISATION_CLASSES.mobileModal),
2881
2945
  "data-testid": "modal-container"
2882
2946
  }, /*#__PURE__*/React.createElement(Title, {
2883
2947
  isSomePlanDeferred: isSomePlanDeferred,
@@ -2887,7 +2951,7 @@ const MobileModal = ({
2887
2951
  }), cards && /*#__PURE__*/React.createElement(Cards, {
2888
2952
  cards: cards
2889
2953
  }), /*#__PURE__*/React.createElement(AlmaLogo, {
2890
- className: s$b.logo,
2954
+ className: s$c.logo,
2891
2955
  width: "75"
2892
2956
  })));
2893
2957
 
@@ -2916,9 +2980,9 @@ const EligibilityModal = ({
2916
2980
  cards: cards,
2917
2981
  isCurrentPlanP1X: isP1X(currentPlan)
2918
2982
  }, status === statusResponse.PENDING && ( /*#__PURE__*/React.createElement("div", {
2919
- className: s$a.loader
2983
+ className: s$b.loader
2920
2984
  }, /*#__PURE__*/React.createElement(LoadingIndicator, null))), status === statusResponse.SUCCESS && eligiblePlans.length === 0 && ( /*#__PURE__*/React.createElement("div", {
2921
- className: s$a.noEligibility
2985
+ className: s$b.noEligibility
2922
2986
  }, /*#__PURE__*/React.createElement(FormattedMessage, {
2923
2987
  id: "eligibility-modal.no-eligibility",
2924
2988
  defaultMessage: "Oups, il semblerait que la simulation n'ait pas fonctionn\u00E9."
@@ -2927,9 +2991,9 @@ const EligibilityModal = ({
2927
2991
  currentPlanIndex: currentPlanIndex,
2928
2992
  setCurrentPlanIndex: setCurrentPlanIndex
2929
2993
  }), /*#__PURE__*/React.createElement("div", {
2930
- className: s$a.scheduleArea
2994
+ className: s$b.scheduleArea
2931
2995
  }, /*#__PURE__*/React.createElement("div", {
2932
- className: s$a.verticalLine
2996
+ className: s$b.verticalLine
2933
2997
  }), /*#__PURE__*/React.createElement(Schedule, {
2934
2998
  currentPlan: currentPlan
2935
2999
  }), /*#__PURE__*/React.createElement(TotalBlock, {
@@ -2959,18 +3023,18 @@ const ModalContainer = ({
2959
3023
  });
2960
3024
  };
2961
3025
 
2962
- var s$c = {"loadingIndicator":"_2SwwZ","line1":"_2qODo","line2":"_2YO01"};
3026
+ var s$d = {"loadingIndicator":"_2SwwZ","line1":"_2qODo","line2":"_2YO01"};
2963
3027
 
2964
3028
  const Loader = ({
2965
3029
  className
2966
3030
  }) => {
2967
3031
  return /*#__PURE__*/React.createElement("div", {
2968
- className: cx(s$c.loadingIndicator, className),
3032
+ className: cx(s$d.loadingIndicator, className),
2969
3033
  "data-testid": "loader"
2970
3034
  }, /*#__PURE__*/React.createElement("div", {
2971
- className: s$c.line1
3035
+ className: s$d.line1
2972
3036
  }), /*#__PURE__*/React.createElement("div", {
2973
- className: s$c.line2
3037
+ className: s$d.line2
2974
3038
  }));
2975
3039
  };
2976
3040
 
@@ -3052,7 +3116,7 @@ const STATIC_CUSTOMISATION_CLASSES$1 = {
3052
3116
  activeOption: prefix$1 + '-active-option'
3053
3117
  };
3054
3118
 
3055
- var s$d = {"widgetButton":"_TSkFv","logo":"_LJ4nZ","primaryContainer":"_bMClc","paymentPlans":"_17c_S","plan":"_2Kqjn","active":"_3dG_J","monochrome":"_2hx83","notEligible":"_3O1bg","hideBorder":"_3_qcn","info":"_25GrF","loader":"_30j1O","pending":"_1ZDMS","clickable":"_UksZa","unClickable":"_1lr-q"};
3119
+ var s$e = {"widgetButton":"_TSkFv","logo":"_LJ4nZ","primaryContainer":"_bMClc","paymentPlans":"_17c_S","plan":"_2Kqjn","active":"_3dG_J","monochrome":"_2hx83","notEligible":"_3O1bg","hideBorder":"_3_qcn","info":"_25GrF","loader":"_30j1O","pending":"_1ZDMS","clickable":"_UksZa","unClickable":"_1lr-q"};
3056
3120
 
3057
3121
  const VERY_LONG_TIME_IN_MS = 1000 * 3600;
3058
3122
  const DEFAULT_TRANSITION_TIME = 5500;
@@ -3124,7 +3188,7 @@ const PaymentPlanWidget = ({
3124
3188
  };
3125
3189
  if (status === statusResponse.PENDING) {
3126
3190
  return /*#__PURE__*/React.createElement("div", {
3127
- className: cx(s$d.widgetButton, s$d.pending)
3191
+ className: cx(s$e.widgetButton, s$e.pending)
3128
3192
  }, /*#__PURE__*/React.createElement(Loader, null));
3129
3193
  }
3130
3194
  if (hideIfNotEligible && eligiblePlans.length === 0 || eligibilityPlans.length === 0 || status === statusResponse.FAILED) {
@@ -3138,19 +3202,19 @@ const PaymentPlanWidget = ({
3138
3202
  };
3139
3203
  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
3140
3204
  onClick: handleOpenModal,
3141
- className: cx(s$d.widgetButton, {
3142
- [s$d.clickable]: eligiblePlans.length > 0,
3143
- [s$d.unClickable]: eligiblePlans.length === 0,
3144
- [s$d.hideBorder]: _hideBorder
3205
+ className: cx(s$e.widgetButton, {
3206
+ [s$e.clickable]: eligiblePlans.length > 0,
3207
+ [s$e.unClickable]: eligiblePlans.length === 0,
3208
+ [s$e.hideBorder]: _hideBorder
3145
3209
  }, STATIC_CUSTOMISATION_CLASSES$1.container),
3146
3210
  "data-testid": "widget-button"
3147
3211
  }, /*#__PURE__*/React.createElement("div", {
3148
- className: cx(s$d.primaryContainer, STATIC_CUSTOMISATION_CLASSES$1.eligibilityLine)
3212
+ className: cx(s$e.primaryContainer, STATIC_CUSTOMISATION_CLASSES$1.eligibilityLine)
3149
3213
  }, /*#__PURE__*/React.createElement(AlmaLogo, {
3150
- className: s$d.logo,
3214
+ className: s$e.logo,
3151
3215
  color: monochrome ? 'var(--off-black)' : undefined
3152
3216
  }), /*#__PURE__*/React.createElement("div", {
3153
- className: cx(s$d.paymentPlans, STATIC_CUSTOMISATION_CLASSES$1.eligibilityOptions)
3217
+ className: cx(s$e.paymentPlans, STATIC_CUSTOMISATION_CLASSES$1.eligibilityOptions)
3154
3218
  }, eligibilityPlans.map((eligibilityPlan, key) => {
3155
3219
  const isCurrent = key === current;
3156
3220
  return /*#__PURE__*/React.createElement("div", {
@@ -3159,15 +3223,15 @@ const PaymentPlanWidget = ({
3159
3223
  onTouchStart: () => onHover(key),
3160
3224
  onMouseOut: onLeave,
3161
3225
  onTouchEnd: onLeave,
3162
- className: cx(s$d.plan, {
3163
- [cx(s$d.active, STATIC_CUSTOMISATION_CLASSES$1.activeOption)]: isCurrent,
3164
- [s$d.monochrome]: monochrome && isCurrent,
3165
- [cx(s$d.notEligible, STATIC_CUSTOMISATION_CLASSES$1.notEligibleOption)]: !eligibilityPlan.eligible
3226
+ className: cx(s$e.plan, {
3227
+ [cx(s$e.active, STATIC_CUSTOMISATION_CLASSES$1.activeOption)]: isCurrent,
3228
+ [s$e.monochrome]: monochrome && isCurrent,
3229
+ [cx(s$e.notEligible, STATIC_CUSTOMISATION_CLASSES$1.notEligibleOption)]: !eligibilityPlan.eligible
3166
3230
  })
3167
3231
  }, paymentPlanShorthandName(eligibilityPlan));
3168
3232
  }))), /*#__PURE__*/React.createElement("div", {
3169
- className: cx(s$d.info, {
3170
- [cx(s$d.notEligible, STATIC_CUSTOMISATION_CLASSES$1.notEligibleOption)]: eligibilityPlans[current] && !eligibilityPlans[current].eligible
3233
+ className: cx(s$e.info, {
3234
+ [cx(s$e.notEligible, STATIC_CUSTOMISATION_CLASSES$1.notEligibleOption)]: eligibilityPlans[current] && !eligibilityPlans[current].eligible
3171
3235
  }, STATIC_CUSTOMISATION_CLASSES$1.paymentInfo)
3172
3236
  }, eligibilityPlans.length !== 0 && paymentPlanInfoText(eligibilityPlans[current]))), isOpen && ( /*#__PURE__*/React.createElement(EligibilityModal, {
3173
3237
  initialPlanIndex: getIndexWithinEligiblePlans(current),