@jackiemacklein/nettz-utils
Version:
Serviços de imagem, e-mail, códigos de barras, utilitários numéricos e componentes React para apps Node.js com TypeScript
59 lines (58 loc) • 2.07 kB
JavaScript
;
/**
* @author Jackiê Macklein
* @company Onside tecnologia/Nettz
* @copyright Todos direitos reservados.
* @description URLs de ícones SVG para bandeiras (uso em `<img src>` ou fundo CSS).
* Fonte: repositório MIT com logos comuns — https://github.com/aaronfagan/svg-credit-card-payment-icons
* Bandeiras sem arquivo específico usam o slug `generic`.
*/
Object.defineProperty(exports, "__esModule", { value: true });
exports.EVO_PAYMENT_BRAND_ICON_STYLES = exports.EVO_PAYMENT_BRAND_ICON_SOURCE = void 0;
exports.getEvoPaymentBrandIconSlug = getEvoPaymentBrandIconSlug;
exports.getEvoPaymentBrandIconUrl = getEvoPaymentBrandIconUrl;
/** Base dos SVGs no branch `main` do repositório acima. */
exports.EVO_PAYMENT_BRAND_ICON_SOURCE = "https://raw.githubusercontent.com/aaronfagan/svg-credit-card-payment-icons/main";
exports.EVO_PAYMENT_BRAND_ICON_STYLES = [
"flat",
"flat-rounded",
"logo",
"logo-border",
"mono",
"mono-outline",
];
/**
* Slug = nome do arquivo `.svg` em cada pasta de estilo (ex.: `flat/visa.svg`).
* Chaves ausentes no pacote → `generic`.
*/
const CODE_TO_ICON_SLUG = {
VISA_CREDITO: "visa",
VISA_ELECTRON: "visa",
MASTERCARD: "mastercard",
MAESTRO: "maestro",
AMEX: "amex",
DINERS: "diners",
HIPERCARD: "hipercard",
AURA: "generic",
SOROCRED: "generic",
ELO: "elo",
SICREDI: "generic",
ELO_DEBITO: "elo",
HIPER: "hiper",
AGIPLAN: "generic",
BANESCARD: "generic",
CREDZ: "generic",
JCB: "jcb",
CABAL: "generic",
MAIS: "generic",
};
/** Slug do SVG para o código EvoluServices (ou `generic` se desconhecido). */
function getEvoPaymentBrandIconSlug(code) {
const slug = CODE_TO_ICON_SLUG[code];
return slug !== null && slug !== void 0 ? slug : "generic";
}
/** URL absoluta do SVG para o código e estilo visual desejados. */
function getEvoPaymentBrandIconUrl(code, style = "flat") {
const slug = getEvoPaymentBrandIconSlug(code);
return `${exports.EVO_PAYMENT_BRAND_ICON_SOURCE}/${style}/${slug}.svg`;
}