lms/bootstrap/ssr/assets/utils-DLCPGU0v.js
2025-12-15 12:26:23 +01:00

504 lines
26 KiB
JavaScript
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import { clsx } from "clsx";
import { twMerge } from "tailwind-merge";
const mollieCurrencies = [
{ label: "United Arab Emirates Dirham", value: "AED", symbol: "د.إ" },
{ label: "Australian Dollar", value: "AUD", symbol: "A$" },
{ label: "Bulgarian Lev", value: "BGN", symbol: "лв" },
{ label: "Brazilian Real", value: "BRL", symbol: "R$" },
{ label: "Canadian Dollar", value: "CAD", symbol: "C$" },
{ label: "Swiss Franc", value: "CHF", symbol: "CHF" },
{ label: "Czech Koruna", value: "CZK", symbol: "Kč" },
{ label: "Danish Krone", value: "DKK", symbol: "kr" },
{ label: "Euro", value: "EUR", symbol: "€" },
{ label: "British Pound", value: "GBP", symbol: "£" },
{ label: "Hong Kong Dollar", value: "HKD", symbol: "HK$" },
{ label: "Hungarian Forint", value: "HUF", symbol: "Ft" },
{ label: "Israeli Shekel", value: "ILS", symbol: "₪" },
{ label: "Icelandic Króna", value: "ISK", symbol: "kr" },
{ label: "Japanese Yen", value: "JPY", symbol: "¥" },
{ label: "Mexican Peso", value: "MXN", symbol: "$" },
{ label: "Malaysian Ringgit", value: "MYR", symbol: "RM" },
{ label: "Norwegian Krone", value: "NOK", symbol: "kr" },
{ label: "New Zealand Dollar", value: "NZD", symbol: "NZ$" },
{ label: "Philippine Peso", value: "PHP", symbol: "₱" },
{ label: "Polish Zloty", value: "PLN", symbol: "zł" },
{ label: "Romanian Leu", value: "RON", symbol: "lei" },
{ label: "Russian Ruble", value: "RUB", symbol: "₽" },
{ label: "Swedish Krona", value: "SEK", symbol: "kr" },
{ label: "Singapore Dollar", value: "SGD", symbol: "S$" },
{ label: "Thai Baht", value: "THB", symbol: "฿" },
{ label: "U.S. Dollar", value: "USD", symbol: "$" },
{ label: "Taiwan New Dollar", value: "TWD", symbol: "NT$" },
{ label: "South African Rand", value: "ZAR", symbol: "R" }
];
const paypalCurrencies = [
{ label: "Australian Dollar", value: "AUD", symbol: "A$" },
{ label: "Brazilian Real", value: "BRL", symbol: "R$" },
{ label: "Canadian Dollar", value: "CAD", symbol: "C$" },
{ label: "Chinese Yuan", value: "CNY", symbol: "¥" },
{ label: "Czech Koruna", value: "CZK", symbol: "Kč" },
{ label: "Danish Krone", value: "DKK", symbol: "kr" },
{ label: "Euro", value: "EUR", symbol: "€" },
{ label: "Hong Kong Dollar", value: "HKD", symbol: "HK$" },
{ label: "Hungarian Forint", value: "HUF", symbol: "Ft" },
{ label: "Israeli Shekel", value: "ILS", symbol: "₪" },
{ label: "Japanese Yen", value: "JPY", symbol: "¥" },
{ label: "Malaysian Ringgit", value: "MYR", symbol: "RM" },
{ label: "Mexican Peso", value: "MXN", symbol: "$" },
{ label: "Norwegian Krone", value: "NOK", symbol: "kr" },
{ label: "New Zealand Dollar", value: "NZD", symbol: "NZ$" },
{ label: "Philippine Peso", value: "PHP", symbol: "₱" },
{ label: "Polish Zloty", value: "PLN", symbol: "zł" },
{ label: "Pound Sterling", value: "GBP", symbol: "£" },
{ label: "Russian Ruble", value: "RUB", symbol: "₽" },
{ label: "Singapore Dollar", value: "SGD", symbol: "S$" },
{ label: "Swedish Krona", value: "SEK", symbol: "kr" },
{ label: "Swiss Franc", value: "CHF", symbol: "CHF" },
{ label: "Taiwan New Dollar", value: "TWD", symbol: "NT$" },
{ label: "Thai Baht", value: "THB", symbol: "฿" },
{ label: "U.S. Dollar", value: "USD", symbol: "$" }
];
const paystackCurrencies = [
{ label: "Nigerian Naira", value: "NGN", symbol: "₦" },
{ label: "U.S. Dollar", value: "USD", symbol: "$" },
{ label: "Ghanaian Cedi", value: "GHS", symbol: "₵" },
{ label: "South African Rand", value: "ZAR", symbol: "R" },
{ label: "Kenyan Shilling", value: "KES", symbol: "KSh" },
{ label: "West African CFA Franc", value: "XOF", symbol: "CFA" }
];
const razorpayCurrency = [
{ label: "Indian Rupee", value: "INR", symbol: "₹" },
{ label: "United States Dollar", value: "USD", symbol: "$" },
{ label: "Euro", value: "EUR", symbol: "€" },
{ label: "British Pound Sterling", value: "GBP", symbol: "£" },
{ label: "Singapore Dollar", value: "SGD", symbol: "S$" },
{ label: "Australian Dollar", value: "AUD", symbol: "A$" },
{ label: "Canadian Dollar", value: "CAD", symbol: "C$" },
{ label: "Hong Kong Dollar", value: "HKD", symbol: "HK$" },
{ label: "Japanese Yen", value: "JPY", symbol: "¥" },
{ label: "Saudi Riyal", value: "SAR", symbol: "﷼" },
{ label: "UAE Dirham", value: "AED", symbol: "د.إ" },
{ label: "Kuwaiti Dinar", value: "KWD", symbol: "د.ك" },
{ label: "Bahraini Dinar", value: "BHD", symbol: ".د.ب" },
{ label: "Omani Rial", value: "OMR", symbol: "﷼" },
{ label: "Qatari Riyal", value: "QAR", symbol: "﷼" },
{ label: "New Zealand Dollar", value: "NZD", symbol: "NZ$" },
{ label: "Swiss Franc", value: "CHF", symbol: "CHF" },
{ label: "Chinese Yuan Renminbi", value: "CNY", symbol: "¥" },
{ label: "Malaysian Ringgit", value: "MYR", symbol: "RM" },
{ label: "Thai Baht", value: "THB", symbol: "฿" },
{ label: "South Korean Won", value: "KRW", symbol: "₩" },
{ label: "Indonesian Rupiah", value: "IDR", symbol: "Rp" },
{ label: "Philippine Peso", value: "PHP", symbol: "₱" },
{ label: "Vietnamese Dong", value: "VND", symbol: "₫" },
{ label: "Turkish Lira", value: "TRY", symbol: "₺" },
{ label: "South African Rand", value: "ZAR", symbol: "R" },
{ label: "Brazilian Real", value: "BRL", symbol: "R$" },
{ label: "Mexican Peso", value: "MXN", symbol: "$" },
{ label: "Argentine Peso", value: "ARS", symbol: "$" },
{ label: "Chilean Peso", value: "CLP", symbol: "$" },
{ label: "Colombian Peso", value: "COP", symbol: "$" },
{ label: "Peruvian Sol", value: "PEN", symbol: "S/" },
{ label: "Polish Zloty", value: "PLN", symbol: "zł" },
{ label: "Czech Koruna", value: "CZK", symbol: "Kč" },
{ label: "Hungarian Forint", value: "HUF", symbol: "Ft" },
{ label: "Romanian Leu", value: "RON", symbol: "lei" },
{ label: "Russian Ruble", value: "RUB", symbol: "₽" },
{ label: "Ukrainian Hryvnia", value: "UAH", symbol: "₴" },
{ label: "Israeli New Shekel", value: "ILS", symbol: "₪" },
{ label: "Egyptian Pound", value: "EGP", symbol: "£" },
{ label: "Nigerian Naira", value: "NGN", symbol: "₦" },
{ label: "Kenyan Shilling", value: "KES", symbol: "KSh" },
{ label: "Ghanaian Cedi", value: "GHS", symbol: "₵" },
{ label: "Moroccan Dirham", value: "MAD", symbol: "د.م." },
{ label: "Tanzanian Shilling", value: "TZS", symbol: "TSh" },
{ label: "Ugandan Shilling", value: "UGX", symbol: "USh" },
{ label: "Bangladeshi Taka", value: "BDT", symbol: "৳" },
{ label: "Pakistani Rupee", value: "PKR", symbol: "₨" },
{ label: "Sri Lankan Rupee", value: "LKR", symbol: "₨" },
{ label: "Nepalese Rupee", value: "NPR", symbol: "₨" },
{ label: "Maldivian Rufiyaa", value: "MVR", symbol: "Rf" },
{ label: "Bhutanese Ngultrum", value: "BTN", symbol: "Nu." },
{ label: "Afghan Afghani", value: "AFN", symbol: "؋" },
{ label: "Danish Krone", value: "DKK", symbol: "kr" },
{ label: "Norwegian Krone", value: "NOK", symbol: "kr" },
{ label: "Swedish Krona", value: "SEK", symbol: "kr" },
{ label: "Icelandic Króna", value: "ISK", symbol: "kr" },
{ label: "Croatian Kuna", value: "HRK", symbol: "kn" },
{ label: "Bulgarian Lev", value: "BGN", symbol: "лв" },
{ label: "Serbian Dinar", value: "RSD", symbol: "дин" },
{ label: "Macedonian Denar", value: "MKD", symbol: "ден" },
{ label: "Albanian Lek", value: "ALL", symbol: "L" },
{ label: "Bosnia-Herzegovina Convertible Mark", value: "BAM", symbol: "KM" },
{ label: "Jordanian Dinar", value: "JOD", symbol: "د.ا" },
{ label: "Lebanese Pound", value: "LBP", symbol: "ل.ل" },
{ label: "Iraqi Dinar", value: "IQD", symbol: "ع.د" },
{ label: "Yemeni Rial", value: "YER", symbol: "﷼" },
{ label: "Syrian Pound", value: "SYP", symbol: "£" },
{ label: "Iranian Rial", value: "IRR", symbol: "﷼" },
{ label: "Kazakhstani Tenge", value: "KZT", symbol: "₸" },
{ label: "Uzbekistani Som", value: "UZS", symbol: "so'm" },
{ label: "Turkmenistani Manat", value: "TMT", symbol: "T" },
{ label: "Azerbaijani Manat", value: "AZN", symbol: "₼" },
{ label: "Georgian Lari", value: "GEL", symbol: "₾" },
{ label: "Armenian Dram", value: "AMD", symbol: "֏" },
{ label: "Kyrgyzstani Som", value: "KGS", symbol: "сом" },
{ label: "Tajikistani Somoni", value: "TJS", symbol: "ЅМ" },
{ label: "Mongolian Tugrik", value: "MNT", symbol: "₮" },
{ label: "Myanmar Kyat", value: "MMK", symbol: "K" },
{ label: "Cambodian Riel", value: "KHR", symbol: "៛" },
{ label: "Lao Kip", value: "LAK", symbol: "₭" },
{ label: "Brunei Dollar", value: "BND", symbol: "B$" },
{ label: "Macanese Pataca", value: "MOP", symbol: "MOP$" },
{ label: "New Taiwan Dollar", value: "TWD", symbol: "NT$" },
{ label: "Fijian Dollar", value: "FJD", symbol: "FJ$" },
{ label: "Papua New Guinean Kina", value: "PGK", symbol: "K" },
{ label: "Tongan Paʻanga", value: "TOP", symbol: "T$" },
{ label: "Samoan Tala", value: "WST", symbol: "WS$" },
{ label: "Vanuatu Vatu", value: "VUV", symbol: "VT" },
{ label: "Solomon Islands Dollar", value: "SBD", symbol: "SI$" },
{ label: "Algerian Dinar", value: "DZD", symbol: "د.ج" },
{ label: "Tunisian Dinar", value: "TND", symbol: "د.ت" },
{ label: "Libyan Dinar", value: "LYD", symbol: "ل.د" },
{ label: "Sudanese Pound", value: "SDG", symbol: "ج.س." },
{ label: "Ethiopian Birr", value: "ETB", symbol: "Br" },
{ label: "Somali Shilling", value: "SOS", symbol: "S" },
{ label: "Djiboutian Franc", value: "DJF", symbol: "Fdj" },
{ label: "Eritrean Nakfa", value: "ERN", symbol: "Nfk" },
{ label: "Mauritanian Ouguiya", value: "MRU", symbol: "UM" },
{ label: "West African CFA Franc", value: "XOF", symbol: "CFA" },
{ label: "Central African CFA Franc", value: "XAF", symbol: "FCFA" },
{ label: "CFP Franc", value: "XPF", symbol: "₣" },
{ label: "Comorian Franc", value: "KMF", symbol: "CF" },
{ label: "Malagasy Ariary", value: "MGA", symbol: "Ar" },
{ label: "Mauritian Rupee", value: "MUR", symbol: "₨" },
{ label: "Seychellois Rupee", value: "SCR", symbol: "₨" },
{ label: "Rwandan Franc", value: "RWF", symbol: "FRw" },
{ label: "Burundian Franc", value: "BIF", symbol: "FBu" },
{ label: "Congolese Franc", value: "CDF", symbol: "FC" },
{ label: "Angolan Kwanza", value: "AOA", symbol: "Kz" },
{ label: "Zambian Kwacha", value: "ZMW", symbol: "ZK" },
{ label: "Malawian Kwacha", value: "MWK", symbol: "MK" },
{ label: "Mozambican Metical", value: "MZN", symbol: "MT" },
{ label: "Zimbabwean Dollar", value: "ZWL", symbol: "Z$" },
{ label: "Botswana Pula", value: "BWP", symbol: "P" },
{ label: "Namibian Dollar", value: "NAD", symbol: "$" },
{ label: "Swazi Lilangeni", value: "SZL", symbol: "E" },
{ label: "Lesotho Loti", value: "LSL", symbol: "L" },
{ label: "Gambian Dalasi", value: "GMD", symbol: "D" },
{ label: "Sierra Leonean Leone", value: "SLE", symbol: "Le" },
{ label: "Liberian Dollar", value: "LRD", symbol: "$" },
{ label: "Guinean Franc", value: "GNF", symbol: "FG" },
{ label: "Cape Verdean Escudo", value: "CVE", symbol: "Esc" },
{ label: "São Tomé and Príncipe Dobra", value: "STN", symbol: "Db" },
{ label: "Uruguayan Peso", value: "UYU", symbol: "$" },
{ label: "Paraguayan Guarani", value: "PYG", symbol: "₲" },
{ label: "Bolivian Boliviano", value: "BOB", symbol: "Bs" },
{ label: "Venezuelan Bolívar", value: "VES", symbol: "Bs" },
{ label: "Guyanese Dollar", value: "GYD", symbol: "G$" },
{ label: "Surinamese Dollar", value: "SRD", symbol: "$" },
{ label: "Belize Dollar", value: "BZD", symbol: "BZ$" },
{ label: "Costa Rican Colón", value: "CRC", symbol: "₡" },
{ label: "Guatemalan Quetzal", value: "GTQ", symbol: "Q" },
{ label: "Honduran Lempira", value: "HNL", symbol: "L" },
{ label: "Nicaraguan Córdoba", value: "NIO", symbol: "C$" },
{ label: "Panamanian Balboa", value: "PAB", symbol: "B/." },
{ label: "Salvadoran Colón", value: "SVC", symbol: "₡" },
{ label: "Jamaican Dollar", value: "JMD", symbol: "J$" },
{ label: "Trinidad and Tobago Dollar", value: "TTD", symbol: "TT$" },
{ label: "Barbadian Dollar", value: "BBD", symbol: "Bds$" },
{ label: "Bahamian Dollar", value: "BSD", symbol: "$" },
{ label: "East Caribbean Dollar", value: "XCD", symbol: "$" },
{ label: "Haitian Gourde", value: "HTG", symbol: "G" },
{ label: "Dominican Peso", value: "DOP", symbol: "RD$" },
{ label: "Cuban Peso", value: "CUP", symbol: "$" },
{ label: "Belarusian Ruble", value: "BYN", symbol: "Br" },
{ label: "Moldovan Leu", value: "MDL", symbol: "L" }
];
const sslcommerzCurrency = [
{ label: "Bangladeshi Taka", value: "BDT", symbol: "৳" },
{ label: "US Dollar", value: "USD", symbol: "$" },
{ label: "Euro", value: "EUR", symbol: "€" },
{ label: "British Pound", value: "GBP", symbol: "£" },
{ label: "Australian Dollar", value: "AUD", symbol: "A$" },
{ label: "Canadian Dollar", value: "CAD", symbol: "C$" }
];
const stripeCurrencies = [
{ label: "United Arab Emirates Dirham", value: "AED", symbol: "د.إ" },
{ label: "Afghan Afghani", value: "AFN", symbol: "؋" },
{ label: "Albanian Lek", value: "ALL", symbol: "L" },
{ label: "Armenian Dram", value: "AMD", symbol: "֏" },
{ label: "Netherlands Antillean Gulden", value: "ANG", symbol: "ƒ" },
{ label: "Angolan Kwanza", value: "AOA", symbol: "Kz" },
{ label: "Argentine Peso", value: "ARS", symbol: "$" },
{ label: "Australian Dollar", value: "AUD", symbol: "A$" },
{ label: "Aruban Florin", value: "AWG", symbol: "ƒ" },
{ label: "Azerbaijani Manat", value: "AZN", symbol: "₼" },
{ label: "Bosnia & Herzegovina Convertible Mark", value: "BAM", symbol: "KM" },
{ label: "Barbadian Dollar", value: "BBD", symbol: "Bds$" },
{ label: "Bangladeshi Taka", value: "BDT", symbol: "৳" },
{ label: "Bulgarian Lev", value: "BGN", symbol: "лв" },
{ label: "Bahraini Dinar", value: "BHD", symbol: ".د.ب" },
{ label: "Burundian Franc", value: "BIF", symbol: "FBu" },
{ label: "Bermudian Dollar", value: "BMD", symbol: "$" },
{ label: "Brunei Dollar", value: "BND", symbol: "B$" },
{ label: "Bolivian Boliviano", value: "BOB", symbol: "Bs" },
{ label: "Brazilian Real", value: "BRL", symbol: "R$" },
{ label: "Bahamian Dollar", value: "BSD", symbol: "$" },
{ label: "Bhutanese Ngultrum", value: "BTN", symbol: "Nu." },
{ label: "Botswana Pula", value: "BWP", symbol: "P" },
{ label: "Belarusian Ruble", value: "BYN", symbol: "Br" },
{ label: "Belize Dollar", value: "BZD", symbol: "BZ$" },
{ label: "Canadian Dollar", value: "CAD", symbol: "C$" },
{ label: "Congolese Franc", value: "CDF", symbol: "FC" },
{ label: "Swiss Franc", value: "CHF", symbol: "CHF" },
{ label: "Chilean Peso", value: "CLP", symbol: "$" },
{ label: "Chinese Renminbi Yuan", value: "CNY", symbol: "¥" },
{ label: "Colombian Peso", value: "COP", symbol: "$" },
{ label: "Costa Rican Colón", value: "CRC", symbol: "₡" },
{ label: "Cape Verdean Escudo", value: "CVE", symbol: "Esc" },
{ label: "Czech Koruna", value: "CZK", symbol: "Kč" },
{ label: "Djiboutian Franc", value: "DJF", symbol: "Fdj" },
{ label: "Danish Krone", value: "DKK", symbol: "kr" },
{ label: "Dominican Peso", value: "DOP", symbol: "RD$" },
{ label: "Algerian Dinar", value: "DZD", symbol: "د.ج" },
{ label: "Egyptian Pound", value: "EGP", symbol: "£" },
{ label: "Eritrean Nakfa", value: "ERN", symbol: "Nfk" },
{ label: "Ethiopian Birr", value: "ETB", symbol: "Br" },
{ label: "Euro", value: "EUR", symbol: "€" },
{ label: "Fijian Dollar", value: "FJD", symbol: "FJ$" },
{ label: "Falkland Islands Pound", value: "FKP", symbol: "£" },
{ label: "Faroese Króna", value: "FOK", symbol: "kr" },
{ label: "British Pound", value: "GBP", symbol: "£" },
{ label: "Georgian Lari", value: "GEL", symbol: "₾" },
{ label: "Ghanaian Cedi", value: "GHS", symbol: "₵" },
{ label: "Gibraltar Pound", value: "GIP", symbol: "£" },
{ label: "Gambian Dalasi", value: "GMD", symbol: "D" },
{ label: "Guinean Franc", value: "GNF", symbol: "FG" },
{ label: "Guatemalan Quetzal", value: "GTQ", symbol: "Q" },
{ label: "Guyanese Dollar", value: "GYD", symbol: "G$" },
{ label: "Hong Kong Dollar", value: "HKD", symbol: "HK$" },
{ label: "Honduran Lempira", value: "HNL", symbol: "L" },
{ label: "Croatian Kuna", value: "HRK", symbol: "kn" },
{ label: "Haitian Gourde", value: "HTG", symbol: "G" },
{ label: "Hungarian Forint", value: "HUF", symbol: "Ft" },
{ label: "Indonesian Rupiah", value: "IDR", symbol: "Rp" },
{ label: "Israeli New Sheqel", value: "ILS", symbol: "₪" },
{ label: "Indian Rupee", value: "INR", symbol: "₹" },
{ label: "Iraqi Dinar", value: "IQD", symbol: "ع.د" },
{ label: "Iranian Rial", value: "IRR", symbol: "﷼" },
{ label: "Icelandic Króna", value: "ISK", symbol: "kr" },
{ label: "Jamaican Dollar", value: "JMD", symbol: "J$" },
{ label: "Jordanian Dinar", value: "JOD", symbol: "د.ا" },
{ label: "Japanese Yen", value: "JPY", symbol: "¥" },
{ label: "Kenyan Shilling", value: "KES", symbol: "KSh" },
{ label: "Kyrgyzstani Som", value: "KGS", symbol: "сом" },
{ label: "Cambodian Riel", value: "KHR", symbol: "៛" },
{ label: "Comorian Franc", value: "KMF", symbol: "CF" },
{ label: "South Korean Won", value: "KRW", symbol: "₩" },
{ label: "Kuwaiti Dinar", value: "KWD", symbol: "د.ك" },
{ label: "Cayman Islands Dollar", value: "KYD", symbol: "$" },
{ label: "Kazakhstani Tenge", value: "KZT", symbol: "₸" },
{ label: "Lao Kip", value: "LAK", symbol: "₭" },
{ label: "Lebanese Pound", value: "LBP", symbol: "ل.ل" },
{ label: "Sri Lankan Rupee", value: "LKR", symbol: "₨" },
{ label: "Liberian Dollar", value: "LRD", symbol: "$" },
{ label: "Lesotho Loti", value: "LSL", symbol: "L" },
{ label: "Libyan Dinar", value: "LYD", symbol: "ل.د" },
{ label: "Moroccan Dirham", value: "MAD", symbol: "د.م." },
{ label: "Moldovan Leu", value: "MDL", symbol: "L" },
{ label: "Malagasy Ariary", value: "MGA", symbol: "Ar" },
{ label: "Macedonian Denar", value: "MKD", symbol: "ден" },
{ label: "Myanmar Kyat", value: "MMK", symbol: "K" },
{ label: "Mongolian Tögrög", value: "MNT", symbol: "₮" },
{ label: "Macanese Pataca", value: "MOP", symbol: "MOP$" },
{ label: "Mauritanian Ouguiya", value: "MRU", symbol: "UM" },
{ label: "Mauritian Rupee", value: "MUR", symbol: "₨" },
{ label: "Maldivian Rufiyaa", value: "MVR", symbol: "Rf" },
{ label: "Malawian Kwacha", value: "MWK", symbol: "MK" },
{ label: "Mexican Peso", value: "MXN", symbol: "$" },
{ label: "Malaysian Ringgit", value: "MYR", symbol: "RM" },
{ label: "Mozambican Metical", value: "MZN", symbol: "MT" },
{ label: "Namibian Dollar", value: "NAD", symbol: "$" },
{ label: "Nigerian Naira", value: "NGN", symbol: "₦" },
{ label: "Nicaraguan Córdoba", value: "NIO", symbol: "C$" },
{ label: "Norwegian Krone", value: "NOK", symbol: "kr" },
{ label: "Nepalese Rupee", value: "NPR", symbol: "₨" },
{ label: "New Zealand Dollar", value: "NZD", symbol: "NZ$" },
{ label: "Omani Rial", value: "OMR", symbol: "﷼" },
{ label: "Panamanian Balboa", value: "PAB", symbol: "B/." },
{ label: "Peruvian Sol", value: "PEN", symbol: "S/" },
{ label: "Papua New Guinean Kina", value: "PGK", symbol: "K" },
{ label: "Philippine Peso", value: "PHP", symbol: "₱" },
{ label: "Pakistani Rupee", value: "PKR", symbol: "₨" },
{ label: "Polish Złoty", value: "PLN", symbol: "zł" },
{ label: "Paraguayan Guaraní", value: "PYG", symbol: "₲" },
{ label: "Qatari Riyal", value: "QAR", symbol: "﷼" },
{ label: "Romanian Leu", value: "RON", symbol: "lei" },
{ label: "Serbian Dinar", value: "RSD", symbol: "дин" },
{ label: "Russian Ruble", value: "RUB", symbol: "₽" },
{ label: "Rwandan Franc", value: "RWF", symbol: "FRw" },
{ label: "Saudi Riyal", value: "SAR", symbol: "﷼" },
{ label: "Solomon Islands Dollar", value: "SBD", symbol: "SI$" },
{ label: "Seychellois Rupee", value: "SCR", symbol: "₨" },
{ label: "Sudanese Pound", value: "SDG", symbol: "ج.س." },
{ label: "Swedish Krona", value: "SEK", symbol: "kr" },
{ label: "Singapore Dollar", value: "SGD", symbol: "S$" },
{ label: "Saint Helena Pound", value: "SHP", symbol: "£" },
{ label: "Sierra Leonean Leone", value: "SLE", symbol: "Le" },
{ label: "Somali Shilling", value: "SOS", symbol: "S" },
{ label: "Surinamese Dollar", value: "SRD", symbol: "$" },
{ label: "South Sudanese Pound", value: "SSP", symbol: "£" },
{ label: "São Tomé and Príncipe Dobra", value: "STN", symbol: "Db" },
{ label: "Salvadoran Colón", value: "SVC", symbol: "₡" },
{ label: "Syrian Pound", value: "SYP", symbol: "£" },
{ label: "Swazi Lilangeni", value: "SZL", symbol: "E" },
{ label: "Thai Baht", value: "THB", symbol: "฿" },
{ label: "Tajikistani Somoni", value: "TJS", symbol: "ЅМ" },
{ label: "Turkmenistani Manat", value: "TMT", symbol: "T" },
{ label: "Tunisian Dinar", value: "TND", symbol: "د.ت" },
{ label: "Tongan Paʻanga", value: "TOP", symbol: "T$" },
{ label: "Turkish Lira", value: "TRY", symbol: "₺" },
{ label: "Trinidad and Tobago Dollar", value: "TTD", symbol: "TT$" },
{ label: "New Taiwan Dollar", value: "TWD", symbol: "NT$" },
{ label: "Tanzanian Shilling", value: "TZS", symbol: "TSh" },
{ label: "Ukrainian Hryvnia", value: "UAH", symbol: "₴" },
{ label: "Ugandan Shilling", value: "UGX", symbol: "USh" },
{ label: "United States Dollar", value: "USD", symbol: "$" },
{ label: "Uruguayan Peso", value: "UYU", symbol: "$" },
{ label: "Uzbekistani Som", value: "UZS", symbol: "so'm" },
{ label: "Venezuelan Bolívar", value: "VES", symbol: "Bs" },
{ label: "Vietnamese Đồng", value: "VND", symbol: "₫" },
{ label: "Vanuatu Vatu", value: "VUV", symbol: "VT" },
{ label: "Samoan Tala", value: "WST", symbol: "WS$" },
{ label: "Central African CFA Franc", value: "XAF", symbol: "FCFA" },
{ label: "East Caribbean Dollar", value: "XCD", symbol: "$" },
{ label: "West African CFA Franc", value: "XOF", symbol: "CFA" },
{ label: "CFP Franc", value: "XPF", symbol: "₣" },
{ label: "Yemeni Rial", value: "YER", symbol: "﷼" },
{ label: "South African Rand", value: "ZAR", symbol: "R" },
{ label: "Zambian Kwacha", value: "ZMW", symbol: "ZK" },
{ label: "Zimbabwean Dollar", value: "ZWL", symbol: "Z$" }
];
const currencies = Array.from(
new Map(
[...mollieCurrencies, ...paypalCurrencies, ...paystackCurrencies, ...razorpayCurrency, ...sslcommerzCurrency, ...stripeCurrencies].map(
(currency) => [`${currency.value}-${currency.symbol}`, currency]
)
).values()
);
function cn(...inputs) {
return twMerge(clsx(inputs));
}
const getCourseDuration = (course, format = "hhmmss") => {
const totalSeconds = course.sections.reduce((totalTime, section) => {
return totalTime + section.section_lessons.reduce((sectionTime, lesson) => {
const [hours2, minutes2, seconds2] = (lesson.duration || "00:00:00").split(":").map(Number);
return sectionTime + (hours2 * 3600 + minutes2 * 60 + seconds2);
}, 0);
}, 0);
const hours = Math.floor(totalSeconds / 3600);
const minutes = Math.floor(totalSeconds % 3600 / 60);
if (format === "readable") {
if (hours > 0 && minutes > 0) {
return `${hours}hr ${minutes}min`;
} else if (hours > 0) {
return `${hours}hr`;
} else {
return `${minutes}min`;
}
}
const seconds = totalSeconds % 60;
return `${hours.toString().padStart(2, "0")}:${minutes.toString().padStart(2, "0")}:${seconds.toString().padStart(2, "0")}`;
};
const getCompletedContents = (watchHistory) => {
const completed = typeof watchHistory.completed_watching === "string" ? JSON.parse(watchHistory.completed_watching) : watchHistory.completed_watching || [];
return completed;
};
const getCourseCompletion = (course, completed) => {
const totalItems = course.sections.reduce((total, section) => total + section.section_lessons.length + section.section_quizzes.length, 0);
const completedItems = course.sections.reduce((total, section) => {
const completedLessons = section.section_lessons.filter(
(lesson) => completed.some((item) => String(item.id) === String(lesson.id) && item.type === "lesson")
).length;
const completedQuizzes = section.section_quizzes.filter(
(quiz) => completed.some((item) => String(item.id) === String(quiz.id) && item.type === "quiz")
).length;
return total + completedLessons + completedQuizzes;
}, 0);
const percentage = totalItems > 0 ? (completedItems / totalItems * 100).toFixed(2) : "0.00";
return {
percentage,
totalContents: totalItems,
completedContents: completedItems
};
};
const getColorWithOpacity = (color, opacity = 0.1) => {
if (color.startsWith("rgba(")) {
const match = color.match(/rgba\((\d+),(\d+),(\d+),([^)]+)\)/);
if (match) {
const [, r, g, b] = match;
return `rgba(${r},${g},${b},${opacity})`;
}
}
if (color.startsWith("rgb(")) {
const match = color.match(/rgb\((\d+),(\d+),(\d+)\)/);
if (match) {
const [, r, g, b] = match;
return `rgba(${r},${g},${b},${opacity})`;
}
}
if (color.startsWith("#")) {
const hex = color.replace("#", "");
const r = parseInt(hex.substr(0, 2), 16);
const g = parseInt(hex.substr(2, 2), 16);
const b = parseInt(hex.substr(4, 2), 16);
return `rgba(${r},${g},${b},${opacity})`;
}
const namedColors = {
red: "rgba(255,0,0,",
green: "rgba(0,128,0,",
blue: "rgba(0,0,255,",
yellow: "rgba(255,255,0,",
purple: "rgba(128,0,128,",
orange: "rgba(255,165,0,",
pink: "rgba(255,192,203,",
black: "rgba(0,0,0,",
white: "rgba(255,255,255,"
};
if (namedColors[color.toLowerCase()]) {
return `${namedColors[color.toLowerCase()]}${opacity})`;
}
return color;
};
const systemCurrency = (currency) => {
return currencies.find((item) => item.value == currency);
};
function getReadingTime(description) {
const plainText = description.replace(/<[^>]*>/g, "");
const wordCount = plainText.trim().split(/\s+/).length;
const wordsPerMinute = 200;
const minutes = Math.ceil(wordCount / wordsPerMinute);
return `${minutes} min read`;
}
const generateSlug = (title) => {
return title.toLowerCase().replace(/[^a-z0-9\s-]/g, "").replace(/\s+/g, "-").replace(/-+/g, "-").replace(/^-+|-+$/g, "");
};
export {
getCourseCompletion as a,
getReadingTime as b,
cn as c,
getCourseDuration as d,
generateSlug as e,
currencies as f,
getCompletedContents as g,
paystackCurrencies as h,
sslcommerzCurrency as i,
stripeCurrencies as j,
getColorWithOpacity as k,
mollieCurrencies as m,
paypalCurrencies as p,
razorpayCurrency as r,
systemCurrency as s
};