UNPKG

ar-poncho

Version:

Base de html y css para la creación de sitios pertenecientes a la Administración Pública Nacional de la República Argentina.

828 lines (717 loc) 447 kB
/** * Listado de colores colores www.argentina.gob.ar * * MIT License * * Copyright (c) 2024 Argentina.gob.ar * * Permission is hereby granted, free of charge, to any person * obtaining a copy of this software and associated documentation * files (the "Software"), to deal in the Software without restriction, * including without limitation the rightsto use, copy, modify, merge, * publish, distribute, sublicense, and/or sell copies of the Software, * and to permit persons to whom the Software is furnished to do so, * subject to the following conditions: * * The above copyright notice and this permission notice shall be * included in all copies or substantial portions of the Software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE * SOFTWARE. */ const ponchoColorDefinitionsList = [{"name": "www.argentina.gob.ar", "space": "arg", "hidden_space": false, "description": "", "data": [{"scope": "arg", "name": "Azul principal", "group": "primary", "color": {"900": "#232D4F", "800": "#2C3C5F", "700": "#354B6E", "600": "#3E5A7E", "500": "#5A7290", "400": "#7589A3", "300": "#91A1B5", "200": "#ACB8C8", "100": "#C8D0DA", "50": "#E3E7ED"}, "instance": [{"name": "Azul", "code": "arg-azul", "description": "Color principal", "scope": "arg", "related_color": "900", "parent_group": "primary", "color": "#232D4F", "variant": [{"variant": "half", "color": "#9296A7", "name": "Azul medio tono", "code": "arg-azul-half"}, {"variant": "lighter", "color": "#C8D0DA", "name": "Azul muy claro", "code": "arg-azul-lighter"}], "alias": [{"code": "arg-azul", "exclude": false}, {"code": "primary", "exclude": true}, {"code": "azul", "exclude": true}, {"code": "azul-marino", "exclude": true}, {"code": "primary-alt", "exclude": true}, {"code": "arg-primary", "exclude": true}]}, {"name": "Azul cobalto", "code": "arg-secundario", "description": "", "scope": "arg", "related_color": "600", "parent_group": "primary", "color": "#3E5A7E", "variant": [], "alias": [{"code": "arg-secundario", "exclude": false}, {"code": "secondary", "exclude": true}, {"code": "secundario", "exclude": true}]}, {"name": "Primary light", "code": "arg-primary-light", "description": "", "scope": "arg", "related_color": "50", "parent_group": "primary", "color": "#E3E7ED", "variant": [], "alias": [{"code": "arg-primary-light", "exclude": false}, {"code": "primary-light", "exclude": true}]}, {"name": "Azul acero", "code": "arg-info", "description": "", "scope": "arg", "related_color": "500", "parent_group": "primary", "color": "#5A7290", "variant": [{"variant": "lighter", "color": "#E3E7ED", "name": "Azul acero muy claro", "code": "arg-info-lighter"}], "alias": [{"code": "arg-info", "exclude": false}, {"code": "info", "exclude": true}]}]}, {"scope": "arg", "name": "Verde", "group": "verde", "color": {"50": "#F1F5D7", "100": "#DEE8A3", "200": "#CCDB6E", "300": "#B9CE39", "400": "#93B727", "500": "#6EA015", "600": "#4E8F24", "700": "#2E7D33", "800": "#27692A", "900": "#1F5421"}, "instance": [{"name": "Verde", "code": "arg-verde", "description": "", "scope": "arg", "related_color": "700", "parent_group": "verde", "color": "#2E7D33", "variant": [{"variant": "light", "color": "#6EA015", "name": "Verde claro", "code": "arg-verde-light"}, {"variant": "half", "color": "#96BE99", "name": "Verde medio tono", "code": "arg-verde-half"}, {"variant": "dark", "color": "#1F5421", "name": "Verde oscuro", "code": "arg-verde-dark"}], "alias": [{"code": "arg-verde", "exclude": false}, {"code": "success", "exclude": true}, {"code": "verde", "exclude": true}]}, {"name": "Verd\u00edn", "code": "arg-verdin", "description": "", "scope": "arg", "related_color": "500", "parent_group": "verde", "color": "#6EA015", "variant": [{"variant": "light", "color": "#B9CE39", "name": "Verd\u00edn claro", "code": "arg-verdin-light"}, {"variant": "dark", "color": "#2E7D33", "name": "Verd\u00edn oscuro", "code": "arg-verdin-dark"}], "alias": [{"code": "arg-verdin", "exclude": false}, {"code": "verdin", "exclude": true}]}, {"name": "Lima", "code": "arg-lima", "description": "", "scope": "arg", "related_color": "300", "parent_group": "verde", "color": "#B9CE39", "variant": [{"variant": "light", "color": "#DEE8A3", "name": "Lima claro", "code": "arg-lima-light"}, {"variant": "dark", "color": "#6EA015", "name": "Lima oscuro", "code": "arg-lima-dark"}], "alias": [{"code": "arg-lima", "exclude": false}, {"code": "limon", "exclude": true}, {"code": "lima", "exclude": true}]}]}, {"scope": "arg", "name": "Amarillo", "group": "amarillo", "color": {"50": "#FFFAE8", "100": "#FFF1C0", "200": "#FFE997", "300": "#FFE06E", "400": "#FFD745", "500": "#FFCE1C", "600": "#D8AE18", "700": "#B18F15", "800": "#8A6F12", "900": "#634F0E"}, "instance": [{"name": "Ma\u00edz", "code": "arg-maiz", "description": "", "scope": "arg", "related_color": "500", "parent_group": "amarillo", "color": "#FFCE1C", "variant": [{"variant": "light", "color": "#FFE997", "name": "Ma\u00edz claro", "code": "arg-maiz-light"}, {"variant": "dark", "color": "#B18F15", "name": "Ma\u00edz oscuro", "code": "arg-maiz-dark"}], "alias": [{"code": "arg-maiz", "exclude": false}, {"code": "maiz", "exclude": true}]}]}, {"scope": "arg", "name": "Fucsia", "group": "fucsia", "color": {"50": "#FCDDE6", "100": "#F8B6C9", "200": "#F48EAB", "300": "#F16798", "400": "#ED3F85", "500": "#EC407A", "600": "#D72C6B", "700": "#C2185B", "800": "#9A144A", "900": "#721038"}, "instance": [{"name": "Ar\u00e1ndano", "code": "arg-arandano", "description": "", "scope": "arg", "related_color": "700", "parent_group": "fucsia", "color": "#C2185B", "variant": [{"variant": "light", "color": "#EC407A", "name": "Ar\u00e1ndano claro", "code": "arg-arandano-light"}, {"variant": "dark", "color": "#721038", "name": "Ar\u00e1ndano oscuro", "code": "arg-arandano-dark"}, {"variant": "half", "color": "#E18CAD", "name": "Ar\u00e1ndano medio tono", "code": "arg-arandano-half"}, {"variant": "lighter", "color": "#FCDDE6", "name": "Ar\u00e1ndano muy claro", "code": "arg-arandano-lighter"}], "alias": [{"code": "arg-arandano", "exclude": false}, {"code": "arandano", "exclude": true}]}, {"name": "Fucsia", "code": "arg-fucsia", "description": "", "scope": "arg", "related_color": "500", "parent_group": "fucsia", "color": "#EC407A", "variant": [{"variant": "light", "color": "#F16798", "name": "Fucsia claro", "code": "arg-fucsia-light"}, {"variant": "dark", "color": "#9A144A", "name": "Fucsia oscuro", "code": "arg-fucsia-dark"}], "alias": [{"code": "arg-fucsia", "exclude": false}, {"code": "cereza", "exclude": true}, {"code": "fucsia", "exclude": true}]}, {"name": "Rosado", "code": "arg-rosado", "description": "", "scope": "arg", "related_color": "200", "parent_group": "fucsia", "color": "#F48EAB", "variant": [{"variant": "light", "color": "#FCDDE6", "name": "Rosado claro", "code": "arg-rosado-light"}, {"variant": "dark", "color": "#ED3F85", "name": "Rosado oscuro", "code": "arg-rosado-dark"}, {"variant": "half", "color": "#FAC7D5", "name": "Rosado medio tono", "code": "arg-rosado-half"}], "alias": [{"code": "arg-rosado", "exclude": false}]}]}, {"scope": "arg", "name": "Violeta", "group": "violeta", "color": {"50": "#E9E6F2", "100": "#D3CEE5", "200": "#BEB5D8", "300": "#A89DCB", "400": "#9284BE", "500": "#8561B2", "700": "#6A1B99", "800": "#4B0F7A", "900": "#2C035C", "600": "#773EA5"}, "instance": [{"name": "Lavanda", "code": "arg-lavanda", "description": "", "scope": "arg", "related_color": "400", "parent_group": "violeta", "color": "#9284BE", "variant": [], "alias": [{"code": "arg-lavanda", "exclude": false}, {"code": "lavanda", "exclude": true}]}, {"name": "Uva", "code": "arg-uva", "description": "", "scope": "arg", "related_color": "700", "parent_group": "violeta", "color": "#6A1B99", "variant": [], "alias": [{"code": "arg-uva", "exclude": false}, {"code": "uva", "exclude": true}]}]}, {"scope": "arg", "name": "Negro", "group": "negro", "color": {"50": "#F0F0F0", "100": "#E9E9E9", "200": "#DDDDDD", "300": "#838383", "150": "#DEE2E6", "75": "#F2F2F2", "500": "#555555", "600": "#444444", "900": "#141414", "25": "#FFFFFF"}, "instance": [{"name": "Negro", "code": "arg-negro", "description": "Elementos b\u00e1sicos", "scope": "arg", "related_color": "900", "parent_group": "negro", "color": "#141414", "variant": [{"variant": "lighter", "color": "#F0F0F0", "name": "Negro muy claro", "code": "arg-negro-lighter"}, {"variant": "light", "color": "#DDDDDD", "name": "Gris", "code": "arg-negro-light"}], "alias": [{"code": "arg-negro", "exclude": false}, {"code": "negro", "exclude": true}, {"code": "black", "exclude": true}, {"code": "gray-base", "exclude": true}]}, {"name": "Default", "code": "arg-default", "description": "", "scope": "arg", "related_color": "300", "parent_group": "negro", "color": "#838383", "variant": [], "alias": [{"code": "arg-default", "exclude": false}, {"code": "default", "exclude": true}]}, {"name": "Gray light", "code": "arg-gray-light", "description": "", "scope": "arg", "related_color": "200", "parent_group": "negro", "color": "#DDDDDD", "variant": [], "alias": [{"code": "arg-gray-light", "exclude": false}, {"code": "gray-light", "exclude": true}]}, {"name": "Gray hover", "code": "arg-gray-hover", "description": "", "scope": "arg", "related_color": "100", "parent_group": "negro", "color": "#E9E9E9", "variant": [], "alias": [{"code": "arg-gray-hover", "exclude": false}, {"code": "gray-hover", "exclude": true}]}, {"name": "Gray hover light", "code": "arg-gray-hover-light", "description": "", "scope": "arg", "related_color": "50", "parent_group": "negro", "color": "#F0F0F0", "variant": [], "alias": [{"code": "arg-gray-hover-light", "exclude": false}, {"code": "gray-hover-light", "exclude": true}]}, {"name": "Gris intermedio", "code": "arg-gris-intermedio", "description": "", "scope": "arg", "related_color": "500", "parent_group": "negro", "color": "#555555", "variant": [], "alias": [{"code": "arg-gris-intermedio", "exclude": false}, {"code": "gray", "exclude": true}, {"code": "grisintermedio", "exclude": true}, {"code": "gris-area", "exclude": true}, {"code": "gris", "exclude": false}]}, {"name": "Gray dark", "code": "arg-gray-dark", "description": "", "scope": "arg", "related_color": "600", "parent_group": "negro", "color": "#444444", "variant": [], "alias": [{"code": "arg-gray-dark", "exclude": false}, {"code": "gray-dark", "exclude": true}]}, {"name": "Gray border", "code": "arg-gray-border", "description": "", "scope": "arg", "related_color": "150", "parent_group": "negro", "color": "#DEE2E6", "variant": [], "alias": [{"code": "arg-gray-border", "exclude": false}, {"code": "gray-border", "exclude": true}]}, {"name": "Gris niebla", "code": "arg-gris-niebla", "description": "", "scope": "arg", "related_color": "75", "parent_group": "negro", "color": "#F2F2F2", "variant": [], "alias": [{"code": "arg-gris-niebla", "exclude": false}, {"code": "gray-lighter", "exclude": true}]}, {"name": "Gray background", "code": "arg-gray-background", "description": "", "scope": "arg", "related_color": "25", "parent_group": "negro", "color": "#FFFFFF", "variant": [], "alias": [{"code": "arg-gray-background", "exclude": false}, {"code": "gray-background", "exclude": true}]}]}, {"scope": "arg", "name": "Turquesa", "group": "turquesa", "color": {"50": "#DCF1F0", "100": "#C0E5E3", "200": "#A4D9D7", "300": "#88CECB", "400": "#6CC3BE", "500": "#50B7B2", "600": "#459E99", "700": "#3B8681", "800": "#306D69", "900": "#255450"}, "instance": [{"name": "Palta", "code": "arg-palta", "description": "", "scope": "arg", "related_color": "500", "parent_group": "turquesa", "color": "#50B7B2", "variant": [{"variant": "half", "color": "#A8DBD9", "name": "Palta medio tono", "code": "arg-palta-half"}, {"variant": "lighter", "color": "#C0E5E3", "name": "Palta muy claro", "code": "arg-palta-lighter"}], "alias": [{"code": "arg-palta", "exclude": false}, {"code": "palta", "exclude": true}]}, {"name": "Verde azulado", "code": "arg-verde-azulado", "description": "", "scope": "arg", "related_color": "700", "parent_group": "turquesa", "color": "#3B8681", "variant": [], "alias": [{"code": "arg-verde-azulado", "exclude": false}, {"code": "verde-azulado", "exclude": true}, {"code": "verdeazulado", "exclude": true}]}, {"name": "Eucalipto", "code": "arg-eucalipto", "description": "", "scope": "arg", "related_color": "800", "parent_group": "turquesa", "color": "#306D69", "variant": [{"variant": "lighter", "color": "#A4D9D7", "name": "Eucalipto muy claro", "code": "arg-eucalipto-lighter"}, {"variant": "dark", "color": "#255450", "name": "Eucalipto oscuro", "code": "arg-eucalipto-dark"}], "alias": [{"code": "arg-eucalipto", "exclude": false}]}]}, {"scope": "arg", "name": "Azul", "group": "azul", "color": {"50": "#CDEBFA", "100": "#9AD7F5", "200": "#68C3EF", "300": "#35AFEA", "400": "#039BE5", "500": "#0581C6", "600": "#0767A7", "700": "#084E87", "800": "#0A3468", "900": "#0C1A49"}, "instance": [{"name": "Cielo", "code": "arg-cielo", "description": "", "scope": "arg", "related_color": "400", "parent_group": "azul", "color": "#039BE5", "variant": [], "alias": [{"code": "arg-cielo", "exclude": false}, {"code": "cielo", "exclude": true}, {"code": "celeste", "exclude": true}]}, {"name": "Escarapela", "code": "arg-escarapela", "description": "", "scope": "arg", "related_color": "200", "parent_group": "azul", "color": "#68C3EF", "variant": [], "alias": [{"code": "arg-escarapela", "exclude": false}, {"code": "escarapela", "exclude": true}, {"code": "celesteargentina", "exclude": true}, {"code": "celeste-argentina", "exclude": false}]}, {"name": "Enlace", "code": "arg-enlace", "description": "Enlace", "scope": "arg", "related_color": "600", "parent_group": "azul", "color": "#0767A7", "variant": [{"variant": "dark", "color": "#084E87", "name": "Enlace oscuro", "code": "arg-enlace-dark"}, {"variant": "light", "color": "#0581C6", "name": "Enlace claro", "code": "arg-enlace-light"}], "alias": [{"code": "arg-enlace", "exclude": false}]}]}, {"scope": "arg", "name": "Rojo", "group": "rojo", "color": {"50": "#FCDDDC", "100": "#F9BBB9", "200": "#F69896", "300": "#F27673", "400": "#EF5350", "500": "#E14543", "600": "#D43635", "700": "#C62828", "800": "#A12222", "900": "#7C1C1C"}, "instance": [{"name": "Rojo", "code": "arg-rojo", "description": "Atenci\u00f3n o peligro", "scope": "arg", "related_color": "700", "parent_group": "rojo", "color": "#C62828", "variant": [{"variant": "light", "color": "#E14543", "name": "Rojo claro", "code": "arg-rojo-light"}, {"variant": "dark", "color": "#7C1C1C", "name": "Rojo oscuro", "code": "arg-rojo-dark"}, {"variant": "lighter", "color": "#FCDDDC", "name": "Rojo muy claro", "code": "arg-rojo-lighter"}], "alias": [{"code": "arg-rojo", "exclude": false}, {"code": "danger", "exclude": true}, {"code": "rojo", "exclude": true}]}, {"name": "Tomate", "code": "arg-tomate", "description": "", "scope": "arg", "related_color": "400", "parent_group": "rojo", "color": "#EF5350", "variant": [{"variant": "light", "color": "#F69896", "name": "Tomate claro", "code": "arg-tomate-light"}, {"variant": "dark", "color": "#C62828", "name": "Tomate oscuro", "code": "arg-tomate-dark"}], "alias": [{"code": "arg-tomate", "exclude": false}, {"code": "complementary", "exclude": true}, {"code": "tomate", "exclude": true}]}]}, {"scope": "arg", "name": "Naranja", "group": "naranja", "color": {"50": "#FDE7BF", "100": "#FBCE80", "200": "#F9B640", "300": "#F79D00", "400": "#F38500", "500": "#EF6C00", "600": "#CE5701", "700": "#AE4203", "800": "#8D2D04", "900": "#6C1805"}, "instance": [{"name": "Marr\u00f3n claro", "code": "arg-marron-claro", "description": "", "scope": "arg", "related_color": "800", "parent_group": "naranja", "color": "#8D2D04", "variant": [{"variant": "light", "color": "#CE5701", "name": "Marr\u00f3n claro claro", "code": "arg-marron-claro-light"}, {"variant": "dark", "color": "#6C1805", "name": "Marr\u00f3n claro oscuro", "code": "arg-marron-claro-dark"}], "alias": [{"code": "arg-marron-claro", "exclude": false}, {"code": "marron-claro", "exclude": true}]}, {"name": "Naranja", "code": "arg-naranja", "description": "", "scope": "arg", "related_color": "500", "parent_group": "naranja", "color": "#EF6C00", "variant": [{"variant": "light", "color": "#EF6C00", "name": "Naranja claro", "code": "arg-naranja-light"}, {"variant": "dark", "color": "#6C1805", "name": "Naranja oscuro", "code": "arg-naranja-dark"}], "alias": [{"code": "arg-naranja", "exclude": false}, {"code": "naranjaoscuro", "exclude": true}, {"code": "naranja", "exclude": true}]}, {"name": "Mandarina", "code": "arg-mandarina", "description": "", "scope": "arg", "related_color": "300", "parent_group": "naranja", "color": "#F79D00", "variant": [{"variant": "light", "color": "#FBCE80", "name": "Mandarina claro", "code": "arg-mandarina-light"}, {"variant": "dark", "color": "#CE5701", "name": "Mandarina oscuro", "code": "arg-mandarina-dark"}], "alias": [{"code": "arg-mandarina", "exclude": false}, {"code": "mandarina", "exclude": true}]}]}, {"scope": "arg", "name": "Blanco", "group": "blanco", "color": {"150": "#FFFFFF"}, "instance": [{"name": "Blanco", "code": "arg-blanco", "description": "", "scope": "arg", "related_color": "150", "parent_group": "blanco", "color": "#FFFFFF", "variant": [], "alias": [{"code": "arg-blanco", "exclude": false}, {"code": "white", "exclude": true}, {"code": "arg-white", "exclude": false}]}]}, {"scope": "arg", "name": "Ocre", "group": "ocre", "color": {"50": "#FAF8ED", "100": "#F4F0DB", "200": "#EAE1B7", "300": "#E9CE8C", "400": "#E7BA61", "500": "#C98941", "600": "#AA5821", "700": "#8C2701", "800": "#6F2001", "900": "#511901"}, "instance": [{"name": "Arena", "code": "arg-arena", "description": "", "scope": "arg", "related_color": "200", "parent_group": "ocre", "color": "#EAE1B7", "variant": [{"variant": "light", "color": "#FAF8ED", "name": "Arena claro", "code": "arg-arena-light"}, {"variant": "dark", "color": "#E7BA61", "name": "Arena oscuro", "code": "arg-arena-dark"}, {"variant": "half", "color": "#F5F0DB", "name": "Arena medio tono", "code": "arg-arena-half"}], "alias": [{"code": "arg-arena", "exclude": false}]}, {"name": "Amarillo", "code": "arg-amarillo", "description": "Foco o alerta", "scope": "arg", "related_color": "400", "parent_group": "ocre", "color": "#E7BA61", "variant": [{"variant": "light", "color": "#EAE1B7", "name": "Amarillo claro", "code": "arg-amarillo-light"}, {"variant": "dark", "color": "#AA5821", "name": "Amarillo oscuro", "code": "arg-amarillo-dark"}, {"variant": "half", "color": "#F3DDB0", "name": "Amarillo medio tono", "code": "arg-amarillo-half"}], "alias": [{"code": "arg-amarillo", "exclude": false}, {"code": "warning", "exclude": true}, {"code": "amarillo", "exclude": true}, {"code": "amarillo-intenso", "exclude": true}]}, {"name": "Marr\u00f3n oscuro", "code": "arg-marron-oscuro", "description": "", "scope": "arg", "related_color": "900", "parent_group": "ocre", "color": "#511901", "variant": [], "alias": [{"code": "arg-marron-oscuro", "exclude": false}]}]}, {"scope": "arg", "name": "Morado", "group": "morado", "color": {"150": "#3A3796"}, "instance": [{"name": "Azul morado", "code": "arg-azul-morado", "description": "", "scope": "arg", "related_color": "150", "parent_group": "morado", "color": "#3A3796", "variant": [], "alias": [{"code": "arg-azul-morado", "exclude": false}]}]}]}, {"name": "MiArgentina", "space": "miarg", "hidden_space": false, "description": "", "data": [{"scope": "miarg", "name": "Azul MiArgentina", "group": "azul", "color": {"150": "#3526C3"}, "instance": [{"name": "Azul MiArgentina", "code": "miarg-azul", "description": "Azul principal para aplicaciones MiArgentina", "scope": "miarg", "related_color": "150", "parent_group": "azul", "color": "#3526C3", "variant": [{"variant": "half", "color": "#6B66CC", "name": "Azul MiArgentina medio tono", "code": "miarg-azul-half"}], "alias": [{"code": "miarg-azul", "exclude": false}]}]}, {"scope": "miarg", "name": "Celeste MiArgentina", "group": "celeste", "color": {"150": "#2CB9EE"}, "instance": [{"name": "Celeste MiArgentina", "code": "miarg-celeste", "description": "", "scope": "miarg", "related_color": "150", "parent_group": "celeste", "color": "#2CB9EE", "variant": [], "alias": [{"code": "miarg-celeste", "exclude": false}]}]}, {"scope": "miarg", "name": "Amarillo claro MiArgentina", "group": "amarillo-claro", "color": {"150": "#ffe9b8"}, "instance": [{"name": "Amarillo claro MiArgentina", "code": "miarg-amarillo-claro", "description": "", "scope": "miarg", "related_color": "150", "parent_group": "amarillo-claro", "color": "#ffe9b8", "variant": [], "alias": [{"code": "miarg-amarillo-claro", "exclude": false}]}]}, {"scope": "miarg", "name": "Rosa claro MiArgentina", "group": "rosa-claro", "color": {"150": "#EECCCF"}, "instance": [{"name": "Rosa claro MiArgentina", "code": "miarg-rosa-claro", "description": "", "scope": "miarg", "related_color": "150", "parent_group": "rosa-claro", "color": "#EECCCF", "variant": [], "alias": [{"code": "miarg-rosa-claro", "exclude": false}]}]}, {"scope": "miarg", "name": "Verde claro MiArgentina", "group": "verde-claro", "color": {"150": "#CFEEDC"}, "instance": [{"name": "Verde claro MiArgentina", "code": "miarg-verde-claro", "description": "", "scope": "miarg", "related_color": "150", "parent_group": "verde-claro", "color": "#CFEEDC", "variant": [], "alias": [{"code": "miarg-verde-claro", "exclude": false}]}]}, {"scope": "miarg", "name": "Azul oscuro MiArgentina", "group": "azul-oscuro", "color": {"150": "#222C50"}, "instance": [{"name": "Azul oscuro MiArgentina", "code": "miarg-oscuro", "description": "", "scope": "miarg", "related_color": "150", "parent_group": "azul-oscuro", "color": "#222C50", "variant": [], "alias": [{"code": "miarg-oscuro", "exclude": false}]}]}, {"scope": "miarg", "name": "Gris MiArgentina", "group": "gris", "color": {"150": "#7E848E"}, "instance": [{"name": "Gris MiArgentina", "code": "miarg-gris", "description": "", "scope": "miarg", "related_color": "150", "parent_group": "gris", "color": "#7E848E", "variant": [], "alias": [{"code": "miarg-gris", "exclude": false}]}]}, {"scope": "miarg", "name": "Celeste claro MiArgentina", "group": "celeste-claro", "color": {"150": "#BEE6F6"}, "instance": [{"name": "Celeste claro MiArgentina", "code": "miarg-celeste-claro", "description": "", "scope": "miarg", "related_color": "150", "parent_group": "celeste-claro", "color": "#BEE6F6", "variant": [], "alias": [{"code": "miarg-celeste-claro", "exclude": false}]}]}]}, {"name": "Colores de la bandera de la Rep\u00fablica Argentina", "space": "bandera", "hidden_space": false, "description": "De acuerdo al <a href=\"https://www.argentina.gob.ar/normativa/nacional/decreto-1650-2010-175328\">Decreto 1650/2010</a>, que establece las medidas, caracter\u00edsticas de la tela, colores y accesorios de la Bandera Argentina.", "data": [{"scope": "bandera", "name": "Amarillo", "group": "amarillo", "color": {"150": "#FCBF49"}, "instance": [{"name": "Amarillo Bandera", "code": "bandera-amarillo", "description": "Color amarillo oficial para la bandera Argentina", "scope": "bandera", "related_color": "150", "parent_group": "amarillo", "color": "#FCBF49", "variant": [], "alias": [{"code": "bandera-amarillo", "exclude": false}]}]}, {"scope": "bandera", "name": "Celeste", "group": "celeste", "color": {"150": "#75AADB"}, "instance": [{"name": "Celeste Bandera", "code": "bandera-celeste", "description": "Color celeste oficial para la bandera Argentina", "scope": "bandera", "related_color": "150", "parent_group": "celeste", "color": "#75AADB", "variant": [], "alias": [{"code": "bandera-celeste", "exclude": false}]}]}, {"scope": "bandera", "name": "Marr\u00f3n", "group": "marron", "color": {"150": "#843511"}, "instance": [{"name": "Marr\u00f3n Bandera", "code": "bandera-marron", "description": "Color marr\u00f3n oficial para la bandera Argentina", "scope": "bandera", "related_color": "150", "parent_group": "marron", "color": "#843511", "variant": [], "alias": [{"code": "bandera-marron", "exclude": false}]}]}]}, {"name": "Gendarmer\u00eda Nacional", "space": "gna", "hidden_space": false, "description": "", "data": [{"scope": "gna", "name": "Verde jade", "group": "verde-jade", "color": {"150": "#006666"}, "instance": [{"name": "Verde oscuro Gendarmer\u00eda", "code": "gna-verde-jade", "description": "", "scope": "gna", "related_color": "150", "parent_group": "verde-jade", "color": "#006666", "variant": [], "alias": [{"code": "gna-verde-jade", "exclude": false}, {"code": "verde-jade", "exclude": true}, {"code": "verdejade", "exclude": true}]}]}, {"scope": "gna", "name": "Verde aloe", "group": "verde-aloe", "color": {"150": "#4FBB73"}, "instance": [{"name": "Verde claro Gendarmer\u00eda", "code": "gna-verde-aloe", "description": "", "scope": "gna", "related_color": "150", "parent_group": "verde-aloe", "color": "#4FBB73", "variant": [], "alias": [{"code": "gna-verde-aloe", "exclude": false}, {"code": "verde-aloe", "exclude": true}]}]}, {"scope": "gna", "name": "Verde cemento", "group": "verde-cemento", "color": {"150": "#B4BEBA"}, "instance": [{"name": "Gris Gendarmer\u00eda", "code": "gna-verde-cemento", "description": "", "scope": "gna", "related_color": "150", "parent_group": "verde-cemento", "color": "#B4BEBA", "variant": [], "alias": [{"code": "gna-verde-cemento", "exclude": false}, {"code": "verde-cemento", "exclude": true}, {"code": "verdecemento", "exclude": true}]}]}]}]; if (typeof exports !== "undefined") { module.exports = { ponchoColorDefinitionsList, }; } /** * Configuración de colores www.argentina.gob.ar * * MIT License * * Copyright (c) 2024 Argentina.gob.ar * * Permission is hereby granted, free of charge, to any person * obtaining a copy of this software and associated documentation * files (the "Software"), to deal in the Software without restriction, * including without limitation the rightsto use, copy, modify, merge, * publish, distribute, sublicense, and/or sell copies of the Software, * and to permit persons to whom the Software is furnished to do so, * subject to the following conditions: * * The above copyright notice and this permission notice shall be * included in all copies or substantial portions of the Software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE * SOFTWARE. */ class Color { //jslint-ignore-line constructor(colorDefinitions){ if(!this.isValidColorDefinitionList(colorDefinitions)){ console.error("No se pasado por argumento el listado de color"); return; } this.definitions = colorDefinitions; } /** * Remueve acentos y caracteres especiales. * * @param {string} data Cadena de texto a limpiar. * @example * // returns Accion Murcielago arbol nino * removeAccents("Acción Murciélago árbol niño") * @returns {string} Cadena de texto sin acentos. */ replaceSpecialChars = (data) => { if(typeof data !== "string" || data.trim().length === 0){ console.warn("replaceSpecialChars: Debe pasar una cadena de texto."); return ""; } const search = "àáâäæãåāăąçćčđďèéêëēėęěğǵḧîïíīįìıİłḿñńǹňôöòóœøōõőṕ" + "ŕřßśšşșťțûüùúūǘůűųẃẍÿýžźż"; const replace = "aaaaaaaaaacccddeeeeeeeegghiiiiiiiilmnnnnooooooooop" + "rrsssssttuuuuuuuuuwxyyzzz"; const a = search + search.toUpperCase(); const b = replace + replace.toUpperCase(); const p = new RegExp(a.split("").join("|"), "g"); return data.toString().replace(p, c => b.charAt(a.indexOf(c))); }; /** * * @param {array} definitions * @returns {boolean} */ isValidColorDefinitionList(definitions){ return ( Array.isArray(definitions) && definitions.length > 0 && definitions[0].hasOwnProperty('space') ); } /** * Listado de colores * @returns {object} */ get list(){ let result = this.definitions .flatMap( m => m.data.flatMap(i => i.instance.map(x => x)) ); return result || []; } /** * Buscador de colores. * * @param {string} value Color a buscar. * @returns {object} */ findColor = value => { if(typeof value !== "string" || value.trim().length === 0){ console.error( "findColor:", "El valor a buscar debe ser una cadena de texto."); return []; } let searchTerm = value.toLowerCase(); let searchList = [ ...this.variables.map(([code, color]) => [code, color]), ...this.colors]; let searchResults = searchList.filter( function(item){ if( item[0].includes( searchTerm ) ){ return item; } }).map(([code, color]) => [code, color]); return searchResults; } /** * * @param {*} colorDefinitions * @returns */ get variables(){ let collect = []; this.list.flatMap(m => { const {alias, color, description, code, variant=[], name} = m; alias.forEach(function(a){ collect.push( [a.code, color, description, code, name] ); variant.forEach(function(value){ if(!a.exclude){ collect.push( [`${a.code}-${value.variant}`, value.color, "", code, value.name] ); } }); }) }); return collect.sort(); }; get spaces(){ return this.definitions.map(m => m.space).sort(); } groupsBySpace = space => { if (typeof space !== 'string') { throw new TypeError('groupsBySpace: El argumetno debe ser un string'); } const spaceToLower = space.toLocaleLowerCase(); const data = this.definitions .find(f => f.space == spaceToLower)?.data?.map(m => m.group); const result = data ? data.sort() : []; return result; } /** * Colores poncho a hexa * * @see https://argob.github.io/poncho/identidad/colores/ * @param {string} color Nombre de color Poncho. * @example * // returns "#2897d4" * getColor("celeste") * @returns {string} Color en formato hexadecimal. */ ponchoColor = (color, mode = "hex") => { const defaultColor = "#999999"; if (typeof color !== "string" || color.trim() === "") { console.warn(`El valor pasado es inválido.`); return defaultColor; } const normalizedColor = this.replaceSpecialChars(color).toLowerCase(); const colorDefinition = this.variables?.find(v => v[0] === normalizedColor) || this.colors?.find(c => c[0] === normalizedColor); const hexColor = !colorDefinition ? defaultColor : colorDefinition[1]; const lowerCaseMode = mode.trim().toLowerCase(); switch (lowerCaseMode) { case "rgb": return this.hexToRgb(hexColor); case "hsl": return this.rgbToHsl(...this.hexToRgb(hexColor)); default: return hexColor; } }; /** * Listado de colores * @returns */ get colors(){ const colorList = this.definitions .map(space => space.data) .flatMap(function(spaceGroups){ return spaceGroups.flatMap(function(groupColor){ const {color, group, scope} = groupColor; return Object.entries(color).map(function(colorValues){ const [label, value] = colorValues; return [`${scope}-${group}-${label}`, value] }); }); }); return colorList || []; } /** * Definición por color * * @see colorDefinitionsList * @param {string} color Nombre del cólor a buscar. * @returns {string|boolean} */ colorDefinitions = (ponchoColor) => { if(typeof ponchoColor == undefined || !ponchoColor.trim()){ return; } const lowerCasePonchoColor = this.replaceSpecialChars(ponchoColor).toLowerCase(); let result; let gSpace = ""; // Iteración por espacios (space) for(let i = 0; i <= this.definitions.length - 1; i += 1){ const {data, space} = this.definitions[i]; gSpace = space; // Itero por cada grupo de color dentro de data for(let y = 0; y <= data.length - 1; y += 1) { const {instance} = data[y]; // Itero sobre las instancias de color for(let x = 0; x <= instance.length - 1; x += 1) { const {alias, variant} = instance[x]; if ( alias.some(s => s.code == lowerCasePonchoColor) ) { result = instance[x]; break; } else if( variant.some(s => s.code == lowerCasePonchoColor) ){ result = instance[x]; break; } } if (result) { break; } } } return result; }; /** * Grupo de color * @param {string} name Nombre del grupo * @returns */ colorGroup = (themeSpace, spaceGroup) => { if(typeof spaceGroup == undefined || !spaceGroup?.trim()){ return; } let result; for(let i = 0; i <= this.definitions.length -1; i += 1){ const {data, space} = this.definitions[i]; result = data.find(obj => (obj.group==spaceGroup && space==themeSpace)); if (result) break; } return result; }; /** * Espacio de color * @param {string} name Nombre del espacio * @returns */ colorSpace = (space) => { if(typeof space == undefined || !space?.trim()){ return; } return this.definitions.find(obj => obj.space==space); }; /** * Retorna el código de color poncho por hexadecimal. * @param {string} value Valor hexadecimal a buscar * @see colorDefinitionsList * @example * // { * // "description": "", * // "name": "Mandarina", * // "color": "#f79525", * // "code": "mandarina", * // "alias": [ * // "mandarina" * // ] * // } * findByHex("#f79525"); * @returns {object} Objecto con la defición del color */ colorByHex = (hexColor) => { if(!this.isValidHex(hexColor)){ return; } var result = []; const targetColor = this.cleanHex(hexColor); for(let i = 0; i <= this.definitions.length -1; i += 1){ let {data} = this.definitions[i]; for(let entry of data){ const {instance} = entry; for(let item of instance){ const {color} = item; if( this.cleanHex(color) == targetColor ){ result.push(item); } } } } return result; }; /** * Hace un refactor del número hexa * * @param {string} value Valor hexadecimal * @returns {string} */ cleanHex = value => { let hex = value .toString() .replace("#", "") .trim() .toUpperCase(); if (hex.length < 3 || hex.length > 6){ return false; } else if(hex.length == 3){ hex = Array.from(hex).map(a => a.repeat(2)).join(""); } return `#${hex}`; }; /** * Valida un color hexadecimal * @param {string} hexColor Color hexadecimal * @returns {boolean} */ isValidHex = (hexColor) => { if (hexColor === null || hexColor === undefined) { return false; } if (typeof hexColor !== 'string') { return false; } const regx = new RegExp(/^#?([A-Fa-f0-9]{3}|[A-Fa-f0-9]{6})$/); if (!regx.test(hexColor)) { console.warn("Invalid hex color format:", hexColor); return false; } return true; }; /** * Convierte un color RGB a HSL. * * @param {number} r Color rojo (Red). * @param {number} g Color verde (Green). * @param {number} b Color blue (Blue). * @returns {object} Array con el siguiente formato: [11, '1.1%', '1.1%'] */ rgbToHsl = (r, g, b) => { // 1. Normalizar los valores RGB a un rango de 0 a 1 const rNorm = r / 255; const gNorm = g / 255; const bNorm = b / 255; // 2. Encontrar el valor máximo (Cmax) y el valor mínimo (Cmin) const cmax = Math.max(rNorm, gNorm, bNorm); const cmin = Math.min(rNorm, gNorm, bNorm); const delta = cmax - cmin; // 3. Calcular la luminancia (L) const l = ((cmax + cmin) / 2) * 100; // 4. Calcular la saturación (S) let s = 0; if (delta !== 0) { s = (delta / (1 - Math.abs(2 * l / 100 - 1))) * 100; } // 5. Calcular el tono (H) let h = 0; if (delta !== 0) { switch (cmax) { case rNorm: h = 60 * (((gNorm - bNorm) / delta) % 6); break; case gNorm: h = 60 * ((bNorm - rNorm) / delta + 2); break; case bNorm: h = 60 * ((rNorm - gNorm) / delta + 4); break; } } // Asegurarse de que el tono esté en el rango de 0 a 360 if (h < 0) { h += 360; } return [Math.round(h),`${s.toFixed(1)}%`, `${l.toFixed(1)}%`]; }; /** * Converson de HEX a RGB. * @param {string} hexColor Color hexadecimal * @returns {object} */ hexToRgb = hexColor => { if (!this.isValidHex(hexColor)) { return; } const hex = this.cleanHex(hexColor); const cleanedHex = (hex.startsWith("#") ? hex.slice(1) : hex); const red = parseInt(cleanedHex.slice(0, 2), 16); const green = parseInt(cleanedHex.slice(2, 4), 16); const blue = parseInt(cleanedHex.slice(4, 6), 16); return [red, green, blue]; } /** * Imprime el nombre de un color * * @param {array} args Array list [arg, arg, arg] * @param {array} options object Objeto con opciones para los switch. * @example * // maíz - azul a verde * colorName( * ["arg-maiz", "arg-azul", "arg-verde"], * { * switchLastConnector: {'i': "a", "o": "a"}, * defaultLastConnector: "a", * listConnector: " - " * } * ) * @returns {string} */ colorName = (args, options={}) => { if(typeof args == "undefined"){ return } if(args.length < 1){ console.error("Error.", "Debe pasar al menos un argumento."); return; } if(typeof args == "string"){ args = [args]; } if(!args.every(e => typeof e === "string")){ console.error("Error.", "Solo se admiten cadenas de texto"); return; } // Options const defaultConnectorSwitch = {"i": "e", "o": "u"}; const defaultConnector = "y"; const defaultListConnector = ", "; const optionConnectorSwitch = (typeof options == "object" && options.hasOwnProperty('switchLastConnector') ? options.switchLastConnector : defaultConnectorSwitch); const optionDefaultConnector = (typeof options == "object" && options.hasOwnProperty('defaultLastConnector') ? options.defaultLastConnector : defaultConnector); const optionDefaultListConnector = (typeof options == "object" && options.hasOwnProperty('listConnector') ? options.listConnector : defaultListConnector); const getColorName = (arg) => { const result = this.variables.find(f => (f[0] == arg)); return typeof result != "undefined" ? result[4] : arg; }; if (args.length === 1) { return getColorName(args.join("")); } const totalArgs = args.length; const lastArg = args.pop(totalArgs - 1); const firstCharName = Array.from( getColorName(lastArg) )[0].toLowerCase(); const connector = (optionConnectorSwitch[firstCharName] || optionDefaultConnector); const result = `${args.map(m => getColorName(m)).join(optionDefaultListConnector)} ${connector}` + ` ${getColorName(lastArg)}`; return result.toLowerCase(); }; } if (typeof exports !== "undefined") { module.exports = {Color}; } /** * Configuración de colores www.argentina.gob.ar * * MIT License * * Copyright (c) 2024 Argentina.gob.ar * * Permission is hereby granted, free of charge, to any person * obtaining a copy of this software and associated documentation * files (the "Software"), to deal in the Software without restriction, * including without limitation the rightsto use, copy, modify, merge, * publish, distribute, sublicense, and/or sell copies of the Software, * and to permit persons to whom the Software is furnished to do so, * subject to the following conditions: * * The above copyright notice and this permission notice shall be * included in all copies or substantial portions of the Software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE * SOFTWARE. */ /** * Códigos de color válidos para utilizar en ilustraciones. */ const illustrationColors = [ "arg-azul", "arg-arena", "arg-amarillo", "arg-palta", "arg-verde", "arg-arandano", "arg-rosado", "miarg-azul", ]; const headersBackground = { solid: [ "bg-arg-azul", "bg-arg-rojo", "bg-arg-info", "bg-arg-eucalipto", "bg-arg-palta", "bg-arg-arandano", "bg-arg-negro-light" ], mixed: [ "bg-mix-azul-info", "bg-mix-info-azul", "bg-mix-palta-azul", "bg-mix-azul-palta" ] }; /** * Variaciones de color */ const colorVariations = { high: [ 'arg-azul', 'arg-eucalipto', 'arg-verde', 'arg-naranja', 'arg-rojo', 'arg-arandano', 'arg-uva', 'arg-cielo', 'arg-palta', 'arg-verdin', 'arg-amarillo', 'arg-tomate', 'arg-fucsia', 'arg-lavanda', 'arg-negro' ], medium: [ "arg-info","arg-verde-azulado","arg-verdin","arg-amarillo","arg-tomate", "arg-fucsia","arg-lavanda","arg-palta","arg-lima","arg-maiz", "arg-gris-intermedio" ] }; // @legacy Creo ponchoColor y color como una variable global. var ponchoColor; var color; if (typeof Color !== 'undefined') { color = new Color(ponchoColorDefinitionsList); ponchoColor = color.ponchoColor; } if (typeof exports !== "undefined") { module.exports = { colorVariations, illustrationColors, headersBackground, color }; } /** * Fetch data con manejo de CORS * * @param {string} uri - URL del recurso * @param {Object} options - Opciones de configuración * @param {boolean} options.useCorsProxy - Usar proxy CORS en caso de error * (default: true) * @param {string} options.corsProxyUrl - URL del proxy CORS personalizado * @param {boolean} options.credentials - Incluir credenciales ('include', * 'same-origin', 'omit') * * @example * ```js * (async() => { * // Uso básico con fallback a proxy CORS * const data = await fetch_json("https://arg.gob.ar"); * * // Sin proxy CORS * const data2 = await fetch_json( * "https://arg.gob.ar", { useCorsProxy: false } * ); * * // Con credenciales * const data3 = await fetch_json( * "https://arg.gob.ar", { credentials: "include" }; * ); * ``` */ async function fetch_json(uri, options={}) { const { useCorsProxy = true, corsProxyUrl = "", credentials = "same-origin", ...fetchOptions } = options; let defaultOptions = { method: "GET", headers: { "Accept": "application/json", "Content-Type": "application/json" }, credentials: credentials, redirect: "follow" }; let opts = Object.assign({}, defaultOptions, fetchOptions); try { const response = await fetch(uri, opts); if (!response.ok) { throw new Error(`HTTP error! status: ${response.status}`); } return await response.json(); } catch (error) { // Si falla y está habilitado el proxy CORS, intentar con proxy if (useCorsProxy && ( error.message.includes('CORS') || error.message.includes('Network') || error.name === 'TypeError' )) { try { const proxyUri = `${corsProxyUrl}${encodeURIComponent(uri)}`; console.warn( `CORS error detectado. Intentando con proxy: ${proxyUri}` ); // Remover credenciales para el proxy const proxyOpts = { ...opts, credentials: "omit" }; const proxyResponse = await fetch(proxyUri, proxyOpts); if (!proxyResponse.ok) { throw new Error( `HTTP error! status: ${proxyResponse.status}` ); } return await proxyResponse.json(); } catch (proxyError) { console.error("Error con proxy CORS:", proxyError); throw new Error( `Fetch fallido directo y con proxy. ` + `Error original: ${error.message}` ); } } // Re-lanzar el error original si no se usa proxy throw error; } }; /** * Remueve acentos y caracteres especiales. * * @param {string} data Cadena de texto a limpiar. * @example * // returns Accion Murcielago arbol nino * removeAccents("Acción Murciélago árbol niño") * @returns {string} Cadena de texto sin acentos. */ const charMap = new Map([ ['à', 'a'], ['á', 'a'], ['â', 'a'], ['ä', 'a'], ['æ', 'a'], ['ã', 'a'], ['å', 'a'], ['ā', 'a'], ['ă', 'a'], ['ą', 'a'], ['ç', 'c'], ['ć', 'c'], ['č', 'c'], ['đ', 'd'], ['ď', 'd'], ['è', 'e'], ['é', 'e'], ['ê', 'e'], ['ë', 'e'], ['ē', 'e'], ['ė', 'e'], ['ę', 'e'], ['ě', 'e'], ['ğ', 'g'], ['ǵ', 'g'], ['ḧ', 'h'], ['î', 'i'], ['ï', 'i'], ['í', 'i'], ['ī', 'i'], ['į', 'i'], ['ì', 'i'], ['ı', 'i'], ['İ', 'I'], ['ł', 'l'], ['ḿ', 'm'], ['ñ', 'n'], ['ń', 'n'], ['ǹ', 'n'], ['ň', 'n'], ['ô', 'o'], ['ö', 'o'], ['ò', 'o'], ['ó', 'o'], ['œ', 'o'], ['ø', 'o'], ['ō', 'o'], ['õ', 'o'], ['ő', 'o'], ['ṕ', 'p'], ['ŕ', 'r'], ['ř', 'r'], ['ß', 's'], ['ś', 's'], ['š', 's'], ['ş', 's'], ['ș', 's'], ['ť', 't'], ['ț', 't'], ['û', 'u'], ['ü', 'u'], ['ù', 'u'], ['ú', 'u'], ['ū', 'u'], ['ǘ', 'u'], ['ů', 'u'], ['ű', 'u'], ['ų', 'u'], ['ẃ', 'w'], ['ẍ', 'x'], ['ÿ', 'y'], ['ý', 'y'], ['ž', 'z'], ['ź', 'z'], ['ż', 'z'], ['À', 'A'], ['Á', 'A'], ['Â', 'A'], ['Ä', 'A'], ['Æ', 'A'], ['Ã', 'A'], ['Å', 'A'], ['Ā', 'A'], ['Ă', 'A'], ['Ą', 'A'], ['Ç', 'C'], ['Ć', 'C'], ['Č', 'C'], ['Đ', 'D'], ['Ď', 'D'], ['È', 'E'], ['É', 'E'], ['Ê', 'E'], ['Ë', 'E'], ['Ē', 'E'], ['Ė', 'E'], ['Ę', 'E'], ['Ě', 'E'], ['Ğ', 'G'], ['Ǵ', 'G'], ['Ḧ', 'H'], ['Î', 'I'], ['Ï', 'I'], ['Í', 'I'], ['Ī', 'I'], ['Į', 'I'], ['Ì', 'I'], ['Ł', 'L'], ['Ḿ', 'M'], ['Ñ', 'N'], ['Ń', 'N'], ['Ǹ', 'N'], ['Ň', 'N'], ['Ô', 'O'], ['Ö', 'O'], ['Ò', 'O'], ['Ó', 'O'], ['Œ', 'O'], ['Ø', 'O'], ['Ō', 'O'], ['Õ', 'O'], ['Ő', 'O'], ['Ṕ', 'P'], ['Ŕ', 'R'], ['Ř', 'R'], ['Ś', 'S'], ['Š', 'S'], ['Ş', 'S'], ['Ș', 'S'], ['Ť', 'T'], ['Ț', 'T'], ['Û', 'U'], ['Ü', 'U'], ['Ù', 'U'], ['Ú', 'U'], ['Ū', 'U'], ['Ǘ', 'U'], ['Ů', 'U'], ['Ű', 'U'], ['Ų', 'U'], ['Ẃ', 'W'], ['Ẍ', 'X'], ['Ÿ', 'Y'], ['Ý', 'Y'], ['Ž', 'Z'], ['Ź', 'Z'], ['Ż', 'Z'] ]); const replaceSpecialChars = (data) => { if (typeof data !== "string" || data.trim().length === 0) { console.warn("