diff --git a/app/Gulpfile.js b/app/Gulpfile.js index 791e1d2..6dccdfc 100644 --- a/app/Gulpfile.js +++ b/app/Gulpfile.js @@ -9,7 +9,10 @@ const sourcemaps = require('gulp-sourcemaps'); const imagemin = require('gulp-imagemin'); const webp = require('gulp-webp'); const newer = require('gulp-newer'); -const fontmin = require('gulp-fontmin'); +const rename = require('gulp-rename'); +const ttf2woff = require('gulp-ttf2woff'); +const ttf2woff2 = require('gulp-ttf2woff2'); +const ttf2eot = require('gulp-ttf2eot'); const svgmin = require('gulp-svgmin'); const paths = { @@ -52,7 +55,7 @@ function styles() { function scripts() { return gulp.src(paths.scripts.src) .pipe(sourcemaps.init()) - .pipe(concat('script.js')) + .pipe(concat('scripts.js')) .pipe(uglify()) .pipe(gulp.dest(paths.scripts.dest)) .pipe(sourcemaps.write('.')) @@ -78,8 +81,23 @@ function icons() { function fonts() { return gulp.src(paths.fonts.src) .pipe(newer(paths.fonts.dest)) - .pipe(fontmin()) + + .pipe(ttf2woff()) + .pipe(rename({ extname: '.woff' })) .pipe(gulp.dest(paths.fonts.dest)) + + .pipe(gulp.src(paths.fonts.src)) + .pipe(ttf2woff2()) + .pipe(rename({ extname: '.woff2' })) + .pipe(gulp.dest(paths.fonts.dest)) + + .pipe(gulp.src(paths.fonts.src)) + .pipe(ttf2eot()) + .pipe(rename({ extname: '.eot' })) + .pipe(gulp.dest(paths.fonts.dest)) + + .pipe(gulp.src(paths.fonts.src)) + .pipe(gulp.dest(paths.fonts.dest)); } function watch() { diff --git a/app/assets/icons/archive.svg b/app/assets/icons/archive.svg deleted file mode 100644 index d6a4354..0000000 --- a/app/assets/icons/archive.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/app/assets/icons/bypass.svg b/app/assets/icons/bypass.svg deleted file mode 100644 index 53aae2a..0000000 --- a/app/assets/icons/bypass.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/app/assets/icons/code.svg b/app/assets/icons/code.svg deleted file mode 100644 index 65954eb..0000000 --- a/app/assets/icons/code.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/app/assets/icons/search.svg b/app/assets/icons/search.svg deleted file mode 100644 index 9abe77a..0000000 --- a/app/assets/icons/search.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/app/assets/images/wall.png b/app/assets/images/wall.png index 3b3fa64..c54dc7f 100644 Binary files a/app/assets/images/wall.png and b/app/assets/images/wall.png differ diff --git a/app/assets/js/scripts.js b/app/assets/js/scripts.js index 05a9488..5485ac8 100644 --- a/app/assets/js/scripts.js +++ b/app/assets/js/scripts.js @@ -1,130 +1,67 @@ -/** - * JavaScript functions for form validation and error handling - * Funções JavaScript para validação de formulário e manipulação de erros - */ - -/** - * Validates the form before submission - * - * Checks: - * - If URL is not empty - * - If URL starts with http:// or https:// - * - If URL has a valid format - * - * @returns {boolean} True if URL is valid, False otherwise - * - * Valida o formulário antes do envio - * - * Verifica: - * - Se a URL não está vazia - * - Se a URL começa com http:// ou https:// - * - Se a URL tem um formato válido - * - * @returns {boolean} True se a URL for válida, False caso contrário - */ -function validateForm() { - const urlInput = document.getElementById('url'); - const submitButton = document.querySelector('button[type="submit"]'); - const url = urlInput.value.trim(); - - // Check if URL is not empty - // Verifica se a URL não está vazia - if (!url) { - showError('Por favor, insira uma URL'); - return false; - } - - // Check if URL starts with http:// or https:// - // Verifica se a URL começa com http:// ou https:// - if (!/^https?:\/\//i.test(url)) { - showError('A URL deve começar com http:// ou https://'); - return false; - } - - // Try to create a URL object to validate format - // Tenta criar um objeto URL para validar o formato - try { - new URL(url); - } catch (e) { - showError('Formato de URL inválido'); - return false; - } - - // Disable input and button - // Desabilita o input e o botão - urlInput.readonly = true; - submitButton.disabled = true; - - // Add Tailwind disabled classes - // Adiciona classes de disabled do Tailwind - submitButton.classList.add('cursor-wait', 'disabled:bg-blue-400'); - submitButton.classList.remove('hover:bg-blue-700'); - - urlInput.classList.add('cursor-wait', 'disabled:bg-gray-50', 'focus:outline-none'); - - // Add loading state to button - // Adiciona estado de loading ao botão - submitButton.innerHTML = ` - Search - Analisando... - `; - - return true; -} - -/** - * Displays an error message below the form - * - * Removes any existing error message before displaying the new one. - * The message is displayed with an error icon and red formatting. - * - * @param {string} message Error message to be displayed - * - * Exibe uma mensagem de erro abaixo do formulário - * - * Remove qualquer mensagem de erro existente antes de exibir a nova. - * A mensagem é exibida com um ícone de erro e formatação em vermelho. - * - * @param {string} message Mensagem de erro a ser exibida - */ -function showError(message) { - const form = document.getElementById('urlForm'); - const existingError = form.querySelector('.error-message'); - - // Remove previous error message if it exists - // Remove mensagem de erro anterior se existir - if (existingError) { - existingError.remove(); - } - - // Create and add new error message - // Cria e adiciona nova mensagem de erro - const errorDiv = document.createElement('div'); - errorDiv.className = 'error-message mt-4 text-base text-red-600'; - errorDiv.innerHTML = ` - Error icon - ${message}`; - - form.appendChild(errorDiv); -} - /** * Service Worker registration for PWA functionality * Registers a service worker to enable offline capabilities and PWA features - * - * Registro do Service Worker para funcionalidade PWA - * Registra um service worker para habilitar recursos offline e funcionalidades PWA */ if ('serviceWorker' in navigator) { window.addEventListener('load', () => { navigator.serviceWorker.register('/service-worker.js') .then(() => { // Service Worker registered successfully - // Service Worker registrado com sucesso }) .catch(() => { // Service Worker registration failed - // Falha no registro do Service Worker }); }); } + +/** + * Header toggle menus + */ +document.addEventListener('DOMContentLoaded', function () { + const integration = document.querySelector('.integration'); + const integrationToggle = document.querySelector('.integration__toggle'); + const extension = document.querySelector('.extension'); + const extensionToggle = document.querySelector('.extension__toggle'); + + // Function to close all menus + const closeAllMenus = () => { + integration.classList.remove('open'); + extension.classList.remove('open'); + }; + + // Function to close other menus except the one passed + const closeOtherMenus = (exceptMenu) => { + if (exceptMenu !== integration) { + integration.classList.remove('open'); + } + if (exceptMenu !== extension) { + extension.classList.remove('open'); + } + }; + + integrationToggle.addEventListener('click', (e) => { + e.stopPropagation(); // Prevent click from bubbling to document + closeOtherMenus(integration); + integration.classList.toggle('open'); + }); + + extensionToggle.addEventListener('click', (e) => { + e.stopPropagation(); // Prevent click from bubbling to document + closeOtherMenus(extension); + extension.classList.toggle('open'); + }); + + // Prevent clicks inside menus from closing them + integration.addEventListener('click', (e) => { + e.stopPropagation(); + }); + + extension.addEventListener('click', (e) => { + e.stopPropagation(); + }); + + // Close menus when clicking outside + document.addEventListener('click', () => { + closeAllMenus(); + }); +}); \ No newline at end of file diff --git a/app/assets/scss/_base.scss b/app/assets/scss/_base.scss index 4aeed5a..13fcf12 100644 --- a/app/assets/scss/_base.scss +++ b/app/assets/scss/_base.scss @@ -2,7 +2,7 @@ // Default body { - font-family: var(--font-family-haffer); + font-family: var(--font-family-inter); font-size: var(--font-size); font-weight: var(--font-weight); line-height: var(--line-height); diff --git a/app/assets/scss/_fonts.scss b/app/assets/scss/_fonts.scss index b0398d2..28ba477 100644 --- a/app/assets/scss/_fonts.scss +++ b/app/assets/scss/_fonts.scss @@ -1,10 +1,10 @@ @font-face { font-family: 'inter'; - src: url('../fonts/inter-500.eot'); + src: url('../dist/fonts/inter-500.eot'); src: local('Inter Medium'), local('Inter-Medium'), - url('../fonts/inter-500.woff2') format('woff2'), - url('../fonts/inter-500.woff') format('woff'), - url('../fonts/inter-500.ttf') format('truetype'); + url('../dist/fonts/inter-500.woff2') format('woff2'), + url('../dist/fonts/inter-500.woff') format('woff'), + url('../dist/fonts/inter-500.ttf') format('truetype'); font-weight: 500; font-style: normal; font-display: swap; @@ -12,11 +12,11 @@ @font-face { font-family: 'inter'; - src: url('../fonts/inter-600.eot'); + src: url('../dist/fonts/inter-600.eot'); src: local('Inter SemiBold'), local('Inter-SemiBold'), - url('../fonts/inter-600.woff2') format('woff2'), - url('../fonts/inter-600.woff') format('woff'), - url('../fonts/inter-600.ttf') format('truetype'); + url('../dist/fonts/inter-600.woff2') format('woff2'), + url('../dist/fonts/inter-600.woff') format('woff'), + url('../dist/fonts/inter-600.ttf') format('truetype'); font-weight: 600; font-style: normal; font-display: swap; @@ -24,11 +24,11 @@ @font-face { font-family: 'unna'; - src: url('../fonts/unna-400.eot'); + src: url('../dist/fonts/unna-400.eot'); src: local('Unna Regular'), local('Unna-Regular'), - url('../fonts/unna-400.woff2') format('woff2'), - url('../fonts/unna-400.woff') format('woff'), - url('../fonts/unna-400.ttf') format('truetype'); + url('../dist/fonts/unna-400.woff2') format('woff2'), + url('../dist/fonts/unna-400.woff') format('woff'), + url('../dist/fonts/unna-400.ttf') format('truetype'); font-weight: 400; font-style: normal; font-display: swap; diff --git a/app/assets/scss/_icons.scss b/app/assets/scss/_icons.scss index 8b8cb27..7396b0a 100644 --- a/app/assets/scss/_icons.scss +++ b/app/assets/scss/_icons.scss @@ -8,29 +8,31 @@ // https://codepen.io/sosuke/pen/Pjoqqp .icon { - display: inline-block; - vertical-align: -0.125em; - fill: currentcolor; - width: 1em; - height: 1em; - background-repeat: no-repeat; - background-position: center center; - background-size: 100% auto; + display: inline-block; + vertical-align: -0.125em; + fill: currentcolor; + width: 16px; + height: 16px; + background-repeat: no-repeat; + background-position: center center; + background-size: 100% auto; + &--bookmark { + background-size: auto 100% !important; + } } -@include mixin.icon('marreta'); -@include mixin.icon('android'); -@include mixin.icon('apple'); -@include mixin.icon('archive'); -@include mixin.icon('bookmark'); -@include mixin.icon('bsky'); -@include mixin.icon('bypass'); -@include mixin.icon('chrome'); -@include mixin.icon('code'); -@include mixin.icon('error'); -@include mixin.icon('firefox'); -@include mixin.icon('link'); -@include mixin.icon('refresh'); -@include mixin.icon('search'); -@include mixin.icon('telegram'); -@include mixin.icon('warning'); \ No newline at end of file +@include mixin.icon('marreta', 'invert(43%) sepia(74%) saturate(2288%) hue-rotate(201deg) brightness(98%) contrast(97%)'); +@include mixin.icon('bookmark', 'invert(80%) sepia(46%) saturate(1512%) hue-rotate(340deg) brightness(106%) contrast(97%)'); + +@include mixin.icon('android', 'invert(72%) sepia(34%) saturate(778%) hue-rotate(32deg) brightness(97%) contrast(88%)'); +@include mixin.icon('apple', 'invert(0%) sepia(21%) saturate(7425%) hue-rotate(12deg) brightness(96%) contrast(96%)'); +@include mixin.icon('bsky', 'invert(47%) sepia(66%) saturate(4445%) hue-rotate(195deg) brightness(98%) contrast(104%)'); +@include mixin.icon('telegram', 'invert(61%) sepia(86%) saturate(1341%) hue-rotate(166deg) brightness(96%) contrast(85%)'); +@include mixin.icon('chrome', 'invert(40%) sepia(90%) saturate(1163%) hue-rotate(203deg) brightness(104%) contrast(92%)'); +@include mixin.icon('firefox', 'invert(57%) sepia(43%) saturate(1854%) hue-rotate(360deg) brightness(102%) contrast(106%)'); + +@include mixin.icon('link', 'invert(53%) sepia(12%) saturate(17%) hue-rotate(39deg) brightness(94%) contrast(91%)'); +@include mixin.icon('refresh', 'invert(100%) sepia(32%) saturate(8%) hue-rotate(23deg) brightness(102%) contrast(100%)'); + +@include mixin.icon('error', 'invert(30%) sepia(58%) saturate(3703%) hue-rotate(336deg) brightness(90%) contrast(91%)'); +@include mixin.icon('warning', 'invert(89%) sepia(25%) saturate(5861%) hue-rotate(353deg) brightness(101%) contrast(101%)'); \ No newline at end of file diff --git a/app/assets/scss/_mixin.scss b/app/assets/scss/_mixin.scss index bf95eca..5fbc8a9 100644 --- a/app/assets/scss/_mixin.scss +++ b/app/assets/scss/_mixin.scss @@ -1,8 +1,10 @@ +@use "sass:math"; +@use "sass:color"; -@mixin create-color($name, $color) { - --#{$name}: #{$color}; - --#{$name}-lighten: color.scale($color, $lightness: -100%); - --#{$name}-darken: color.adjust($color, $lightness: -10%) +@mixin create-color($name, $hex) { + --#{$name}: #{$hex}; + --#{$name}-lighten: #{color.adjust($hex, $lightness: 5%)}; + --#{$name}-darken: #{color.adjust($hex, $lightness: -10%)}; } @mixin devices($breakpoint) { @@ -13,12 +15,9 @@ } } -@mixin background-image-svg($name) { - background-image: url("../images/icons/#{$name}.svg"); -} - -@mixin icon($name) { +@mixin icon($name, $filter) { .icon--#{$name} { - @include background-image-svg($name); + background-image: url("../dist/icons/#{$name}.svg"); + filter: #{$filter}; } } \ No newline at end of file diff --git a/app/assets/scss/_root.scss b/app/assets/scss/_root.scss index e8e08d3..edf3d07 100644 --- a/app/assets/scss/_root.scss +++ b/app/assets/scss/_root.scss @@ -21,7 +21,8 @@ "Liberation Mono", "Courier New", monospace; - --font-family-haffer: "haffer"; + --font-family-inter: "inter"; + --font-family-unna: "unna"; //-- Styles --font-size: 16px; @@ -29,18 +30,10 @@ --line-height: 160%; // Colors - $hex-marreta: #fff; - $hex-text: #000; - $hex-textmuted: #000; - $hex-link: #000; - - @include mixin.create-color('marreta', $hex-marreta); - @include mixin.create-color('text', $hex-text); - @include mixin.create-color('textmuted', $hex-textmuted); - @include mixin.create-color('link', $hex-link); - - // Borders - --border-radius-default: 1rem; + @include mixin.create-color('marreta', #3B82F6); + @include mixin.create-color('text', #484848); + @include mixin.create-color('textmuted', #818181); + @include mixin.create-color('link', #3B82F6); // Spacing --container_spacing: 24px; diff --git a/app/assets/scss/home.scss b/app/assets/scss/home.scss index e69de29..34ecca3 100644 --- a/app/assets/scss/home.scss +++ b/app/assets/scss/home.scss @@ -0,0 +1,374 @@ +header { + display: grid; + grid-template-columns: 1fr 2fr 1fr; + align-items: center; + padding: 42px 0; + + .brand { + display: flex; + align-items: center; + .icon { + margin-right: 6px; + &--marreta { + width: 32px; + height: 32px; + } + } + h1 { + font-family: var(--font-family-unna); + color: #000; + } + } + + nav { + display: flex; + justify-content: center; + gap: 48px; + + a { + text-decoration: none; + color: #333; + + &:hover { + color: #007bff; + } + } + + .integration { + position: relative; + + &__toggle { + background: none; + border: none; + cursor: pointer; + color: #333; + + &:hover { + color: #007bff; + } + } + + &__menu { + display: none; + position: absolute; + top: 110%; + left: 0; + border-radius: 16px; + background-color: #F4F4F5; + border: 4px solid #F4F4F5; + z-index: 10; + box-shadow: 0px 4px 6px 0px rgba(0, 0, 0, 0.05); + box-shadow: 0px 10px 15px 0px rgba(0, 0, 0, 0.1); + box-shadow: 0px 10px 10px 0px rgba(0, 0, 0, 0.04); + box-shadow: 0px 20px 25px 0px rgba(0, 0, 0, 0.1); + + a { + margin-bottom: 4px; + &:first-child { + border-top-left-radius: 16px; + border-top-right-radius: 16px; + } + &:last-child { + margin-bottom: 0; + border-bottom-left-radius: 16px; + border-bottom-right-radius: 16px; + } + color: var(--text); + font-weight: 600; + display: block; + padding: 8px 16px; + background-color: #fff; + display: flex; + align-items: center; + &:hover { + color: var(--marreta); + } + span { + display: inline-block; + } + } + .name { + width: 140px; + } + } + + &.open { + .integration__menu { + display: block; + } + + .arrow { + top: 1px; + transform: rotate(-45deg); + } + } + + .arrow { + position: relative; + top: -3px; + content: ""; + display: inline-block; + width: 6px; + height: 6px; + border-right: 2px solid black; + border-top: 2px solid black; + transform: rotate(135deg); + margin-right: 0; + margin-left: 5px; + } + } + } + + .extension { + display: flex; + justify-content: flex-end; + position: relative; + + &__toggle { + background-color: var(--marreta); + border-radius: 40px; + border: 0; + cursor: pointer; + color: #FFF; + font-weight: 600; + padding: 12px 24px; + line-height: 1.3em; + &:hover { + background-color: var(--marreta-darken); + } + } + + &__menu { + display: none; + position: absolute; + top: 110%; + right: 0; + border-radius: 16px; + background-color: #F4F4F5; + border: 4px solid #F4F4F5; + z-index: 10; + box-shadow: 0px 4px 6px 0px rgba(0, 0, 0, 0.05); + box-shadow: 0px 10px 15px 0px rgba(0, 0, 0, 0.1); + box-shadow: 0px 10px 10px 0px rgba(0, 0, 0, 0.04); + box-shadow: 0px 20px 25px 0px rgba(0, 0, 0, 0.1); + + a { + margin-bottom: 4px; + &:first-child { + border-top-left-radius: 16px; + border-top-right-radius: 16px; + } + &:last-child { + margin-bottom: 0; + border-bottom-left-radius: 16px; + border-bottom-right-radius: 16px; + } + color: var(--text); + font-weight: 600; + display: block; + padding: 8px 16px; + background-color: #fff; + display: flex; + align-items: center; + &:hover { + color: var(--marreta); + } + span { + display: inline-block; + } + } + .name { + width: 140px; + } + } + + &.open { + .extension__toggle { + background-color: #F4F4F5; + color: var(--textmuted); + } + .extension__menu { + display: block; + } + } + } +} + +main { + .description { + position: relative; + z-index: 3; + font-family: var(--font-family-unna); + font-size: 64px; + line-height: 61.44px; + text-align: center; + color: #000; + max-width: 512px; + margin: 0 auto; + } + + .walls_destroyed { + position: relative; + z-index: 3; + max-width: 512px; + margin: 22px auto; + text-align: center; + + span { + color: var(--textmuted); + } + } + + form { + z-index: 2; + position: relative; + + .fields { + &::before { + content: ''; + background-image: url(../assets/images/wall.png); + background-repeat: no-repeat; + background-size: 100% 100%; + width: 422px; + height: 306px; + position: absolute; + top: -110px; + right: -180px; + z-index: 1; + } + + max-width: 470px; + margin: 0 auto; + position: relative; + + .input { + position: relative; + z-index: 2; + padding-right: 28px; + padding-top: 2px; + + .icon { + z-index: 2; + + &--link { + position: absolute; + top: 50%; + left: 1rem; + margin-top: -6px; + } + } + + input { + background-color: #F4F4F5; + padding: 16px 0 16px 44px; + border: 0; + border-radius: 8px; + width: 100%; + box-sizing: border-box; + position: relative; + line-height: 1.3em; + } + } + + button { + position: relative; + background-color: var(--marreta); + border-radius: 50%; + height: 56px; + width: 56px; + border: 0; + z-index: 3; + position: absolute; + top: 0; + right: 0; + cursor: pointer; + + &:hover { + background-color: var(--marreta-darken); + } + + .icon { + width: 23px; + height: 23px; + + &--refresh, + &--marreta { + filter: invert(100%) sepia(32%) saturate(8%) hue-rotate(23deg) brightness(102%) contrast(100%); + } + } + } + } + } + + .adblock { + color: var(--textmuted); + font-size: 13px; + line-height: 1.2em; + text-align: center; + max-width: 470px; + position: relative; + z-index: 3; + margin: 22px auto 0 auto; + } + + .plus { + z-index: 3; + position: relative; + display: grid; + grid-auto-columns: 1fr; + grid-template-columns: 1fr 1fr; + gap: 0px 28px; + align-items: start; + max-width: 960px; + margin: 62px auto 24px auto; + + h2 { + font-size: 16px; + padding-bottom: 8px; + margin: 0; + + .icon { + margin-right: 10px; + } + } + + .text { + font-size: 14px; + color: var(--textmuted); + padding-left: 26px; + + ol { + padding-left: 16px; + margin: 0; + } + + p { + margin: 0; + } + + strong { + font-weight: 600; + color: var(--text); + } + } + + .bookmarklet { + a { + border: 2px solid var(--marreta); + color: var(--marreta); + border-radius: 40px; + padding: 8px 16px; + margin-top: 16px; + display: inline-block; + font-weight: 600; + + &:hover { + border-color: var(--marreta-darken); + color: var(--marreta-darken); + } + } + } + } +} + +footer {} \ No newline at end of file diff --git a/app/assets/scss/index.scss b/app/assets/scss/index.scss index a396426..25390ad 100644 --- a/app/assets/scss/index.scss +++ b/app/assets/scss/index.scss @@ -1,6 +1,3 @@ -@use "sass:math"; -@use "sass:color"; - @forward "normalize.css/normalize"; @use "mixin"; diff --git a/app/dist/css/style.css b/app/dist/css/style.css index 10264b2..8f84c8b 100644 --- a/app/dist/css/style.css +++ b/app/dist/css/style.css @@ -1,2 +1,2 @@ -/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}@font-face{font-family:inter;src:url(../fonts/inter-500.eot);src:local("Inter Medium"),local("Inter-Medium"),url(../fonts/inter-500.woff2) format("woff2"),url(../fonts/inter-500.woff) format("woff"),url(../fonts/inter-500.ttf) format("truetype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:inter;src:url(../fonts/inter-600.eot);src:local("Inter SemiBold"),local("Inter-SemiBold"),url(../fonts/inter-600.woff2) format("woff2"),url(../fonts/inter-600.woff) format("woff"),url(../fonts/inter-600.ttf) format("truetype");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:unna;src:url(../fonts/unna-400.eot);src:local("Unna Regular"),local("Unna-Regular"),url(../fonts/unna-400.woff2) format("woff2"),url(../fonts/unna-400.woff) format("woff"),url(../fonts/unna-400.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}:root{--font-family-sans-serif:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans","Liberation Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-family-monospace:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--font-family-haffer:"haffer";--font-size:16px;--font-weight:500;--line-height:160%;--marreta:#fff;--marreta-lighten:color.scale($color, $lightness: -100%);--marreta-darken:color.adjust($color, $lightness: -10%);--text:#000;--text-lighten:color.scale($color, $lightness: -100%);--text-darken:color.adjust($color, $lightness: -10%);--textmuted:#000;--textmuted-lighten:color.scale($color, $lightness: -100%);--textmuted-darken:color.adjust($color, $lightness: -10%);--link:#000;--link-lighten:color.scale($color, $lightness: -100%);--link-darken:color.adjust($color, $lightness: -10%);--border-radius-default:1rem;--container_spacing:24px}@media only screen and (min-width:1200px){:root{--container_spacing:64px}}html{scroll-behavior:smooth}@media screen and (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{font-family:var(--font-family-haffer);font-size:var(--font-size);font-weight:var(--font-weight);line-height:var(--line-height);color:var(--text);text-align:left;background-color:var(--background);min-width:320px}a{text-decoration:none;color:var(--link)}a:hover{text-decoration:none;color:var(--link-lighten)}.container{padding-right:var(--container_spacing);padding-left:var(--container_spacing);margin-right:auto;margin-left:auto}@media only screen and (min-width:1200px){.container{max-width:1248px}}.icon{display:inline-block;vertical-align:-.125em;fill:currentcolor;width:1em;height:1em;background-repeat:no-repeat;background-position:center center;background-size:100% auto}.icon--marreta{background-image:url(../images/icons/marreta.svg)}.icon--android{background-image:url(../images/icons/android.svg)}.icon--apple{background-image:url(../images/icons/apple.svg)}.icon--archive{background-image:url(../images/icons/archive.svg)}.icon--bookmark{background-image:url(../images/icons/bookmark.svg)}.icon--bsky{background-image:url(../images/icons/bsky.svg)}.icon--bypass{background-image:url(../images/icons/bypass.svg)}.icon--chrome{background-image:url(../images/icons/chrome.svg)}.icon--code{background-image:url(../images/icons/code.svg)}.icon--error{background-image:url(../images/icons/error.svg)}.icon--firefox{background-image:url(../images/icons/firefox.svg)}.icon--link{background-image:url(../images/icons/link.svg)}.icon--refresh{background-image:url(../images/icons/refresh.svg)}.icon--search{background-image:url(../images/icons/search.svg)}.icon--telegram{background-image:url(../images/icons/telegram.svg)}.icon--warning{background-image:url(../images/icons/warning.svg)} +header{display:grid;grid-template-columns:1fr 2fr 1fr;align-items:center;padding:42px 0}header .brand{display:flex;align-items:center}header .brand .icon{margin-right:6px}header .brand .icon--marreta{width:32px;height:32px}header .brand h1{font-family:var(--font-family-unna);color:#000}header nav{display:flex;justify-content:center;gap:48px}header nav a{text-decoration:none;color:#333}header nav a:hover{color:#007bff}header nav .integration{position:relative}header nav .integration__toggle{background:0 0;border:none;cursor:pointer;color:#333}header nav .integration__toggle:hover{color:#007bff}header nav .integration__menu{display:none;position:absolute;top:110%;left:0;border-radius:16px;background-color:#f4f4f5;border:4px solid #f4f4f5;z-index:10;box-shadow:0 4px 6px 0 rgba(0,0,0,.05);box-shadow:0 10px 15px 0 rgba(0,0,0,.1);box-shadow:0 10px 10px 0 rgba(0,0,0,.04);box-shadow:0 20px 25px 0 rgba(0,0,0,.1)}header nav .integration__menu a{margin-bottom:4px;color:var(--text);font-weight:600;display:block;padding:8px 16px;background-color:#fff;display:flex;align-items:center}header nav .integration__menu a:first-child{border-top-left-radius:16px;border-top-right-radius:16px}header nav .integration__menu a:last-child{margin-bottom:0;border-bottom-left-radius:16px;border-bottom-right-radius:16px}header nav .integration__menu a:hover{color:var(--marreta)}header nav .integration__menu a span{display:inline-block}header nav .integration__menu .name{width:140px}header nav .integration.open .integration__menu{display:block}header nav .integration.open .arrow{top:1px;transform:rotate(-45deg)}header nav .integration .arrow{position:relative;top:-3px;content:"";display:inline-block;width:6px;height:6px;border-right:2px solid #000;border-top:2px solid #000;transform:rotate(135deg);margin-right:0;margin-left:5px}header .extension{display:flex;justify-content:flex-end;position:relative}header .extension__toggle{background-color:var(--marreta);border-radius:40px;border:0;cursor:pointer;color:#fff;font-weight:600;padding:12px 24px;line-height:1.3em}header .extension__toggle:hover{background-color:var(--marreta-darken)}header .extension__menu{display:none;position:absolute;top:110%;right:0;border-radius:16px;background-color:#f4f4f5;border:4px solid #f4f4f5;z-index:10;box-shadow:0 4px 6px 0 rgba(0,0,0,.05);box-shadow:0 10px 15px 0 rgba(0,0,0,.1);box-shadow:0 10px 10px 0 rgba(0,0,0,.04);box-shadow:0 20px 25px 0 rgba(0,0,0,.1)}header .extension__menu a{margin-bottom:4px;color:var(--text);font-weight:600;display:block;padding:8px 16px;background-color:#fff;display:flex;align-items:center}header .extension__menu a:first-child{border-top-left-radius:16px;border-top-right-radius:16px}header .extension__menu a:last-child{margin-bottom:0;border-bottom-left-radius:16px;border-bottom-right-radius:16px}header .extension__menu a:hover{color:var(--marreta)}header .extension__menu a span{display:inline-block}header .extension__menu .name{width:140px}header .extension.open .extension__toggle{background-color:#f4f4f5;color:var(--textmuted)}header .extension.open .extension__menu{display:block}main .description{position:relative;z-index:3;font-family:var(--font-family-unna);font-size:64px;line-height:61.44px;text-align:center;color:#000;max-width:512px;margin:0 auto}main .walls_destroyed{position:relative;z-index:3;max-width:512px;margin:22px auto;text-align:center}main .walls_destroyed span{color:var(--textmuted)}main form{z-index:2;position:relative}main form .fields{max-width:470px;margin:0 auto;position:relative}main form .fields::before{content:"";background-image:url(../assets/images/wall.png);background-repeat:no-repeat;background-size:100% 100%;width:422px;height:306px;position:absolute;top:-110px;right:-180px;z-index:1}main form .fields .input{position:relative;z-index:2;padding-right:28px;padding-top:2px}main form .fields .input .icon{z-index:2}main form .fields .input .icon--link{position:absolute;top:50%;left:1rem;margin-top:-6px}main form .fields .input input{background-color:#f4f4f5;padding:16px 0 16px 44px;border:0;border-radius:8px;width:100%;box-sizing:border-box;position:relative;line-height:1.3em}main form .fields button{position:relative;background-color:var(--marreta);border-radius:50%;height:56px;width:56px;border:0;z-index:3;position:absolute;top:0;right:0;cursor:pointer}main form .fields button:hover{background-color:var(--marreta-darken)}main form .fields button .icon{width:23px;height:23px}main form .fields button .icon--marreta,main form .fields button .icon--refresh{filter:invert(100%) sepia(32%) saturate(8%) hue-rotate(23deg) brightness(102%) contrast(100%)}main .adblock{color:var(--textmuted);font-size:13px;line-height:1.2em;text-align:center;max-width:470px;position:relative;z-index:3;margin:22px auto 0 auto}main .plus{z-index:3;position:relative;display:grid;grid-auto-columns:1fr;grid-template-columns:1fr 1fr;gap:0 28px;align-items:start;max-width:960px;margin:62px auto 24px auto}main .plus h2{font-size:16px;padding-bottom:8px;margin:0}main .plus h2 .icon{margin-right:10px}main .plus .text{font-size:14px;color:var(--textmuted);padding-left:26px}main .plus .text ol{padding-left:16px;margin:0}main .plus .text p{margin:0}main .plus .text strong{font-weight:600;color:var(--text)}main .plus .bookmarklet a{border:2px solid var(--marreta);color:var(--marreta);border-radius:40px;padding:8px 16px;margin-top:16px;display:inline-block;font-weight:600}main .plus .bookmarklet a:hover{border-color:var(--marreta-darken);color:var(--marreta-darken)}/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}@font-face{font-family:inter;src:url(../dist/fonts/inter-500.eot);src:local("Inter Medium"),local("Inter-Medium"),url(../dist/fonts/inter-500.woff2) format("woff2"),url(../dist/fonts/inter-500.woff) format("woff"),url(../dist/fonts/inter-500.ttf) format("truetype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:inter;src:url(../dist/fonts/inter-600.eot);src:local("Inter SemiBold"),local("Inter-SemiBold"),url(../dist/fonts/inter-600.woff2) format("woff2"),url(../dist/fonts/inter-600.woff) format("woff"),url(../dist/fonts/inter-600.ttf) format("truetype");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:unna;src:url(../dist/fonts/unna-400.eot);src:local("Unna Regular"),local("Unna-Regular"),url(../dist/fonts/unna-400.woff2) format("woff2"),url(../dist/fonts/unna-400.woff) format("woff"),url(../dist/fonts/unna-400.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}:root{--font-family-sans-serif:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans","Liberation Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-family-monospace:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--font-family-inter:"inter";--font-family-unna:"unna";--font-size:16px;--font-weight:500;--line-height:160%;--marreta:#3B82F6;--marreta-lighten:rgb(83.3804878049, 145.5487804878, 247.1195121951);--marreta-darken:rgb(11.1512195122, 99.1219512195, 242.8487804878);--text:#484848;--text-lighten:rgb(84.75, 84.75, 84.75);--text-darken:rgb(46.5, 46.5, 46.5);--textmuted:#818181;--textmuted-lighten:rgb(141.75, 141.75, 141.75);--textmuted-darken:rgb(103.5, 103.5, 103.5);--link:#3B82F6;--link-lighten:rgb(83.3804878049, 145.5487804878, 247.1195121951);--link-darken:rgb(11.1512195122, 99.1219512195, 242.8487804878);--container_spacing:24px}@media only screen and (min-width:1200px){:root{--container_spacing:64px}}html{scroll-behavior:smooth}@media screen and (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{font-family:var(--font-family-inter);font-size:var(--font-size);font-weight:var(--font-weight);line-height:var(--line-height);color:var(--text);text-align:left;background-color:var(--background);min-width:320px}a{text-decoration:none;color:var(--link)}a:hover{text-decoration:none;color:var(--link-lighten)}.container{padding-right:var(--container_spacing);padding-left:var(--container_spacing);margin-right:auto;margin-left:auto}@media only screen and (min-width:1200px){.container{max-width:1248px}}.icon{display:inline-block;vertical-align:-.125em;fill:currentcolor;width:16px;height:16px;background-repeat:no-repeat;background-position:center center;background-size:100% auto}.icon--bookmark{background-size:auto 100%!important}.icon--marreta{background-image:url(../dist/icons/marreta.svg);filter:invert(43%) sepia(74%) saturate(2288%) hue-rotate(201deg) brightness(98%) contrast(97%)}.icon--bookmark{background-image:url(../dist/icons/bookmark.svg);filter:invert(80%) sepia(46%) saturate(1512%) hue-rotate(340deg) brightness(106%) contrast(97%)}.icon--android{background-image:url(../dist/icons/android.svg);filter:invert(72%) sepia(34%) saturate(778%) hue-rotate(32deg) brightness(97%) contrast(88%)}.icon--apple{background-image:url(../dist/icons/apple.svg);filter:invert(0) sepia(21%) saturate(7425%) hue-rotate(12deg) brightness(96%) contrast(96%)}.icon--bsky{background-image:url(../dist/icons/bsky.svg);filter:invert(47%) sepia(66%) saturate(4445%) hue-rotate(195deg) brightness(98%) contrast(104%)}.icon--telegram{background-image:url(../dist/icons/telegram.svg);filter:invert(61%) sepia(86%) saturate(1341%) hue-rotate(166deg) brightness(96%) contrast(85%)}.icon--chrome{background-image:url(../dist/icons/chrome.svg);filter:invert(40%) sepia(90%) saturate(1163%) hue-rotate(203deg) brightness(104%) contrast(92%)}.icon--firefox{background-image:url(../dist/icons/firefox.svg);filter:invert(57%) sepia(43%) saturate(1854%) hue-rotate(360deg) brightness(102%) contrast(106%)}.icon--link{background-image:url(../dist/icons/link.svg);filter:invert(53%) sepia(12%) saturate(17%) hue-rotate(39deg) brightness(94%) contrast(91%)}.icon--refresh{background-image:url(../dist/icons/refresh.svg);filter:invert(100%) sepia(32%) saturate(8%) hue-rotate(23deg) brightness(102%) contrast(100%)}.icon--error{background-image:url(../dist/icons/error.svg);filter:invert(30%) sepia(58%) saturate(3703%) hue-rotate(336deg) brightness(90%) contrast(91%)}.icon--warning{background-image:url(../dist/icons/warning.svg);filter:invert(89%) sepia(25%) saturate(5861%) hue-rotate(353deg) brightness(101%) contrast(101%)}header{display:grid;grid-template-columns:1fr 2fr 1fr;align-items:center;padding:42px 0}header .brand{display:flex;align-items:center}header .brand .icon{margin-right:6px}header .brand .icon--marreta{width:32px;height:32px}header .brand h1{font-family:var(--font-family-unna);color:#000}header nav{display:flex;justify-content:center;gap:48px}header nav a{text-decoration:none;color:#333}header nav a:hover{color:#007bff}header nav .integration{position:relative}header nav .integration__toggle{background:0 0;border:none;cursor:pointer;color:#333}header nav .integration__toggle:hover{color:#007bff}header nav .integration__menu{display:none;position:absolute;top:110%;left:0;border-radius:16px;background-color:#f4f4f5;border:4px solid #f4f4f5;z-index:10;box-shadow:0 4px 6px 0 rgba(0,0,0,.05);box-shadow:0 10px 15px 0 rgba(0,0,0,.1);box-shadow:0 10px 10px 0 rgba(0,0,0,.04);box-shadow:0 20px 25px 0 rgba(0,0,0,.1)}header nav .integration__menu a{margin-bottom:4px;color:var(--text);font-weight:600;display:block;padding:8px 16px;background-color:#fff;display:flex;align-items:center}header nav .integration__menu a:first-child{border-top-left-radius:16px;border-top-right-radius:16px}header nav .integration__menu a:last-child{margin-bottom:0;border-bottom-left-radius:16px;border-bottom-right-radius:16px}header nav .integration__menu a:hover{color:var(--marreta)}header nav .integration__menu a span{display:inline-block}header nav .integration__menu .name{width:140px}header nav .integration.open .integration__menu{display:block}header nav .integration.open .arrow{top:1px;transform:rotate(-45deg)}header nav .integration .arrow{position:relative;top:-3px;content:"";display:inline-block;width:6px;height:6px;border-right:2px solid #000;border-top:2px solid #000;transform:rotate(135deg);margin-right:0;margin-left:5px}header .extension{display:flex;justify-content:flex-end;position:relative}header .extension__toggle{background-color:var(--marreta);border-radius:40px;border:0;cursor:pointer;color:#fff;font-weight:600;padding:12px 24px;line-height:1.3em}header .extension__toggle:hover{background-color:var(--marreta-darken)}header .extension__menu{display:none;position:absolute;top:110%;right:0;border-radius:16px;background-color:#f4f4f5;border:4px solid #f4f4f5;z-index:10;box-shadow:0 4px 6px 0 rgba(0,0,0,.05);box-shadow:0 10px 15px 0 rgba(0,0,0,.1);box-shadow:0 10px 10px 0 rgba(0,0,0,.04);box-shadow:0 20px 25px 0 rgba(0,0,0,.1)}header .extension__menu a{margin-bottom:4px;color:var(--text);font-weight:600;display:block;padding:8px 16px;background-color:#fff;display:flex;align-items:center}header .extension__menu a:first-child{border-top-left-radius:16px;border-top-right-radius:16px}header .extension__menu a:last-child{margin-bottom:0;border-bottom-left-radius:16px;border-bottom-right-radius:16px}header .extension__menu a:hover{color:var(--marreta)}header .extension__menu a span{display:inline-block}header .extension__menu .name{width:140px}header .extension.open .extension__toggle{background-color:#f4f4f5;color:var(--textmuted)}header .extension.open .extension__menu{display:block}main .description{position:relative;z-index:3;font-family:var(--font-family-unna);font-size:64px;line-height:61.44px;text-align:center;color:#000;max-width:512px;margin:0 auto}main .walls_destroyed{position:relative;z-index:3;max-width:512px;margin:22px auto;text-align:center}main .walls_destroyed span{color:var(--textmuted)}main form{z-index:2;position:relative}main form .fields{max-width:470px;margin:0 auto;position:relative}main form .fields::before{content:"";background-image:url(../assets/images/wall.png);background-repeat:no-repeat;background-size:100% 100%;width:422px;height:306px;position:absolute;top:-110px;right:-180px;z-index:1}main form .fields .input{position:relative;z-index:2;padding-right:28px;padding-top:2px}main form .fields .input .icon{z-index:2}main form .fields .input .icon--link{position:absolute;top:50%;left:1rem;margin-top:-6px}main form .fields .input input{background-color:#f4f4f5;padding:16px 0 16px 44px;border:0;border-radius:8px;width:100%;box-sizing:border-box;position:relative;line-height:1.3em}main form .fields button{position:relative;background-color:var(--marreta);border-radius:50%;height:56px;width:56px;border:0;z-index:3;position:absolute;top:0;right:0;cursor:pointer}main form .fields button:hover{background-color:var(--marreta-darken)}main form .fields button .icon{width:23px;height:23px}main form .fields button .icon--marreta,main form .fields button .icon--refresh{filter:invert(100%) sepia(32%) saturate(8%) hue-rotate(23deg) brightness(102%) contrast(100%)}main .adblock{color:var(--textmuted);font-size:13px;line-height:1.2em;text-align:center;max-width:470px;position:relative;z-index:3;margin:22px auto 0 auto}main .plus{z-index:3;position:relative;display:grid;grid-auto-columns:1fr;grid-template-columns:1fr 1fr;gap:0 28px;align-items:start;max-width:960px;margin:62px auto 24px auto}main .plus h2{font-size:16px;padding-bottom:8px;margin:0}main .plus h2 .icon{margin-right:10px}main .plus .text{font-size:14px;color:var(--textmuted);padding-left:26px}main .plus .text ol{padding-left:16px;margin:0}main .plus .text p{margin:0}main .plus .text strong{font-weight:600;color:var(--text)}main .plus .bookmarklet a{border:2px solid var(--marreta);color:var(--marreta);border-radius:40px;padding:8px 16px;margin-top:16px;display:inline-block;font-weight:600}main .plus .bookmarklet a:hover{border-color:var(--marreta-darken);color:var(--marreta-darken)} /*# sourceMappingURL=style.css.map */ diff --git a/app/dist/css/style.css.map b/app/dist/css/style.css.map index dd5d742..e8e94a2 100644 --- a/app/dist/css/style.css.map +++ b/app/dist/css/style.css.map @@ -1 +1 @@ -{"version":3,"sources":["../../node_modules/normalize.css/normalize.css","_fonts.scss","_root.scss","_mixin.scss","_base.scss","_icons.scss"],"names":[],"mappings":"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","file":"style.css","sourcesContent":["/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */\n\n/* Document\n ========================================================================== */\n\n/**\n * 1. Correct the line height in all browsers.\n * 2. Prevent adjustments of font size after orientation changes in iOS.\n */\n\nhtml {\n line-height: 1.15; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n}\n\n/* Sections\n ========================================================================== */\n\n/**\n * Remove the margin in all browsers.\n */\n\nbody {\n margin: 0;\n}\n\n/**\n * Render the `main` element consistently in IE.\n */\n\nmain {\n display: block;\n}\n\n/**\n * Correct the font size and margin on `h1` elements within `section` and\n * `article` contexts in Chrome, Firefox, and Safari.\n */\n\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\n\n/* Grouping content\n ========================================================================== */\n\n/**\n * 1. Add the correct box sizing in Firefox.\n * 2. Show the overflow in Edge and IE.\n */\n\nhr {\n box-sizing: content-box; /* 1 */\n height: 0; /* 1 */\n overflow: visible; /* 2 */\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\npre {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/* Text-level semantics\n ========================================================================== */\n\n/**\n * Remove the gray background on active links in IE 10.\n */\n\na {\n background-color: transparent;\n}\n\n/**\n * 1. Remove the bottom border in Chrome 57-\n * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n */\n\nabbr[title] {\n border-bottom: none; /* 1 */\n text-decoration: underline; /* 2 */\n text-decoration: underline dotted; /* 2 */\n}\n\n/**\n * Add the correct font weight in Chrome, Edge, and Safari.\n */\n\nb,\nstrong {\n font-weight: bolder;\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\ncode,\nkbd,\nsamp {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/**\n * Add the correct font size in all browsers.\n */\n\nsmall {\n font-size: 80%;\n}\n\n/**\n * Prevent `sub` and `sup` elements from affecting the line height in\n * all browsers.\n */\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/* Embedded content\n ========================================================================== */\n\n/**\n * Remove the border on images inside links in IE 10.\n */\n\nimg {\n border-style: none;\n}\n\n/* Forms\n ========================================================================== */\n\n/**\n * 1. Change the font styles in all browsers.\n * 2. Remove the margin in Firefox and Safari.\n */\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit; /* 1 */\n font-size: 100%; /* 1 */\n line-height: 1.15; /* 1 */\n margin: 0; /* 2 */\n}\n\n/**\n * Show the overflow in IE.\n * 1. Show the overflow in Edge.\n */\n\nbutton,\ninput { /* 1 */\n overflow: visible;\n}\n\n/**\n * Remove the inheritance of text transform in Edge, Firefox, and IE.\n * 1. Remove the inheritance of text transform in Firefox.\n */\n\nbutton,\nselect { /* 1 */\n text-transform: none;\n}\n\n/**\n * Correct the inability to style clickable types in iOS and Safari.\n */\n\nbutton,\n[type=\"button\"],\n[type=\"reset\"],\n[type=\"submit\"] {\n -webkit-appearance: button;\n}\n\n/**\n * Remove the inner border and padding in Firefox.\n */\n\nbutton::-moz-focus-inner,\n[type=\"button\"]::-moz-focus-inner,\n[type=\"reset\"]::-moz-focus-inner,\n[type=\"submit\"]::-moz-focus-inner {\n border-style: none;\n padding: 0;\n}\n\n/**\n * Restore the focus styles unset by the previous rule.\n */\n\nbutton:-moz-focusring,\n[type=\"button\"]:-moz-focusring,\n[type=\"reset\"]:-moz-focusring,\n[type=\"submit\"]:-moz-focusring {\n outline: 1px dotted ButtonText;\n}\n\n/**\n * Correct the padding in Firefox.\n */\n\nfieldset {\n padding: 0.35em 0.75em 0.625em;\n}\n\n/**\n * 1. Correct the text wrapping in Edge and IE.\n * 2. Correct the color inheritance from `fieldset` elements in IE.\n * 3. Remove the padding so developers are not caught out when they zero out\n * `fieldset` elements in all browsers.\n */\n\nlegend {\n box-sizing: border-box; /* 1 */\n color: inherit; /* 2 */\n display: table; /* 1 */\n max-width: 100%; /* 1 */\n padding: 0; /* 3 */\n white-space: normal; /* 1 */\n}\n\n/**\n * Add the correct vertical alignment in Chrome, Firefox, and Opera.\n */\n\nprogress {\n vertical-align: baseline;\n}\n\n/**\n * Remove the default vertical scrollbar in IE 10+.\n */\n\ntextarea {\n overflow: auto;\n}\n\n/**\n * 1. Add the correct box sizing in IE 10.\n * 2. Remove the padding in IE 10.\n */\n\n[type=\"checkbox\"],\n[type=\"radio\"] {\n box-sizing: border-box; /* 1 */\n padding: 0; /* 2 */\n}\n\n/**\n * Correct the cursor style of increment and decrement buttons in Chrome.\n */\n\n[type=\"number\"]::-webkit-inner-spin-button,\n[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n/**\n * 1. Correct the odd appearance in Chrome and Safari.\n * 2. Correct the outline style in Safari.\n */\n\n[type=\"search\"] {\n -webkit-appearance: textfield; /* 1 */\n outline-offset: -2px; /* 2 */\n}\n\n/**\n * Remove the inner padding in Chrome and Safari on macOS.\n */\n\n[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/**\n * 1. Correct the inability to style clickable types in iOS and Safari.\n * 2. Change font properties to `inherit` in Safari.\n */\n\n::-webkit-file-upload-button {\n -webkit-appearance: button; /* 1 */\n font: inherit; /* 2 */\n}\n\n/* Interactive\n ========================================================================== */\n\n/*\n * Add the correct display in Edge, IE 10+, and Firefox.\n */\n\ndetails {\n display: block;\n}\n\n/*\n * Add the correct display in all browsers.\n */\n\nsummary {\n display: list-item;\n}\n\n/* Misc\n ========================================================================== */\n\n/**\n * Add the correct display in IE 10+.\n */\n\ntemplate {\n display: none;\n}\n\n/**\n * Add the correct display in IE 10.\n */\n\n[hidden] {\n display: none;\n}\n","@font-face {\r\n font-family: 'inter';\r\n src: url('../fonts/inter-500.eot');\r\n src: local('Inter Medium'), local('Inter-Medium'),\r\n url('../fonts/inter-500.woff2') format('woff2'),\r\n url('../fonts/inter-500.woff') format('woff'),\r\n url('../fonts/inter-500.ttf') format('truetype');\r\n font-weight: 500;\r\n font-style: normal;\r\n font-display: swap;\r\n}\r\n\r\n@font-face {\r\n font-family: 'inter';\r\n src: url('../fonts/inter-600.eot');\r\n src: local('Inter SemiBold'), local('Inter-SemiBold'),\r\n url('../fonts/inter-600.woff2') format('woff2'),\r\n url('../fonts/inter-600.woff') format('woff'),\r\n url('../fonts/inter-600.ttf') format('truetype');\r\n font-weight: 600;\r\n font-style: normal;\r\n font-display: swap;\r\n}\r\n\r\n@font-face {\r\n font-family: 'unna';\r\n src: url('../fonts/unna-400.eot');\r\n src: local('Unna Regular'), local('Unna-Regular'),\r\n url('../fonts/unna-400.woff2') format('woff2'),\r\n url('../fonts/unna-400.woff') format('woff'),\r\n url('../fonts/unna-400.ttf') format('truetype');\r\n font-weight: 400;\r\n font-style: normal;\r\n font-display: swap;\r\n}","@use \"mixin\";\n\n:root {\r\n\t// Fonts\r\n\t--font-family-sans-serif: -apple-system,\r\n\t\tBlinkMacSystemFont,\r\n\t\t\"Segoe UI\",\r\n\t\tRoboto,\r\n\t\t\"Helvetica Neue\",\r\n\t\tArial,\r\n\t\t\"Noto Sans\",\r\n\t\t\"Liberation Sans\",\r\n\t\tsans-serif,\r\n\t\t\"Apple Color Emoji\",\r\n\t\t\"Segoe UI Emoji\",\r\n\t\t\"Segoe UI Symbol\",\r\n\t\t\"Noto Color Emoji\";\r\n\t--font-family-monospace: SFMono-Regular,\r\n\t\tMenlo, Monaco,\r\n\t\tConsolas,\r\n\t\t\"Liberation Mono\",\r\n\t\t\"Courier New\",\r\n\t\tmonospace;\r\n\t--font-family-haffer: \"haffer\";\r\n\r\n\t//-- Styles\r\n\t--font-size: 16px;\r\n\t--font-weight: 500;\r\n\t--line-height: 160%;\r\n\r\n\t// Colors\r\n\t$hex-marreta: #fff;\r\n\t$hex-text: #000;\r\n $hex-textmuted: #000;\r\n $hex-link: #000;\r\n\r\n\t@include mixin.create-color('marreta', $hex-marreta);\r\n @include mixin.create-color('text', $hex-text);\r\n @include mixin.create-color('textmuted', $hex-textmuted);\r\n @include mixin.create-color('link', $hex-link);\r\n\r\n\t// Borders\r\n\t--border-radius-default: 1rem;\r\n\r\n\t// Spacing\r\n\t--container_spacing: 24px;\r\n\t@include mixin.devices(desktop) {\r\n --container_spacing: 64px;\r\n }\r\n}\r\n\r\nhtml {\r\n\tscroll-behavior: smooth;\r\n}\r\n@media screen and (prefers-reduced-motion: reduce) {\r\n\thtml {\r\n\t\tscroll-behavior: auto;\r\n\t}\r\n}","\r\n@mixin create-color($name, $color) {\r\n --#{$name}: #{$color};\r\n --#{$name}-lighten: color.scale($color, $lightness: -100%);\r\n --#{$name}-darken: color.adjust($color, $lightness: -10%)\r\n} \r\n\r\n@mixin devices($breakpoint) {\r\n\t@if $breakpoint == desktop {\r\n\t\t@media only screen and (min-width: 1200px) {\r\n\t\t\t@content;\r\n\t\t}\r\n\t}\r\n}\r\n\r\n@mixin background-image-svg($name) {\r\n\tbackground-image: url(\"../images/icons/#{$name}.svg\");\r\n}\r\n\r\n@mixin icon($name) {\r\n\t.icon--#{$name} {\r\n\t\t@include background-image-svg($name);\r\n\t}\r\n}","@use \"mixin\";\n\n// Default\r\nbody {\r\n\tfont-family: var(--font-family-haffer);\r\n\tfont-size: var(--font-size);\r\n\tfont-weight: var(--font-weight);\r\n\tline-height: var(--line-height);\r\n\tcolor: var(--text);\r\n\ttext-align: left;\r\n\tbackground-color: var(--background);\r\n\tmin-width: 320px;\r\n}\r\n\r\na {\r\n\ttext-decoration: none;\r\n\tcolor: var(--link);\r\n\r\n\t&:hover {\r\n\t\ttext-decoration: none;\r\n\t\tcolor: var(--link-lighten);\r\n\t}\r\n}\r\n\r\n.container {\r\n\tpadding-right: var(--container_spacing);\r\n\tpadding-left: var(--container_spacing);\r\n\tmargin-right: auto;\r\n\tmargin-left: auto;\r\n\r\n\t@include mixin.devices(desktop) {\r\n max-width: 1248px;\r\n }\r\n\r\n}","@use \"mixin\";\r\n\r\n// https://icons.getbootstrap.com/\r\n// https://icofont.com/icons\r\n\r\n// https://jakearchibald.github.io/svgomg/\r\n// https://yoksel.github.io/url-encoder/\r\n// https://codepen.io/sosuke/pen/Pjoqqp\r\n\r\n.icon {\r\n\tdisplay: inline-block;\r\n\tvertical-align: -0.125em;\r\n\tfill: currentcolor;\r\n\twidth: 1em;\r\n\theight: 1em;\r\n\tbackground-repeat: no-repeat;\r\n\tbackground-position: center center;\r\n\tbackground-size: 100% auto;\r\n}\r\n\r\n@include mixin.icon('marreta');\r\n@include mixin.icon('android');\r\n@include mixin.icon('apple');\r\n@include mixin.icon('archive');\r\n@include mixin.icon('bookmark');\r\n@include mixin.icon('bsky');\r\n@include mixin.icon('bypass');\r\n@include mixin.icon('chrome');\r\n@include mixin.icon('code');\r\n@include mixin.icon('error');\r\n@include mixin.icon('firefox');\r\n@include mixin.icon('link');\r\n@include mixin.icon('refresh');\r\n@include mixin.icon('search');\r\n@include mixin.icon('telegram');\r\n@include mixin.icon('warning');"]} \ No newline at end of file +{"version":3,"sources":["home.scss","../../node_modules/normalize.css/normalize.css","_fonts.scss","_root.scss","_mixin.scss","_base.scss","_icons.scss"],"names":[],"mappings":"AAAA,OACI,QAAA,KACA,sBAAA,IAAA,IAAA,IACA,YAAA,OACA,QAAA,KAAA,EAEA,cACI,QAAA,KACA,YAAA,OACA,oBACI,aAAA,IACA,6BACI,MAAA,KACA,OAAA,KAGR,iBACI,YAAA,wBACA,MAAA,KAIR,WACI,QAAA,KACA,gBAAA,OACA,IAAA,KAEA,aACI,gBAAA,KACA,MAAA,KAEA,mBACI,MAAA,QAIR,wBACI,SAAA,SAEA,gCACI,WAAA,IACA,OAAA,KACA,OAAA,QACA,MAAA,KAEA,sCACI,MAAA,QAIR,8BACI,QAAA,KACA,SAAA,SACA,IAAA,KACA,KAAA,EACA,cAAA,KACA,iBAAA,QACA,OAAA,IAAA,MAAA,QACA,QAAA,GACA,WAAA,EAAA,IAAA,IAAA,EAAA,gBACA,WAAA,EAAA,KAAA,KAAA,EAAA,eACA,WAAA,EAAA,KAAA,KAAA,EAAA,gBACA,WAAA,EAAA,KAAA,KAAA,EAAA,eAEA,gCACI,cAAA,IAUA,MAAA,YACA,YAAA,IACA,QAAA,MACA,QAAA,IAAA,KACA,iBAAA,KACA,QAAA,KACA,YAAA,OAfA,4CACI,uBAAA,KACA,wBAAA,KAEJ,2CACI,cAAA,EACA,0BAAA,KACA,2BAAA,KASJ,sCACI,MAAA,eAEJ,qCACI,QAAA,aAGR,oCACI,MAAA,MAKJ,gDACI,QAAA,MAGJ,oCACI,IAAA,IACA,UAAA,eAIR,+BACI,SAAA,SACA,IAAA,KACA,QAAA,GACA,QAAA,aACA,MAAA,IACA,OAAA,IACA,aAAA,IAAA,MAAA,KACA,WAAA,IAAA,MAAA,KACA,UAAA,eACA,aAAA,EACA,YAAA,IAKZ,kBACI,QAAA,KACA,gBAAA,SACA,SAAA,SAEA,0BACI,iBAAA,eACA,cAAA,KACA,OAAA,EACA,OAAA,QACA,MAAA,KACA,YAAA,IACA,QAAA,KAAA,KACA,YAAA,MACA,gCACI,iBAAA,sBAIR,wBACI,QAAA,KACA,SAAA,SACA,IAAA,KACA,MAAA,EACA,cAAA,KACA,iBAAA,QACA,OAAA,IAAA,MAAA,QACA,QAAA,GACA,WAAA,EAAA,IAAA,IAAA,EAAA,gBACA,WAAA,EAAA,KAAA,KAAA,EAAA,eACA,WAAA,EAAA,KAAA,KAAA,EAAA,gBACA,WAAA,EAAA,KAAA,KAAA,EAAA,eAEA,0BACI,cAAA,IAUA,MAAA,YACA,YAAA,IACA,QAAA,MACA,QAAA,IAAA,KACA,iBAAA,KACA,QAAA,KACA,YAAA,OAfA,sCACI,uBAAA,KACA,wBAAA,KAEJ,qCACI,cAAA,EACA,0BAAA,KACA,2BAAA,KASJ,gCACI,MAAA,eAEJ,+BACI,QAAA,aAGR,8BACI,MAAA,MAKJ,0CACI,iBAAA,QACA,MAAA,iBAEJ,wCACI,QAAA,MAOZ,kBACI,SAAA,SACA,QAAA,EACA,YAAA,wBACA,UAAA,KACA,YAAA,QACA,WAAA,OACA,MAAA,KACA,UAAA,MACA,OAAA,EAAA,KAGJ,sBACI,SAAA,SACA,QAAA,EACA,UAAA,MACA,OAAA,KAAA,KACA,WAAA,OAEA,2BACI,MAAA,iBAIR,UACI,QAAA,EACA,SAAA,SAEA,kBAcI,UAAA,MACA,OAAA,EAAA,KACA,SAAA,SAfA,0BACI,QAAA,GACA,iBAAA,+BACA,kBAAA,UACA,gBAAA,KAAA,KACA,MAAA,MACA,OAAA,MACA,SAAA,SACA,IAAA,OACA,MAAA,OACA,QAAA,EAOJ,yBACI,SAAA,SACA,QAAA,EACA,cAAA,KACA,YAAA,IAEA,+BACI,QAAA,EAEA,qCACI,SAAA,SACA,IAAA,IACA,KAAA,KACA,WAAA,KAIR,+BACI,iBAAA,QACA,QAAA,KAAA,EAAA,KAAA,KACA,OAAA,EACA,cAAA,IACA,MAAA,KACA,WAAA,WACA,SAAA,SACA,YAAA,MAIR,yBACI,SAAA,SACA,iBAAA,eACA,cAAA,IACA,OAAA,KACA,MAAA,KACA,OAAA,EACA,QAAA,EACA,SAAA,SACA,IAAA,EACA,MAAA,EACA,OAAA,QAEA,+BACI,iBAAA,sBAGJ,+BACI,MAAA,KACA,OAAA,KAEA,wCAAA,wCAEI,OAAA,aAAA,WAAA,aAAA,kBAAA,iBAAA,eAOpB,cACI,MAAA,iBACA,UAAA,KACA,YAAA,MACA,WAAA,OACA,UAAA,MACA,SAAA,SACA,QAAA,EACA,OAAA,KAAA,KAAA,EAAA,KAGJ,WACI,QAAA,EACA,SAAA,SACA,QAAA,KACA,kBAAA,IACA,sBAAA,IAAA,IACA,IAAA,EAAA,KACA,YAAA,MACA,UAAA,MACA,OAAA,KAAA,KAAA,KAAA,KAEA,cACI,UAAA,KACA,eAAA,IACA,OAAA,EAEA,oBACI,aAAA,KAIR,iBACI,UAAA,KACA,MAAA,iBACA,aAAA,KAEA,oBACI,aAAA,KACA,OAAA,EAGJ,mBACI,OAAA,EAGJ,wBACI,YAAA,IACA,MAAA,YAKJ,0BACI,OAAA,IAAA,MAAA,eACA,MAAA,eACA,cAAA,KACA,QAAA,IAAA,KACA,WAAA,KACA,QAAA,aACA,YAAA,IAEA,gCACI,aAAA,sBACA,MAAA,sBC9WpB,4EAUA,KACE,YAAA,KACA,yBAAA,KAUF,KACE,OAAA,EAOF,KACE,QAAA,MAQF,GACE,UAAA,IACA,OAAA,MAAA,EAWF,GACE,WAAA,YACA,OAAA,EACA,SAAA,QAQF,IACE,YAAA,SAAA,CAAA,UACA,UAAA,IAUF,EACE,iBAAA,YAQF,YACE,cAAA,KACA,gBAAA,UACA,gBAAA,UAAA,OAOF,EAAA,OAEE,YAAA,OAQF,KAAA,IAAA,KAGE,YAAA,SAAA,CAAA,UACA,UAAA,IAOF,MACE,UAAA,IAQF,IAAA,IAEE,UAAA,IACA,YAAA,EACA,SAAA,SACA,eAAA,SAGF,IACE,OAAA,OAGF,IACE,IAAA,MAUF,IACE,aAAA,KAWF,OAAA,MAAA,SAAA,OAAA,SAKE,YAAA,QACA,UAAA,KACA,YAAA,KACA,OAAA,EAQF,OAAA,MAEE,SAAA,QAQF,OAAA,OAEE,eAAA,KAOF,cAAA,aAAA,cAAA,OAIE,mBAAA,OAOF,gCAAA,+BAAA,gCAAA,yBAIE,aAAA,KACA,QAAA,EAOF,6BAAA,4BAAA,6BAAA,sBAIE,QAAA,IAAA,OAAA,WAOF,SACE,QAAA,MAAA,MAAA,OAUF,OACE,WAAA,WACA,MAAA,QACA,QAAA,MACA,UAAA,KACA,QAAA,EACA,YAAA,OAOF,SACE,eAAA,SAOF,SACE,SAAA,KAQF,gBAAA,aAEE,WAAA,WACA,QAAA,EAOF,yCAAA,yCAEE,OAAA,KAQF,cACE,mBAAA,UACA,eAAA,KAOF,yCACE,mBAAA,KAQF,6BACE,mBAAA,OACA,KAAA,QAUF,QACE,QAAA,MAOF,QACE,QAAA,UAUF,SACE,QAAA,KAOF,SACE,QAAA,KC3VF,WACI,YAAA,MACA,IAAA,iCACA,IAAA,qBAAA,CAAA,qBAAA,CAAA,mCAAA,eAAA,CAAA,kCAAA,cAAA,CAAA,iCAAA,mBAIA,YAAA,IACA,WAAA,OACA,aAAA,KAGJ,WACI,YAAA,MACA,IAAA,iCACA,IAAA,uBAAA,CAAA,uBAAA,CAAA,mCAAA,eAAA,CAAA,kCAAA,cAAA,CAAA,iCAAA,mBAIA,YAAA,IACA,WAAA,OACA,aAAA,KAGJ,WACI,YAAA,KACA,IAAA,gCACA,IAAA,qBAAA,CAAA,qBAAA,CAAA,kCAAA,eAAA,CAAA,iCAAA,cAAA,CAAA,gCAAA,mBAIA,YAAA,IACA,WAAA,OACA,aAAA,KC/BJ,MAEC,yBAAA,aAAA,CAAA,kBAAA,CAAA,UAAA,CAAA,MAAA,CAAA,gBAAA,CAAA,KAAA,CAAA,WAAA,CAAA,iBAAA,CAAA,UAAA,CAAA,mBAAA,CAAA,gBAAA,CAAA,iBAAA,CAAA,mBAaA,wBAAA,cAAA,CAAA,KAAA,CAAA,MAAA,CAAA,QAAA,CAAA,iBAAA,CAAA,aAAA,CAAA,UAMA,oBAAA,QACG,mBAAA,OAGH,YAAA,KACA,cAAA,IACA,cAAA,KCzBG,UAAA,QACA,kBAAA,mDACA,iBAAA,kDAFA,OAAA,QACA,eAAA,yBACA,cAAA,sBAFA,YAAA,QACA,oBAAA,4BACA,mBAAA,yBAFA,OAAA,QACA,eAAA,mDACA,cAAA,kDDgCH,oBAAA,KC3BC,0CDTF,MAsCQ,oBAAA,MAIR,KACC,gBAAA,OAED,kDACC,KACC,gBAAA,ME9CF,KACC,YAAA,yBACA,UAAA,iBACA,YAAA,mBACA,YAAA,mBACA,MAAA,YACA,WAAA,KACA,iBAAA,kBACA,UAAA,MAGD,EACC,gBAAA,KACA,MAAA,YAEA,QACC,gBAAA,KACA,MAAA,oBAIF,WACC,cAAA,yBACA,aAAA,yBACA,aAAA,KACA,YAAA,KDjBC,0CCaF,WAOQ,UAAA,QCtBR,MACI,QAAA,aACA,eAAA,QACA,KAAA,aACA,MAAA,KACA,OAAA,KACA,kBAAA,UACA,oBAAA,OAAA,OACA,gBAAA,KAAA,KACA,gBACI,gBAAA,KAAA,eFDP,eACC,iBAAA,+BACM,OAAA,YAAA,WAAA,gBAAA,mBAAA,gBAAA,cAFP,gBACC,iBAAA,gCACM,OAAA,YAAA,WAAA,gBAAA,mBAAA,iBAAA,cAFP,eACC,iBAAA,+BACM,OAAA,YAAA,WAAA,eAAA,kBAAA,gBAAA,cAFP,aACC,iBAAA,6BACM,OAAA,UAAA,WAAA,gBAAA,kBAAA,gBAAA,cAFP,YACC,iBAAA,4BACM,OAAA,YAAA,WAAA,gBAAA,mBAAA,gBAAA,eAFP,gBACC,iBAAA,gCACM,OAAA,YAAA,WAAA,gBAAA,mBAAA,gBAAA,cAFP,cACC,iBAAA,8BACM,OAAA,YAAA,WAAA,gBAAA,mBAAA,iBAAA,cAFP,eACC,iBAAA,+BACM,OAAA,YAAA,WAAA,gBAAA,mBAAA,iBAAA,eAFP,YACC,iBAAA,4BACM,OAAA,YAAA,WAAA,cAAA,kBAAA,gBAAA,cAFP,eACC,iBAAA,+BACM,OAAA,aAAA,WAAA,aAAA,kBAAA,iBAAA,eAFP,aACC,iBAAA,6BACM,OAAA,YAAA,WAAA,gBAAA,mBAAA,gBAAA,cAFP,eACC,iBAAA,+BACM,OAAA,YAAA,WAAA,gBAAA,mBAAA,iBAAA,eJpBR,OACI,QAAA,KACA,sBAAA,IAAA,IAAA,IACA,YAAA,OACA,QAAA,KAAA,EAEA,cACI,QAAA,KACA,YAAA,OACA,oBACI,aAAA,IACA,6BACI,MAAA,KACA,OAAA,KAGR,iBACI,YAAA,wBACA,MAAA,KAIR,WACI,QAAA,KACA,gBAAA,OACA,IAAA,KAEA,aACI,gBAAA,KACA,MAAA,KAEA,mBACI,MAAA,QAIR,wBACI,SAAA,SAEA,gCACI,WAAA,IACA,OAAA,KACA,OAAA,QACA,MAAA,KAEA,sCACI,MAAA,QAIR,8BACI,QAAA,KACA,SAAA,SACA,IAAA,KACA,KAAA,EACA,cAAA,KACA,iBAAA,QACA,OAAA,IAAA,MAAA,QACA,QAAA,GACA,WAAA,EAAA,IAAA,IAAA,EAAA,gBACA,WAAA,EAAA,KAAA,KAAA,EAAA,eACA,WAAA,EAAA,KAAA,KAAA,EAAA,gBACA,WAAA,EAAA,KAAA,KAAA,EAAA,eAEA,gCACI,cAAA,IAUA,MAAA,YACA,YAAA,IACA,QAAA,MACA,QAAA,IAAA,KACA,iBAAA,KACA,QAAA,KACA,YAAA,OAfA,4CACI,uBAAA,KACA,wBAAA,KAEJ,2CACI,cAAA,EACA,0BAAA,KACA,2BAAA,KASJ,sCACI,MAAA,eAEJ,qCACI,QAAA,aAGR,oCACI,MAAA,MAKJ,gDACI,QAAA,MAGJ,oCACI,IAAA,IACA,UAAA,eAIR,+BACI,SAAA,SACA,IAAA,KACA,QAAA,GACA,QAAA,aACA,MAAA,IACA,OAAA,IACA,aAAA,IAAA,MAAA,KACA,WAAA,IAAA,MAAA,KACA,UAAA,eACA,aAAA,EACA,YAAA,IAKZ,kBACI,QAAA,KACA,gBAAA,SACA,SAAA,SAEA,0BACI,iBAAA,eACA,cAAA,KACA,OAAA,EACA,OAAA,QACA,MAAA,KACA,YAAA,IACA,QAAA,KAAA,KACA,YAAA,MACA,gCACI,iBAAA,sBAIR,wBACI,QAAA,KACA,SAAA,SACA,IAAA,KACA,MAAA,EACA,cAAA,KACA,iBAAA,QACA,OAAA,IAAA,MAAA,QACA,QAAA,GACA,WAAA,EAAA,IAAA,IAAA,EAAA,gBACA,WAAA,EAAA,KAAA,KAAA,EAAA,eACA,WAAA,EAAA,KAAA,KAAA,EAAA,gBACA,WAAA,EAAA,KAAA,KAAA,EAAA,eAEA,0BACI,cAAA,IAUA,MAAA,YACA,YAAA,IACA,QAAA,MACA,QAAA,IAAA,KACA,iBAAA,KACA,QAAA,KACA,YAAA,OAfA,sCACI,uBAAA,KACA,wBAAA,KAEJ,qCACI,cAAA,EACA,0BAAA,KACA,2BAAA,KASJ,gCACI,MAAA,eAEJ,+BACI,QAAA,aAGR,8BACI,MAAA,MAKJ,0CACI,iBAAA,QACA,MAAA,iBAEJ,wCACI,QAAA,MAOZ,kBACI,SAAA,SACA,QAAA,EACA,YAAA,wBACA,UAAA,KACA,YAAA,QACA,WAAA,OACA,MAAA,KACA,UAAA,MACA,OAAA,EAAA,KAGJ,sBACI,SAAA,SACA,QAAA,EACA,UAAA,MACA,OAAA,KAAA,KACA,WAAA,OAEA,2BACI,MAAA,iBAIR,UACI,QAAA,EACA,SAAA,SAEA,kBAcI,UAAA,MACA,OAAA,EAAA,KACA,SAAA,SAfA,0BACI,QAAA,GACA,iBAAA,+BACA,kBAAA,UACA,gBAAA,KAAA,KACA,MAAA,MACA,OAAA,MACA,SAAA,SACA,IAAA,OACA,MAAA,OACA,QAAA,EAOJ,yBACI,SAAA,SACA,QAAA,EACA,cAAA,KACA,YAAA,IAEA,+BACI,QAAA,EAEA,qCACI,SAAA,SACA,IAAA,IACA,KAAA,KACA,WAAA,KAIR,+BACI,iBAAA,QACA,QAAA,KAAA,EAAA,KAAA,KACA,OAAA,EACA,cAAA,IACA,MAAA,KACA,WAAA,WACA,SAAA,SACA,YAAA,MAIR,yBACI,SAAA,SACA,iBAAA,eACA,cAAA,IACA,OAAA,KACA,MAAA,KACA,OAAA,EACA,QAAA,EACA,SAAA,SACA,IAAA,EACA,MAAA,EACA,OAAA,QAEA,+BACI,iBAAA,sBAGJ,+BACI,MAAA,KACA,OAAA,KAEA,wCAAA,wCAEI,OAAA,aAAA,WAAA,aAAA,kBAAA,iBAAA,eAOpB,cACI,MAAA,iBACA,UAAA,KACA,YAAA,MACA,WAAA,OACA,UAAA,MACA,SAAA,SACA,QAAA,EACA,OAAA,KAAA,KAAA,EAAA,KAGJ,WACI,QAAA,EACA,SAAA,SACA,QAAA,KACA,kBAAA,IACA,sBAAA,IAAA,IACA,IAAA,EAAA,KACA,YAAA,MACA,UAAA,MACA,OAAA,KAAA,KAAA,KAAA,KAEA,cACI,UAAA,KACA,eAAA,IACA,OAAA,EAEA,oBACI,aAAA,KAIR,iBACI,UAAA,KACA,MAAA,iBACA,aAAA,KAEA,oBACI,aAAA,KACA,OAAA,EAGJ,mBACI,OAAA,EAGJ,wBACI,YAAA,IACA,MAAA,YAKJ,0BACI,OAAA,IAAA,MAAA,eACA,MAAA,eACA,cAAA,KACA,QAAA,IAAA,KACA,WAAA,KACA,QAAA,aACA,YAAA,IAEA,gCACI,aAAA,sBACA,MAAA","file":"style.css","sourcesContent":["header {\r\n display: grid;\r\n grid-template-columns: 1fr 2fr 1fr;\r\n align-items: center;\r\n padding: 42px 0;\r\n\r\n .brand {\r\n display: flex;\r\n align-items: center;\r\n .icon {\r\n margin-right: 6px;\r\n &--marreta {\r\n width: 32px;\r\n height: 32px;\r\n }\r\n }\r\n h1 {\r\n font-family: var(--font-family-unna);\r\n color: #000;\r\n }\r\n }\r\n\r\n nav {\r\n display: flex;\r\n justify-content: center;\r\n gap: 48px;\r\n\r\n a {\r\n text-decoration: none;\r\n color: #333;\r\n\r\n &:hover {\r\n color: #007bff;\r\n }\r\n }\r\n\r\n .integration {\r\n position: relative;\r\n\r\n &__toggle {\r\n background: none;\r\n border: none;\r\n cursor: pointer;\r\n color: #333;\r\n\r\n &:hover {\r\n color: #007bff;\r\n }\r\n }\r\n\r\n &__menu {\r\n display: none;\r\n position: absolute;\r\n top: 110%;\r\n left: 0;\r\n border-radius: 16px;\r\n background-color: #F4F4F5;\r\n border: 4px solid #F4F4F5;\r\n z-index: 10;\r\n box-shadow: 0px 4px 6px 0px rgba(0, 0, 0, 0.05);\r\n box-shadow: 0px 10px 15px 0px rgba(0, 0, 0, 0.1);\r\n box-shadow: 0px 10px 10px 0px rgba(0, 0, 0, 0.04);\r\n box-shadow: 0px 20px 25px 0px rgba(0, 0, 0, 0.1);\r\n \r\n a {\r\n margin-bottom: 4px;\r\n &:first-child {\r\n border-top-left-radius: 16px;\r\n border-top-right-radius: 16px;\r\n }\r\n &:last-child {\r\n margin-bottom: 0;\r\n border-bottom-left-radius: 16px;\r\n border-bottom-right-radius: 16px;\r\n }\r\n color: var(--text);\r\n font-weight: 600;\r\n display: block;\r\n padding: 8px 16px;\r\n background-color: #fff;\r\n display: flex;\r\n align-items: center;\r\n &:hover {\r\n color: var(--marreta);\r\n }\r\n span {\r\n display: inline-block;\r\n }\r\n }\r\n .name {\r\n width: 140px;\r\n }\r\n }\r\n\r\n &.open {\r\n .integration__menu {\r\n display: block;\r\n }\r\n\r\n .arrow {\r\n top: 1px;\r\n transform: rotate(-45deg);\r\n }\r\n }\r\n\r\n .arrow {\r\n position: relative;\r\n top: -3px;\r\n content: \"\";\r\n display: inline-block;\r\n width: 6px;\r\n height: 6px;\r\n border-right: 2px solid black;\r\n border-top: 2px solid black;\r\n transform: rotate(135deg);\r\n margin-right: 0;\r\n margin-left: 5px;\r\n }\r\n }\r\n }\r\n\r\n .extension {\r\n display: flex;\r\n justify-content: flex-end;\r\n position: relative;\r\n\r\n &__toggle {\r\n background-color: var(--marreta);\r\n border-radius: 40px;\r\n border: 0;\r\n cursor: pointer;\r\n color: #FFF;\r\n font-weight: 600;\r\n padding: 12px 24px;\r\n line-height: 1.3em;\r\n &:hover {\r\n background-color: var(--marreta-darken);\r\n }\r\n }\r\n\r\n &__menu {\r\n display: none;\r\n position: absolute;\r\n top: 110%;\r\n right: 0;\r\n border-radius: 16px;\r\n background-color: #F4F4F5;\r\n border: 4px solid #F4F4F5;\r\n z-index: 10;\r\n box-shadow: 0px 4px 6px 0px rgba(0, 0, 0, 0.05);\r\n box-shadow: 0px 10px 15px 0px rgba(0, 0, 0, 0.1);\r\n box-shadow: 0px 10px 10px 0px rgba(0, 0, 0, 0.04);\r\n box-shadow: 0px 20px 25px 0px rgba(0, 0, 0, 0.1);\r\n\r\n a {\r\n margin-bottom: 4px;\r\n &:first-child {\r\n border-top-left-radius: 16px;\r\n border-top-right-radius: 16px;\r\n }\r\n &:last-child {\r\n margin-bottom: 0;\r\n border-bottom-left-radius: 16px;\r\n border-bottom-right-radius: 16px;\r\n }\r\n color: var(--text);\r\n font-weight: 600;\r\n display: block;\r\n padding: 8px 16px;\r\n background-color: #fff;\r\n display: flex;\r\n align-items: center;\r\n &:hover {\r\n color: var(--marreta);\r\n }\r\n span {\r\n display: inline-block;\r\n }\r\n }\r\n .name {\r\n width: 140px;\r\n }\r\n }\r\n\r\n &.open {\r\n .extension__toggle {\r\n background-color: #F4F4F5;\r\n color: var(--textmuted);\r\n }\r\n .extension__menu {\r\n display: block;\r\n }\r\n }\r\n }\r\n}\r\n\r\nmain {\r\n .description {\r\n position: relative;\r\n z-index: 3;\r\n font-family: var(--font-family-unna);\r\n font-size: 64px;\r\n line-height: 61.44px;\r\n text-align: center;\r\n color: #000;\r\n max-width: 512px;\r\n margin: 0 auto;\r\n }\r\n\r\n .walls_destroyed {\r\n position: relative;\r\n z-index: 3;\r\n max-width: 512px;\r\n margin: 22px auto;\r\n text-align: center;\r\n\r\n span {\r\n color: var(--textmuted);\r\n }\r\n }\r\n\r\n form {\r\n z-index: 2;\r\n position: relative;\r\n\r\n .fields {\r\n &::before {\r\n content: '';\r\n background-image: url(../assets/images/wall.png);\r\n background-repeat: no-repeat;\r\n background-size: 100% 100%;\r\n width: 422px;\r\n height: 306px;\r\n position: absolute;\r\n top: -110px;\r\n right: -180px;\r\n z-index: 1;\r\n }\r\n\r\n max-width: 470px;\r\n margin: 0 auto;\r\n position: relative;\r\n\r\n .input {\r\n position: relative;\r\n z-index: 2;\r\n padding-right: 28px;\r\n padding-top: 2px;\r\n\r\n .icon {\r\n z-index: 2;\r\n\r\n &--link {\r\n position: absolute;\r\n top: 50%;\r\n left: 1rem;\r\n margin-top: -6px;\r\n }\r\n }\r\n\r\n input {\r\n background-color: #F4F4F5;\r\n padding: 16px 0 16px 44px;\r\n border: 0;\r\n border-radius: 8px;\r\n width: 100%;\r\n box-sizing: border-box;\r\n position: relative;\r\n line-height: 1.3em;\r\n }\r\n }\r\n\r\n button {\r\n position: relative;\r\n background-color: var(--marreta);\r\n border-radius: 50%;\r\n height: 56px;\r\n width: 56px;\r\n border: 0;\r\n z-index: 3;\r\n position: absolute;\r\n top: 0;\r\n right: 0;\r\n cursor: pointer;\r\n\r\n &:hover {\r\n background-color: var(--marreta-darken);\r\n }\r\n\r\n .icon {\r\n width: 23px;\r\n height: 23px;\r\n\r\n &--refresh,\r\n &--marreta {\r\n filter: invert(100%) sepia(32%) saturate(8%) hue-rotate(23deg) brightness(102%) contrast(100%);\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n .adblock {\r\n color: var(--textmuted);\r\n font-size: 13px;\r\n line-height: 1.2em;\r\n text-align: center;\r\n max-width: 470px;\r\n position: relative;\r\n z-index: 3;\r\n margin: 22px auto 0 auto;\r\n }\r\n\r\n .plus {\r\n z-index: 3;\r\n position: relative;\r\n display: grid;\r\n grid-auto-columns: 1fr;\r\n grid-template-columns: 1fr 1fr;\r\n gap: 0px 28px;\r\n align-items: start;\r\n max-width: 960px;\r\n margin: 62px auto 24px auto;\r\n\r\n h2 {\r\n font-size: 16px;\r\n padding-bottom: 8px;\r\n margin: 0;\r\n\r\n .icon {\r\n margin-right: 10px;\r\n }\r\n }\r\n\r\n .text {\r\n font-size: 14px;\r\n color: var(--textmuted);\r\n padding-left: 26px;\r\n\r\n ol {\r\n padding-left: 16px;\r\n margin: 0;\r\n }\r\n\r\n p {\r\n margin: 0;\r\n }\r\n\r\n strong {\r\n font-weight: 600;\r\n color: var(--text);\r\n }\r\n }\r\n\r\n .bookmarklet {\r\n a {\r\n border: 2px solid var(--marreta);\r\n color: var(--marreta);\r\n border-radius: 40px;\r\n padding: 8px 16px;\r\n margin-top: 16px;\r\n display: inline-block;\r\n font-weight: 600;\r\n\r\n &:hover {\r\n border-color: var(--marreta-darken);\r\n color: var(--marreta-darken);\r\n }\r\n }\r\n }\r\n }\r\n}\r\n\r\nfooter {}","/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */\n\n/* Document\n ========================================================================== */\n\n/**\n * 1. Correct the line height in all browsers.\n * 2. Prevent adjustments of font size after orientation changes in iOS.\n */\n\nhtml {\n line-height: 1.15; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n}\n\n/* Sections\n ========================================================================== */\n\n/**\n * Remove the margin in all browsers.\n */\n\nbody {\n margin: 0;\n}\n\n/**\n * Render the `main` element consistently in IE.\n */\n\nmain {\n display: block;\n}\n\n/**\n * Correct the font size and margin on `h1` elements within `section` and\n * `article` contexts in Chrome, Firefox, and Safari.\n */\n\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\n\n/* Grouping content\n ========================================================================== */\n\n/**\n * 1. Add the correct box sizing in Firefox.\n * 2. Show the overflow in Edge and IE.\n */\n\nhr {\n box-sizing: content-box; /* 1 */\n height: 0; /* 1 */\n overflow: visible; /* 2 */\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\npre {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/* Text-level semantics\n ========================================================================== */\n\n/**\n * Remove the gray background on active links in IE 10.\n */\n\na {\n background-color: transparent;\n}\n\n/**\n * 1. Remove the bottom border in Chrome 57-\n * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n */\n\nabbr[title] {\n border-bottom: none; /* 1 */\n text-decoration: underline; /* 2 */\n text-decoration: underline dotted; /* 2 */\n}\n\n/**\n * Add the correct font weight in Chrome, Edge, and Safari.\n */\n\nb,\nstrong {\n font-weight: bolder;\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\ncode,\nkbd,\nsamp {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/**\n * Add the correct font size in all browsers.\n */\n\nsmall {\n font-size: 80%;\n}\n\n/**\n * Prevent `sub` and `sup` elements from affecting the line height in\n * all browsers.\n */\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/* Embedded content\n ========================================================================== */\n\n/**\n * Remove the border on images inside links in IE 10.\n */\n\nimg {\n border-style: none;\n}\n\n/* Forms\n ========================================================================== */\n\n/**\n * 1. Change the font styles in all browsers.\n * 2. Remove the margin in Firefox and Safari.\n */\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit; /* 1 */\n font-size: 100%; /* 1 */\n line-height: 1.15; /* 1 */\n margin: 0; /* 2 */\n}\n\n/**\n * Show the overflow in IE.\n * 1. Show the overflow in Edge.\n */\n\nbutton,\ninput { /* 1 */\n overflow: visible;\n}\n\n/**\n * Remove the inheritance of text transform in Edge, Firefox, and IE.\n * 1. Remove the inheritance of text transform in Firefox.\n */\n\nbutton,\nselect { /* 1 */\n text-transform: none;\n}\n\n/**\n * Correct the inability to style clickable types in iOS and Safari.\n */\n\nbutton,\n[type=\"button\"],\n[type=\"reset\"],\n[type=\"submit\"] {\n -webkit-appearance: button;\n}\n\n/**\n * Remove the inner border and padding in Firefox.\n */\n\nbutton::-moz-focus-inner,\n[type=\"button\"]::-moz-focus-inner,\n[type=\"reset\"]::-moz-focus-inner,\n[type=\"submit\"]::-moz-focus-inner {\n border-style: none;\n padding: 0;\n}\n\n/**\n * Restore the focus styles unset by the previous rule.\n */\n\nbutton:-moz-focusring,\n[type=\"button\"]:-moz-focusring,\n[type=\"reset\"]:-moz-focusring,\n[type=\"submit\"]:-moz-focusring {\n outline: 1px dotted ButtonText;\n}\n\n/**\n * Correct the padding in Firefox.\n */\n\nfieldset {\n padding: 0.35em 0.75em 0.625em;\n}\n\n/**\n * 1. Correct the text wrapping in Edge and IE.\n * 2. Correct the color inheritance from `fieldset` elements in IE.\n * 3. Remove the padding so developers are not caught out when they zero out\n * `fieldset` elements in all browsers.\n */\n\nlegend {\n box-sizing: border-box; /* 1 */\n color: inherit; /* 2 */\n display: table; /* 1 */\n max-width: 100%; /* 1 */\n padding: 0; /* 3 */\n white-space: normal; /* 1 */\n}\n\n/**\n * Add the correct vertical alignment in Chrome, Firefox, and Opera.\n */\n\nprogress {\n vertical-align: baseline;\n}\n\n/**\n * Remove the default vertical scrollbar in IE 10+.\n */\n\ntextarea {\n overflow: auto;\n}\n\n/**\n * 1. Add the correct box sizing in IE 10.\n * 2. Remove the padding in IE 10.\n */\n\n[type=\"checkbox\"],\n[type=\"radio\"] {\n box-sizing: border-box; /* 1 */\n padding: 0; /* 2 */\n}\n\n/**\n * Correct the cursor style of increment and decrement buttons in Chrome.\n */\n\n[type=\"number\"]::-webkit-inner-spin-button,\n[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n/**\n * 1. Correct the odd appearance in Chrome and Safari.\n * 2. Correct the outline style in Safari.\n */\n\n[type=\"search\"] {\n -webkit-appearance: textfield; /* 1 */\n outline-offset: -2px; /* 2 */\n}\n\n/**\n * Remove the inner padding in Chrome and Safari on macOS.\n */\n\n[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/**\n * 1. Correct the inability to style clickable types in iOS and Safari.\n * 2. Change font properties to `inherit` in Safari.\n */\n\n::-webkit-file-upload-button {\n -webkit-appearance: button; /* 1 */\n font: inherit; /* 2 */\n}\n\n/* Interactive\n ========================================================================== */\n\n/*\n * Add the correct display in Edge, IE 10+, and Firefox.\n */\n\ndetails {\n display: block;\n}\n\n/*\n * Add the correct display in all browsers.\n */\n\nsummary {\n display: list-item;\n}\n\n/* Misc\n ========================================================================== */\n\n/**\n * Add the correct display in IE 10+.\n */\n\ntemplate {\n display: none;\n}\n\n/**\n * Add the correct display in IE 10.\n */\n\n[hidden] {\n display: none;\n}\n","@font-face {\r\n font-family: 'inter';\r\n src: url('../dist/fonts/inter-500.eot');\r\n src: local('Inter Medium'), local('Inter-Medium'),\r\n url('../dist/fonts/inter-500.woff2') format('woff2'),\r\n url('../dist/fonts/inter-500.woff') format('woff'),\r\n url('../dist/fonts/inter-500.ttf') format('truetype');\r\n font-weight: 500;\r\n font-style: normal;\r\n font-display: swap;\r\n}\r\n\r\n@font-face {\r\n font-family: 'inter';\r\n src: url('../dist/fonts/inter-600.eot');\r\n src: local('Inter SemiBold'), local('Inter-SemiBold'),\r\n url('../dist/fonts/inter-600.woff2') format('woff2'),\r\n url('../dist/fonts/inter-600.woff') format('woff'),\r\n url('../dist/fonts/inter-600.ttf') format('truetype');\r\n font-weight: 600;\r\n font-style: normal;\r\n font-display: swap;\r\n}\r\n\r\n@font-face {\r\n font-family: 'unna';\r\n src: url('../dist/fonts/unna-400.eot');\r\n src: local('Unna Regular'), local('Unna-Regular'),\r\n url('../dist/fonts/unna-400.woff2') format('woff2'),\r\n url('../dist/fonts/unna-400.woff') format('woff'),\r\n url('../dist/fonts/unna-400.ttf') format('truetype');\r\n font-weight: 400;\r\n font-style: normal;\r\n font-display: swap;\r\n}","@use \"mixin\";\r\n\r\n:root {\r\n\t// Fonts\r\n\t--font-family-sans-serif: -apple-system,\r\n\t\tBlinkMacSystemFont,\r\n\t\t\"Segoe UI\",\r\n\t\tRoboto,\r\n\t\t\"Helvetica Neue\",\r\n\t\tArial,\r\n\t\t\"Noto Sans\",\r\n\t\t\"Liberation Sans\",\r\n\t\tsans-serif,\r\n\t\t\"Apple Color Emoji\",\r\n\t\t\"Segoe UI Emoji\",\r\n\t\t\"Segoe UI Symbol\",\r\n\t\t\"Noto Color Emoji\";\r\n\t--font-family-monospace: SFMono-Regular,\r\n\t\tMenlo, Monaco,\r\n\t\tConsolas,\r\n\t\t\"Liberation Mono\",\r\n\t\t\"Courier New\",\r\n\t\tmonospace;\r\n\t--font-family-inter: \"inter\";\r\n --font-family-unna: \"unna\";\r\n\r\n\t//-- Styles\r\n\t--font-size: 16px;\r\n\t--font-weight: 500;\r\n\t--line-height: 160%;\r\n\r\n\t// Colors\r\n\t@include mixin.create-color('marreta', #3B82F6);\r\n @include mixin.create-color('text', #484848);\r\n @include mixin.create-color('textmuted', #818181);\r\n @include mixin.create-color('link', #3B82F6);\r\n\r\n\t// Spacing\r\n\t--container_spacing: 24px;\r\n\t@include mixin.devices(desktop) {\r\n --container_spacing: 64px;\r\n }\r\n}\r\n\r\nhtml {\r\n\tscroll-behavior: smooth;\r\n}\r\n@media screen and (prefers-reduced-motion: reduce) {\r\n\thtml {\r\n\t\tscroll-behavior: auto;\r\n\t}\r\n}","@use \"sass:math\";\r\n@use \"sass:color\";\r\n\r\n@mixin create-color($name, $hex) {\r\n --#{$name}: #{$hex};\r\n --#{$name}-lighten: #{color.adjust($hex, $lightness: 5%)};\r\n --#{$name}-darken: #{color.adjust($hex, $lightness: -10%)};\r\n} \r\n\r\n@mixin devices($breakpoint) {\r\n\t@if $breakpoint == desktop {\r\n\t\t@media only screen and (min-width: 1200px) {\r\n\t\t\t@content;\r\n\t\t}\r\n\t}\r\n}\r\n\r\n@mixin icon($name, $filter) {\r\n\t.icon--#{$name} {\r\n\t\tbackground-image: url(\"../dist/icons/#{$name}.svg\");\r\n filter: #{$filter};\r\n\t}\r\n}","@use \"mixin\";\r\n\r\n// Default\r\nbody {\r\n\tfont-family: var(--font-family-inter);\r\n\tfont-size: var(--font-size);\r\n\tfont-weight: var(--font-weight);\r\n\tline-height: var(--line-height);\r\n\tcolor: var(--text);\r\n\ttext-align: left;\r\n\tbackground-color: var(--background);\r\n\tmin-width: 320px;\r\n}\r\n\r\na {\r\n\ttext-decoration: none;\r\n\tcolor: var(--link);\r\n\r\n\t&:hover {\r\n\t\ttext-decoration: none;\r\n\t\tcolor: var(--link-lighten);\r\n\t}\r\n}\r\n\r\n.container {\r\n\tpadding-right: var(--container_spacing);\r\n\tpadding-left: var(--container_spacing);\r\n\tmargin-right: auto;\r\n\tmargin-left: auto;\r\n\r\n\t@include mixin.devices(desktop) {\r\n max-width: 1248px;\r\n }\r\n\r\n}","@use \"mixin\";\r\n\r\n// https://icons.getbootstrap.com/\r\n// https://icofont.com/icons\r\n\r\n// https://jakearchibald.github.io/svgomg/\r\n// https://yoksel.github.io/url-encoder/\r\n// https://codepen.io/sosuke/pen/Pjoqqp\r\n\r\n.icon {\r\n display: inline-block;\r\n vertical-align: -0.125em;\r\n fill: currentcolor;\r\n width: 16px;\r\n height: 16px;\r\n background-repeat: no-repeat;\r\n background-position: center center;\r\n background-size: 100% auto;\r\n &--bookmark {\r\n background-size: auto 100% !important;\r\n }\r\n}\r\n\r\n@include mixin.icon('marreta', 'invert(43%) sepia(74%) saturate(2288%) hue-rotate(201deg) brightness(98%) contrast(97%)');\r\n@include mixin.icon('bookmark', 'invert(80%) sepia(46%) saturate(1512%) hue-rotate(340deg) brightness(106%) contrast(97%)');\r\n\r\n@include mixin.icon('android', 'invert(72%) sepia(34%) saturate(778%) hue-rotate(32deg) brightness(97%) contrast(88%)');\r\n@include mixin.icon('apple', 'invert(0%) sepia(21%) saturate(7425%) hue-rotate(12deg) brightness(96%) contrast(96%)');\r\n@include mixin.icon('bsky', 'invert(47%) sepia(66%) saturate(4445%) hue-rotate(195deg) brightness(98%) contrast(104%)');\r\n@include mixin.icon('telegram', 'invert(61%) sepia(86%) saturate(1341%) hue-rotate(166deg) brightness(96%) contrast(85%)');\r\n@include mixin.icon('chrome', 'invert(40%) sepia(90%) saturate(1163%) hue-rotate(203deg) brightness(104%) contrast(92%)');\r\n@include mixin.icon('firefox', 'invert(57%) sepia(43%) saturate(1854%) hue-rotate(360deg) brightness(102%) contrast(106%)');\r\n\r\n@include mixin.icon('link', 'invert(53%) sepia(12%) saturate(17%) hue-rotate(39deg) brightness(94%) contrast(91%)');\r\n@include mixin.icon('refresh', 'invert(100%) sepia(32%) saturate(8%) hue-rotate(23deg) brightness(102%) contrast(100%)');\r\n\r\n@include mixin.icon('error', 'invert(30%) sepia(58%) saturate(3703%) hue-rotate(336deg) brightness(90%) contrast(91%)');\r\n@include mixin.icon('warning', 'invert(89%) sepia(25%) saturate(5861%) hue-rotate(353deg) brightness(101%) contrast(101%)');"]} \ No newline at end of file diff --git a/app/dist/fonts/inter-500.css b/app/dist/fonts/inter-500.css deleted file mode 100644 index 359844b..0000000 --- a/app/dist/fonts/inter-500.css +++ /dev/null @@ -1,13 +0,0 @@ -@font-face { - font-family: "Inter 18pt Medium"; - src: url("inter-500.eot"); /* IE9 */ - src: url("inter-500.eot?#iefix") format("embedded-opentype"), /* IE6-IE8 */ - url("inter-500.woff2") format("woff2"), /* chrome 36+, firefox 39+,iOS 10+, Android 67+ */ - url("inter-500.woff") format("woff"), /* chrome, firefox */ - url("inter-500.ttf") format("truetype"), /* chrome, firefox, opera, Safari, Android, iOS 4.2+ */ - url("inter-500.svg#Inter 18pt Medium") format("svg"); /* iOS 4.1- */ - font-style: normal; - font-weight: normal; -} - - diff --git a/app/dist/fonts/inter-500.eot b/app/dist/fonts/inter-500.eot index a5e3abf..de713eb 100644 Binary files a/app/dist/fonts/inter-500.eot and b/app/dist/fonts/inter-500.eot differ diff --git a/app/dist/fonts/inter-500.svg b/app/dist/fonts/inter-500.svg deleted file mode 100644 index 284339f..0000000 --- a/app/dist/fonts/inter-500.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/app/dist/fonts/inter-500.ttf b/app/dist/fonts/inter-500.ttf index 13ba2e9..71d9017 100644 Binary files a/app/dist/fonts/inter-500.ttf and b/app/dist/fonts/inter-500.ttf differ diff --git a/app/dist/fonts/inter-500.woff b/app/dist/fonts/inter-500.woff index 8c5aa70..7e54d2a 100644 Binary files a/app/dist/fonts/inter-500.woff and b/app/dist/fonts/inter-500.woff differ diff --git a/app/dist/fonts/inter-500.woff2 b/app/dist/fonts/inter-500.woff2 new file mode 100644 index 0000000..fa2adb3 Binary files /dev/null and b/app/dist/fonts/inter-500.woff2 differ diff --git a/app/dist/fonts/inter-600.css b/app/dist/fonts/inter-600.css deleted file mode 100644 index 7304c10..0000000 --- a/app/dist/fonts/inter-600.css +++ /dev/null @@ -1,13 +0,0 @@ -@font-face { - font-family: "Inter 18pt SemiBold"; - src: url("inter-600.eot"); /* IE9 */ - src: url("inter-600.eot?#iefix") format("embedded-opentype"), /* IE6-IE8 */ - url("inter-600.woff2") format("woff2"), /* chrome 36+, firefox 39+,iOS 10+, Android 67+ */ - url("inter-600.woff") format("woff"), /* chrome, firefox */ - url("inter-600.ttf") format("truetype"), /* chrome, firefox, opera, Safari, Android, iOS 4.2+ */ - url("inter-600.svg#Inter 18pt SemiBold") format("svg"); /* iOS 4.1- */ - font-style: normal; - font-weight: normal; -} - - diff --git a/app/dist/fonts/inter-600.eot b/app/dist/fonts/inter-600.eot index 297b8fb..a2ae712 100644 Binary files a/app/dist/fonts/inter-600.eot and b/app/dist/fonts/inter-600.eot differ diff --git a/app/dist/fonts/inter-600.svg b/app/dist/fonts/inter-600.svg deleted file mode 100644 index f0c76d2..0000000 --- a/app/dist/fonts/inter-600.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/app/dist/fonts/inter-600.ttf b/app/dist/fonts/inter-600.ttf index 1adb71a..053185e 100644 Binary files a/app/dist/fonts/inter-600.ttf and b/app/dist/fonts/inter-600.ttf differ diff --git a/app/dist/fonts/inter-600.woff b/app/dist/fonts/inter-600.woff index 6e72267..f83d730 100644 Binary files a/app/dist/fonts/inter-600.woff and b/app/dist/fonts/inter-600.woff differ diff --git a/app/dist/fonts/inter-600.woff2 b/app/dist/fonts/inter-600.woff2 new file mode 100644 index 0000000..54416e1 Binary files /dev/null and b/app/dist/fonts/inter-600.woff2 differ diff --git a/app/dist/fonts/unna-400.css b/app/dist/fonts/unna-400.css deleted file mode 100644 index 90dc738..0000000 --- a/app/dist/fonts/unna-400.css +++ /dev/null @@ -1,13 +0,0 @@ -@font-face { - font-family: "Unna"; - src: url("unna-400.eot"); /* IE9 */ - src: url("unna-400.eot?#iefix") format("embedded-opentype"), /* IE6-IE8 */ - url("unna-400.woff2") format("woff2"), /* chrome 36+, firefox 39+,iOS 10+, Android 67+ */ - url("unna-400.woff") format("woff"), /* chrome, firefox */ - url("unna-400.ttf") format("truetype"), /* chrome, firefox, opera, Safari, Android, iOS 4.2+ */ - url("unna-400.svg#Unna") format("svg"); /* iOS 4.1- */ - font-style: normal; - font-weight: normal; -} - - diff --git a/app/dist/fonts/unna-400.eot b/app/dist/fonts/unna-400.eot index de8a745..56e8034 100644 Binary files a/app/dist/fonts/unna-400.eot and b/app/dist/fonts/unna-400.eot differ diff --git a/app/dist/fonts/unna-400.svg b/app/dist/fonts/unna-400.svg deleted file mode 100644 index 90404e5..0000000 --- a/app/dist/fonts/unna-400.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/app/dist/fonts/unna-400.ttf b/app/dist/fonts/unna-400.ttf index 28dc444..b0c8227 100644 Binary files a/app/dist/fonts/unna-400.ttf and b/app/dist/fonts/unna-400.ttf differ diff --git a/app/dist/fonts/unna-400.woff b/app/dist/fonts/unna-400.woff index 70715c6..6d6933f 100644 Binary files a/app/dist/fonts/unna-400.woff and b/app/dist/fonts/unna-400.woff differ diff --git a/app/dist/fonts/unna-400.woff2 b/app/dist/fonts/unna-400.woff2 new file mode 100644 index 0000000..df682cc Binary files /dev/null and b/app/dist/fonts/unna-400.woff2 differ diff --git a/app/dist/icons/archive.svg b/app/dist/icons/archive.svg deleted file mode 100644 index 1b457d9..0000000 --- a/app/dist/icons/archive.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/app/dist/icons/bypass.svg b/app/dist/icons/bypass.svg deleted file mode 100644 index 2d4d4ff..0000000 --- a/app/dist/icons/bypass.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/app/dist/icons/code.svg b/app/dist/icons/code.svg deleted file mode 100644 index 3b12b6b..0000000 --- a/app/dist/icons/code.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/app/dist/icons/search.svg b/app/dist/icons/search.svg deleted file mode 100644 index 6b6bbb3..0000000 --- a/app/dist/icons/search.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/app/dist/images/wall.png b/app/dist/images/wall.png index 311be1a..ccb342a 100644 Binary files a/app/dist/images/wall.png and b/app/dist/images/wall.png differ diff --git a/app/dist/images/wall.webp b/app/dist/images/wall.webp index ee7aff0..fa04b19 100644 Binary files a/app/dist/images/wall.webp and b/app/dist/images/wall.webp differ diff --git a/app/dist/js/script.js b/app/dist/js/script.js deleted file mode 100644 index 64c5ff2..0000000 --- a/app/dist/js/script.js +++ /dev/null @@ -1,7 +0,0 @@ -function validateForm(){var r=document.getElementById("url"),e=document.querySelector('button[type="submit"]'),t=r.value.trim();if(!t)return showError("Por favor, insira uma URL"),!1;if(!/^https?:\/\//i.test(t))return showError("A URL deve começar com http:// ou https://"),!1;try{new URL(t)}catch(r){return showError("Formato de URL inválido"),!1}return r.readonly=!0,e.disabled=!0,e.classList.add("cursor-wait","disabled:bg-blue-400"),e.classList.remove("hover:bg-blue-700"),r.classList.add("cursor-wait","disabled:bg-gray-50","focus:outline-none"),e.innerHTML=` - Search - Analisando... - `,!0}function showError(r){var e=document.getElementById("urlForm"),t=e.querySelector(".error-message"),t=(t&&t.remove(),document.createElement("div"));t.className="error-message mt-4 text-base text-red-600",t.innerHTML=` - Error icon - `+r,e.appendChild(t)}"serviceWorker"in navigator&&window.addEventListener("load",()=>{navigator.serviceWorker.register("/service-worker.js").then(()=>{}).catch(()=>{})}); -//# sourceMappingURL=script.js.map diff --git a/app/dist/js/script.js.map b/app/dist/js/script.js.map deleted file mode 100644 index 54ebc3a..0000000 --- a/app/dist/js/script.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["scripts.js"],"names":["validateForm","urlInput","document","getElementById","submitButton","querySelector","url","value","trim","showError","test","URL","e","readonly","disabled","classList","add","remove","innerHTML","message","form","existingError","errorDiv","createElement","className","appendChild","navigator","window","addEventListener","serviceWorker","register","then","catch"],"mappings":"AAwBA,SAAAA,eACA,IAAAC,EAAAC,SAAAC,eAAA,KAAA,EACAC,EAAAF,SAAAG,cAAA,uBAAA,EACAC,EAAAL,EAAAM,MAAAC,KAAA,EAIA,GAAA,CAAAF,EAEA,OADAG,UAAA,2BAAA,EACA,CAAA,EAKA,GAAA,CAAA,gBAAAC,KAAAJ,CAAA,EAEA,OADAG,UAAA,4CAAA,EACA,CAAA,EAKA,IACA,IAAAE,IAAAL,CAAA,CAIA,CAHA,MAAAM,GAEA,OADAH,UAAA,yBAAA,EACA,CAAA,CACA,CAqBA,OAjBAR,EAAAY,SAAA,CAAA,EACAT,EAAAU,SAAA,CAAA,EAIAV,EAAAW,UAAAC,IAAA,cAAA,sBAAA,EACAZ,EAAAW,UAAAE,OAAA,mBAAA,EAEAhB,EAAAc,UAAAC,IAAA,cAAA,sBAAA,oBAAA,EAIAZ,EAAAc;;;MAKA,CAAA,CACA,CAiBA,SAAAT,UAAAU,GACA,IAAAC,EAAAlB,SAAAC,eAAA,SAAA,EACAkB,EAAAD,EAAAf,cAAA,gBAAA,EAUAiB,GANAD,GACAA,EAAAJ,OAAA,EAKAf,SAAAqB,cAAA,KAAA,GACAD,EAAAE,UAAA,4CACAF,EAAAJ;;UAEAC,EAEAC,EAAAK,YAAAH,CAAA,CACA,CASA,kBAAAI,WACAC,OAAAC,iBAAA,OAAA,KACAF,UAAAG,cAAAC,SAAA,oBAAA,EACAC,KAAA,MAGA,EACAC,MAAA,MAGA,CACA,CAAA","file":"script.js","sourcesContent":["/**\r\n * JavaScript functions for form validation and error handling\r\n * Funções JavaScript para validação de formulário e manipulação de erros\r\n */\r\n\r\n/**\r\n * Validates the form before submission\r\n * \r\n * Checks:\r\n * - If URL is not empty\r\n * - If URL starts with http:// or https://\r\n * - If URL has a valid format\r\n * \r\n * @returns {boolean} True if URL is valid, False otherwise\r\n * \r\n * Valida o formulário antes do envio\r\n * \r\n * Verifica:\r\n * - Se a URL não está vazia\r\n * - Se a URL começa com http:// ou https://\r\n * - Se a URL tem um formato válido\r\n * \r\n * @returns {boolean} True se a URL for válida, False caso contrário\r\n */\r\nfunction validateForm() {\r\n const urlInput = document.getElementById('url');\r\n const submitButton = document.querySelector('button[type=\"submit\"]');\r\n const url = urlInput.value.trim();\r\n \r\n // Check if URL is not empty\r\n // Verifica se a URL não está vazia\r\n if (!url) {\r\n showError('Por favor, insira uma URL');\r\n return false;\r\n }\r\n\r\n // Check if URL starts with http:// or https://\r\n // Verifica se a URL começa com http:// ou https://\r\n if (!/^https?:\\/\\//i.test(url)) {\r\n showError('A URL deve começar com http:// ou https://');\r\n return false;\r\n }\r\n\r\n // Try to create a URL object to validate format\r\n // Tenta criar um objeto URL para validar o formato\r\n try {\r\n new URL(url);\r\n } catch (e) {\r\n showError('Formato de URL inválido');\r\n return false;\r\n }\r\n\r\n // Disable input and button\r\n // Desabilita o input e o botão\r\n urlInput.readonly = true;\r\n submitButton.disabled = true;\r\n \r\n // Add Tailwind disabled classes\r\n // Adiciona classes de disabled do Tailwind\r\n submitButton.classList.add('cursor-wait', 'disabled:bg-blue-400');\r\n submitButton.classList.remove('hover:bg-blue-700');\r\n\r\n urlInput.classList.add('cursor-wait', 'disabled:bg-gray-50', 'focus:outline-none');\r\n\r\n // Add loading state to button\r\n // Adiciona estado de loading ao botão\r\n submitButton.innerHTML = `\r\n \"Search\"\r\n Analisando...\r\n `;\r\n\r\n return true;\r\n}\r\n\r\n/**\r\n * Displays an error message below the form\r\n * \r\n * Removes any existing error message before displaying the new one.\r\n * The message is displayed with an error icon and red formatting.\r\n * \r\n * @param {string} message Error message to be displayed\r\n * \r\n * Exibe uma mensagem de erro abaixo do formulário\r\n * \r\n * Remove qualquer mensagem de erro existente antes de exibir a nova.\r\n * A mensagem é exibida com um ícone de erro e formatação em vermelho.\r\n * \r\n * @param {string} message Mensagem de erro a ser exibida\r\n */\r\nfunction showError(message) {\r\n const form = document.getElementById('urlForm');\r\n const existingError = form.querySelector('.error-message');\r\n \r\n // Remove previous error message if it exists\r\n // Remove mensagem de erro anterior se existir\r\n if (existingError) {\r\n existingError.remove();\r\n }\r\n\r\n // Create and add new error message\r\n // Cria e adiciona nova mensagem de erro\r\n const errorDiv = document.createElement('div');\r\n errorDiv.className = 'error-message mt-4 text-base text-red-600';\r\n errorDiv.innerHTML = `\r\n \"Error\r\n ${message}`;\r\n \r\n form.appendChild(errorDiv);\r\n}\r\n\r\n/**\r\n * Service Worker registration for PWA functionality\r\n * Registers a service worker to enable offline capabilities and PWA features\r\n * \r\n * Registro do Service Worker para funcionalidade PWA\r\n * Registra um service worker para habilitar recursos offline e funcionalidades PWA\r\n */\r\nif ('serviceWorker' in navigator) {\r\n window.addEventListener('load', () => {\r\n navigator.serviceWorker.register('/service-worker.js')\r\n .then(() => {\r\n // Service Worker registered successfully\r\n // Service Worker registrado com sucesso\r\n })\r\n .catch(() => {\r\n // Service Worker registration failed\r\n // Falha no registro do Service Worker\r\n });\r\n });\r\n}\r\n"]} \ No newline at end of file diff --git a/app/dist/js/scripts.js b/app/dist/js/scripts.js new file mode 100644 index 0000000..c6a2345 --- /dev/null +++ b/app/dist/js/scripts.js @@ -0,0 +1,2 @@ +"serviceWorker"in navigator&&window.addEventListener("load",()=>{navigator.serviceWorker.register("/service-worker.js").then(()=>{}).catch(()=>{})}),document.addEventListener("DOMContentLoaded",function(){let t=document.querySelector(".integration");var e=document.querySelector(".integration__toggle");let o=document.querySelector(".extension");var n=document.querySelector(".extension__toggle");let r=e=>{e!==t&&t.classList.remove("open"),e!==o&&o.classList.remove("open")};e.addEventListener("click",e=>{e.stopPropagation(),r(t),t.classList.toggle("open")}),n.addEventListener("click",e=>{e.stopPropagation(),r(o),o.classList.toggle("open")}),t.addEventListener("click",e=>{e.stopPropagation()}),o.addEventListener("click",e=>{e.stopPropagation()}),document.addEventListener("click",()=>{t.classList.remove("open"),o.classList.remove("open")})}); +//# sourceMappingURL=scripts.js.map diff --git a/app/dist/js/scripts.js.map b/app/dist/js/scripts.js.map new file mode 100644 index 0000000..5e61e22 --- /dev/null +++ b/app/dist/js/scripts.js.map @@ -0,0 +1 @@ +{"version":3,"sources":["scripts.js"],"names":["navigator","window","addEventListener","serviceWorker","register","then","catch","document","integration","querySelector","integrationToggle","extension","extensionToggle","closeOtherMenus","exceptMenu","classList","remove","e","stopPropagation","toggle"],"mappings":"AAIA,kBAAAA,WACAC,OAAAC,iBAAA,OAAA,KACAF,UAAAG,cAAAC,SAAA,oBAAA,EACAC,KAAA,MAEA,EACAC,MAAA,MAEA,CACA,CAAA,EAMAC,SAAAL,iBAAA,mBAAA,WACA,IAAAM,EAAAD,SAAAE,cAAA,cAAA,EACA,IAAAC,EAAAH,SAAAE,cAAA,sBAAA,EACA,IAAAE,EAAAJ,SAAAE,cAAA,YAAA,EACA,IAAAG,EAAAL,SAAAE,cAAA,oBAAA,EAGA,IAMAI,EAAA,IACAC,IAAAN,GACAA,EAAAO,UAAAC,OAAA,MAAA,EAEAF,IAAAH,GACAA,EAAAI,UAAAC,OAAA,MAAA,CAEA,EAEAN,EAAAR,iBAAA,QAAA,IACAe,EAAAC,gBAAA,EACAL,EAAAL,CAAA,EACAA,EAAAO,UAAAI,OAAA,MAAA,CACA,CAAA,EAEAP,EAAAV,iBAAA,QAAA,IACAe,EAAAC,gBAAA,EACAL,EAAAF,CAAA,EACAA,EAAAI,UAAAI,OAAA,MAAA,CACA,CAAA,EAGAX,EAAAN,iBAAA,QAAA,IACAe,EAAAC,gBAAA,CACA,CAAA,EAEAP,EAAAT,iBAAA,QAAA,IACAe,EAAAC,gBAAA,CACA,CAAA,EAGAX,SAAAL,iBAAA,QAAA,KApCAM,EAAAO,UAAAC,OAAA,MAAA,EACAL,EAAAI,UAAAC,OAAA,MAAA,CAqCA,CAAA,CACA,CAAA","file":"scripts.js","sourcesContent":["/**\r\n * Service Worker registration for PWA functionality\r\n * Registers a service worker to enable offline capabilities and PWA features\r\n */\r\nif ('serviceWorker' in navigator) {\r\n window.addEventListener('load', () => {\r\n navigator.serviceWorker.register('/service-worker.js')\r\n .then(() => {\r\n // Service Worker registered successfully\r\n })\r\n .catch(() => {\r\n // Service Worker registration failed\r\n });\r\n });\r\n}\r\n\r\n/**\r\n * Header toggle menus\r\n */\r\ndocument.addEventListener('DOMContentLoaded', function () {\r\n const integration = document.querySelector('.integration');\r\n const integrationToggle = document.querySelector('.integration__toggle');\r\n const extension = document.querySelector('.extension');\r\n const extensionToggle = document.querySelector('.extension__toggle');\r\n\r\n // Function to close all menus\r\n const closeAllMenus = () => {\r\n integration.classList.remove('open');\r\n extension.classList.remove('open');\r\n };\r\n\r\n // Function to close other menus except the one passed\r\n const closeOtherMenus = (exceptMenu) => {\r\n if (exceptMenu !== integration) {\r\n integration.classList.remove('open');\r\n }\r\n if (exceptMenu !== extension) {\r\n extension.classList.remove('open');\r\n }\r\n };\r\n\r\n integrationToggle.addEventListener('click', (e) => {\r\n e.stopPropagation(); // Prevent click from bubbling to document\r\n closeOtherMenus(integration);\r\n integration.classList.toggle('open');\r\n });\r\n\r\n extensionToggle.addEventListener('click', (e) => {\r\n e.stopPropagation(); // Prevent click from bubbling to document\r\n closeOtherMenus(extension);\r\n extension.classList.toggle('open');\r\n });\r\n\r\n // Prevent clicks inside menus from closing them\r\n integration.addEventListener('click', (e) => {\r\n e.stopPropagation();\r\n });\r\n\r\n extension.addEventListener('click', (e) => {\r\n e.stopPropagation();\r\n });\r\n\r\n // Close menus when clicking outside\r\n document.addEventListener('click', () => {\r\n closeAllMenus();\r\n });\r\n});"]} \ No newline at end of file diff --git a/app/languages/de-de.php b/app/languages/de-de.php index 34170ff..d245957 100644 --- a/app/languages/de-de.php +++ b/app/languages/de-de.php @@ -4,13 +4,13 @@ return [ 'walls_destroyed' => 'Paywall überwunden', 'url_placeholder' => 'Adresse eingegeben (z.B., https://example.com)', 'analyze_button' => 'Analysiere', + 'nav_integration' => 'Integrations', + 'nav_extension' => 'Install the extension', 'bookmarklet_title' => 'Zu Lesezeichen hinzufügen', 'bookmarklet_description' => 'Ziehe Sie die Schaltfläche unten in Ihre Lesezeichenleiste, um schnell auf {site_name} zuzugreifen:', 'open_in' => 'Öffne {site_name}', - 'open_source_description' => 'Das ist ein Open Source Projekt das mit ❤️ erstellt wurde!', 'adblocker_warning' => 'Bei Konflikten zwischen {site_name} und Werbeblockern kann ein weißer Bildschirm angezeigt werden. Verwenden Sie den Inkognito-Modus oder deaktivieren Sie die Erweiterung.', 'add_as_app' => 'Als app hinzufügen', - 'add_as_app_description' => 'Installieren Sie {site_name} als App auf Android mit Chrome, um schnell Links zu teilen:', 'add_as_app_step1' => 'Klicken Sie in Ihrem Browser auf das Menüsymbol (drei Punkte)', 'add_as_app_step2' => 'Wählen Sie "App installieren" oder "Zum Startbildschirm hinzufügen"', 'add_as_app_step3' => 'Klicken Sie für den Schnellzugriff auf „Installieren"', diff --git a/app/languages/en.php b/app/languages/en.php index 9f04bf0..bd60da1 100644 --- a/app/languages/en.php +++ b/app/languages/en.php @@ -4,13 +4,13 @@ return [ 'walls_destroyed' => 'walls destroyed!', 'url_placeholder' => 'Enter URL (e.g., https://example.com)', 'analyze_button' => 'Analyze', + 'nav_integration' => 'Integrations', + 'nav_extension' => 'Install the extension', 'bookmarklet_title' => 'Add to Bookmarks', 'bookmarklet_description' => 'Drag the button below to your bookmarks bar to quickly access {site_name} on any page:', 'open_in' => 'Open in {site_name}', - 'open_source_description' => 'This is an open source project made with ❤️!', 'adblocker_warning' => 'Conflicts between {site_name} and ad blockers may cause a white screen. Use incognito mode or disable the extension.', 'add_as_app' => 'Add as app', - 'add_as_app_description' => 'Install {site_name} as an app on Android with Chrome to quickly share links:', 'add_as_app_step1' => 'In your browser, click the menu icon (three dots)', 'add_as_app_step2' => 'Select "Install app" or "Add to home screen"', 'add_as_app_step3' => 'Click "Install" for quick access', diff --git a/app/languages/es.php b/app/languages/es.php index 5907e74..f4cd6b5 100644 --- a/app/languages/es.php +++ b/app/languages/es.php @@ -4,13 +4,13 @@ return [ 'walls_destroyed' => '¡paredes destruidas!', 'url_placeholder' => 'Ingrese URL (ej: https://ejemplo.com)', 'analyze_button' => 'Analizar', + 'nav_integration' => 'Integraciones', + 'nav_extension' => 'Instalar la extensión', 'bookmarklet_title' => 'Agregar a Favoritos', 'bookmarklet_description' => 'Arrastra el botón a tu barra de favoritos para acceder rápidamente a {site_name} en cualquier página:', 'open_in' => 'Abrir en {site_name}', - 'open_source_description' => '¡Este es un proyecto de código abierto hecho con ❤️!', 'adblocker_warning' => 'Los conflictos entre {site_name} y los bloqueadores de anuncios pueden causar una pantalla en blanco. Use el modo incógnito o desactive la extensión.', 'add_as_app' => 'Agregar como aplicación', - 'add_as_app_description' => 'Instala {site_name} como una aplicación en Android con Chrome para compartir enlaces rápidamente:', 'add_as_app_step1' => 'En su navegador, haga clic en el icono de menú (tres puntos)', 'add_as_app_step2' => 'Seleccione "Instalar aplicación" o "Agregar a la pantalla de inicio"', 'add_as_app_step3' => 'Haga clic en "Instalar" para tener acceso rápido', diff --git a/app/languages/pt-br.php b/app/languages/pt-br.php index 67adf60..4526615 100644 --- a/app/languages/pt-br.php +++ b/app/languages/pt-br.php @@ -4,13 +4,13 @@ return [ 'walls_destroyed' => 'paredes derrubadas!', 'url_placeholder' => 'Digite a URL (ex: https://exemplo.com)', 'analyze_button' => 'Analisar', + 'nav_integration' => 'Integrações', + 'nav_extension' => 'Instale a extensão', 'bookmarklet_title' => 'Adicione aos Favoritos', - 'bookmarklet_description' => 'Arraste o botão abaixo para sua barra de favoritos para acessar o {site_name} rapidamente em qualquer página:', - 'open_in' => 'Abrir no {site_name}', - 'open_source_description' => 'Este é um projeto de código aberto feito com ❤️!', + 'bookmarklet_description' => 'Adicione aos favoritos arrastando o botão abaixo para sua barra de favoritos para acessar o Marreta rapidamente em qualquer página!', + 'open_in' => 'Me arrasta', 'adblocker_warning' => 'Conflitos entre o {site_name} e bloqueadores de anúncios podem causar tela branca. Use o modo anônimo ou desative a extensão.', 'add_as_app' => 'Adicionar como aplicativo', - 'add_as_app_description' => 'Instale o {site_name} como um aplicativo no Android com Chrome para compartilhar links rapidamente:', 'add_as_app_step1' => 'No seu navegador, clique no ícone de menu (três pontos)', 'add_as_app_step2' => 'Selecione "Instalar aplicativo" ou "Adicionar à tela inicial"', 'add_as_app_step3' => 'Clique em "Instalar" para ter acesso rápido', diff --git a/app/languages/ru-ru.php b/app/languages/ru-ru.php index 44a9c07..ced2e37 100644 --- a/app/languages/ru-ru.php +++ b/app/languages/ru-ru.php @@ -4,13 +4,13 @@ return [ 'walls_destroyed' => 'стены разрушены!', 'url_placeholder' => 'Введите URL (например, https://example.com)', 'analyze_button' => 'Анализировать', + 'nav_integration' => 'Integrations', + 'nav_extension' => 'Install the extension', 'bookmarklet_title' => 'Добавить в закладки', 'bookmarklet_description' => 'Перетащите кнопку ниже на панель закладок, чтобы быстро получить доступ к {site_name} на любой странице:', 'open_in' => 'Открыть в {site_name}', - 'open_source_description' => 'Это проект с открытым исходным кодом, созданный с ❤️!', 'adblocker_warning' => 'Конфликты между {site_name} и блокировщиками рекламы могут вызывать белый экран. Используйте режим инкогнито или отключите расширение.', 'add_as_app' => 'Добавить как приложение', - 'add_as_app_description' => 'Установите {site_name} как приложение на Android с Chrome, чтобы быстро делиться ссылками:', 'add_as_app_step1' => 'В браузере нажмите на значок меню (три точки)', 'add_as_app_step2' => 'Выберите "Установить приложение" или "Добавить на главный экран".', 'add_as_app_step3' => 'Нажмите "Установить" для быстрого доступа.', diff --git a/app/package-lock.json b/app/package-lock.json index a443e1f..b39f157 100644 --- a/app/package-lock.json +++ b/app/package-lock.json @@ -12,46 +12,22 @@ "gulp-clean-css": "^4.3.0", "gulp-concat": "^2.6.1", "gulp-dart-sass": "^1.1.0", - "gulp-fontmin": "^0.7.4", "gulp-imagemin": "^7.1.0", "gulp-newer": "^1.4.0", "gulp-rename": "^2.0.0", "gulp-sass": "^5.1.0", "gulp-sourcemaps": "^3.0.0", "gulp-svgmin": "^4.1.0", + "gulp-ttf2eot": "^1.1.2", + "gulp-ttf2woff": "^1.1.1", + "gulp-ttf2woff2": "^4.0.1", "gulp-uglify": "^3.0.2", "gulp-watch": "^5.0.1", "gulp-webp": "^4.0.1", "normalize.css": "^8.0.1", "sass": "^1.64.2", "sass-colors": "^1.0.14", - "sass-math": "^1.0.0", - "ttf2eot": "^3.1.0" - } - }, - "node_modules/@babel/code-frame": { - "version": "7.26.2", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.26.2.tgz", - "integrity": "sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/helper-validator-identifier": "^7.25.9", - "js-tokens": "^4.0.0", - "picocolors": "^1.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-validator-identifier": { - "version": "7.25.9", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz", - "integrity": "sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6.9.0" + "sass-math": "^1.0.0" } }, "node_modules/@gar/promisify": { @@ -639,13 +615,6 @@ "dev": true, "license": "MIT" }, - "node_modules/@types/minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag==", - "dev": true, - "license": "MIT" - }, "node_modules/@types/node": { "version": "22.10.10", "resolved": "https://registry.npmjs.org/@types/node/-/node-22.10.10.tgz", @@ -656,13 +625,6 @@ "undici-types": "~6.20.0" } }, - "node_modules/@types/normalize-package-data": { - "version": "2.4.4", - "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.4.tgz", - "integrity": "sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==", - "dev": true, - "license": "MIT" - }, "node_modules/@types/q": { "version": "1.5.8", "resolved": "https://registry.npmjs.org/@types/q/-/q-1.5.8.tgz", @@ -671,16 +633,6 @@ "license": "MIT", "optional": true }, - "node_modules/@xmldom/xmldom": { - "version": "0.8.10", - "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.8.10.tgz", - "integrity": "sha512-2WALfTl4xo2SkGCYRt6rDTFfk9R1czmBvUQy12gK2KuRKIpWEhcbbzy8EZXtz/jkRqHX8bFEc6FC1HjX4TUWYw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10.0.0" - } - }, "node_modules/abbrev": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", @@ -980,11 +932,14 @@ } }, "node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", "dev": true, - "license": "Python-2.0" + "license": "MIT", + "dependencies": { + "sprintf-js": "~1.0.2" + } }, "node_modules/arr-diff": { "version": "4.0.0", @@ -1238,16 +1193,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/arrify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/assign-symbols": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", @@ -1341,13 +1286,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/b3b": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/b3b/-/b3b-0.0.1.tgz", - "integrity": "sha512-wWUK79hNEsHN1PTHwHsGYpTNupgaovM39g6374uoIL1gfVSwK2q9flM1DFyvSEYkELRWf5aMGSf7bkGGNSl0Jw==", - "dev": true, - "license": "ISC" - }, "node_modules/bach": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/bach/-/bach-1.2.0.tgz", @@ -1961,79 +1899,17 @@ "dev": true, "license": "MIT" }, - "node_modules/buffer-to-vinyl": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/buffer-to-vinyl/-/buffer-to-vinyl-1.1.0.tgz", - "integrity": "sha512-t6B4HXJ3YdJ/lXKhK3nlGW1aAvpQH2FMyHh25SmfdYkQAU3/R2MYo4VrY1DlQuZd8zLNOqWPxZFJILRuTkqaEQ==", + "node_modules/bufferstreams": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/bufferstreams/-/bufferstreams-1.1.3.tgz", + "integrity": "sha512-HaJnVuslRF4g2kSDeyl++AaVizoitCpL9PglzCYwy0uHHyvWerfvEb8jWmYbF1z4kiVFolGomnxSGl+GUQp2jg==", "dev": true, "license": "MIT", "dependencies": { - "file-type": "^3.1.0", - "readable-stream": "^2.0.2", - "uuid": "^2.0.1", - "vinyl": "^1.0.0" + "readable-stream": "^2.0.2" }, "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/buffer-to-vinyl/node_modules/clone": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", - "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.8" - } - }, - "node_modules/buffer-to-vinyl/node_modules/clone-stats": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/clone-stats/-/clone-stats-0.0.1.tgz", - "integrity": "sha512-dhUqc57gSMCo6TX85FLfe51eC/s+Im2MLkAgJwfaRRexR2tA4dd3eLEW4L6efzHc2iNorrRRXITifnDLlRrhaA==", - "dev": true, - "license": "MIT" - }, - "node_modules/buffer-to-vinyl/node_modules/file-type": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-3.9.0.tgz", - "integrity": "sha512-RLoqTXE8/vPmMuTI88DAzhMYC99I8BWv7zYP4A1puo5HIjEJ5EX48ighy4ZyKMG9EDXxBgW6e++cn7d1xuFghA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/buffer-to-vinyl/node_modules/replace-ext": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-0.0.1.tgz", - "integrity": "sha512-AFBWBy9EVRTa/LhEcG8QDP3FvpwZqmvN2QFDuJswFeaVhWnZMp8q3E6Zd90SR04PlIwfGdyVjNyLPyen/ek5CQ==", - "dev": true, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/buffer-to-vinyl/node_modules/uuid": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-2.0.3.tgz", - "integrity": "sha512-FULf7fayPdpASncVy4DLh3xydlXEJJpvIELjYjNeQWYUZ9pclcpvCZSr2gkmN2FrrGcI7G/cJsIEwk5/8vfXpg==", - "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", - "dev": true, - "license": "MIT" - }, - "node_modules/buffer-to-vinyl/node_modules/vinyl": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-1.2.0.tgz", - "integrity": "sha512-Ci3wnR2uuSAWFMSglZuB8Z2apBdtOyz8CV7dC6/U1XbltXBC+IuutUkXQISz01P+US2ouBuesSbV6zILZ6BuzQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "clone": "^1.0.0", - "clone-stats": "^0.0.1", - "replace-ext": "0.0.1" - }, - "engines": { - "node": ">= 0.9" + "node": ">= 0.10.0" } }, "node_modules/cacache": { @@ -2541,6 +2417,18 @@ "dev": true, "license": "MIT" }, + "node_modules/cloneable-readable": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/cloneable-readable/-/cloneable-readable-1.1.3.tgz", + "integrity": "sha512-2EF8zTQOxYq70Y4XKtorQupqF0m49MBz2/yf5Bj+MHjvpG3Hy7sImifnqD6UA+TKYxeSV+u6qqQPawN5UvnpKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "inherits": "^2.0.1", + "process-nextick-args": "^2.0.0", + "readable-stream": "^2.3.5" + } + }, "node_modules/coa": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/coa/-/coa-2.0.2.tgz", @@ -2557,13 +2445,6 @@ "node": ">= 4.0" } }, - "node_modules/code-point": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/code-point/-/code-point-1.1.0.tgz", - "integrity": "sha512-L9JOfOolA/Y/YKVO+WUscMXuYUcHmkleTJkvl1G0XaGFj5JDXl02BobH8avoI/pjWvgOLivs2bizA0N6g8gM9Q==", - "dev": true, - "license": "MIT" - }, "node_modules/code-point-at": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", @@ -2574,16 +2455,6 @@ "node": ">=0.10.0" } }, - "node_modules/code-points": { - "version": "2.0.0-1", - "resolved": "https://registry.npmjs.org/code-points/-/code-points-2.0.0-1.tgz", - "integrity": "sha512-PuPoUdSqHY96e+CvEGe0+J9XkEqnQ4o79X+k+PJlZ84sZDoSJ2Q8/1OJT4dqYn8yL5EUxGCq/x2EcLEfvcGqaw==", - "dev": true, - "license": "MIT", - "dependencies": { - "code-point": "^1.0.1" - } - }, "node_modules/collection-map": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/collection-map/-/collection-map-1.0.0.tgz", @@ -3001,23 +2872,6 @@ "node": ">=0.10.0" } }, - "node_modules/decamelize-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.1.tgz", - "integrity": "sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg==", - "dev": true, - "license": "MIT", - "dependencies": { - "decamelize": "^1.1.0", - "map-obj": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/decode-uri-component": { "version": "0.2.2", "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.2.tgz", @@ -3488,13 +3342,6 @@ "node": ">= 0.4" } }, - "node_modules/duplexer": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", - "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==", - "dev": true, - "license": "MIT" - }, "node_modules/duplexer2": { "version": "0.0.2", "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.0.2.tgz", @@ -4395,6 +4242,7 @@ } ], "license": "MIT", + "optional": true, "dependencies": { "strnum": "^1.0.5" }, @@ -4611,410 +4459,6 @@ "readable-stream": "^2.3.6" } }, - "node_modules/fonteditor-core": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/fonteditor-core/-/fonteditor-core-2.4.1.tgz", - "integrity": "sha512-nKDDt6kBQGq665tQO5tCRQUClJG/2MAF9YT1eKHl+I4NasdSb6DgXrv/gMjNxjo9NyaVEv9KU9VZxLHMstN1wg==", - "dev": true, - "dependencies": { - "@xmldom/xmldom": "^0.8.3" - } - }, - "node_modules/fontmin": { - "version": "0.9.9", - "resolved": "https://registry.npmjs.org/fontmin/-/fontmin-0.9.9.tgz", - "integrity": "sha512-OHMq6/C6FQpedEo+2aXNTrZBAtCJJSy6slYip1gaBtUpwkILkPjDzBKdLu5OgQWIe75lHZHL491/dGJnUi1R2g==", - "dev": true, - "license": "MIT", - "dependencies": { - "b3b": "^0.0.1", - "buffer-to-vinyl": "^1.0.0", - "code-points": "^2.0.0-1", - "concat-stream": "^2.0.0", - "fonteditor-core": "^2.1.5", - "get-stdin": "^9.0.0", - "is-otf": "^0.1.2", - "is-svg": "^4.2.1", - "is-ttf": "^0.2.2", - "lodash": "^4.17.10", - "meow": "^10.1.1", - "pako": "^2.0.3", - "replace-ext": "^2.0.0", - "stream-combiner": "^0.2.1", - "through2": "^4.0.2", - "ttf2woff2": "^4.0.1", - "vinyl-fs": "^3.0.3" - }, - "bin": { - "fontmin": "cli.js" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/fontmin/node_modules/camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/fontmin/node_modules/camelcase-keys": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-7.0.2.tgz", - "integrity": "sha512-Rjs1H+A9R+Ig+4E/9oyB66UC5Mj9Xq3N//vcLf2WzgdTi/3gUu3Z9KoqmlrEG4VuuLK8wJHofxzdQXz/knhiYg==", - "dev": true, - "license": "MIT", - "dependencies": { - "camelcase": "^6.3.0", - "map-obj": "^4.1.0", - "quick-lru": "^5.1.1", - "type-fest": "^1.2.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/fontmin/node_modules/concat-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz", - "integrity": "sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==", - "dev": true, - "engines": [ - "node >= 6.0" - ], - "license": "MIT", - "dependencies": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.0.2", - "typedarray": "^0.0.6" - } - }, - "node_modules/fontmin/node_modules/decamelize": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-5.0.1.tgz", - "integrity": "sha512-VfxadyCECXgQlkoEAjeghAr5gY3Hf+IKjKb+X8tGVDtveCjN+USwprd2q3QXBR9T1+x2DG0XZF5/w+7HAtSaXA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/fontmin/node_modules/find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "dev": true, - "license": "MIT", - "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/fontmin/node_modules/get-stdin": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-9.0.0.tgz", - "integrity": "sha512-dVKBjfWisLAicarI2Sf+JuBE/DghV4UzNAVe9yhEJuzeREd3JhOTE9cUaJTeSa77fsbQUK3pcOpJfM59+VKZaA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/fontmin/node_modules/hosted-git-info": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", - "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", - "dev": true, - "license": "ISC", - "dependencies": { - "lru-cache": "^6.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/fontmin/node_modules/indent-string": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-5.0.0.tgz", - "integrity": "sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/fontmin/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "license": "ISC", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/fontmin/node_modules/map-obj": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.3.0.tgz", - "integrity": "sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/fontmin/node_modules/meow": { - "version": "10.1.5", - "resolved": "https://registry.npmjs.org/meow/-/meow-10.1.5.tgz", - "integrity": "sha512-/d+PQ4GKmGvM9Bee/DPa8z3mXs/pkvJE2KEThngVNOqtmljC6K7NMPxtc2JeZYTmpWb9k/TmxjeL18ez3h7vCw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/minimist": "^1.2.2", - "camelcase-keys": "^7.0.0", - "decamelize": "^5.0.0", - "decamelize-keys": "^1.1.0", - "hard-rejection": "^2.1.0", - "minimist-options": "4.1.0", - "normalize-package-data": "^3.0.2", - "read-pkg-up": "^8.0.0", - "redent": "^4.0.0", - "trim-newlines": "^4.0.2", - "type-fest": "^1.2.2", - "yargs-parser": "^20.2.9" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/fontmin/node_modules/normalize-package-data": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", - "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "hosted-git-info": "^4.0.1", - "is-core-module": "^2.5.0", - "semver": "^7.3.4", - "validate-npm-package-license": "^3.0.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/fontmin/node_modules/pako": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/pako/-/pako-2.1.0.tgz", - "integrity": "sha512-w+eufiZ1WuJYgPXbV/PO3NCMEc3xqylkKHzp8bxp1uW4qaSNQUkwmLLEc3kKsfz8lpV1F8Ht3U1Cm+9Srog2ug==", - "dev": true, - "license": "(MIT AND Zlib)" - }, - "node_modules/fontmin/node_modules/parse-json": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", - "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/fontmin/node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/fontmin/node_modules/read-pkg": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-6.0.0.tgz", - "integrity": "sha512-X1Fu3dPuk/8ZLsMhEj5f4wFAF0DWoK7qhGJvgaijocXxBmSToKfbFtqbxMO7bVjNA1dmE5huAzjXj/ey86iw9Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/normalize-package-data": "^2.4.0", - "normalize-package-data": "^3.0.2", - "parse-json": "^5.2.0", - "type-fest": "^1.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/fontmin/node_modules/read-pkg-up": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-8.0.0.tgz", - "integrity": "sha512-snVCqPczksT0HS2EC+SxUndvSzn6LRCwpfSvLrIfR5BKDQQZMaI6jPRC9dYvYFDRAuFEAnkwww8kBBNE/3VvzQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "find-up": "^5.0.0", - "read-pkg": "^6.0.0", - "type-fest": "^1.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/fontmin/node_modules/readable-stream": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", - "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", - "dev": true, - "license": "MIT", - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/fontmin/node_modules/redent": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/redent/-/redent-4.0.0.tgz", - "integrity": "sha512-tYkDkVVtYkSVhuQ4zBgfvciymHaeuel+zFKXShfDnFP5SyVEP7qo70Rf1jTOTCx3vGNAbnEi/xFkcfQVMIBWag==", - "dev": true, - "license": "MIT", - "dependencies": { - "indent-string": "^5.0.0", - "strip-indent": "^4.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/fontmin/node_modules/replace-ext": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-2.0.0.tgz", - "integrity": "sha512-UszKE5KVK6JvyD92nzMn9cDapSk6w/CaFZ96CnmDMUqH9oowfxF/ZjRITD25H4DnOQClLA4/j7jLGXXLVKxAug==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 10" - } - }, - "node_modules/fontmin/node_modules/semver": { - "version": "7.6.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", - "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", - "dev": true, - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/fontmin/node_modules/strip-indent": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-4.0.0.tgz", - "integrity": "sha512-mnVSV2l+Zv6BLpSD/8V87CW/y9EmmbYzGCIavsnsI6/nwn26DwffM/yztm30Z/I2DY9wdS3vXVCMnHDgZaVNoA==", - "dev": true, - "license": "MIT", - "dependencies": { - "min-indent": "^1.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/fontmin/node_modules/through2": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/through2/-/through2-4.0.2.tgz", - "integrity": "sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw==", - "dev": true, - "license": "MIT", - "dependencies": { - "readable-stream": "3" - } - }, - "node_modules/fontmin/node_modules/trim-newlines": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-4.1.1.tgz", - "integrity": "sha512-jRKj0n0jXWo6kh62nA5TEh3+4igKDXLvzBJcPpiizP7oOolUrYIxmVBG9TOtHYFHoddUk6YvAkGeGoSVTXfQXQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/fontmin/node_modules/yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", - "dev": true, - "license": "ISC", - "engines": { - "node": ">=10" - } - }, "node_modules/for-each": { "version": "0.3.4", "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.4.tgz", @@ -5913,118 +5357,6 @@ "xtend": "~4.0.1" } }, - "node_modules/gulp-fontmin": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/gulp-fontmin/-/gulp-fontmin-0.7.4.tgz", - "integrity": "sha512-COfLJ1Gj86FSTecaCUk+52Th9r8n+BEUJ2/3gXZbiuI9VpxA2RuedX4mgZVTdR7fp7X2TCS9p/YofG9AndbtJw==", - "dev": true, - "license": "MIT", - "dependencies": { - "chalk": "^1.0.0", - "fontmin": "^0.9.3", - "gulp-util": "^3.0.0", - "object-assign": "^4.0.1", - "pretty-bytes": "^3.0.1", - "through2-concurrent": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/gulp-fontmin/node_modules/ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/gulp-fontmin/node_modules/ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/gulp-fontmin/node_modules/chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/gulp-fontmin/node_modules/pretty-bytes": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-3.0.1.tgz", - "integrity": "sha512-eb7ZAeUTgfh294cElcu51w+OTRp/6ItW758LjwJSK72LDevcuJn0P4eD71PLMDGPwwatXmAmYHTkzvpKlJE3ow==", - "dev": true, - "license": "MIT", - "dependencies": { - "number-is-nan": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/gulp-fontmin/node_modules/strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-regex": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/gulp-fontmin/node_modules/supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/gulp-fontmin/node_modules/through2": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", - "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "readable-stream": "~2.3.6", - "xtend": "~4.0.1" - } - }, - "node_modules/gulp-fontmin/node_modules/through2-concurrent": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/through2-concurrent/-/through2-concurrent-1.1.1.tgz", - "integrity": "sha512-lh37myB/TFr0c90XImVaGiCVr95c8vAGc/zRVXdqU6VVfL3KpLBL2zHBVCzfaVbM8Pe8BJjZoTEzOpW5oOFR/Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "through2": "^2.0.0" - } - }, "node_modules/gulp-imagemin": { "version": "7.1.0", "resolved": "https://registry.npmjs.org/gulp-imagemin/-/gulp-imagemin-7.1.0.tgz", @@ -6327,6 +5659,93 @@ "svgo": "^2.7.0" } }, + "node_modules/gulp-ttf2eot": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/gulp-ttf2eot/-/gulp-ttf2eot-1.1.2.tgz", + "integrity": "sha512-B2NwwG+QVMF6ETzeXwZHx6MeYEx0oHguIj0ZjPhqtKM3iXuDOrYbT2054q73cTI6hn2GMNAQWy11GjZM+LUxRg==", + "dev": true, + "license": "MIT", + "dependencies": { + "bufferstreams": "^1.1.0", + "gulp-util": "^3.0.7", + "readable-stream": "^2.0.4", + "ttf2eot": "^2.0.0" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/gulp-ttf2woff": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/gulp-ttf2woff/-/gulp-ttf2woff-1.1.1.tgz", + "integrity": "sha512-l230Pv3CzE9OND8GlXyrdLvBjrfS2VCVs8g0+L6DaglqnW7aZFvZdeDH5VFe0zfp16n/zNPf4HBNfNStn9iXDA==", + "dev": true, + "dependencies": { + "bufferstreams": "^1.0.2", + "gulp-util": "^3.0.6", + "readable-stream": "^2.0.1", + "ttf2woff": "^2.0.1" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/gulp-ttf2woff2": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/gulp-ttf2woff2/-/gulp-ttf2woff2-4.0.1.tgz", + "integrity": "sha512-VkeQaXqTud/e4mDLIuWzRbR7+1QGkmmpRYek/cFZTe7pwsQJshisqSwPwxM7CBrypD7zK8WEH3ktNzFSsyanVg==", + "dev": true, + "license": "MIT", + "dependencies": { + "bufferstreams": "^3.0.0", + "plugin-error": "^1.0.1", + "readable-stream": "^3.6.0", + "replace-ext": "^2.0.0", + "ttf2woff2": "^4.0.1", + "vinyl": "^2.2.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/gulp-ttf2woff2/node_modules/bufferstreams": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bufferstreams/-/bufferstreams-3.0.0.tgz", + "integrity": "sha512-Qg0ggJUWJq90vtg4lDsGN9CDWvzBMQxhiEkSOD/sJfYt6BLect3eV1/S6K7SCSKJ34n60rf6U5eUPmQENVE4UA==", + "dev": true, + "license": "MIT", + "dependencies": { + "readable-stream": "^3.4.0" + }, + "engines": { + "node": ">=8.12.0" + } + }, + "node_modules/gulp-ttf2woff2/node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dev": true, + "license": "MIT", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/gulp-ttf2woff2/node_modules/replace-ext": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-2.0.0.tgz", + "integrity": "sha512-UszKE5KVK6JvyD92nzMn9cDapSk6w/CaFZ96CnmDMUqH9oowfxF/ZjRITD25H4DnOQClLA4/j7jLGXXLVKxAug==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10" + } + }, "node_modules/gulp-uglify": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/gulp-uglify/-/gulp-uglify-3.0.2.tgz", @@ -6766,16 +6185,6 @@ "node": ">= 0.10" } }, - "node_modules/hard-rejection": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz", - "integrity": "sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, "node_modules/has-ansi": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", @@ -7517,6 +6926,13 @@ "node": ">= 12" } }, + "node_modules/ip-address/node_modules/sprintf-js": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz", + "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==", + "dev": true, + "license": "BSD-3-Clause" + }, "node_modules/irregular-plurals": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/irregular-plurals/-/irregular-plurals-2.0.0.tgz", @@ -8014,19 +7430,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-otf": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/is-otf/-/is-otf-0.1.2.tgz", - "integrity": "sha512-0usgFT/986IQ0zFN4iQUKebPpHNAwA34f8qQC+Y8L1R379odRzS4pc1GCqBRL6P6AlGUoK/0/GYY6AYgD0anRA==", - "dev": true, - "license": "MIT", - "dependencies": { - "b3b": "0.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/is-plain-obj": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", @@ -8193,6 +7596,7 @@ "integrity": "sha512-v+AgVwiK5DsGtT9ng+m4mClp6zDAmwrW8nZi6Gg15qzvBnRWWdfWA1TGaXyCDnWq5g5asofIgMVl3PjKxvk1ug==", "dev": true, "license": "MIT", + "optional": true, "dependencies": { "fast-xml-parser": "^4.1.3" }, @@ -8222,19 +7626,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-ttf": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/is-ttf/-/is-ttf-0.2.2.tgz", - "integrity": "sha512-0NWCiYnyH8gvyBkLcnG8nBBgz6ZqFqgSS37jTTQKGF/y7Wrf6KKr9EmW7ExcxFoE0WU1mKcnMElRf9QOUNxAmQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "b3b": "0.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/is-typed-array": { "version": "1.1.15", "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.15.tgz", @@ -8379,13 +7770,6 @@ "node": ">= 4" } }, - "node_modules/js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true, - "license": "MIT" - }, "node_modules/js-yaml": { "version": "3.14.1", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", @@ -8401,25 +7785,6 @@ "js-yaml": "bin/js-yaml.js" } }, - "node_modules/js-yaml/node_modules/argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "license": "MIT", - "optional": true, - "dependencies": { - "sprintf-js": "~1.0.2" - } - }, - "node_modules/js-yaml/node_modules/sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", - "dev": true, - "license": "BSD-3-Clause", - "optional": true - }, "node_modules/jsbn": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-1.1.0.tgz", @@ -8434,13 +7799,6 @@ "dev": true, "license": "MIT" }, - "node_modules/json-parse-even-better-errors": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", - "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", - "dev": true, - "license": "MIT" - }, "node_modules/json-stable-stringify-without-jsonify": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", @@ -8578,13 +7936,6 @@ "node": ">=0.10.0" } }, - "node_modules/lines-and-columns": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", - "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", - "dev": true, - "license": "MIT" - }, "node_modules/load-json-file": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", @@ -8612,29 +7963,6 @@ "node": ">=0.10.0" } }, - "node_modules/locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "dev": true, - "license": "MIT", - "dependencies": { - "p-locate": "^5.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "dev": true, - "license": "MIT" - }, "node_modules/lodash._basecopy": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/lodash._basecopy/-/lodash._basecopy-3.0.1.tgz", @@ -9121,6 +8449,13 @@ "node": ">= 8" } }, + "node_modules/microbuffer": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/microbuffer/-/microbuffer-1.0.0.tgz", + "integrity": "sha512-O/SUXauVN4x6RaEJFqSPcXNtLFL+QzJHKZlyDVYFwcDDRVca3Fa/37QXXC+4zAGGa4YhHrHxKXuuHvLDIQECtA==", + "dev": true, + "license": "MIT" + }, "node_modules/micromatch": { "version": "3.1.10", "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", @@ -9227,16 +8562,6 @@ "node": ">=4" } }, - "node_modules/min-indent": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", - "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, "node_modules/minimatch": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", @@ -9260,31 +8585,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/minimist-options": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-4.1.0.tgz", - "integrity": "sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==", - "dev": true, - "license": "MIT", - "dependencies": { - "arrify": "^1.0.1", - "is-plain-obj": "^1.1.0", - "kind-of": "^6.0.3" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/minimist-options/node_modules/kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/minipass": { "version": "3.3.6", "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", @@ -10235,38 +9535,6 @@ "node": ">=4" } }, - "node_modules/p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "yocto-queue": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "dev": true, - "license": "MIT", - "dependencies": { - "p-limit": "^3.0.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/p-map": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", @@ -10332,6 +9600,13 @@ "node": ">=4" } }, + "node_modules/pako": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", + "dev": true, + "license": "(MIT AND Zlib)" + }, "node_modules/parse-filepath": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/parse-filepath/-/parse-filepath-1.0.2.tgz", @@ -10852,19 +10127,6 @@ ], "license": "MIT" }, - "node_modules/quick-lru": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", - "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/randomatic": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/randomatic/-/randomatic-3.1.1.tgz", @@ -12209,9 +11471,9 @@ } }, "node_modules/sprintf-js": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz", - "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", "dev": true, "license": "BSD-3-Clause" }, @@ -12362,17 +11624,6 @@ "node": ">= 0.4" } }, - "node_modules/stream-combiner": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/stream-combiner/-/stream-combiner-0.2.2.tgz", - "integrity": "sha512-6yHMqgLYDzQDcAkL+tjJDC5nSNuNIx0vZtRZeiPh7Saef7VHX9H5Ijn9l2VIol2zaNYlYEX6KyuT/237A58qEQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "duplexer": "~0.1.1", - "through": "~2.3.4" - } - }, "node_modules/stream-exhaust": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/stream-exhaust/-/stream-exhaust-1.0.2.tgz", @@ -12629,7 +11880,8 @@ "resolved": "https://registry.npmjs.org/strnum/-/strnum-1.0.5.tgz", "integrity": "sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA==", "dev": true, - "license": "MIT" + "license": "MIT", + "optional": true }, "node_modules/supports-color": { "version": "5.5.0", @@ -13030,18 +12282,34 @@ } }, "node_modules/ttf2eot": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/ttf2eot/-/ttf2eot-3.1.0.tgz", - "integrity": "sha512-aHTbcYosNHVqb2Qtt9Xfta77ae/5y0VfdwNLUS6sGBeGr22cX2JDMo/i5h3uuOf+FAD3akYOr17+fYd5NK8aXw==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ttf2eot/-/ttf2eot-2.0.0.tgz", + "integrity": "sha512-U56aG2Ylw7psLOmakjemAzmpqVgeadwENg9oaDjaZG5NYX4WB6+7h74bNPcc+0BXsoU5A/XWiHabDXyzFOmsxQ==", "dev": true, "license": "MIT", "dependencies": { - "argparse": "^2.0.1" + "argparse": "^1.0.6", + "microbuffer": "^1.0.0" }, "bin": { "ttf2eot": "ttf2eot.js" } }, + "node_modules/ttf2woff": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/ttf2woff/-/ttf2woff-2.0.2.tgz", + "integrity": "sha512-X68badwBjAy/+itU49scLjXUL094up+rHuYk+YAOTTBYSUMOmLZ7VyhZJuqQESj1gnyLAC2/5V8Euv+mExmyPA==", + "dev": true, + "license": "MIT", + "dependencies": { + "argparse": "^1.0.6", + "microbuffer": "^1.0.0", + "pako": "^1.0.0" + }, + "bin": { + "ttf2woff": "ttf2woff.js" + } + }, "node_modules/ttf2woff2": { "version": "4.0.5", "resolved": "https://registry.npmjs.org/ttf2woff2/-/ttf2woff2-4.0.5.tgz", @@ -13110,19 +12378,6 @@ "dev": true, "license": "ISC" }, - "node_modules/type-fest": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", - "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==", - "dev": true, - "license": "(MIT OR CC0-1.0)", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/typed-array-buffer": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.3.tgz", @@ -13718,18 +12973,6 @@ "node": ">=0.10.0" } }, - "node_modules/vinyl/node_modules/cloneable-readable": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/cloneable-readable/-/cloneable-readable-1.1.3.tgz", - "integrity": "sha512-2EF8zTQOxYq70Y4XKtorQupqF0m49MBz2/yf5Bj+MHjvpG3Hy7sImifnqD6UA+TKYxeSV+u6qqQPawN5UvnpKQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "inherits": "^2.0.1", - "process-nextick-args": "^2.0.0", - "readable-stream": "^2.3.5" - } - }, "node_modules/which": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", @@ -14070,19 +13313,6 @@ "buffer-crc32": "~0.2.3", "fd-slicer": "~1.1.0" } - }, - "node_modules/yocto-queue": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", - "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } } } } diff --git a/app/package.json b/app/package.json index 0e5bc73..a733f57 100644 --- a/app/package.json +++ b/app/package.json @@ -10,14 +10,15 @@ "gulp-clean-css": "^4.3.0", "gulp-concat": "^2.6.1", "gulp-dart-sass": "^1.1.0", - "gulp-fontmin": "^0.7.4", "gulp-imagemin": "^7.1.0", "gulp-newer": "^1.4.0", "gulp-rename": "^2.0.0", "gulp-sass": "^5.1.0", "gulp-sourcemaps": "^3.0.0", "gulp-svgmin": "^4.1.0", - "ttf2eot": "^3.1.0", + "gulp-ttf2eot": "^1.1.2", + "gulp-ttf2woff": "^1.1.1", + "gulp-ttf2woff2": "^4.0.1", "gulp-uglify": "^3.0.2", "gulp-watch": "^5.0.1", "gulp-webp": "^4.0.1", diff --git a/app/src/views/home.php b/app/src/views/home.php index 9782840..45ad1f1 100644 --- a/app/src/views/home.php +++ b/app/src/views/home.php @@ -5,149 +5,138 @@ <?php echo SITE_NAME; ?> - + - - - - - - + + - -
- -
-

- Marreta - -

-

-

- - - - -

-
+ +
+
+
+ +

+
+ +
+ +
+ Firefox + Chrome +
+
+
- -
+
+

+

+ +

-
-
- - Link - + +
+
+
+ + + + + +
+
+

+ +

+
+
+
+ +
+
+
-
+

- -
-

-
- - - -
-
-
- - Error - - Warning - -
-
-

- -

+
+
+

+ +

+
+
+
    +
  1. +
  2. +
  3. +
  4. +
- -
- -
-

- App - -

-
-

- -

-
-
    -
  1. -
  2. -
  3. -
  4. -
+
+

+ +

+
+

+ +

+
+ + + +
+
-
- - - - -
-

- -

-

- API RestGithub -

-
+
-