From 19de0bb5d43aa0c60b50848b8800beb0c2e8838c Mon Sep 17 00:00:00 2001 From: Eduard Kuzmenko Date: Sat, 9 Apr 2022 20:24:12 +0300 Subject: [PATCH] Icon generator --- package.json | 1 + src/index.ts | 1 - src/scripts/icomoon/.gitignore | 3 + src/scripts/icomoon/icomoon.js | 292 +++ src/scripts/icomoon/icomoon_generate.js | 52 + src/scripts/icomoon/package-lock.json | 2162 +++++++++++++++++ src/scripts/icomoon/package.json | 17 + src/scss/partials/_ico.scss | 198 -- src/scss/style.scss | 2 +- src/scss/tgico.scss | 19 +- .../_fonts.scss => tgico/_style.scss} | 1871 +++++++------- src/scss/tgico/_variables.scss | 182 ++ 12 files changed, 3667 insertions(+), 1133 deletions(-) create mode 100644 src/scripts/icomoon/.gitignore create mode 100644 src/scripts/icomoon/icomoon.js create mode 100644 src/scripts/icomoon/icomoon_generate.js create mode 100644 src/scripts/icomoon/package-lock.json create mode 100644 src/scripts/icomoon/package.json delete mode 100644 src/scss/partials/_ico.scss rename src/scss/{partials/_fonts.scss => tgico/_style.scss} (89%) create mode 100644 src/scss/tgico/_variables.scss diff --git a/package.json b/package.json index 35cb5c5a..cd9fbe3e 100644 --- a/package.json +++ b/package.json @@ -15,6 +15,7 @@ "whybundled": "npm run profile && whybundled stats.json", "generate-mtproto-types": "node ./src/scripts/generate_mtproto_types.js src/", "generate-changelog": "node ./src/scripts/generate_changelog.js", + "generate-icons": "node ./src/scripts/icomoon/icomoon_generate.js", "change-version": "node ./src/scripts/change_version.js" }, "author": "", diff --git a/src/index.ts b/src/index.ts index 45730886..3f031a1d 100644 --- a/src/index.ts +++ b/src/index.ts @@ -13,7 +13,6 @@ import IS_EMOJI_SUPPORTED from './environment/emojiSupport'; import { IS_MOBILE_SAFARI } from './environment/userAgent'; import './materialize.scss'; import './scss/style.scss'; -import './scss/tgico.scss'; /* import { computeCheck } from './lib/crypto/srp'; import { salt1, salt2, g, p, srp_id, secure_random, srp_B, password } from './mock/srp'; */ diff --git a/src/scripts/icomoon/.gitignore b/src/scripts/icomoon/.gitignore new file mode 100644 index 00000000..4a5c9b3d --- /dev/null +++ b/src/scripts/icomoon/.gitignore @@ -0,0 +1,3 @@ +node_modules +out +selection.json \ No newline at end of file diff --git a/src/scripts/icomoon/icomoon.js b/src/scripts/icomoon/icomoon.js new file mode 100644 index 00000000..c86b8a08 --- /dev/null +++ b/src/scripts/icomoon/icomoon.js @@ -0,0 +1,292 @@ +// Thanks to https://github.com/Yuyz0112/icomoon-cli + +const fs = require('fs-extra'); +const path = require('path'); +const extract = require('extract-zip'); +const puppeteer = require('puppeteer'); + +const DEFAULT_TIMEOUT = 60000; + +const PAGE = { + IMPORT_CONFIG_BUTTON: '.file.unit', + IMPORT_SELECTION_INPUT: '.file.unit input[type="file"]', + OVERLAY_CONFIRM: '.overlay button.mrl', + NEW_SET_BUTTON: '.menuList1 button', + MAIN_MENU_BUTTON: '.bar-top button .icon-menu', + MENU_BUTTON: 'h1 button .icon-menu', + MENU: '.menuList2.menuList3', + ICON_INPUT: '.menuList2.menuList3 .file input[type="file"]', + FIRST_ICON_BOX: '#set0 .miBox:not(.mi-selected)', + REMOVE_SET_BUTTON: '.menuList2.menuList3 li:last-child button', + SELECT_ALL_BUTTON: 'button[ng-click="selectAllNone($index, true)"]', + GENERATE_LINK: 'a[href="#/select/font"]', + GLYPH_SET: '#glyphSet0', + GLYPH_NAME: '.glyphName', + DOWNLOAD_BUTTON: '.btn4', + PREFERENCES: '#pref', + SHOW_METRICS: '[ng-class*="showMetricsFocused"] label', + CLOSE_OVERLAY: 'button[ng-click*="visiblePanels.fontPref = false"]', + + IE8_SUPPORTED: '[ng-class*="noie8Focused"] .icon-checked', + IE8_DISABLE: 'label[ng-class*="noie8Focused"]', + + FONT_NAME_INPUT: '[ng-model="fontPref.metadata.fontFamily"]', + CLASS_PREFIX_INPUT: '[ng-model="fontPref.prefix"]', + CSS_VARS_LABEL: '[ng-class*="fontPref.cssVars"]', + EM_HEIGHT_INPUT: '[model="fontPref.metrics.emSize"] input', + BASELINE_HEIGHT_INPUT: '[model="fontPref.metrics.baseline"] input', + WHITESPACE_WIDTH_INPUT: '[model="fontPref.metrics.whitespace"] input', +}; +const DEFAULT_OPTIONS = { + outputDir: path.join(__dirname, 'output'), +}; + +const logger = (...args) => { + console.log('[icomoon-cli]', ...args); +}; + +const sleep = time => new Promise(resolve => setTimeout(resolve, time)); + +const getAbsolutePath = inputPath => { + let absoluteSelectionPath = inputPath; + if (!path.isAbsolute(inputPath)) { + if (!process.env.PWD) { + process.env.PWD = process.cwd(); + } + absoluteSelectionPath = path.resolve(process.env.PWD, inputPath); + } + return absoluteSelectionPath; +}; + +const checkDownload = dest => new Promise((resolve, reject) => { + const interval = 1000; + let downloadSize = 0; + let timeCount = 0; + const timer = setInterval(async () => { + timeCount += interval; + /* const exist = await fs.exists(dest); + if (!exist) { + return; + } */ + const stats = fs.statSync(dest); + if (stats.size > 0 && stats.size === downloadSize) { + clearInterval(timer); + resolve(); + } else { + downloadSize = stats.size; + } + if (timeCount > DEFAULT_TIMEOUT) { + reject('Timeout when download file, please check your network.'); + } + }, interval); +}); + +const checkDuplicateName = ({ selectionPath, icons, names }, forceOverride) => { + const iconNames = icons.map((icon, index) => { + if (names[index]) { + return names[index]; + } + return path.basename(icon).replace(path.extname(icon), ''); + }); + const duplicates = []; + const selection = fs.readJSONSync(selectionPath); + selection.icons.forEach((icon, index) => { + const name = icon.tags[0]; + if (iconNames.includes(name)) { + duplicates.push({ name, index }); + } + }); + if (!duplicates.length) { + return; + } + if (forceOverride) { + selection.icons = selection.icons.filter((icon, index) => !duplicates.some(d => d.index === index)); + fs.writeJSONSync(selectionPath, selection, { spaces: 2 }); + } else { + throw new Error(`Found duplicate icon names: ${duplicates.map(d => d.name).join(',')}`); + } +}; + +async function pipeline(options = {}) { + try { + const { + icons, + names = [], + selectionPath, + forceOverride = false, + whenFinished, + visible = false + } = options; + const outputDir = options.outputDir ? getAbsolutePath(options.outputDir) : DEFAULT_OPTIONS.outputDir; + // prepare stage + logger('Preparing...'); + if(!icons || !icons.length) { + if(whenFinished) { + whenFinished({ outputDir }); + } + return logger('No new icons found.'); + } + if(!selectionPath) { + throw new Error('Please config a valid selection file path.'); + } + let absoluteSelectionPath = getAbsolutePath(selectionPath); + // checkDuplicateName({ + // selectionPath: absoluteSelectionPath, + // icons, + // names, + // }, forceOverride); + await fs.remove(outputDir); + await fs.ensureDir(outputDir); + + const browser = await puppeteer.launch({headless: !visible}); + logger('Started a new chrome instance, going to load icomoon.io.'); + const page = await (await browser).newPage(); + await page._client.send('Page.setDownloadBehavior', { + behavior: 'allow', + downloadPath: outputDir + }); + await page.goto('https://icomoon.io/app/#/select'); + await page.waitForSelector(PAGE.IMPORT_CONFIG_BUTTON); + logger('Dashboard is visible, going to upload config file'); + // remove init set + await page.click(PAGE.MENU_BUTTON); + await page.click(PAGE.REMOVE_SET_BUTTON); + + const importInput = await page.waitForSelector(PAGE.IMPORT_SELECTION_INPUT); + await importInput.uploadFile(absoluteSelectionPath); + logger('Uploaded config, going to upload new icon files'); + try { + await Promise.race([ + sleep(1000).then(() => { + throw 0; + }), + page.waitForSelector(PAGE.OVERLAY_CONFIRM, { visible: true }) + ]); + await page.click(PAGE.OVERLAY_CONFIRM); + } catch(err) { + logger('Overlay is missed?'); + } + + const selection = fs.readJSONSync(selectionPath); + /* if (selection.icons.length === 0) { + logger('Selection icons is empty, going to create an empty set'); + await page.click(PAGE.MAIN_MENU_BUTTON); + await page.waitForSelector(PAGE.NEW_SET_BUTTON, { visible: true }); + await page.click(PAGE.NEW_SET_BUTTON); + } */ + + await page.click(PAGE.MENU_BUTTON); + const iconInput = await page.waitForSelector(PAGE.ICON_INPUT); + const iconPaths = icons.map(getAbsolutePath); + await iconInput.uploadFile(...iconPaths); + await page.waitForSelector(PAGE.FIRST_ICON_BOX); + await page.click(PAGE.SELECT_ALL_BUTTON); + logger('Uploaded and selected all new icons'); + await page.click(PAGE.GENERATE_LINK); + await page.waitForSelector(PAGE.GLYPH_SET); + + await page.click(PAGE.PREFERENCES); + + try { + await Promise.race([ + sleep(1000).then(() => { + throw 0; + }), + page.waitForSelector(PAGE.IE8_SUPPORTED) + ]); + await page.click(PAGE.IE8_DISABLE); + } catch(err) { + logger('IE8 is already disabled'); + } + + async function fillInput(selector, value) { + if(typeof(value) !== 'string') { + value = '' + value; + } + + await page.focus(selector); + for(let i = 0; i < 100; ++i) { + await page.keyboard.press('Backspace'); + } + await page.keyboard.type(value); + } + + await fillInput(PAGE.FONT_NAME_INPUT, selection.preferences.fontPref.metadata.fontFamily); + await fillInput(PAGE.CLASS_PREFIX_INPUT, selection.preferences.fontPref.prefix); + await page.click(PAGE.CSS_VARS_LABEL); + + await page.click(PAGE.SHOW_METRICS); + await fillInput(PAGE.EM_HEIGHT_INPUT, selection.preferences.fontPref.metrics.emSize); + await fillInput(PAGE.BASELINE_HEIGHT_INPUT, selection.preferences.fontPref.metrics.baseline); + await fillInput(PAGE.WHITESPACE_WIDTH_INPUT, selection.preferences.fontPref.metrics.whitespace); + + // await sleep(100000); + await page.click(PAGE.CLOSE_OVERLAY); + // (await page.waitForSelector(PAGE.FONT_NAME_INPUT)).; + + // if(names.length) { + // logger('Changed names of icons'); + // // sleep to ensure indexedDB is ready + // await sleep(1000); + // await page.evaluate(names => { + // const request = indexedDB.open('IDBWrapper-storage', 1); + // request.onsuccess = function() { + // const db = request.result; + // const tx = db.transaction('storage', 'readwrite'); + // const store = tx.objectStore('storage'); + // const keys = store.getAllKeys(); + // keys.onsuccess = function() { + // let timestamp; + // keys.result.forEach(function(key) { + // if (typeof key === 'number') { + // timestamp = key; + // } + // }); + // const main = store.get(timestamp); + // main.onsuccess = function() { + // const data = main.result; + // for (let i = 0; i < names.length; i++) { + // data.obj.iconSets[0].selection[i].name = names[i]; + // } + // store.put(data); + // }; + // }; + // }; + // }, names); + // } + + // // sleep to ensure the code was executed + // await sleep(1000); + // // reload the page let icomoon read latest indexedDB data + // await page.reload(); + await sleep(2000); + + await page.waitForSelector(PAGE.DOWNLOAD_BUTTON); + await page.click(PAGE.DOWNLOAD_BUTTON); + const meta = selection.preferences.fontPref.metadata; + const zipName = meta.majorVersion + ? `${meta.fontFamily}-v${meta.majorVersion}.${meta.minorVersion || 0}.zip` + : `${meta.fontFamily}.zip`; + logger(`Started to download ${zipName}`); + const zipPath = path.join(outputDir, zipName); + await checkDownload(zipPath); + logger('Successfully downloaded, going to unzip it.'); + await page.close(); + await browser.close(); + // unzip stage + extract(zipPath, {dir: outputDir}, async(err) => { + if(err) { + throw err; + } + await fs.remove(zipPath); + logger(`Finished. The output directory is ${outputDir}.`); + if(whenFinished) { + whenFinished({outputDir}); + } + }); + } catch(error) { + console.error(error); + } +} + +module.exports = pipeline; \ No newline at end of file diff --git a/src/scripts/icomoon/icomoon_generate.js b/src/scripts/icomoon/icomoon_generate.js new file mode 100644 index 00000000..a0e396a7 --- /dev/null +++ b/src/scripts/icomoon/icomoon_generate.js @@ -0,0 +1,52 @@ +// @ts-check + +const pipeline = require('./icomoon'); +const fs = require('fs'); +const path = require('path'); + +const iconsPath = path.join(__dirname, '../../../tweb-design/JS_3/Icons/'); +const files = fs.readdirSync(iconsPath); +const icons = files.filter(file => file.endsWith('.svg')).map(file => iconsPath + file); + +function moveFiles(outPath) { + // const path = './out/'; + + const stylesOutPath = path.join(__dirname, '../../scss/tgico/_'); + + let styleText = fs.readFileSync(outPath + 'style.scss').toString(); + styleText = styleText + .replace(/icomoon/g, 'tgico') + .replace('[class^="tgico-"], [class*=" tgico-"]', `/* [class^="tgico-"]:before, +[class^="tgico-"]:after, */ +[class^="tgico-"], +.tgico:before, +.tgico:after, +[class*=" tgico-"]:before, +[class*=" tgico-"]:after`); + fs.writeFileSync(stylesOutPath + 'style.scss', styleText); + + let variablesText = fs.readFileSync(outPath + 'variables.scss').toString(); + variablesText = variablesText.slice(variablesText.indexOf('\n\n') + 2); + fs.writeFileSync(stylesOutPath + 'variables.scss', variablesText); + + const fontsPath = outPath + 'fonts/'; + const files = fs.readdirSync(fontsPath); + files.forEach(fileName => { + fs.cpSync(fontsPath + fileName, path.join(__dirname, '../../../public/assets/fonts/' + fileName)); + }); +} + +// moveFiles(); +// process.exit(0); + +pipeline({ + icons, + // names: ['new1', 'new2'], + selectionPath: path.join(__dirname, './selection.json'), + outputDir: path.join(__dirname, './out'), + forceOverride: true, + visible: false, + whenFinished: (result) => { + moveFiles(result.outputDir + '/'); + } +}); diff --git a/src/scripts/icomoon/package-lock.json b/src/scripts/icomoon/package-lock.json new file mode 100644 index 00000000..2b273f71 --- /dev/null +++ b/src/scripts/icomoon/package-lock.json @@ -0,0 +1,2162 @@ +{ + "name": "icomoon", + "version": "1.0.0", + "lockfileVersion": 2, + "requires": true, + "packages": { + "": { + "name": "icomoon", + "version": "1.0.0", + "license": "ISC", + "dependencies": { + "extract-zip": "^1.6.6", + "fs-extra": "^4.0.2", + "puppeteer": "^13.5.2", + "yargs": "^10.0.3" + } + }, + "node_modules/@types/node": { + "version": "17.0.23", + "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.23.tgz", + "integrity": "sha512-UxDxWn7dl97rKVeVS61vErvw086aCYhDLyvRQZ5Rk65rZKepaFdm53GeqXaKBuOhED4e9uWq34IC3TdSdJJ2Gw==", + "optional": true + }, + "node_modules/@types/yauzl": { + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.9.2.tgz", + "integrity": "sha512-8uALY5LTvSuHgloDVUvWP3pIauILm+8/0pDMokuDYIoNsOkSwd5AiHBTSEJjKTDcZr5z8UpgOWZkxBF4iJftoA==", + "optional": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "dependencies": { + "debug": "4" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/agent-base/node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/agent-base/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "node_modules/ansi-regex": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.1.tgz", + "integrity": "sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw==", + "engines": { + "node": ">=4" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/bl": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", + "dependencies": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } + }, + "node_modules/bl/node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, + "node_modules/buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=", + "engines": { + "node": "*" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==" + }, + "node_modules/camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "engines": { + "node": ">=4" + } + }, + "node_modules/chownr": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", + "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==" + }, + "node_modules/cliui": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", + "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", + "dependencies": { + "string-width": "^2.1.1", + "strip-ansi": "^4.0.0", + "wrap-ansi": "^2.0.0" + } + }, + "node_modules/code-point-at": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + }, + "node_modules/concat-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", + "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", + "engines": [ + "node >= 0.8" + ], + "dependencies": { + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" + } + }, + "node_modules/core-util-is": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==" + }, + "node_modules/cross-fetch": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.1.5.tgz", + "integrity": "sha512-lvb1SBsI0Z7GDwmuid+mU3kWVBwTVUbe7S0H52yaaAdQOXq2YktTCZdlAcNKFzE6QtRz0snpw9bNiPeOIkkQvw==", + "dependencies": { + "node-fetch": "2.6.7" + } + }, + "node_modules/cross-spawn": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", + "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", + "dependencies": { + "lru-cache": "^4.0.1", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, + "node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/devtools-protocol": { + "version": "0.0.969999", + "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.969999.tgz", + "integrity": "sha512-6GfzuDWU0OFAuOvBokXpXPLxjOJ5DZ157Ue3sGQQM3LgAamb8m0R0ruSfN0DDu+XG5XJgT50i6zZ/0o8RglreQ==" + }, + "node_modules/end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "dependencies": { + "once": "^1.4.0" + } + }, + "node_modules/execa": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", + "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", + "dependencies": { + "cross-spawn": "^5.0.1", + "get-stream": "^3.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/extract-zip": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-1.7.0.tgz", + "integrity": "sha512-xoh5G1W/PB0/27lXgMQyIhP5DSY/LhoCsOyZgb+6iMmRtCwVBo55uKaMoEYrDCKQhWvqEip5ZPKAc6eFNyf/MA==", + "dependencies": { + "concat-stream": "^1.6.2", + "debug": "^2.6.9", + "mkdirp": "^0.5.4", + "yauzl": "^2.10.0" + }, + "bin": { + "extract-zip": "cli.js" + } + }, + "node_modules/fd-slicer": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", + "integrity": "sha1-JcfInLH5B3+IkbvmHY85Dq4lbx4=", + "dependencies": { + "pend": "~1.2.0" + } + }, + "node_modules/find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dependencies": { + "locate-path": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/fs-constants": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", + "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==" + }, + "node_modules/fs-extra": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.3.tgz", + "integrity": "sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg==", + "dependencies": { + "graceful-fs": "^4.1.2", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" + }, + "node_modules/get-caller-file": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", + "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==" + }, + "node_modules/get-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", + "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", + "engines": { + "node": ">=4" + } + }, + "node_modules/glob": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", + "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" + }, + "node_modules/https-proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz", + "integrity": "sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA==", + "dependencies": { + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/https-proxy-agent/node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/https-proxy-agent/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "node_modules/invert-kv": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz", + "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "engines": { + "node": ">=4" + } + }, + "node_modules/is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" + }, + "node_modules/jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/lcid": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", + "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", + "dependencies": { + "invert-kv": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "dependencies": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "dependencies": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "node_modules/mem": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/mem/-/mem-1.1.0.tgz", + "integrity": "sha1-Xt1StIXKHZAP5kiVUFOZoN+kX3Y=", + "dependencies": { + "mimic-fn": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/mimic-fn": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", + "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", + "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==" + }, + "node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/mkdirp-classic": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz", + "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==" + }, + "node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "node_modules/node-fetch": { + "version": "2.6.7", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", + "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", + "dependencies": { + "whatwg-url": "^5.0.0" + }, + "engines": { + "node": "4.x || >=6.0.0" + }, + "peerDependencies": { + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } + } + }, + "node_modules/npm-run-path": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", + "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", + "dependencies": { + "path-key": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/number-is-nan": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/os-locale": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-2.1.0.tgz", + "integrity": "sha512-3sslG3zJbEYcaC4YVAvDorjGxc7tv6KVATnLPZONiljsUncvihe9BQoVCEs0RZ1kmf4Hk9OBqlZfJZWI4GanKA==", + "dependencies": { + "execa": "^0.7.0", + "lcid": "^1.0.0", + "mem": "^1.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", + "engines": { + "node": ">=4" + } + }, + "node_modules/p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "dependencies": { + "p-try": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "dependencies": { + "p-limit": "^1.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/p-try": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", + "engines": { + "node": ">=4" + } + }, + "node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "engines": { + "node": ">=4" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", + "engines": { + "node": ">=4" + } + }, + "node_modules/pend": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", + "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=" + }, + "node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dependencies": { + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-dir/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-dir/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-dir/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-dir/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-dir/node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/pkg-dir/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==", + "engines": { + "node": ">=8" + } + }, + "node_modules/process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" + }, + "node_modules/progress": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/proxy-from-env": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" + }, + "node_modules/pseudomap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", + "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=" + }, + "node_modules/pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "node_modules/puppeteer": { + "version": "13.5.2", + "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-13.5.2.tgz", + "integrity": "sha512-DJAyXODBikZ3xPs8C35CtExEw78LZR9RyelGDAs0tX1dERv3OfW7qpQ9VPBgsfz+hG2HiMTO/Tyf7BuMVWsrxg==", + "hasInstallScript": true, + "dependencies": { + "cross-fetch": "3.1.5", + "debug": "4.3.4", + "devtools-protocol": "0.0.969999", + "extract-zip": "2.0.1", + "https-proxy-agent": "5.0.0", + "pkg-dir": "4.2.0", + "progress": "2.0.3", + "proxy-from-env": "1.1.0", + "rimraf": "3.0.2", + "tar-fs": "2.1.1", + "unbzip2-stream": "1.4.3", + "ws": "8.5.0" + }, + "engines": { + "node": ">=10.18.1" + } + }, + "node_modules/puppeteer/node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/puppeteer/node_modules/extract-zip": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-2.0.1.tgz", + "integrity": "sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg==", + "dependencies": { + "debug": "^4.1.1", + "get-stream": "^5.1.0", + "yauzl": "^2.10.0" + }, + "bin": { + "extract-zip": "cli.js" + }, + "engines": { + "node": ">= 10.17.0" + }, + "optionalDependencies": { + "@types/yauzl": "^2.9.1" + } + }, + "node_modules/puppeteer/node_modules/get-stream": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/puppeteer/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/require-main-filename": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", + "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=" + }, + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "node_modules/set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" + }, + "node_modules/shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "dependencies": { + "shebang-regex": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" + }, + "node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dependencies": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dependencies": { + "ansi-regex": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/strip-eof": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", + "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/tar-fs": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz", + "integrity": "sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==", + "dependencies": { + "chownr": "^1.1.1", + "mkdirp-classic": "^0.5.2", + "pump": "^3.0.0", + "tar-stream": "^2.1.4" + } + }, + "node_modules/tar-stream": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", + "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", + "dependencies": { + "bl": "^4.0.3", + "end-of-stream": "^1.4.1", + "fs-constants": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^3.1.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/tar-stream/node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=" + }, + "node_modules/tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o=" + }, + "node_modules/typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=" + }, + "node_modules/unbzip2-stream": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/unbzip2-stream/-/unbzip2-stream-1.4.3.tgz", + "integrity": "sha512-mlExGW4w71ebDJviH16lQLtZS32VKqsSfk80GCfUlwT/4/hNRFsoscrF/c++9xinkMzECL1uL9DDwXqFWkruPg==", + "dependencies": { + "buffer": "^5.2.1", + "through": "^2.3.8" + } + }, + "node_modules/universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + }, + "node_modules/webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE=" + }, + "node_modules/whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha1-lmRU6HZUYuN2RNNib2dCzotwll0=", + "dependencies": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + }, + "node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, + "node_modules/which-module": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", + "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=" + }, + "node_modules/wrap-ansi": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", + "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", + "dependencies": { + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/wrap-ansi/node_modules/ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/wrap-ansi/node_modules/is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dependencies": { + "number-is-nan": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/wrap-ansi/node_modules/string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dependencies": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/wrap-ansi/node_modules/strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + }, + "node_modules/ws": { + "version": "8.5.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.5.0.tgz", + "integrity": "sha512-BWX0SWVgLPzYwF8lTzEy1egjhS4S4OEAHfsO8o65WOVsrnSRGaSiUaa9e0ggGlkMTtBlmOpEXiie9RUcBO86qg==", + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/y18n": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.2.tgz", + "integrity": "sha512-uGZHXkHnhF0XeeAPgnKfPv1bgKAYyVvmNL1xlKsPYZPaIHxGti2hHqvOCQv71XMsLxu1QjergkqogUnms5D3YQ==" + }, + "node_modules/yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=" + }, + "node_modules/yargs": { + "version": "10.1.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-10.1.2.tgz", + "integrity": "sha512-ivSoxqBGYOqQVruxD35+EyCFDYNEFL/Uo6FcOnz+9xZdZzK0Zzw4r4KhbrME1Oo2gOggwJod2MnsdamSG7H9ig==", + "dependencies": { + "cliui": "^4.0.0", + "decamelize": "^1.1.1", + "find-up": "^2.1.0", + "get-caller-file": "^1.0.1", + "os-locale": "^2.0.0", + "require-directory": "^2.1.1", + "require-main-filename": "^1.0.1", + "set-blocking": "^2.0.0", + "string-width": "^2.0.0", + "which-module": "^2.0.0", + "y18n": "^3.2.1", + "yargs-parser": "^8.1.0" + } + }, + "node_modules/yargs-parser": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-8.1.0.tgz", + "integrity": "sha512-yP+6QqN8BmrgW2ggLtTbdrOyBNSI7zBa4IykmiV5R1wl1JWNxQvWhMfMdmzIYtKU7oP3OOInY/tl2ov3BDjnJQ==", + "dependencies": { + "camelcase": "^4.1.0" + } + }, + "node_modules/yauzl": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", + "integrity": "sha1-x+sXyT4RLLEIb6bY5R+wZnt5pfk=", + "dependencies": { + "buffer-crc32": "~0.2.3", + "fd-slicer": "~1.1.0" + } + } + }, + "dependencies": { + "@types/node": { + "version": "17.0.23", + "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.23.tgz", + "integrity": "sha512-UxDxWn7dl97rKVeVS61vErvw086aCYhDLyvRQZ5Rk65rZKepaFdm53GeqXaKBuOhED4e9uWq34IC3TdSdJJ2Gw==", + "optional": true + }, + "@types/yauzl": { + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.9.2.tgz", + "integrity": "sha512-8uALY5LTvSuHgloDVUvWP3pIauILm+8/0pDMokuDYIoNsOkSwd5AiHBTSEJjKTDcZr5z8UpgOWZkxBF4iJftoA==", + "optional": true, + "requires": { + "@types/node": "*" + } + }, + "agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "requires": { + "debug": "4" + }, + "dependencies": { + "debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "requires": { + "ms": "2.1.2" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + } + } + }, + "ansi-regex": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.1.tgz", + "integrity": "sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw==" + }, + "balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==" + }, + "bl": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", + "requires": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + }, + "dependencies": { + "readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + } + } + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "requires": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, + "buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=" + }, + "buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==" + }, + "camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=" + }, + "chownr": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", + "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==" + }, + "cliui": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", + "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", + "requires": { + "string-width": "^2.1.1", + "strip-ansi": "^4.0.0", + "wrap-ansi": "^2.0.0" + } + }, + "code-point-at": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + }, + "concat-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", + "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", + "requires": { + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" + } + }, + "core-util-is": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==" + }, + "cross-fetch": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.1.5.tgz", + "integrity": "sha512-lvb1SBsI0Z7GDwmuid+mU3kWVBwTVUbe7S0H52yaaAdQOXq2YktTCZdlAcNKFzE6QtRz0snpw9bNiPeOIkkQvw==", + "requires": { + "node-fetch": "2.6.7" + } + }, + "cross-spawn": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", + "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", + "requires": { + "lru-cache": "^4.0.1", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=" + }, + "devtools-protocol": { + "version": "0.0.969999", + "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.969999.tgz", + "integrity": "sha512-6GfzuDWU0OFAuOvBokXpXPLxjOJ5DZ157Ue3sGQQM3LgAamb8m0R0ruSfN0DDu+XG5XJgT50i6zZ/0o8RglreQ==" + }, + "end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "requires": { + "once": "^1.4.0" + } + }, + "execa": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", + "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", + "requires": { + "cross-spawn": "^5.0.1", + "get-stream": "^3.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + } + }, + "extract-zip": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-1.7.0.tgz", + "integrity": "sha512-xoh5G1W/PB0/27lXgMQyIhP5DSY/LhoCsOyZgb+6iMmRtCwVBo55uKaMoEYrDCKQhWvqEip5ZPKAc6eFNyf/MA==", + "requires": { + "concat-stream": "^1.6.2", + "debug": "^2.6.9", + "mkdirp": "^0.5.4", + "yauzl": "^2.10.0" + } + }, + "fd-slicer": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", + "integrity": "sha1-JcfInLH5B3+IkbvmHY85Dq4lbx4=", + "requires": { + "pend": "~1.2.0" + } + }, + "find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "requires": { + "locate-path": "^2.0.0" + } + }, + "fs-constants": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", + "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==" + }, + "fs-extra": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.3.tgz", + "integrity": "sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg==", + "requires": { + "graceful-fs": "^4.1.2", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + } + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" + }, + "get-caller-file": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", + "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==" + }, + "get-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", + "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=" + }, + "glob": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", + "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "graceful-fs": { + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" + }, + "https-proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz", + "integrity": "sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA==", + "requires": { + "agent-base": "6", + "debug": "4" + }, + "dependencies": { + "debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "requires": { + "ms": "2.1.2" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + } + } + }, + "ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==" + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "invert-kv": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz", + "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=" + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=" + }, + "is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=" + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" + }, + "jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", + "requires": { + "graceful-fs": "^4.1.6" + } + }, + "lcid": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", + "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", + "requires": { + "invert-kv": "^1.0.0" + } + }, + "locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "requires": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + } + }, + "lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "requires": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "mem": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/mem/-/mem-1.1.0.tgz", + "integrity": "sha1-Xt1StIXKHZAP5kiVUFOZoN+kX3Y=", + "requires": { + "mimic-fn": "^1.0.0" + } + }, + "mimic-fn": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", + "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==" + }, + "minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", + "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==" + }, + "mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "requires": { + "minimist": "^1.2.6" + } + }, + "mkdirp-classic": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz", + "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==" + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "node-fetch": { + "version": "2.6.7", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", + "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", + "requires": { + "whatwg-url": "^5.0.0" + } + }, + "npm-run-path": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", + "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", + "requires": { + "path-key": "^2.0.0" + } + }, + "number-is-nan": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "requires": { + "wrappy": "1" + } + }, + "os-locale": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-2.1.0.tgz", + "integrity": "sha512-3sslG3zJbEYcaC4YVAvDorjGxc7tv6KVATnLPZONiljsUncvihe9BQoVCEs0RZ1kmf4Hk9OBqlZfJZWI4GanKA==", + "requires": { + "execa": "^0.7.0", + "lcid": "^1.0.0", + "mem": "^1.1.0" + } + }, + "p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=" + }, + "p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "requires": { + "p-try": "^1.0.0" + } + }, + "p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "requires": { + "p-limit": "^1.1.0" + } + }, + "p-try": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=" + }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=" + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" + }, + "path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=" + }, + "pend": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", + "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=" + }, + "pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "requires": { + "find-up": "^4.0.0" + }, + "dependencies": { + "find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "requires": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + } + }, + "locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "requires": { + "p-locate": "^4.1.0" + } + }, + "p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "requires": { + "p-limit": "^2.2.0" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==" + }, + "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==" + } + } + }, + "process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" + }, + "progress": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==" + }, + "proxy-from-env": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" + }, + "pseudomap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", + "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=" + }, + "pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "puppeteer": { + "version": "13.5.2", + "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-13.5.2.tgz", + "integrity": "sha512-DJAyXODBikZ3xPs8C35CtExEw78LZR9RyelGDAs0tX1dERv3OfW7qpQ9VPBgsfz+hG2HiMTO/Tyf7BuMVWsrxg==", + "requires": { + "cross-fetch": "3.1.5", + "debug": "4.3.4", + "devtools-protocol": "0.0.969999", + "extract-zip": "2.0.1", + "https-proxy-agent": "5.0.0", + "pkg-dir": "4.2.0", + "progress": "2.0.3", + "proxy-from-env": "1.1.0", + "rimraf": "3.0.2", + "tar-fs": "2.1.1", + "unbzip2-stream": "1.4.3", + "ws": "8.5.0" + }, + "dependencies": { + "debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "requires": { + "ms": "2.1.2" + } + }, + "extract-zip": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-2.0.1.tgz", + "integrity": "sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg==", + "requires": { + "@types/yauzl": "^2.9.1", + "debug": "^4.1.1", + "get-stream": "^5.1.0", + "yauzl": "^2.10.0" + } + }, + "get-stream": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "requires": { + "pump": "^3.0.0" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + } + } + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=" + }, + "require-main-filename": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", + "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=" + }, + "rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "requires": { + "glob": "^7.1.3" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" + }, + "shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "requires": { + "shebang-regex": "^1.0.0" + } + }, + "shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=" + }, + "signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "~5.1.0" + } + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "requires": { + "ansi-regex": "^3.0.0" + } + }, + "strip-eof": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", + "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=" + }, + "tar-fs": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz", + "integrity": "sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==", + "requires": { + "chownr": "^1.1.1", + "mkdirp-classic": "^0.5.2", + "pump": "^3.0.0", + "tar-stream": "^2.1.4" + } + }, + "tar-stream": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", + "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", + "requires": { + "bl": "^4.0.3", + "end-of-stream": "^1.4.1", + "fs-constants": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^3.1.1" + }, + "dependencies": { + "readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + } + } + }, + "through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=" + }, + "tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o=" + }, + "typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=" + }, + "unbzip2-stream": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/unbzip2-stream/-/unbzip2-stream-1.4.3.tgz", + "integrity": "sha512-mlExGW4w71ebDJviH16lQLtZS32VKqsSfk80GCfUlwT/4/hNRFsoscrF/c++9xinkMzECL1uL9DDwXqFWkruPg==", + "requires": { + "buffer": "^5.2.1", + "through": "^2.3.8" + } + }, + "universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==" + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + }, + "webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE=" + }, + "whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha1-lmRU6HZUYuN2RNNib2dCzotwll0=", + "requires": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + }, + "which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "requires": { + "isexe": "^2.0.0" + } + }, + "which-module": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", + "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=" + }, + "wrap-ansi": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", + "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", + "requires": { + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "requires": { + "ansi-regex": "^2.0.0" + } + } + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + }, + "ws": { + "version": "8.5.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.5.0.tgz", + "integrity": "sha512-BWX0SWVgLPzYwF8lTzEy1egjhS4S4OEAHfsO8o65WOVsrnSRGaSiUaa9e0ggGlkMTtBlmOpEXiie9RUcBO86qg==", + "requires": {} + }, + "y18n": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.2.tgz", + "integrity": "sha512-uGZHXkHnhF0XeeAPgnKfPv1bgKAYyVvmNL1xlKsPYZPaIHxGti2hHqvOCQv71XMsLxu1QjergkqogUnms5D3YQ==" + }, + "yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=" + }, + "yargs": { + "version": "10.1.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-10.1.2.tgz", + "integrity": "sha512-ivSoxqBGYOqQVruxD35+EyCFDYNEFL/Uo6FcOnz+9xZdZzK0Zzw4r4KhbrME1Oo2gOggwJod2MnsdamSG7H9ig==", + "requires": { + "cliui": "^4.0.0", + "decamelize": "^1.1.1", + "find-up": "^2.1.0", + "get-caller-file": "^1.0.1", + "os-locale": "^2.0.0", + "require-directory": "^2.1.1", + "require-main-filename": "^1.0.1", + "set-blocking": "^2.0.0", + "string-width": "^2.0.0", + "which-module": "^2.0.0", + "y18n": "^3.2.1", + "yargs-parser": "^8.1.0" + } + }, + "yargs-parser": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-8.1.0.tgz", + "integrity": "sha512-yP+6QqN8BmrgW2ggLtTbdrOyBNSI7zBa4IykmiV5R1wl1JWNxQvWhMfMdmzIYtKU7oP3OOInY/tl2ov3BDjnJQ==", + "requires": { + "camelcase": "^4.1.0" + } + }, + "yauzl": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", + "integrity": "sha1-x+sXyT4RLLEIb6bY5R+wZnt5pfk=", + "requires": { + "buffer-crc32": "~0.2.3", + "fd-slicer": "~1.1.0" + } + } + } +} diff --git a/src/scripts/icomoon/package.json b/src/scripts/icomoon/package.json new file mode 100644 index 00000000..157557f9 --- /dev/null +++ b/src/scripts/icomoon/package.json @@ -0,0 +1,17 @@ +{ + "name": "icomoon", + "version": "1.0.0", + "description": "", + "main": "icomoon_generate.js", + "scripts": { + "start": "node icomoon_generate.js" + }, + "author": "", + "license": "ISC", + "dependencies": { + "extract-zip": "^1.6.6", + "fs-extra": "^4.0.2", + "puppeteer": "^13.5.2", + "yargs": "^10.0.3" + } +} diff --git a/src/scss/partials/_ico.scss b/src/scss/partials/_ico.scss deleted file mode 100644 index 7b7f20fc..00000000 --- a/src/scss/partials/_ico.scss +++ /dev/null @@ -1,198 +0,0 @@ -/* - * https://github.com/morethanwords/tweb - * Copyright (C) 2019-2021 Eduard Kuzmenko - * https://github.com/morethanwords/tweb/blob/master/LICENSE - */ - -// ! https://icomoon.io/app/#/select - -$tgico-font-family: "tgico" !default; -$tgico-font-path: "assets/fonts" !default; - -/* -! CAN RUN IN DEVELOPER TOOLS TO CONVERT FONT TO VARIABLES: -`.tgico-select:before { - content: "\e900"; -}` -.toLowerCase() -.replace(/([\s])|(_svg)|(1x)/g, '') -.replace(/\.(.+?):before\{content:"(.+?);\}/g, `$$$1: "\\$2;\n`); -*/ - -$tgico-check: "\e900"; -$tgico-checks: "\e901"; -$tgico-activesessions: "\e902"; -$tgico-add_reaction: "\e903"; -$tgico-add: "\e904"; -$tgico-addmember_filled: "\e905"; -$tgico-adduser: "\e906"; -$tgico-admin: "\e907"; -$tgico-animals: "\e908"; -$tgico-animations: "\e909"; -$tgico-archive: "\e90a"; -$tgico-arrow_down: "\e90b"; -$tgico-arrow_next: "\e90c"; -$tgico-attach: "\e90d"; -$tgico-avatarnext: "\e90e"; -$tgico-avatarprevious: "\e90f"; -$tgico-bold: "\e910"; -$tgico-botcom: "\e911"; -$tgico-bots: "\e912"; -$tgico-bug: "\e913"; -$tgico-calendar: "\e914"; -$tgico-calendarfilter: "\e915"; -$tgico-camera: "\e916"; -$tgico-cameraadd: "\e917"; -$tgico-car: "\e918"; -$tgico-channel: "\e919"; -$tgico-channelviews: "\e91a"; -$tgico-chatspinned: "\e91b"; -$tgico-chatsplaceholder: "\e91c"; -$tgico-check1: "\e91d"; -$tgico-checkbox: "\e91e"; -$tgico-checkboxblock: "\e91f"; -$tgico-checkboxempty: "\e920"; -$tgico-checkboxon: "\e921"; -$tgico-checkretract: "\e922"; -$tgico-checkround: "\e923"; -$tgico-close: "\e924"; -$tgico-clouddownload: "\e925"; -$tgico-colorize: "\e926"; -$tgico-comments: "\e927"; -$tgico-commentssticker: "\e928"; -$tgico-copy: "\e929"; -$tgico-darkmode: "\e92a"; -$tgico-data: "\e92b"; -$tgico-delete_filled: "\e92c"; -$tgico-delete: "\e92d"; -$tgico-deletedaccount: "\e92e"; -$tgico-deleteleft: "\e92f"; -$tgico-deleteuser: "\e930"; -$tgico-devices: "\e931"; -$tgico-document: "\e932"; -$tgico-down: "\e933"; -$tgico-download: "\e934"; -$tgico-dragfiles: "\e935"; -$tgico-dragmedia: "\e936"; -$tgico-eats: "\e937"; -$tgico-edit: "\e938"; -$tgico-email: "\e939"; -$tgico-endcall_filled: "\e93a"; -$tgico-enter: "\e93b"; -$tgico-eye1: "\e93c"; -$tgico-eye2: "\e93d"; -$tgico-fast_forward: "\e93e"; -$tgico-fast_rewind: "\e93f"; -$tgico-favourites: "\e940"; -$tgico-flag: "\e941"; -$tgico-folder: "\e942"; -$tgico-fontsize: "\e943"; -$tgico-forward_filled: "\e944"; -$tgico-forward: "\e945"; -$tgico-fullscreen: "\e946"; -$tgico-gc_microphone: "\e947"; -$tgico-gc_microphoneoff: "\e948"; -$tgico-gifs: "\e949"; -$tgico-group: "\e94a"; -$tgico-help: "\e94b"; -$tgico-image: "\e94c"; -$tgico-info: "\e94d"; -$tgico-info2: "\e94e"; -$tgico-italic: "\e94f"; -$tgico-keyboard: "\e950"; -$tgico-lamp: "\e951"; -$tgico-language: "\e952"; -$tgico-largepause: "\e953"; -$tgico-largeplay: "\e954"; -$tgico-left: "\e955"; -$tgico-link: "\e956"; -$tgico-listscreenshare: "\e957"; -$tgico-livelocation: "\e958"; -$tgico-location: "\e959"; -$tgico-lock: "\e95a"; -$tgico-lockoff: "\e95b"; -$tgico-loginlogodesktop: "\e95c"; -$tgico-loginlogomobile: "\e95d"; -$tgico-logout: "\e95e"; -$tgico-mention: "\e95f"; -$tgico-menu: "\e960"; -$tgico-message: "\e961"; -$tgico-messageunread: "\e962"; -$tgico-microphone: "\e963"; -$tgico-minus: "\e964"; -$tgico-monospace: "\e965"; -$tgico-more: "\e966"; -$tgico-mute: "\e967"; -$tgico-muted: "\e968"; -$tgico-newchannel: "\e969"; -$tgico-newchat_filled: "\e96a"; -$tgico-newgroup: "\e96b"; -$tgico-newprivate: "\e96c"; -$tgico-next: "\e96d"; -$tgico-noncontacts: "\e96e"; -$tgico-nosound: "\e96f"; -$tgico-passwordoff: "\e970"; -$tgico-pause: "\e971"; -$tgico-permissions: "\e972"; -$tgico-phone: "\e973"; -$tgico-pin: "\e974"; -$tgico-pinlist: "\e975"; -$tgico-pinned_filled: "\e976"; -$tgico-pinnedchat: "\e977"; -$tgico-play: "\e978"; -$tgico-playback_1x: "\e979"; -$tgico-playback_2x: "\e97a"; -$tgico-playback_05: "\e97b"; -$tgico-playback_15: "\e97c"; -$tgico-plus: "\e97d"; -$tgico-poll: "\e97e"; -$tgico-previous: "\e97f"; -$tgico-radiooff: "\e980"; -$tgico-radioon: "\e981"; -$tgico-reactions: "\e982"; -$tgico-readchats: "\e983"; -$tgico-recent: "\e984"; -$tgico-replace: "\e985"; -$tgico-reply_filled: "\e986"; -$tgico-reply: "\e987"; -$tgico-rightpanel: "\e988"; -$tgico-saved: "\e989"; -$tgico-savedmessages: "\e98a"; -$tgico-schedule: "\e98b"; -$tgico-scheduled: "\e98c"; -$tgico-search: "\e98d"; -$tgico-select: "\e98e"; -$tgico-send: "\e98f"; -$tgico-send2: "\e990"; -$tgico-sending: "\e991"; -$tgico-sendingerror: "\e992"; -$tgico-settings_filled: "\e993"; -$tgico-settings: "\e994"; -$tgico-sharescreen_filled: "\e995"; -$tgico-smallscreen: "\e996"; -$tgico-smile: "\e997"; -$tgico-spoiler: "\e998"; -$tgico-sport: "\e999"; -$tgico-stickers: "\e99a"; -$tgico-stop: "\e99b"; -$tgico-strikethrough: "\e99c"; -$tgico-textedit: "\e99d"; -$tgico-tip: "\e99e"; -$tgico-tools: "\e99f"; -$tgico-unarchive: "\e9a0"; -$tgico-underline: "\e9a1"; -$tgico-unmute: "\e9a2"; -$tgico-unpin: "\e9a3"; -$tgico-unread: "\e9a4"; -$tgico-up: "\e9a5"; -$tgico-user: "\e9a6"; -$tgico-username: "\e9a7"; -$tgico-videocamera_filled: "\e9a8"; -$tgico-videocamera: "\e9a9"; -$tgico-videochat: "\e9aa"; -$tgico-volume_down: "\e9ab"; -$tgico-volume_mute: "\e9ac"; -$tgico-volume_off: "\e9ad"; -$tgico-volume_up: "\e9ae"; -$tgico-zoomin: "\e9af"; -$tgico-zoomout: "\e9b0"; diff --git a/src/scss/style.scss b/src/scss/style.scss index f066abf2..e764415c 100644 --- a/src/scss/style.scss +++ b/src/scss/style.scss @@ -289,7 +289,7 @@ $chat-input-inner-padding-handhelds: .25rem; // * Night theme end } -@import "partials/ico"; +@import "tgico"; @import "partials/input"; @import "partials/button"; @import "partials/animatedIcon"; diff --git a/src/scss/tgico.scss b/src/scss/tgico.scss index 9394e4c1..b21fcfe7 100644 --- a/src/scss/tgico.scss +++ b/src/scss/tgico.scss @@ -4,5 +4,20 @@ * https://github.com/morethanwords/tweb/blob/master/LICENSE */ -@import "partials/ico"; -@import "partials/fonts"; +// ! https://icomoon.io/app/#/select + +$tgico-font-family: "tgico" !default; +$tgico-font-path: "assets/fonts" !default; + +/* +! CAN RUN IN DEVELOPER TOOLS TO CONVERT FONT TO VARIABLES: +`.tgico-select:before { + content: "\e900"; +}` +.toLowerCase() +.replace(/([\s])|(_svg)|(1x)/g, '') +.replace(/\.(.+?):before\{content:"(.+?);\}/g, `$$$1: "\\$2;\n`); +*/ + +@import "tgico/style"; +@import "tgico/variables"; diff --git a/src/scss/partials/_fonts.scss b/src/scss/tgico/_style.scss similarity index 89% rename from src/scss/partials/_fonts.scss rename to src/scss/tgico/_style.scss index 0efa0f3e..12d5fc2a 100644 --- a/src/scss/partials/_fonts.scss +++ b/src/scss/tgico/_style.scss @@ -1,931 +1,940 @@ -/* - * https://github.com/morethanwords/tweb - * Copyright (C) 2019-2021 Eduard Kuzmenko - * https://github.com/morethanwords/tweb/blob/master/LICENSE - */ - -// ! https://icomoon.io/app/#/select - -@font-face { - font-family: "#{$tgico-font-family}"; - src: - url('#{$tgico-font-path}/#{$tgico-font-family}.ttf?85ar8e') format('truetype'), - url('#{$tgico-font-path}/#{$tgico-font-family}.woff?85ar8e') format('woff'), - url('#{$tgico-font-path}/#{$tgico-font-family}.svg?85ar8e#tgico') format('svg'); - font-weight: normal; - font-style: normal; - font-display: block; -} - -/* [class^="tgico-"]:before, -[class^="tgico-"]:after, */ -[class^="tgico-"], -.tgico:before, -.tgico:after, -[class*=" tgico-"]:before, -[class*=" tgico-"]:after { - font-family: "#{$tgico-font-family}"; - speak: never; - font-style: normal; - font-weight: normal; - font-variant: normal; - text-transform: none; - line-height: 1; - - /* Better Font Rendering =========== */ - -webkit-font-smoothing: antialiased; - -moz-osx-font-smoothing: grayscale; -} - -.tgico-phone_filled { - &:before { - content: $tgico-endcall_filled; - transform: rotate(-135deg); - } -} - -.tgico-check { - &:before { - content: $tgico-check; - } -} -.tgico-checks { - &:before { - content: $tgico-checks; - } -} -.tgico-activesessions { - &:before { - content: $tgico-activesessions; - } -} -.tgico-add_reaction { - &:before { - content: $tgico-add_reaction; - } -} -.tgico-add { - &:before { - content: $tgico-add; - } -} -.tgico-addmember_filled { - &:before { - content: $tgico-addmember_filled; - } -} -.tgico-adduser { - &:before { - content: $tgico-adduser; - } -} -.tgico-admin { - &:before { - content: $tgico-admin; - } -} -.tgico-animals { - &:before { - content: $tgico-animals; - } -} -.tgico-animations { - &:before { - content: $tgico-animations; - } -} -.tgico-archive { - &:before { - content: $tgico-archive; - } -} -.tgico-arrow_down { - &:before { - content: $tgico-arrow_down; - } -} -.tgico-arrow_next { - &:before { - content: $tgico-arrow_next; - } -} -.tgico-attach { - &:before { - content: $tgico-attach; - } -} -.tgico-avatarnext { - &:before { - content: $tgico-avatarnext; - } -} -.tgico-avatarprevious { - &:before { - content: $tgico-avatarprevious; - } -} -.tgico-bold { - &:before { - content: $tgico-bold; - } -} -.tgico-botcom { - &:before { - content: $tgico-botcom; - } -} -.tgico-bots { - &:before { - content: $tgico-bots; - } -} -.tgico-bug { - &:before { - content: $tgico-bug; - } -} -.tgico-calendar { - &:before { - content: $tgico-calendar; - } -} -.tgico-calendarfilter { - &:before { - content: $tgico-calendarfilter; - } -} -.tgico-camera { - &:before { - content: $tgico-camera; - } -} -.tgico-cameraadd { - &:before { - content: $tgico-cameraadd; - } -} -.tgico-car { - &:before { - content: $tgico-car; - } -} -.tgico-channel { - &:before { - content: $tgico-channel; - } -} -.tgico-channelviews { - &:before { - content: $tgico-channelviews; - } -} -.tgico-chatspinned { - &:before { - content: $tgico-chatspinned; - } -} -.tgico-chatsplaceholder { - &:before { - content: $tgico-chatsplaceholder; - } -} -.tgico-check1 { - &:before { - content: $tgico-check1; - } -} -.tgico-checkbox { - &:before { - content: $tgico-checkbox; - } -} -.tgico-checkboxblock { - &:before { - content: $tgico-checkboxblock; - } -} -.tgico-checkboxempty { - &:before { - content: $tgico-checkboxempty; - } -} -.tgico-checkboxon { - &:before { - content: $tgico-checkboxon; - } -} -.tgico-checkretract { - &:before { - content: $tgico-checkretract; - } -} -.tgico-checkround { - &:before { - content: $tgico-checkround; - } -} -.tgico-close { - &:before { - content: $tgico-close; - } -} -.tgico-clouddownload { - &:before { - content: $tgico-clouddownload; - } -} -.tgico-colorize { - &:before { - content: $tgico-colorize; - } -} -.tgico-comments { - &:before { - content: $tgico-comments; - } -} -.tgico-commentssticker { - &:before { - content: $tgico-commentssticker; - } -} -.tgico-copy { - &:before { - content: $tgico-copy; - } -} -.tgico-darkmode { - &:before { - content: $tgico-darkmode; - } -} -.tgico-data { - &:before { - content: $tgico-data; - } -} -.tgico-delete_filled { - &:before { - content: $tgico-delete_filled; - } -} -.tgico-delete { - &:before { - content: $tgico-delete; - } -} -.tgico-deletedaccount { - &:before { - content: $tgico-deletedaccount; - } -} -.tgico-deleteleft { - &:before { - content: $tgico-deleteleft; - } -} -.tgico-deleteuser { - &:before { - content: $tgico-deleteuser; - } -} -.tgico-devices { - &:before { - content: $tgico-devices; - } -} -.tgico-document { - &:before { - content: $tgico-document; - } -} -.tgico-down { - &:before { - content: $tgico-down; - } -} -.tgico-download { - &:before { - content: $tgico-download; - } -} -.tgico-dragfiles { - &:before { - content: $tgico-dragfiles; - } -} -.tgico-dragmedia { - &:before { - content: $tgico-dragmedia; - } -} -.tgico-eats { - &:before { - content: $tgico-eats; - } -} -.tgico-edit { - &:before { - content: $tgico-edit; - } -} -.tgico-email { - &:before { - content: $tgico-email; - } -} -.tgico-endcall_filled { - &:before { - content: $tgico-endcall_filled; - } -} -.tgico-enter { - &:before { - content: $tgico-enter; - } -} -.tgico-eye1 { - &:before { - content: $tgico-eye1; - } -} -.tgico-eye2 { - &:before { - content: $tgico-eye2; - } -} -.tgico-fast_forward { - &:before { - content: $tgico-fast_forward; - } -} -.tgico-fast_rewind { - &:before { - content: $tgico-fast_rewind; - } -} -.tgico-favourites { - &:before { - content: $tgico-favourites; - } -} -.tgico-flag { - &:before { - content: $tgico-flag; - } -} -.tgico-folder { - &:before { - content: $tgico-folder; - } -} -.tgico-fontsize { - &:before { - content: $tgico-fontsize; - } -} -.tgico-forward_filled { - &:before { - content: $tgico-forward_filled; - } -} -.tgico-forward { - &:before { - content: $tgico-forward; - } -} -.tgico-fullscreen { - &:before { - content: $tgico-fullscreen; - } -} -.tgico-gc_microphone { - &:before { - content: $tgico-gc_microphone; - } -} -.tgico-gc_microphoneoff { - &:before { - content: $tgico-gc_microphoneoff; - } -} -.tgico-gifs { - &:before { - content: $tgico-gifs; - } -} -.tgico-group { - &:before { - content: $tgico-group; - } -} -.tgico-help { - &:before { - content: $tgico-help; - } -} -.tgico-image { - &:before { - content: $tgico-image; - } -} -.tgico-info { - &:before { - content: $tgico-info; - } -} -.tgico-info2 { - &:before { - content: $tgico-info2; - } -} -.tgico-italic { - &:before { - content: $tgico-italic; - } -} -.tgico-keyboard { - &:before { - content: $tgico-keyboard; - } -} -.tgico-lamp { - &:before { - content: $tgico-lamp; - } -} -.tgico-language { - &:before { - content: $tgico-language; - } -} -.tgico-largepause { - &:before { - content: $tgico-largepause; - } -} -.tgico-largeplay { - &:before { - content: $tgico-largeplay; - } -} -.tgico-left { - &:before { - content: $tgico-left; - } -} -.tgico-link { - &:before { - content: $tgico-link; - } -} -.tgico-listscreenshare { - &:before { - content: $tgico-listscreenshare; - } -} -.tgico-livelocation { - &:before { - content: $tgico-livelocation; - } -} -.tgico-location { - &:before { - content: $tgico-location; - } -} -.tgico-lock { - &:before { - content: $tgico-lock; - } -} -.tgico-lockoff { - &:before { - content: $tgico-lockoff; - } -} -.tgico-loginlogodesktop { - &:before { - content: $tgico-loginlogodesktop; - } -} -.tgico-loginlogomobile { - &:before { - content: $tgico-loginlogomobile; - } -} -.tgico-logout { - &:before { - content: $tgico-logout; - } -} -.tgico-mention { - &:before { - content: $tgico-mention; - } -} -.tgico-menu { - &:before { - content: $tgico-menu; - } -} -.tgico-message { - &:before { - content: $tgico-message; - } -} -.tgico-messageunread { - &:before { - content: $tgico-messageunread; - } -} -.tgico-microphone { - &:before { - content: $tgico-microphone; - } -} -.tgico-minus { - &:before { - content: $tgico-minus; - } -} -.tgico-monospace { - &:before { - content: $tgico-monospace; - } -} -.tgico-more { - &:before { - content: $tgico-more; - } -} -.tgico-mute { - &:before { - content: $tgico-mute; - } -} -.tgico-muted { - &:before { - content: $tgico-muted; - } -} -.tgico-newchannel { - &:before { - content: $tgico-newchannel; - } -} -.tgico-newchat_filled { - &:before { - content: $tgico-newchat_filled; - } -} -.tgico-newgroup { - &:before { - content: $tgico-newgroup; - } -} -.tgico-newprivate { - &:before { - content: $tgico-newprivate; - } -} -.tgico-next { - &:before { - content: $tgico-next; - } -} -.tgico-noncontacts { - &:before { - content: $tgico-noncontacts; - } -} -.tgico-nosound { - &:before { - content: $tgico-nosound; - } -} -.tgico-passwordoff { - &:before { - content: $tgico-passwordoff; - } -} -.tgico-pause { - &:before { - content: $tgico-pause; - } -} -.tgico-permissions { - &:before { - content: $tgico-permissions; - } -} -.tgico-phone { - &:before { - content: $tgico-phone; - } -} -.tgico-pin { - &:before { - content: $tgico-pin; - } -} -.tgico-pinlist { - &:before { - content: $tgico-pinlist; - } -} -.tgico-pinned_filled { - &:before { - content: $tgico-pinned_filled; - } -} -.tgico-pinnedchat { - &:before { - content: $tgico-pinnedchat; - } -} -.tgico-play { - &:before { - content: $tgico-play; - } -} -.tgico-playback_1x { - &:before { - content: $tgico-playback_1x; - } -} -.tgico-playback_2x { - &:before { - content: $tgico-playback_2x; - } -} -.tgico-playback_05 { - &:before { - content: $tgico-playback_05; - } -} -.tgico-playback_15 { - &:before { - content: $tgico-playback_15; - } -} -.tgico-plus { - &:before { - content: $tgico-plus; - } -} -.tgico-poll { - &:before { - content: $tgico-poll; - } -} -.tgico-previous { - &:before { - content: $tgico-previous; - } -} -.tgico-radiooff { - &:before { - content: $tgico-radiooff; - } -} -.tgico-radioon { - &:before { - content: $tgico-radioon; - } -} -.tgico-reactions { - &:before { - content: $tgico-reactions; - } -} -.tgico-readchats { - &:before { - content: $tgico-readchats; - } -} -.tgico-recent { - &:before { - content: $tgico-recent; - } -} -.tgico-replace { - &:before { - content: $tgico-replace; - } -} -.tgico-reply_filled { - &:before { - content: $tgico-reply_filled; - } -} -.tgico-reply { - &:before { - content: $tgico-reply; - } -} -.tgico-rightpanel { - &:before { - content: $tgico-rightpanel; - } -} -.tgico-saved { - &:before { - content: $tgico-saved; - } -} -.tgico-savedmessages { - &:before { - content: $tgico-savedmessages; - } -} -.tgico-schedule { - &:before { - content: $tgico-schedule; - } -} -.tgico-scheduled { - &:before { - content: $tgico-scheduled; - } -} -.tgico-search { - &:before { - content: $tgico-search; - } -} -.tgico-select { - &:before { - content: $tgico-select; - } -} -.tgico-send { - &:before { - content: $tgico-send; - } -} -.tgico-send2 { - &:before { - content: $tgico-send2; - } -} -.tgico-sending { - &:before { - content: $tgico-sending; - } -} -.tgico-sendingerror { - &:before { - content: $tgico-sendingerror; - } -} -.tgico-settings_filled { - &:before { - content: $tgico-settings_filled; - } -} -.tgico-settings { - &:before { - content: $tgico-settings; - } -} -.tgico-sharescreen_filled { - &:before { - content: $tgico-sharescreen_filled; - } -} -.tgico-smallscreen { - &:before { - content: $tgico-smallscreen; - } -} -.tgico-smile { - &:before { - content: $tgico-smile; - } -} -.tgico-spoiler { - &:before { - content: $tgico-spoiler; - } -} -.tgico-sport { - &:before { - content: $tgico-sport; - } -} -.tgico-stickers { - &:before { - content: $tgico-stickers; - } -} -.tgico-stop { - &:before { - content: $tgico-stop; - } -} -.tgico-strikethrough { - &:before { - content: $tgico-strikethrough; - } -} -.tgico-textedit { - &:before { - content: $tgico-textedit; - } -} -.tgico-tip { - &:before { - content: $tgico-tip; - } -} -.tgico-tools { - &:before { - content: $tgico-tools; - } -} -.tgico-unarchive { - &:before { - content: $tgico-unarchive; - } -} -.tgico-underline { - &:before { - content: $tgico-underline; - } -} -.tgico-unmute { - &:before { - content: $tgico-unmute; - } -} -.tgico-unpin { - &:before { - content: $tgico-unpin; - } -} -.tgico-unread { - &:before { - content: $tgico-unread; - } -} -.tgico-up { - &:before { - content: $tgico-up; - } -} -.tgico-user { - &:before { - content: $tgico-user; - } -} -.tgico-username { - &:before { - content: $tgico-username; - } -} -.tgico-videocamera_filled { - &:before { - content: $tgico-videocamera_filled; - } -} -.tgico-videocamera { - &:before { - content: $tgico-videocamera; - } -} -.tgico-videochat { - &:before { - content: $tgico-videochat; - } -} -.tgico-volume_down { - &:before { - content: $tgico-volume_down; - } -} -.tgico-volume_mute { - &:before { - content: $tgico-volume_mute; - } -} -.tgico-volume_off { - &:before { - content: $tgico-volume_off; - } -} -.tgico-volume_up { - &:before { - content: $tgico-volume_up; - } -} -.tgico-zoomin { - &:before { - content: $tgico-zoomin; - } -} -.tgico-zoomout { - &:before { - content: $tgico-zoomout; - } -} +@import "variables"; + +@font-face { + font-family: '#{$tgico-font-family}'; + src: + url('#{$tgico-font-path}/#{$tgico-font-family}.ttf?cyy67r') format('truetype'), + url('#{$tgico-font-path}/#{$tgico-font-family}.woff?cyy67r') format('woff'), + url('#{$tgico-font-path}/#{$tgico-font-family}.svg?cyy67r##{$tgico-font-family}') format('svg'); + font-weight: normal; + font-style: normal; + font-display: block; +} + +/* [class^="tgico-"]:before, +[class^="tgico-"]:after, */ +[class^="tgico-"], +.tgico:before, +.tgico:after, +[class*=" tgico-"]:before, +[class*=" tgico-"]:after { + /* use !important to prevent issues with browser extensions that change fonts */ + font-family: '#{$tgico-font-family}' !important; + speak: never; + font-style: normal; + font-weight: normal; + font-variant: normal; + text-transform: none; + line-height: 1; + + /* Better Font Rendering =========== */ + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} + +.tgico-check { + &:before { + content: $tgico-check; + } +} +.tgico-checks { + &:before { + content: $tgico-checks; + } +} +.tgico-activesessions { + &:before { + content: $tgico-activesessions; + } +} +.tgico-add { + &:before { + content: $tgico-add; + } +} +.tgico-add_reaction { + &:before { + content: $tgico-add_reaction; + } +} +.tgico-addmember_filled { + &:before { + content: $tgico-addmember_filled; + } +} +.tgico-adduser { + &:before { + content: $tgico-adduser; + } +} +.tgico-admin { + &:before { + content: $tgico-admin; + } +} +.tgico-animals { + &:before { + content: $tgico-animals; + } +} +.tgico-animations { + &:before { + content: $tgico-animations; + } +} +.tgico-archive { + &:before { + content: $tgico-archive; + } +} +.tgico-arrow_down { + &:before { + content: $tgico-arrow_down; + } +} +.tgico-arrow_next { + &:before { + content: $tgico-arrow_next; + } +} +.tgico-attach { + &:before { + content: $tgico-attach; + } +} +.tgico-audio_repeat { + &:before { + content: $tgico-audio_repeat; + } +} +.tgico-audio_repeat_single { + &:before { + content: $tgico-audio_repeat_single; + } +} +.tgico-avatarnext { + &:before { + content: $tgico-avatarnext; + } +} +.tgico-avatarprevious { + &:before { + content: $tgico-avatarprevious; + } +} +.tgico-bold { + &:before { + content: $tgico-bold; + } +} +.tgico-botcom { + &:before { + content: $tgico-botcom; + } +} +.tgico-bots { + &:before { + content: $tgico-bots; + } +} +.tgico-bug { + &:before { + content: $tgico-bug; + } +} +.tgico-calendar { + &:before { + content: $tgico-calendar; + } +} +.tgico-calendarfilter { + &:before { + content: $tgico-calendarfilter; + } +} +.tgico-camera { + &:before { + content: $tgico-camera; + } +} +.tgico-cameraadd { + &:before { + content: $tgico-cameraadd; + } +} +.tgico-car { + &:before { + content: $tgico-car; + } +} +.tgico-channel { + &:before { + content: $tgico-channel; + } +} +.tgico-channelviews { + &:before { + content: $tgico-channelviews; + } +} +.tgico-chatspinned { + &:before { + content: $tgico-chatspinned; + } +} +.tgico-chatsplaceholder { + &:before { + content: $tgico-chatsplaceholder; + } +} +.tgico-check1 { + &:before { + content: $tgico-check1; + } +} +.tgico-checkbox { + &:before { + content: $tgico-checkbox; + } +} +.tgico-checkboxblock { + &:before { + content: $tgico-checkboxblock; + } +} +.tgico-checkboxempty { + &:before { + content: $tgico-checkboxempty; + } +} +.tgico-checkboxon { + &:before { + content: $tgico-checkboxon; + } +} +.tgico-checkretract { + &:before { + content: $tgico-checkretract; + } +} +.tgico-checkround { + &:before { + content: $tgico-checkround; + } +} +.tgico-close { + &:before { + content: $tgico-close; + } +} +.tgico-clouddownload { + &:before { + content: $tgico-clouddownload; + } +} +.tgico-colorize { + &:before { + content: $tgico-colorize; + } +} +.tgico-comments { + &:before { + content: $tgico-comments; + } +} +.tgico-commentssticker { + &:before { + content: $tgico-commentssticker; + } +} +.tgico-copy { + &:before { + content: $tgico-copy; + } +} +.tgico-darkmode { + &:before { + content: $tgico-darkmode; + } +} +.tgico-data { + &:before { + content: $tgico-data; + } +} +.tgico-delete { + &:before { + content: $tgico-delete; + } +} +.tgico-delete_filled { + &:before { + content: $tgico-delete_filled; + } +} +.tgico-deletedaccount { + &:before { + content: $tgico-deletedaccount; + } +} +.tgico-deleteleft { + &:before { + content: $tgico-deleteleft; + } +} +.tgico-deleteuser { + &:before { + content: $tgico-deleteuser; + } +} +.tgico-devices { + &:before { + content: $tgico-devices; + } +} +.tgico-document { + &:before { + content: $tgico-document; + } +} +.tgico-down { + &:before { + content: $tgico-down; + } +} +.tgico-download { + &:before { + content: $tgico-download; + } +} +.tgico-dragfiles { + &:before { + content: $tgico-dragfiles; + } +} +.tgico-dragmedia { + &:before { + content: $tgico-dragmedia; + } +} +.tgico-eats { + &:before { + content: $tgico-eats; + } +} +.tgico-edit { + &:before { + content: $tgico-edit; + } +} +.tgico-email { + &:before { + content: $tgico-email; + } +} +.tgico-endcall { + &:before { + content: $tgico-endcall; + } +} +.tgico-endcall_filled { + &:before { + content: $tgico-endcall_filled; + } +} +.tgico-enter { + &:before { + content: $tgico-enter; + } +} +.tgico-eye1 { + &:before { + content: $tgico-eye1; + } +} +.tgico-eye2 { + &:before { + content: $tgico-eye2; + } +} +.tgico-fast_forward { + &:before { + content: $tgico-fast_forward; + } +} +.tgico-fast_rewind { + &:before { + content: $tgico-fast_rewind; + } +} +.tgico-favourites { + &:before { + content: $tgico-favourites; + } +} +.tgico-flag { + &:before { + content: $tgico-flag; + } +} +.tgico-folder { + &:before { + content: $tgico-folder; + } +} +.tgico-fontsize { + &:before { + content: $tgico-fontsize; + } +} +.tgico-forward { + &:before { + content: $tgico-forward; + } +} +.tgico-forward_filled { + &:before { + content: $tgico-forward_filled; + } +} +.tgico-fullscreen { + &:before { + content: $tgico-fullscreen; + } +} +.tgico-gc_microphone { + &:before { + content: $tgico-gc_microphone; + } +} +.tgico-gc_microphoneoff { + &:before { + content: $tgico-gc_microphoneoff; + } +} +.tgico-gifs { + &:before { + content: $tgico-gifs; + } +} +.tgico-group { + &:before { + content: $tgico-group; + } +} +.tgico-help { + &:before { + content: $tgico-help; + } +} +.tgico-image { + &:before { + content: $tgico-image; + } +} +.tgico-info { + &:before { + content: $tgico-info; + } +} +.tgico-info2 { + &:before { + content: $tgico-info2; + } +} +.tgico-italic { + &:before { + content: $tgico-italic; + } +} +.tgico-keyboard { + &:before { + content: $tgico-keyboard; + } +} +.tgico-lamp { + &:before { + content: $tgico-lamp; + } +} +.tgico-language { + &:before { + content: $tgico-language; + } +} +.tgico-largepause { + &:before { + content: $tgico-largepause; + } +} +.tgico-largeplay { + &:before { + content: $tgico-largeplay; + } +} +.tgico-left { + &:before { + content: $tgico-left; + } +} +.tgico-link { + &:before { + content: $tgico-link; + } +} +.tgico-listscreenshare { + &:before { + content: $tgico-listscreenshare; + } +} +.tgico-livelocation { + &:before { + content: $tgico-livelocation; + } +} +.tgico-location { + &:before { + content: $tgico-location; + } +} +.tgico-lock { + &:before { + content: $tgico-lock; + } +} +.tgico-lockoff { + &:before { + content: $tgico-lockoff; + } +} +.tgico-loginlogodesktop { + &:before { + content: $tgico-loginlogodesktop; + } +} +.tgico-loginlogomobile { + &:before { + content: $tgico-loginlogomobile; + } +} +.tgico-logout { + &:before { + content: $tgico-logout; + } +} +.tgico-mention { + &:before { + content: $tgico-mention; + } +} +.tgico-menu { + &:before { + content: $tgico-menu; + } +} +.tgico-message { + &:before { + content: $tgico-message; + } +} +.tgico-messageunread { + &:before { + content: $tgico-messageunread; + } +} +.tgico-microphone { + &:before { + content: $tgico-microphone; + } +} +.tgico-minus { + &:before { + content: $tgico-minus; + } +} +.tgico-monospace { + &:before { + content: $tgico-monospace; + } +} +.tgico-more { + &:before { + content: $tgico-more; + } +} +.tgico-mute { + &:before { + content: $tgico-mute; + } +} +.tgico-muted { + &:before { + content: $tgico-muted; + } +} +.tgico-newchannel { + &:before { + content: $tgico-newchannel; + } +} +.tgico-newchat_filled { + &:before { + content: $tgico-newchat_filled; + } +} +.tgico-newgroup { + &:before { + content: $tgico-newgroup; + } +} +.tgico-newprivate { + &:before { + content: $tgico-newprivate; + } +} +.tgico-next { + &:before { + content: $tgico-next; + } +} +.tgico-noncontacts { + &:before { + content: $tgico-noncontacts; + } +} +.tgico-nosound { + &:before { + content: $tgico-nosound; + } +} +.tgico-passwordoff { + &:before { + content: $tgico-passwordoff; + } +} +.tgico-pause { + &:before { + content: $tgico-pause; + } +} +.tgico-permissions { + &:before { + content: $tgico-permissions; + } +} +.tgico-phone { + &:before { + content: $tgico-phone; + } +} +.tgico-pin { + &:before { + content: $tgico-pin; + } +} +.tgico-pinlist { + &:before { + content: $tgico-pinlist; + } +} +.tgico-pinned_filled { + &:before { + content: $tgico-pinned_filled; + } +} +.tgico-pinnedchat { + &:before { + content: $tgico-pinnedchat; + } +} +.tgico-pip { + &:before { + content: $tgico-pip; + } +} +.tgico-play { + &:before { + content: $tgico-play; + } +} +.tgico-playback_05 { + &:before { + content: $tgico-playback_05; + } +} +.tgico-playback_15 { + &:before { + content: $tgico-playback_15; + } +} +.tgico-playback_1x { + &:before { + content: $tgico-playback_1x; + } +} +.tgico-playback_2x { + &:before { + content: $tgico-playback_2x; + } +} +.tgico-plus { + &:before { + content: $tgico-plus; + } +} +.tgico-poll { + &:before { + content: $tgico-poll; + } +} +.tgico-previous { + &:before { + content: $tgico-previous; + } +} +.tgico-radiooff { + &:before { + content: $tgico-radiooff; + } +} +.tgico-radioon { + &:before { + content: $tgico-radioon; + } +} +.tgico-reactions { + &:before { + content: $tgico-reactions; + } +} +.tgico-readchats { + &:before { + content: $tgico-readchats; + } +} +.tgico-recent { + &:before { + content: $tgico-recent; + } +} +.tgico-replace { + &:before { + content: $tgico-replace; + } +} +.tgico-reply { + &:before { + content: $tgico-reply; + } +} +.tgico-reply_filled { + &:before { + content: $tgico-reply_filled; + } +} +.tgico-rightpanel { + &:before { + content: $tgico-rightpanel; + } +} +.tgico-saved { + &:before { + content: $tgico-saved; + } +} +.tgico-savedmessages { + &:before { + content: $tgico-savedmessages; + } +} +.tgico-schedule { + &:before { + content: $tgico-schedule; + } +} +.tgico-scheduled { + &:before { + content: $tgico-scheduled; + } +} +.tgico-search { + &:before { + content: $tgico-search; + } +} +.tgico-select { + &:before { + content: $tgico-select; + } +} +.tgico-send { + &:before { + content: $tgico-send; + } +} +.tgico-send2 { + &:before { + content: $tgico-send2; + } +} +.tgico-sending { + &:before { + content: $tgico-sending; + } +} +.tgico-sendingerror { + &:before { + content: $tgico-sendingerror; + } +} +.tgico-settings { + &:before { + content: $tgico-settings; + } +} +.tgico-settings_filled { + &:before { + content: $tgico-settings_filled; + } +} +.tgico-sharescreen_filled { + &:before { + content: $tgico-sharescreen_filled; + } +} +.tgico-smallscreen { + &:before { + content: $tgico-smallscreen; + } +} +.tgico-smile { + &:before { + content: $tgico-smile; + } +} +.tgico-spoiler { + &:before { + content: $tgico-spoiler; + } +} +.tgico-sport { + &:before { + content: $tgico-sport; + } +} +.tgico-stickers { + &:before { + content: $tgico-stickers; + } +} +.tgico-stop { + &:before { + content: $tgico-stop; + } +} +.tgico-strikethrough { + &:before { + content: $tgico-strikethrough; + } +} +.tgico-textedit { + &:before { + content: $tgico-textedit; + } +} +.tgico-tip { + &:before { + content: $tgico-tip; + } +} +.tgico-tools { + &:before { + content: $tgico-tools; + } +} +.tgico-unarchive { + &:before { + content: $tgico-unarchive; + } +} +.tgico-underline { + &:before { + content: $tgico-underline; + } +} +.tgico-unmute { + &:before { + content: $tgico-unmute; + } +} +.tgico-unpin { + &:before { + content: $tgico-unpin; + } +} +.tgico-unread { + &:before { + content: $tgico-unread; + } +} +.tgico-up { + &:before { + content: $tgico-up; + } +} +.tgico-user { + &:before { + content: $tgico-user; + } +} +.tgico-username { + &:before { + content: $tgico-username; + } +} +.tgico-videocamera { + &:before { + content: $tgico-videocamera; + } +} +.tgico-videocamera_filled { + &:before { + content: $tgico-videocamera_filled; + } +} +.tgico-videochat { + &:before { + content: $tgico-videochat; + } +} +.tgico-volume_down { + &:before { + content: $tgico-volume_down; + } +} +.tgico-volume_mute { + &:before { + content: $tgico-volume_mute; + } +} +.tgico-volume_off { + &:before { + content: $tgico-volume_off; + } +} +.tgico-volume_up { + &:before { + content: $tgico-volume_up; + } +} +.tgico-zoomin { + &:before { + content: $tgico-zoomin; + } +} +.tgico-zoomout { + &:before { + content: $tgico-zoomout; + } +} + diff --git a/src/scss/tgico/_variables.scss b/src/scss/tgico/_variables.scss new file mode 100644 index 00000000..b4463fea --- /dev/null +++ b/src/scss/tgico/_variables.scss @@ -0,0 +1,182 @@ +$tgico-check: "\e900"; +$tgico-checks: "\e901"; +$tgico-activesessions: "\e902"; +$tgico-add: "\e903"; +$tgico-add_reaction: "\e904"; +$tgico-addmember_filled: "\e905"; +$tgico-adduser: "\e906"; +$tgico-admin: "\e907"; +$tgico-animals: "\e908"; +$tgico-animations: "\e909"; +$tgico-archive: "\e90a"; +$tgico-arrow_down: "\e90b"; +$tgico-arrow_next: "\e90c"; +$tgico-attach: "\e90d"; +$tgico-audio_repeat: "\e90e"; +$tgico-audio_repeat_single: "\e90f"; +$tgico-avatarnext: "\e910"; +$tgico-avatarprevious: "\e911"; +$tgico-bold: "\e912"; +$tgico-botcom: "\e913"; +$tgico-bots: "\e914"; +$tgico-bug: "\e915"; +$tgico-calendar: "\e916"; +$tgico-calendarfilter: "\e917"; +$tgico-camera: "\e918"; +$tgico-cameraadd: "\e919"; +$tgico-car: "\e91a"; +$tgico-channel: "\e91b"; +$tgico-channelviews: "\e91c"; +$tgico-chatspinned: "\e91d"; +$tgico-chatsplaceholder: "\e91e"; +$tgico-check1: "\e91f"; +$tgico-checkbox: "\e920"; +$tgico-checkboxblock: "\e921"; +$tgico-checkboxempty: "\e922"; +$tgico-checkboxon: "\e923"; +$tgico-checkretract: "\e924"; +$tgico-checkround: "\e925"; +$tgico-close: "\e926"; +$tgico-clouddownload: "\e927"; +$tgico-colorize: "\e928"; +$tgico-comments: "\e929"; +$tgico-commentssticker: "\e92a"; +$tgico-copy: "\e92b"; +$tgico-darkmode: "\e92c"; +$tgico-data: "\e92d"; +$tgico-delete: "\e92e"; +$tgico-delete_filled: "\e92f"; +$tgico-deletedaccount: "\e930"; +$tgico-deleteleft: "\e931"; +$tgico-deleteuser: "\e932"; +$tgico-devices: "\e933"; +$tgico-document: "\e934"; +$tgico-down: "\e935"; +$tgico-download: "\e936"; +$tgico-dragfiles: "\e937"; +$tgico-dragmedia: "\e938"; +$tgico-eats: "\e939"; +$tgico-edit: "\e93a"; +$tgico-email: "\e93b"; +$tgico-endcall: "\e93c"; +$tgico-endcall_filled: "\e93d"; +$tgico-enter: "\e93e"; +$tgico-eye1: "\e93f"; +$tgico-eye2: "\e940"; +$tgico-fast_forward: "\e941"; +$tgico-fast_rewind: "\e942"; +$tgico-favourites: "\e943"; +$tgico-flag: "\e944"; +$tgico-folder: "\e945"; +$tgico-fontsize: "\e946"; +$tgico-forward: "\e947"; +$tgico-forward_filled: "\e948"; +$tgico-fullscreen: "\e949"; +$tgico-gc_microphone: "\e94a"; +$tgico-gc_microphoneoff: "\e94b"; +$tgico-gifs: "\e94c"; +$tgico-group: "\e94d"; +$tgico-help: "\e94e"; +$tgico-image: "\e94f"; +$tgico-info: "\e950"; +$tgico-info2: "\e951"; +$tgico-italic: "\e952"; +$tgico-keyboard: "\e953"; +$tgico-lamp: "\e954"; +$tgico-language: "\e955"; +$tgico-largepause: "\e956"; +$tgico-largeplay: "\e957"; +$tgico-left: "\e958"; +$tgico-link: "\e959"; +$tgico-listscreenshare: "\e95a"; +$tgico-livelocation: "\e95b"; +$tgico-location: "\e95c"; +$tgico-lock: "\e95d"; +$tgico-lockoff: "\e95e"; +$tgico-loginlogodesktop: "\e95f"; +$tgico-loginlogomobile: "\e960"; +$tgico-logout: "\e961"; +$tgico-mention: "\e962"; +$tgico-menu: "\e963"; +$tgico-message: "\e964"; +$tgico-messageunread: "\e965"; +$tgico-microphone: "\e966"; +$tgico-minus: "\e967"; +$tgico-monospace: "\e968"; +$tgico-more: "\e969"; +$tgico-mute: "\e96a"; +$tgico-muted: "\e96b"; +$tgico-newchannel: "\e96c"; +$tgico-newchat_filled: "\e96d"; +$tgico-newgroup: "\e96e"; +$tgico-newprivate: "\e96f"; +$tgico-next: "\e970"; +$tgico-noncontacts: "\e971"; +$tgico-nosound: "\e972"; +$tgico-passwordoff: "\e973"; +$tgico-pause: "\e974"; +$tgico-permissions: "\e975"; +$tgico-phone: "\e976"; +$tgico-pin: "\e977"; +$tgico-pinlist: "\e978"; +$tgico-pinned_filled: "\e979"; +$tgico-pinnedchat: "\e97a"; +$tgico-pip: "\e97b"; +$tgico-play: "\e97c"; +$tgico-playback_05: "\e97d"; +$tgico-playback_15: "\e97e"; +$tgico-playback_1x: "\e97f"; +$tgico-playback_2x: "\e980"; +$tgico-plus: "\e981"; +$tgico-poll: "\e982"; +$tgico-previous: "\e983"; +$tgico-radiooff: "\e984"; +$tgico-radioon: "\e985"; +$tgico-reactions: "\e986"; +$tgico-readchats: "\e987"; +$tgico-recent: "\e988"; +$tgico-replace: "\e989"; +$tgico-reply: "\e98a"; +$tgico-reply_filled: "\e98b"; +$tgico-rightpanel: "\e98c"; +$tgico-saved: "\e98d"; +$tgico-savedmessages: "\e98e"; +$tgico-schedule: "\e98f"; +$tgico-scheduled: "\e990"; +$tgico-search: "\e991"; +$tgico-select: "\e992"; +$tgico-send: "\e993"; +$tgico-send2: "\e994"; +$tgico-sending: "\e995"; +$tgico-sendingerror: "\e996"; +$tgico-settings: "\e997"; +$tgico-settings_filled: "\e998"; +$tgico-sharescreen_filled: "\e999"; +$tgico-smallscreen: "\e99a"; +$tgico-smile: "\e99b"; +$tgico-spoiler: "\e99c"; +$tgico-sport: "\e99d"; +$tgico-stickers: "\e99e"; +$tgico-stop: "\e99f"; +$tgico-strikethrough: "\e9a0"; +$tgico-textedit: "\e9a1"; +$tgico-tip: "\e9a2"; +$tgico-tools: "\e9a3"; +$tgico-unarchive: "\e9a4"; +$tgico-underline: "\e9a5"; +$tgico-unmute: "\e9a6"; +$tgico-unpin: "\e9a7"; +$tgico-unread: "\e9a8"; +$tgico-up: "\e9a9"; +$tgico-user: "\e9aa"; +$tgico-username: "\e9ab"; +$tgico-videocamera: "\e9ac"; +$tgico-videocamera_filled: "\e9ad"; +$tgico-videochat: "\e9ae"; +$tgico-volume_down: "\e9af"; +$tgico-volume_mute: "\e9b0"; +$tgico-volume_off: "\e9b1"; +$tgico-volume_up: "\e9b2"; +$tgico-zoomin: "\e9b3"; +$tgico-zoomout: "\e9b4"; +