diff --git a/build.js b/build.js deleted file mode 100644 index d9e9ae1..0000000 --- a/build.js +++ /dev/null @@ -1,63 +0,0 @@ -const path = require('path') -const writtenNumber = require('written-number'); -const fs = require('fs-extra') -const simple = require('simple-icons/icons') -const {pascalCase} = require("pascal-case"); -const componentTemplate = (name, svg) => ` - - -`.trim() - -function handleNumbers(title){ - const beginningNumbers = title.replace( /[^\d].*/, '' ) - if(beginningNumbers.length){ - const numberInEnglish = writtenNumber(beginningNumbers, {noAnd: true}) - const numberSlug = numberInEnglish.toString().split(' ').join('-') + '-' - title = title.replace(beginningNumbers, numberSlug) - } - title = title.split('+').join('Plus') - title = title.normalize("NFD").replace(/[\u0300-\u036f]/g, "") - return title -} -const icons = Object.entries(simple).map(([key, value]) => ({ - - key, - pascalCasedComponentName: pascalCase(`${handleNumbers(key.substring(2, key.length))}-icon`) -})) - -Promise.all(icons.map(icon => { - const svg = simple[icon.key].svg - const component = componentTemplate(icon.pascalCasedComponentName, svg) - const filepath = `./src/components/${icon.pascalCasedComponentName}.vue` - return fs.ensureDir(path.dirname(filepath)) - .then(() => fs.writeFile(filepath, component, 'utf8')) -})).then(() => { - const main = icons - .map(icon => `import ${icon.pascalCasedComponentName} from '@/components/${icon.pascalCasedComponentName}.vue'`) - .join('\n\n'); - const ex = "export {" + icons.map(icon => icon.pascalCasedComponentName).join(', ') + "}" - const final = main + '\n\n' + ex; - return fs.outputFile('./src/main.ts', final, 'utf8') -}); diff --git a/buildTools/.gitignore b/buildTools/.gitignore new file mode 100644 index 0000000..c051677 --- /dev/null +++ b/buildTools/.gitignore @@ -0,0 +1,3 @@ +node_modules +.vscode +test diff --git a/buildTools/biome.json b/buildTools/biome.json new file mode 100644 index 0000000..752d8b3 --- /dev/null +++ b/buildTools/biome.json @@ -0,0 +1,12 @@ +{ + "$schema": "https://biomejs.dev/schemas/1.4.1/schema.json", + "organizeImports": { + "enabled": true + }, + "linter": { + "enabled": true, + "rules": { + "recommended": true + } + } +} diff --git a/buildTools/package-lock.json b/buildTools/package-lock.json new file mode 100644 index 0000000..c5fbb06 --- /dev/null +++ b/buildTools/package-lock.json @@ -0,0 +1,203 @@ +{ + "name": "@vue3-simple-icons/buildtools", + "version": "0.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "@vue3-simple-icons/buildtools", + "version": "0.0.0", + "dependencies": { + "chalk": "^5.2", + "change-case": "^5.3.0", + "marked": "^11.1.0", + "n2words": "^1.18.0", + "simple-icons": "^10.4.0", + "typescript": "^5.3.3" + }, + "devDependencies": { + "@biomejs/biome": "1.4.1" + } + }, + "node_modules/@biomejs/biome": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-1.4.1.tgz", + "integrity": "sha512-JccVAwPbhi37pdxbAGmaOBjUTKEwEjWAhl7rKkVVuXHo4MLASXJ5HR8BTgrImi4/7rTBsGz1tgVD1Kwv1CHGRg==", + "dev": true, + "hasInstallScript": true, + "bin": { + "biome": "bin/biome" + }, + "engines": { + "node": ">=14.*" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/biome" + }, + "optionalDependencies": { + "@biomejs/cli-darwin-arm64": "1.4.1", + "@biomejs/cli-darwin-x64": "1.4.1", + "@biomejs/cli-linux-arm64": "1.4.1", + "@biomejs/cli-linux-x64": "1.4.1", + "@biomejs/cli-win32-arm64": "1.4.1", + "@biomejs/cli-win32-x64": "1.4.1" + } + }, + "node_modules/@biomejs/cli-darwin-arm64": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-1.4.1.tgz", + "integrity": "sha512-PZWy2Idndqux38p6AXSDQM2ldRAWi32bvb7bMbTN0ALzpWYMYnxd71ornatumSSJYoNhKmxzDLq+jct7nZJ79w==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=14.*" + } + }, + "node_modules/@biomejs/cli-darwin-x64": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-1.4.1.tgz", + "integrity": "sha512-soj3BWhnsM1M2JlzR09cibUzG1owJqetwj/Oo7yg0foijo9lNH9XWXZfJBYDKgW/6Fomn+CC2EcUS+hisQzt9g==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=14.*" + } + }, + "node_modules/@biomejs/cli-linux-arm64": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-1.4.1.tgz", + "integrity": "sha512-YIZqfJUg4F+fPsBTXxgD7EU2E5OAYbmYSl/snf4PevwfQCWE/omOFZv+NnIQmjYj9I7ParDgcJvanoA3/kO0JQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=14.*" + } + }, + "node_modules/@biomejs/cli-linux-x64": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-1.4.1.tgz", + "integrity": "sha512-9YOZw3qBd/KUj63A6Hn2zZgzGb2nbESM0qNmeMXgmqinVKM//uc4OgY5TuKITuGjMSvcVxxd4dX1IzYjV9qvNQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=14.*" + } + }, + "node_modules/@biomejs/cli-win32-arm64": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-1.4.1.tgz", + "integrity": "sha512-nWQbvkNKxYn/kCQ0yVF8kCaS3VzaGvtFSmItXiMknU4521LDjJ7tNWH12Gol+pIslrCbd4E1LhJa0a3ThRsBVg==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=14.*" + } + }, + "node_modules/@biomejs/cli-win32-x64": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-1.4.1.tgz", + "integrity": "sha512-88fR2CQxQ4YLs2BUDuywWYQpUKgU3A3sTezANFc/4LGKQFFLV2yX+F7QAdZVkMHfA+RD9Xg178HomM/6mnTNPA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=14.*" + } + }, + "node_modules/chalk": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz", + "integrity": "sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==", + "engines": { + "node": "^12.17.0 || ^14.13 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/change-case": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/change-case/-/change-case-5.3.0.tgz", + "integrity": "sha512-Eykca0fGS/xYlx2fG5NqnGSnsWauhSGiSXYhB1kO6E909GUfo8S54u4UZNS7lMJmgZumZ2SUpWaoLgAcfQRICg==" + }, + "node_modules/marked": { + "version": "11.1.1", + "resolved": "https://registry.npmjs.org/marked/-/marked-11.1.1.tgz", + "integrity": "sha512-EgxRjgK9axsQuUa/oKMx5DEY8oXpKJfk61rT5iY3aRlgU6QJtUcxU5OAymdhCvWvhYcd9FKmO5eQoX8m9VGJXg==", + "bin": { + "marked": "bin/marked.js" + }, + "engines": { + "node": ">= 18" + } + }, + "node_modules/n2words": { + "version": "1.18.0", + "resolved": "https://registry.npmjs.org/n2words/-/n2words-1.18.0.tgz", + "integrity": "sha512-FZFNFQhwRDcshGtRrnA4GTabwI9hHow1QndIf10YzFdvKaC3DQsFVN7h2MnjX6hJQLH+vO0ET+K5yN8hBaTW8A==", + "engines": { + "node": "16 || 18 || >=20" + } + }, + "node_modules/simple-icons": { + "version": "10.4.0", + "resolved": "https://registry.npmjs.org/simple-icons/-/simple-icons-10.4.0.tgz", + "integrity": "sha512-XBoU1ljCsWjw59IVkaQ1nKc0PiaDAAKNFVx59ueC0tBy4WY/I4Q040sGj6ok2cZRLT8zBzL1HaTubi8MRqmojQ==", + "engines": { + "node": ">=0.12.18" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/simple-icons" + } + }, + "node_modules/typescript": { + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.3.3.tgz", + "integrity": "sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + } + } +} diff --git a/buildTools/package.json b/buildTools/package.json new file mode 100644 index 0000000..a836124 --- /dev/null +++ b/buildTools/package.json @@ -0,0 +1,21 @@ +{ + "name": "@vue3-simple-icons/buildtools", + "description": "An example app created with Deno", + "type": "module", + "version": "0.0.0", + "scripts": { + "dev": "deno run --allow-all src/main.ts --target test", + "build": "deno run --allow-all src/main.ts --target ../src", + "format": "deno run -A npm:@biomejs/biome format src --write", + "lint": "deno run -A npm:@biomejs/biome lint src", + "check": "deno run -A npm:@biomejs/biome check --apply src" + }, + "dependencies": { + "change-case": "^5.3.0", + "n2words": "^1.18.0", + "simple-icons": "^10.4.0" + }, + "devDependencies": { + "@biomejs/biome": "1.4.1" + } +} \ No newline at end of file diff --git a/buildTools/src/component_builder.ts b/buildTools/src/component_builder.ts new file mode 100644 index 0000000..703006a --- /dev/null +++ b/buildTools/src/component_builder.ts @@ -0,0 +1,52 @@ +import { getIconSlug } from "simple-icons/sdk"; +import { Brand } from "./types.ts"; +const componentScript = await Deno.readTextFile("template.vue"); +import * as changeCase from "change-case"; +import n2words from "n2words"; + +export function buildComponent(iconSVG: string): string { + const result = ` + +${componentScript}`; + + return result; +} + +/** + * If Brand.title is all AlphaNumeric characters and spaces convert to PascalCase + * If Brand.Title is not use Brand slug + * @param icon Brand + * @returns string + * + */ +export function getComponentName(icon: Brand): string { + if (icon.title.match(/^[a-zA-Z ]+$/)) { + if (icon.slug) { + const slug = changeCase.pascalCase(icon.slug); + console.info("Using slug for component name", slug); + return `${slug}Icon`; + } + const name = changeCase.pascalCase(icon.title); + return `${name}Icon`; + } + let title = getIconSlug(icon); + const beginningNumbers = icon.title.replace(/[^\d].*/, ""); + if (beginningNumbers.length) { + const numberInEnglish = n2words(beginningNumbers, { + lang: "en", + }) + .split(" ") + .filter((word) => word !== "and") + .join("-"); + + const numberSlug = `${numberInEnglish}-`; + title = title.replace(beginningNumbers, numberSlug); + } + const finalTile = changeCase.pascalCase(title); + return `${finalTile}Icon`; +} diff --git a/buildTools/src/main.ts b/buildTools/src/main.ts new file mode 100644 index 0000000..2431aa5 --- /dev/null +++ b/buildTools/src/main.ts @@ -0,0 +1,137 @@ +import packageJson from "../package.json" with { type: "json" }; +import { Command } from "https://deno.land/x/cliffy@v1.0.0-rc.3/command/mod.ts"; +import { existsSync } from "https://deno.land/std@0.211.0/fs/mod.ts"; +import * as simpleIconsSDK from "simple-icons/sdk"; +import { Brand, Icons } from "./types.ts"; +import { buildComponent, getComponentName } from "./component_builder.ts"; + +const simpleIconsVersion = packageJson.dependencies["simple-icons"]; +await new Command() + .name("vue3-simple-icons-builder") + .description(packageJson.description) + .version(packageJson.version) + .option("--target [target:file]", "Target folder", { + default: "test", + }) + .option("--simple-icons [simpleIcons:file]", "Path to simple-icons", { + default: "node_modules/simple-icons", + }) + .action(async ({ target, simpleIcons }) => { + const source = !simpleIcons + ? "node_modules/simple-icons" + : (simpleIcons as string); + const finalTarget = !target ? "test" : (target as string); + await buildIcons(finalTarget, source); + }) + .parse(Deno.args); + +async function buildIcons(targetFolder: string, sourceFolder: string) { + console.log( + `Building vue3-simple-icons with simple-icons ${simpleIconsVersion} to ${targetFolder}...`, + ); + if (!existsSync(sourceFolder, { + isDirectory: true, + isReadable: true, + })) { + console.error(`Source folder ${sourceFolder} does not exist`); + return; + } + if ( + !existsSync(targetFolder, { + isDirectory: true, + isReadable: true, + }) + ) { + console.info(`Source folder ${targetFolder} does not exist. Creating...`); + await Deno.mkdir(targetFolder); + } else { + const targetFolderInfo = await Deno.stat(targetFolder); + if (!targetFolderInfo.isDirectory) { + console.error(`Target folder ${targetFolder} is not a directory`); + return; + } + + if (targetFolderInfo.size > 0) { + // Delete all files in target folder + console.log(`Deleting files in ${targetFolder}...`); + for await (const dirEntry of Deno.readDir(targetFolder)) { + await Deno.remove(`${targetFolder}/${dirEntry.name}`); + } + } + } + if ( + !existsSync(`${targetFolder}/components`, { + isDirectory: true, + isReadable: true, + }) + ) { + await Deno.mkdir(`${targetFolder}/components`); + } + + /// Read _data/simple-icons.json + const simpleIcons = await Deno.readTextFile( + `${sourceFolder}/_data/simple-icons.json`, + ); + const icons: Icons = JSON.parse(simpleIcons); + + console.log(`Found ${icons.icons.length} icons`); + const components: Array = []; + for (const icon of icons.icons) { + const component = await buildIcon(icon, targetFolder, sourceFolder); + components.push(component); + } + await buildIndex(components, targetFolder); + console.log("Done"); +} + +interface Component { + originalTitle: string; + componentName: string; + slug: string; +} +async function buildIndex( + components: Component[], + targetFolder: string, +): Promise { + console.log("Building index.ts..."); + let index = ` + // Path: ${targetFolder}/index.ts + // Generated by vue3-simple-icons-builder at ${new Date().toISOString()} using simple-icons ${simpleIconsVersion} + + `; + let exports = ""; + for (const component of components) { + index += + `// ${component.originalTitle} component generated from ${component.slug}.svg + import ${component.componentName} from "./components/${component.componentName}.vue";`; + exports += `\t\t${component.componentName},\n`; + } + + index += `export {${exports}}`; + + await Deno.writeTextFile(`${targetFolder}/index.ts`, index); +} +async function buildIcon( + icon: Brand, + targetFolder: string, + sourceFolder: string, +): Promise { + const iconSlug = simpleIconsSDK.getIconSlug(icon); + + console.log(`Building ${icon.title} with slug ${iconSlug}...`); + + const file = await Deno.readTextFile(`${sourceFolder}/icons/${iconSlug}.svg`); + const component = buildComponent(file); + const componentName = getComponentName(icon); + console.debug(`${icon.title} component name is ${componentName}`); + const componentPath = `${targetFolder}/components/${componentName}.vue`; + + console.log(`Writing ${componentPath}...`); + Deno.writeTextFile(componentPath, component); + + return { + originalTitle: icon.title, + componentName: componentName, + slug: iconSlug, + }; +} diff --git a/buildTools/src/types.ts b/buildTools/src/types.ts new file mode 100644 index 0000000..844c742 --- /dev/null +++ b/buildTools/src/types.ts @@ -0,0 +1,623 @@ +export interface Icons { + /** + * A list of brands + */ + icons: Brand[]; +} + +/** + * A single brand + */ +export interface Brand { + /** + * The aliases for the brand + */ + aliases?: Aliases; + /** + * The brand guidelines + */ + guidelines?: string; + /** + * The brand color + */ + hex: string; + /** + * The license for the icon + */ + license?: License; + slug?: string; + /** + * The website from which the icon was sourced + */ + source: string; + title: string; +} + +/** + * The aliases for the brand + */ +export interface Aliases { + /** + * The brand is also known as (e.g. full length name or abbreviation) + */ + aka?: string[]; + /** + * Different brands that use the exact same icon + */ + dup?: Duplicate[]; + /** + * Old names, for backwards compatibility + */ + old?: string[]; +} + +/** + * A "dup" brand + */ +export interface Duplicate { + /** + * The brand guidelines, if different from the original + */ + guidelines?: string; + /** + * The brand color, if different from the original + */ + hex?: string; + slug?: string; + /** + * The website from which the duplicate's hex was sourced, if different from the original + */ + source?: string; + title: string; +} + +/** + * The license for the icon + */ +export interface License { + /** + * An SPDX License Identifier + * + * The license name or 'custom' + */ + type: Type; + /** + * The URL to the license text by the brand + */ + url?: string; +} + +/** + * An SPDX License Identifier + * + * The license name or 'custom' + */ +export enum Type { + AAL = "AAL", + ADSL = "ADSL", + AGPL10Only = "AGPL-1.0-only", + AGPL10OrLater = "AGPL-1.0-or-later", + AGPL30Only = "AGPL-3.0-only", + AGPL30OrLater = "AGPL-3.0-or-later", + ANTLRPDFallback = "ANTLR-PD-fallback", + APL10 = "APL-1.0", + ASWFDigitalAssets10 = "ASWF-Digital-Assets-1.0", + ASWFDigitalAssets11 = "ASWF-Digital-Assets-1.1", + Abstyles = "Abstyles", + AdaCoreDoc = "AdaCore-doc", + Adobe2006 = "Adobe-2006", + AdobeGlyph = "Adobe-Glyph", + Afl11 = "AFL-1.1", + Afl12 = "AFL-1.2", + Afl20 = "AFL-2.0", + Afl21 = "AFL-2.1", + Afl30 = "AFL-3.0", + Afmparse = "Afmparse", + Aladdin = "Aladdin", + Amdplpa = "AMDPLPA", + Aml = "AML", + Ampas = "AMPAS", + AntlrPD = "ANTLR-PD", + Apache10 = "Apache-1.0", + Apache11 = "Apache-1.1", + Apache20 = "Apache-2.0", + Apafml = "APAFML", + AppS2P = "App-s2p", + Apsl10 = "APSL-1.0", + Apsl11 = "APSL-1.1", + Apsl12 = "APSL-1.2", + Apsl20 = "APSL-2.0", + Arphic1999 = "Arphic-1999", + Artistic10 = "Artistic-1.0", + Artistic10Cl8 = "Artistic-1.0-cl8", + Artistic10PERL = "Artistic-1.0-Perl", + Artistic20 = "Artistic-2.0", + BSD1Clause = "BSD-1-Clause", + BSD2Clause = "BSD-2-Clause", + BSD2ClausePatent = "BSD-2-Clause-Patent", + BSD2ClauseViews = "BSD-2-Clause-Views", + BSD3Clause = "BSD-3-Clause", + BSD3ClauseAttribution = "BSD-3-Clause-Attribution", + BSD3ClauseClear = "BSD-3-Clause-Clear", + BSD3ClauseLBNL = "BSD-3-Clause-LBNL", + BSD3ClauseModification = "BSD-3-Clause-Modification", + BSD3ClauseNoMilitaryLicense = "BSD-3-Clause-No-Military-License", + BSD3ClauseNoNuclearLicense = "BSD-3-Clause-No-Nuclear-License", + BSD3ClauseNoNuclearLicense2014 = "BSD-3-Clause-No-Nuclear-License-2014", + BSD3ClauseNoNuclearWarranty = "BSD-3-Clause-No-Nuclear-Warranty", + BSD3ClauseOpenMPI = "BSD-3-Clause-Open-MPI", + BSD43Reno = "BSD-4.3RENO", + BSD43Tahoe = "BSD-4.3TAHOE", + BSD4Clause = "BSD-4-Clause", + BSD4ClauseShortened = "BSD-4-Clause-Shortened", + BSD4ClauseUC = "BSD-4-Clause-UC", + BSDAdvertisingAcknowledgement = "BSD-Advertising-Acknowledgement", + BSDAttributionHPNDDisclaimer = "BSD-Attribution-HPND-disclaimer", + BSDProtection = "BSD-Protection", + BSDSourceCode = "BSD-Source-Code", + Baekmuk = "Baekmuk", + Bahyph = "Bahyph", + Barr = "Barr", + Beerware = "Beerware", + BitTorrent10 = "BitTorrent-1.0", + BitTorrent11 = "BitTorrent-1.1", + BitstreamCharter = "Bitstream-Charter", + BitstreamVera = "Bitstream-Vera", + Blessing = "blessing", + BlueOak100 = "BlueOak-1.0.0", + BoehmGC = "Boehm-GC", + Borceux = "Borceux", + BrianGladman3Clause = "Brian-Gladman-3-Clause", + Bsl10 = "BSL-1.0", + Busl11 = "BUSL-1.1", + Bzip2106 = "bzip2-1.0.6", + CAL10CombinedWorkException = "CAL-1.0-Combined-Work-Exception", + CDLAPermissive10 = "CDLA-Permissive-1.0", + CDLAPermissive20 = "CDLA-Permissive-2.0", + CDLASharing10 = "CDLA-Sharing-1.0", + CMUMach = "CMU-Mach", + CNRIJython = "CNRI-Jython", + CNRIPython = "CNRI-Python", + CNRIPythonGPLCompatible = "CNRI-Python-GPL-Compatible", + CUAOpl10 = "CUA-OPL-1.0", + CUda10 = "C-UDA-1.0", + Cal10 = "CAL-1.0", + Caldera = "Caldera", + Catosl11 = "CATOSL-1.1", + Cc010 = "CC0-1.0", + CcBy10 = "CC-BY-1.0", + CcBy20 = "CC-BY-2.0", + CcBy25 = "CC-BY-2.5", + CcBy25Au = "CC-BY-2.5-AU", + CcBy30 = "CC-BY-3.0", + CcBy30At = "CC-BY-3.0-AT", + CcBy30De = "CC-BY-3.0-DE", + CcBy30Igo = "CC-BY-3.0-IGO", + CcBy30Nl = "CC-BY-3.0-NL", + CcBy30Us = "CC-BY-3.0-US", + CcBy40 = "CC-BY-4.0", + CcByNc10 = "CC-BY-NC-1.0", + CcByNc20 = "CC-BY-NC-2.0", + CcByNc25 = "CC-BY-NC-2.5", + CcByNc30 = "CC-BY-NC-3.0", + CcByNc30De = "CC-BY-NC-3.0-DE", + CcByNc40 = "CC-BY-NC-4.0", + CcByNcNd10 = "CC-BY-NC-ND-1.0", + CcByNcNd20 = "CC-BY-NC-ND-2.0", + CcByNcNd25 = "CC-BY-NC-ND-2.5", + CcByNcNd30 = "CC-BY-NC-ND-3.0", + CcByNcNd30De = "CC-BY-NC-ND-3.0-DE", + CcByNcNd30Igo = "CC-BY-NC-ND-3.0-IGO", + CcByNcNd40 = "CC-BY-NC-ND-4.0", + CcByNcSa10 = "CC-BY-NC-SA-1.0", + CcByNcSa20 = "CC-BY-NC-SA-2.0", + CcByNcSa20De = "CC-BY-NC-SA-2.0-DE", + CcByNcSa20Fr = "CC-BY-NC-SA-2.0-FR", + CcByNcSa20Uk = "CC-BY-NC-SA-2.0-UK", + CcByNcSa25 = "CC-BY-NC-SA-2.5", + CcByNcSa30 = "CC-BY-NC-SA-3.0", + CcByNcSa30De = "CC-BY-NC-SA-3.0-DE", + CcByNcSa30Igo = "CC-BY-NC-SA-3.0-IGO", + CcByNcSa40 = "CC-BY-NC-SA-4.0", + CcByNd10 = "CC-BY-ND-1.0", + CcByNd20 = "CC-BY-ND-2.0", + CcByNd25 = "CC-BY-ND-2.5", + CcByNd30 = "CC-BY-ND-3.0", + CcByNd30De = "CC-BY-ND-3.0-DE", + CcByNd40 = "CC-BY-ND-4.0", + CcBySa10 = "CC-BY-SA-1.0", + CcBySa20 = "CC-BY-SA-2.0", + CcBySa20Uk = "CC-BY-SA-2.0-UK", + CcBySa21Jp = "CC-BY-SA-2.1-JP", + CcBySa25 = "CC-BY-SA-2.5", + CcBySa30 = "CC-BY-SA-3.0", + CcBySa30At = "CC-BY-SA-3.0-AT", + CcBySa30De = "CC-BY-SA-3.0-DE", + CcBySa30Igo = "CC-BY-SA-3.0-IGO", + CcBySa40 = "CC-BY-SA-4.0", + CcPddc = "CC-PDDC", + Cddl10 = "CDDL-1.0", + Cddl11 = "CDDL-1.1", + Cdl10 = "CDL-1.0", + Cecill10 = "CECILL-1.0", + Cecill11 = "CECILL-1.1", + Cecill20 = "CECILL-2.0", + Cecill21 = "CECILL-2.1", + CecillB = "CECILL-B", + CecillC = "CECILL-C", + CernOhl11 = "CERN-OHL-1.1", + CernOhl12 = "CERN-OHL-1.2", + CernOhlP20 = "CERN-OHL-P-2.0", + CernOhlS20 = "CERN-OHL-S-2.0", + CernOhlW20 = "CERN-OHL-W-2.0", + Cfitsio = "CFITSIO", + Checkmk = "checkmk", + ClArtistic = "ClArtistic", + Clips = "Clips", + Coil10 = "COIL-1.0", + CommunitySpec10 = "Community-Spec-1.0", + Condor11 = "Condor-1.1", + CopyleftNext030 = "copyleft-next-0.3.0", + CopyleftNext031 = "copyleft-next-0.3.1", + CornellLosslessJPEG = "Cornell-Lossless-JPEG", + Cpal10 = "CPAL-1.0", + Cpl10 = "CPL-1.0", + Cpol102 = "CPOL-1.02", + Crossword = "Crossword", + CrystalStacker = "CrystalStacker", + Cube = "Cube", + Curl = "curl", + Custom = "custom", + DFsl10 = "D-FSL-1.0", + DLDeBy20 = "DL-DE-BY-2.0", + Diffmark = "diffmark", + Doc = "DOC", + Dotseqn = "Dotseqn", + Drl10 = "DRL-1.0", + Dsdp = "DSDP", + Dtoa = "dtoa", + Dvipdfm = "dvipdfm", + EGenix = "eGenix", + EUDatagrid = "EUDatagrid", + Ecl10 = "ECL-1.0", + Ecl20 = "ECL-2.0", + Efl10 = "EFL-1.0", + Efl20 = "EFL-2.0", + Elastic20 = "Elastic-2.0", + Entessa = "Entessa", + Epics = "EPICS", + Epl10 = "EPL-1.0", + Epl20 = "EPL-2.0", + ErlPL11 = "ErlPL-1.1", + Etalab20 = "etalab-2.0", + Eupl10 = "EUPL-1.0", + Eupl11 = "EUPL-1.1", + Eupl12 = "EUPL-1.2", + Eurosym = "Eurosym", + Fair = "Fair", + FdkAAC = "FDK-AAC", + Frameworx10 = "Frameworx-1.0", + FreeBSDDOC = "FreeBSD-DOC", + FreeImage = "FreeImage", + Fsfap = "FSFAP", + Fsful = "FSFUL", + Fsfullr = "FSFULLR", + Fsfullrwd = "FSFULLRWD", + Ftl = "FTL", + GFDL11InvariantsOnly = "GFDL-1.1-invariants-only", + GFDL11InvariantsOrLater = "GFDL-1.1-invariants-or-later", + GFDL11NoInvariantsOnly = "GFDL-1.1-no-invariants-only", + GFDL11NoInvariantsOrLater = "GFDL-1.1-no-invariants-or-later", + GFDL11Only = "GFDL-1.1-only", + GFDL11OrLater = "GFDL-1.1-or-later", + GFDL12InvariantsOnly = "GFDL-1.2-invariants-only", + GFDL12InvariantsOrLater = "GFDL-1.2-invariants-or-later", + GFDL12NoInvariantsOnly = "GFDL-1.2-no-invariants-only", + GFDL12NoInvariantsOrLater = "GFDL-1.2-no-invariants-or-later", + GFDL12Only = "GFDL-1.2-only", + GFDL12OrLater = "GFDL-1.2-or-later", + GFDL13InvariantsOnly = "GFDL-1.3-invariants-only", + GFDL13InvariantsOrLater = "GFDL-1.3-invariants-or-later", + GFDL13NoInvariantsOnly = "GFDL-1.3-no-invariants-only", + GFDL13NoInvariantsOrLater = "GFDL-1.3-no-invariants-or-later", + GFDL13Only = "GFDL-1.3-only", + GFDL13OrLater = "GFDL-1.3-or-later", + GPL10Only = "GPL-1.0-only", + GPL10OrLater = "GPL-1.0-or-later", + GPL20Only = "GPL-2.0-only", + GPL20OrLater = "GPL-2.0-or-later", + GPL30Only = "GPL-3.0-only", + GPL30OrLater = "GPL-3.0-or-later", + GSOAP13B = "gSOAP-1.3b", + Gd = "GD", + Giftware = "Giftware", + Gl2PS = "GL2PS", + Glide = "Glide", + Glulxe = "Glulxe", + Glwtpl = "GLWTPL", + Gnuplot = "gnuplot", + GraphicsGems = "Graphics-Gems", + HP1986 = "HP-1986", + HPNDExportUS = "HPND-export-US", + HPNDMarkusKuhn = "HPND-Markus-Kuhn", + HPNDSellVariant = "HPND-sell-variant", + HPNDSellVariantMITDisclaimer = "HPND-sell-variant-MIT-disclaimer", + HaskellReport = "HaskellReport", + Hippocratic21 = "Hippocratic-2.1", + Hpnd = "HPND", + Htmltidy = "HTMLTIDY", + IBMPibs = "IBM-pibs", + IECCodeComponentsEULA = "IEC-Code-Components-EULA", + IJGShort = "IJG-short", + IMatix = "iMatix", + IPL10 = "IPL-1.0", + ISC = "ISC", + Icu = "ICU", + Ijg = "IJG", + ImageMagick = "ImageMagick", + Imlib2 = "Imlib2", + InfoZIP = "Info-ZIP", + InnerNet20 = "Inner-Net-2.0", + Intel = "Intel", + IntelACPI = "Intel-ACPI", + Interbase10 = "Interbase-1.0", + Ipa = "IPA", + JPLImage = "JPL-image", + JSON = "JSON", + Jam = "Jam", + JasPer20 = "JasPer-2.0", + Jpnic = "JPNIC", + Kazlib = "Kazlib", + KnuthCTAN = "Knuth-CTAN", + LGPL20Only = "LGPL-2.0-only", + LGPL20OrLater = "LGPL-2.0-or-later", + LGPL21Only = "LGPL-2.1-only", + LGPL21OrLater = "LGPL-2.1-or-later", + LGPL30Only = "LGPL-3.0-only", + LGPL30OrLater = "LGPL-3.0-or-later", + LPPL13A = "LPPL-1.3a", + LPPL13C = "LPPL-1.3c", + LZMASDK911To920 = "LZMA-SDK-9.11-to-9.20", + Lal12 = "LAL-1.2", + Lal13 = "LAL-1.3", + Latex2E = "Latex2e", + Latex2ETranslatedNotice = "Latex2e-translated-notice", + Leptonica = "Leptonica", + Lgpllr = "LGPLLR", + LiLiQP11 = "LiLiQ-P-1.1", + LiLiQR11 = "LiLiQ-R-1.1", + LiLiQRplus11 = "LiLiQ-Rplus-1.1", + Libpng = "Libpng", + Libpng20 = "libpng-2.0", + Libselinux10 = "libselinux-1.0", + Libtiff = "libtiff", + LibutilDavidNugent = "libutil-David-Nugent", + LinuxManPages1Para = "Linux-man-pages-1-para", + LinuxManPagesCopyleft = "Linux-man-pages-copyleft", + LinuxManPagesCopyleft2Para = "Linux-man-pages-copyleft-2-para", + LinuxManPagesCopyleftVar = "Linux-man-pages-copyleft-var", + LinuxOpenIB = "Linux-OpenIB", + Loop = "LOOP", + Lpl10 = "LPL-1.0", + Lpl102 = "LPL-1.02", + Lppl10 = "LPPL-1.0", + Lppl11 = "LPPL-1.1", + Lppl12 = "LPPL-1.2", + LzmaSDK922 = "LZMA-SDK-9.22", + MIT = "MIT", + MIT0 = "MIT-0", + MITAdvertising = "MIT-advertising", + MITCmu = "MIT-CMU", + MITEnna = "MIT-enna", + MITFeh = "MIT-feh", + MITFestival = "MIT-Festival", + MITModernVariant = "MIT-Modern-Variant", + MITOpenGroup = "MIT-open-group", + MITWu = "MIT-Wu", + MPL10 = "MPL-1.0", + MPL11 = "MPL-1.1", + MPL20 = "MPL-2.0", + MPL20NoCopyleftException = "MPL-2.0-no-copyleft-exception", + MSLpl = "MS-LPL", + MSPl = "MS-PL", + MSRl = "MS-RL", + MakeIndex = "MakeIndex", + MartinBirgmeier = "Martin-Birgmeier", + Metamail = "metamail", + Minpack = "Minpack", + MirOS = "MirOS", + Mitnfa = "MITNFA", + Motosoto = "Motosoto", + MpiPermissive = "mpi-permissive", + Mpich2 = "mpich2", + Mplus = "mplus", + Mtll = "MTLL", + MulanPSL10 = "MulanPSL-1.0", + MulanPSL20 = "MulanPSL-2.0", + Multics = "Multics", + Mup = "Mup", + NCSA = "NCSA", + NISTPD = "NIST-PD", + NISTPDFallback = "NIST-PD-fallback", + NISTSoftware = "NIST-Software", + NPL10 = "NPL-1.0", + NPL11 = "NPL-1.1", + NTP = "NTP", + NTP0 = "NTP-0", + Naist2003 = "NAIST-2003", + Nasa13 = "NASA-1.3", + Naumen = "Naumen", + Nbpl10 = "NBPL-1.0", + NcglUk20 = "NCGL-UK-2.0", + NetCDF = "NetCDF", + NetSNMP = "Net-SNMP", + Newsletr = "Newsletr", + Ngpl = "NGPL", + Nicta10 = "NICTA-1.0", + Nlod10 = "NLOD-1.0", + Nlod20 = "NLOD-2.0", + Nlpl = "NLPL", + Nokia = "Nokia", + Nosl = "NOSL", + Noweb = "Noweb", + Nposl30 = "NPOSL-3.0", + Nrl = "NRL", + ODBL10 = "ODbL-1.0", + ODCBy10 = "ODC-By-1.0", + OFL10NoRFN = "OFL-1.0-no-RFN", + OFL11NoRFN = "OFL-1.1-no-RFN", + OGDLTaiwan10 = "OGDL-Taiwan-1.0", + OGLCanada20 = "OGL-Canada-2.0", + OUda10 = "O-UDA-1.0", + OcctPl = "OCCT-PL", + Oclc20 = "OCLC-2.0", + Offis = "OFFIS", + Ofl10 = "OFL-1.0", + Ofl10Rfn = "OFL-1.0-RFN", + Ofl11 = "OFL-1.1", + Ofl11Rfn = "OFL-1.1-RFN", + Ogc10 = "OGC-1.0", + OglUk10 = "OGL-UK-1.0", + OglUk20 = "OGL-UK-2.0", + OglUk30 = "OGL-UK-3.0", + Ogtsl = "OGTSL", + Oldap11 = "OLDAP-1.1", + Oldap12 = "OLDAP-1.2", + Oldap13 = "OLDAP-1.3", + Oldap14 = "OLDAP-1.4", + Oldap20 = "OLDAP-2.0", + Oldap201 = "OLDAP-2.0.1", + Oldap21 = "OLDAP-2.1", + Oldap22 = "OLDAP-2.2", + Oldap221 = "OLDAP-2.2.1", + Oldap222 = "OLDAP-2.2.2", + Oldap23 = "OLDAP-2.3", + Oldap24 = "OLDAP-2.4", + Oldap25 = "OLDAP-2.5", + Oldap26 = "OLDAP-2.6", + Oldap27 = "OLDAP-2.7", + Oldap28 = "OLDAP-2.8", + Olfl13 = "OLFL-1.3", + Oml = "OML", + OpenPBS23 = "OpenPBS-2.3", + OpenSSL = "OpenSSL", + Opl10 = "OPL-1.0", + OplUk30 = "OPL-UK-3.0", + Opubl10 = "OPUBL-1.0", + OsetPl21 = "OSET-PL-2.1", + Osl10 = "OSL-1.0", + Osl11 = "OSL-1.1", + Osl20 = "OSL-2.0", + Osl21 = "OSL-2.1", + Osl30 = "OSL-3.0", + PHP30 = "PHP-3.0", + PHP301 = "PHP-3.01", + Parity600 = "Parity-6.0.0", + Parity700 = "Parity-7.0.0", + Pddl10 = "PDDL-1.0", + Plexus = "Plexus", + PolyFormNoncommercial100 = "PolyForm-Noncommercial-1.0.0", + PolyFormSmallBusiness100 = "PolyForm-Small-Business-1.0.0", + PostgreSQL = "PostgreSQL", + Psf20 = "PSF-2.0", + Psfrag = "psfrag", + Psutils = "psutils", + Python20 = "Python-2.0", + Python201 = "Python-2.0.1", + Qhull = "Qhull", + Qpl10 = "QPL-1.0", + Qpl10Inria2004 = "QPL-1.0-INRIA-2004", + RHeCos11 = "RHeCos-1.1", + RSAMd = "RSA-MD", + Rdisc = "Rdisc", + Rpl11 = "RPL-1.1", + Rpl15 = "RPL-1.5", + Rpsl10 = "RPSL-1.0", + Rscpl = "RSCPL", + Ruby = "Ruby", + SAXPD = "SAX-PD", + SGIB10 = "SGI-B-1.0", + SGIB11 = "SGI-B-1.1", + SGIB20 = "SGI-B-2.0", + SSHOpenSSH = "SSH-OpenSSH", + SSHShort = "SSH-short", + Saxpath = "Saxpath", + Scea = "SCEA", + SchemeReport = "SchemeReport", + Sendmail = "Sendmail", + Sendmail823 = "Sendmail-8.23", + Sgp4 = "SGP4", + Shl05 = "SHL-0.5", + Shl051 = "SHL-0.51", + SimPL20 = "SimPL-2.0", + Sissl = "SISSL", + Sissl12 = "SISSL-1.2", + Sleepycat = "Sleepycat", + Smlnj = "SMLNJ", + Smppl = "SMPPL", + Snia = "SNIA", + Snprintf = "snprintf", + Spencer86 = "Spencer-86", + Spencer94 = "Spencer-94", + Spencer99 = "Spencer-99", + Spl10 = "SPL-1.0", + Sspl10 = "SSPL-1.0", + SugarCRM113 = "SugarCRM-1.1.3", + SunPro = "SunPro", + Swl = "SWL", + Symlinks = "Symlinks", + TCPWrappers = "TCP-wrappers", + TMate = "TMate", + TUBerlin10 = "TU-Berlin-1.0", + TUBerlin20 = "TU-Berlin-2.0", + TaprOhl10 = "TAPR-OHL-1.0", + Tcl = "TCL", + TermReadKey = "TermReadKey", + The0BSD = "0BSD", + Torque11 = "TORQUE-1.1", + Tosl = "TOSL", + Tpdl = "TPDL", + Tpl10 = "TPL-1.0", + Ttwl = "TTWL", + Ucar = "UCAR", + Ucl10 = "UCL-1.0", + UnicodeDFS2015 = "Unicode-DFS-2015", + UnicodeDFS2016 = "Unicode-DFS-2016", + UnicodeTOU = "Unicode-TOU", + UnixCrypt = "UnixCrypt", + Unlicense = "Unlicense", + Upl10 = "UPL-1.0", + Vim = "Vim", + Vostrom = "VOSTROM", + Vsl10 = "VSL-1.0", + W3C = "W3C", + W3C19980720 = "W3C-19980720", + W3C20150513 = "W3C-20150513", + W3M = "w3m", + Watcom10 = "Watcom-1.0", + WidgetWorkshop = "Widget-Workshop", + Wsuipa = "Wsuipa", + Wtfpl = "WTFPL", + X11 = "X11", + X11DistributeModificationsVariant = "X11-distribute-modifications-variant", + XFree8611 = "XFree86-1.1", + XSkat = "XSkat", + Xdebug103 = "Xdebug-1.03", + Xerox = "Xerox", + Xfig = "Xfig", + Xinetd = "xinetd", + Xlock = "xlock", + Xnet = "Xnet", + Xpp = "xpp", + Ypl10 = "YPL-1.0", + Ypl11 = "YPL-1.1", + ZPL11 = "ZPL-1.1", + ZPL20 = "ZPL-2.0", + ZPL21 = "ZPL-2.1", + Zed = "Zed", + Zend20 = "Zend-2.0", + Zimbra13 = "Zimbra-1.3", + Zimbra14 = "Zimbra-1.4", + Zlib = "Zlib", + ZlibAcknowledgement = "zlib-acknowledgement", +} diff --git a/buildTools/template.vue b/buildTools/template.vue new file mode 100644 index 0000000..04d2a47 --- /dev/null +++ b/buildTools/template.vue @@ -0,0 +1,14 @@ + diff --git a/example/package-lock.json b/example/package-lock.json index 1b1a0c3..9d855c3 100644 --- a/example/package-lock.json +++ b/example/package-lock.json @@ -13,14 +13,14 @@ "normalize.css": "^8.0", "prismjs": "^1.29.0", "tippy.js": "^6.3.7", - "vue": "^3.3.12", + "vue": "^3.4.5", "vue-tippy": "^6.4.1", "vue3-simple-icons": "file:../" }, "devDependencies": { "@tsconfig/node18": "^18.2", "@types/node": "^20", - "@vitejs/plugin-vue": "^5.0.0", + "@vitejs/plugin-vue": "^5.0.2", "@vue/tsconfig": "^0.5", "prettier": "^3", "sass": "^1.69", @@ -36,19 +36,12 @@ "vue": "^3" }, "devDependencies": { - "@vitejs/plugin-vue": "^4.5.2", - "@vue/compiler-sfc": "^3.3.13", - "fs-extra": "^11.2.0", - "marked": "^11.1.0", - "pascal-case": "^3.1.2", - "simple-icons": "^10.4.0", - "tslib": "^2.6.2", - "typeface-nunito": "^1.1.13", + "@vitejs/plugin-vue": "^5.0.2", + "@vue/compiler-sfc": "^3.4.5", "typescript": "^5.3.3", - "vite": "^5.0.10", + "vite": "^5.0.11", "vue": "^3.2.37", - "vue-tsc": "^1.8.26", - "written-number": "^0.11.1" + "vue-tsc": "^1.8.27" } }, "node_modules/@babel/parser": { @@ -608,9 +601,9 @@ } }, "node_modules/@vitejs/plugin-vue": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-5.0.0.tgz", - "integrity": "sha512-7x5e8X4J1Wi4NxudGjJBd2OFerAi/0nzF80ojCzvfj347WVr0YSn82C8BSsgwSHzlk9Kw5xnZfj0/7RLnNwP5w==", + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-5.0.2.tgz", + "integrity": "sha512-kEjJHrLb5ePBvjD0SPZwJlw1QTRcjjCA9sB5VyfonoXVBxTS7TMnqL6EkLt1Eu61RDeiuZ/WN9Hf6PxXhPI2uA==", "dev": true, "engines": { "node": "^18.0.0 || >=20.0.0" @@ -649,36 +642,36 @@ } }, "node_modules/@vue/compiler-core": { - "version": "3.3.13", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.3.13.tgz", - "integrity": "sha512-bwi9HShGu7uaZLOErZgsH2+ojsEdsjerbf2cMXPwmvcgZfVPZ2BVZzCVnwZBxTAYd6Mzbmf6izcUNDkWnBBQ6A==", + "version": "3.4.5", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.5.tgz", + "integrity": "sha512-Daka7P1z2AgKjzuueWXhwzIsKu0NkLB6vGbNVEV2iJ8GJTrzraZo/Sk4GWCMRtd/qVi3zwnk+Owbd/xSZbwHtQ==", "dependencies": { - "@babel/parser": "^7.23.5", - "@vue/shared": "3.3.13", + "@babel/parser": "^7.23.6", + "@vue/shared": "3.4.5", + "entities": "^4.5.0", "estree-walker": "^2.0.2", "source-map-js": "^1.0.2" } }, "node_modules/@vue/compiler-dom": { - "version": "3.3.13", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.3.13.tgz", - "integrity": "sha512-EYRDpbLadGtNL0Gph+HoKiYqXLqZ0xSSpR5Dvnu/Ep7ggaCbjRDIus1MMxTS2Qm0koXED4xSlvTZaTnI8cYAsw==", + "version": "3.4.5", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.5.tgz", + "integrity": "sha512-J8YlxknJVd90SXFJ4HwGANSAXsx5I0lK30sO/zvYV7s5gXf7gZR7r/1BmZ2ju7RGH1lnc6bpBc6nL61yW+PsAQ==", "dependencies": { - "@vue/compiler-core": "3.3.13", - "@vue/shared": "3.3.13" + "@vue/compiler-core": "3.4.5", + "@vue/shared": "3.4.5" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.3.13", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.3.13.tgz", - "integrity": "sha512-DQVmHEy/EKIgggvnGRLx21hSqnr1smUS9Aq8tfxiiot8UR0/pXKHN9k78/qQ7etyQTFj5em5nruODON7dBeumw==", + "version": "3.4.5", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.5.tgz", + "integrity": "sha512-jauvkDuSSUbP0ebhfNqljhShA90YEfX/0wZ+w40oZF43IjGyWYjqYaJbvMJwGOd+9+vODW6eSvnk28f0SGV7OQ==", "dependencies": { - "@babel/parser": "^7.23.5", - "@vue/compiler-core": "3.3.13", - "@vue/compiler-dom": "3.3.13", - "@vue/compiler-ssr": "3.3.13", - "@vue/reactivity-transform": "3.3.13", - "@vue/shared": "3.3.13", + "@babel/parser": "^7.23.6", + "@vue/compiler-core": "3.4.5", + "@vue/compiler-dom": "3.4.5", + "@vue/compiler-ssr": "3.4.5", + "@vue/shared": "3.4.5", "estree-walker": "^2.0.2", "magic-string": "^0.30.5", "postcss": "^8.4.32", @@ -686,12 +679,12 @@ } }, "node_modules/@vue/compiler-ssr": { - "version": "3.3.13", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.3.13.tgz", - "integrity": "sha512-d/P3bCeUGmkJNS1QUZSAvoCIW4fkOKK3l2deE7zrp0ypJEy+En2AcypIkqvcFQOcw3F0zt2VfMvNsA9JmExTaw==", + "version": "3.4.5", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.5.tgz", + "integrity": "sha512-DDdEcDzj2lWTMfUMMtEpLDhURai9LhM0zSZ219jCt7b2Vyl0/jy3keFgCPMitG0V1S1YG4Cmws3lWHWdxHQOpg==", "dependencies": { - "@vue/compiler-dom": "3.3.13", - "@vue/shared": "3.3.13" + "@vue/compiler-dom": "3.4.5", + "@vue/shared": "3.4.5" } }, "node_modules/@vue/language-core": { @@ -720,60 +713,48 @@ } }, "node_modules/@vue/reactivity": { - "version": "3.3.13", - "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.3.13.tgz", - "integrity": "sha512-fjzCxceMahHhi4AxUBzQqqVhuA21RJ0COaWTbIBl1PruGW1CeY97louZzLi4smpYx+CHfFPPU/CS8NybbGvPKQ==", + "version": "3.4.5", + "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.4.5.tgz", + "integrity": "sha512-BcWkKvjdvqJwb7BhhFkXPLDCecX4d4a6GATvCduJQDLv21PkPowAE5GKuIE5p6RC07/Lp9FMkkq4AYCTVF5KlQ==", "dependencies": { - "@vue/shared": "3.3.13" - } - }, - "node_modules/@vue/reactivity-transform": { - "version": "3.3.13", - "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.3.13.tgz", - "integrity": "sha512-oWnydGH0bBauhXvh5KXUy61xr9gKaMbtsMHk40IK9M4gMuKPJ342tKFarY0eQ6jef8906m35q37wwA8DMZOm5Q==", - "dependencies": { - "@babel/parser": "^7.23.5", - "@vue/compiler-core": "3.3.13", - "@vue/shared": "3.3.13", - "estree-walker": "^2.0.2", - "magic-string": "^0.30.5" + "@vue/shared": "3.4.5" } }, "node_modules/@vue/runtime-core": { - "version": "3.3.13", - "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.3.13.tgz", - "integrity": "sha512-1TzA5TvGuh2zUwMJgdfvrBABWZ7y8kBwBhm7BXk8rvdx2SsgcGfz2ruv2GzuGZNvL1aKnK8CQMV/jFOrxNQUMA==", + "version": "3.4.5", + "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.4.5.tgz", + "integrity": "sha512-wh9ELIOQKeWT9SaUPdLrsxRkZv14jp+SJm9aiQGWio+/MWNM3Lib0wE6CoKEqQ9+SCYyGjDBhTOTtO47kCgbkg==", "dependencies": { - "@vue/reactivity": "3.3.13", - "@vue/shared": "3.3.13" + "@vue/reactivity": "3.4.5", + "@vue/shared": "3.4.5" } }, "node_modules/@vue/runtime-dom": { - "version": "3.3.13", - "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.3.13.tgz", - "integrity": "sha512-JJkpE8R/hJKXqVTgUoODwS5wqKtOsmJPEqmp90PDVGygtJ4C0PtOkcEYXwhiVEmef6xeXcIlrT3Yo5aQ4qkHhQ==", + "version": "3.4.5", + "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.4.5.tgz", + "integrity": "sha512-n5ewvOjyG3IEpqGBahdPXODFSpVlSz3H4LF76Sx0XAqpIOqyJ5bIb2PrdYuH2ogBMAQPh+o5tnoH4nJpBr8U0Q==", "dependencies": { - "@vue/runtime-core": "3.3.13", - "@vue/shared": "3.3.13", + "@vue/runtime-core": "3.4.5", + "@vue/shared": "3.4.5", "csstype": "^3.1.3" } }, "node_modules/@vue/server-renderer": { - "version": "3.3.13", - "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.3.13.tgz", - "integrity": "sha512-vSnN+nuf6iSqTL3Qgx/9A+BT+0Zf/VJOgF5uMZrKjYPs38GMYyAU1coDyBNHauehXDaP+zl73VhwWv0vBRBHcg==", + "version": "3.4.5", + "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.4.5.tgz", + "integrity": "sha512-jOFc/VE87yvifQpNju12VcqimH8pBLxdcT+t3xMeiED1K6DfH9SORyhFEoZlW5TG2Vwfn3Ul5KE+1aC99xnSBg==", "dependencies": { - "@vue/compiler-ssr": "3.3.13", - "@vue/shared": "3.3.13" + "@vue/compiler-ssr": "3.4.5", + "@vue/shared": "3.4.5" }, "peerDependencies": { - "vue": "3.3.13" + "vue": "3.4.5" } }, "node_modules/@vue/shared": { - "version": "3.3.13", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.3.13.tgz", - "integrity": "sha512-/zYUwiHD8j7gKx2argXEMCUXVST6q/21DFU0sTfNX0URJroCe3b1UF6vLJ3lQDfLNIiiRl2ONp7Nh5UVWS6QnA==" + "version": "3.4.5", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.5.tgz", + "integrity": "sha512-6XptuzlMvN4l4cDnDw36pdGEV+9njYkQ1ZE0Q6iZLwrKefKaOJyiFmcP3/KBDHbt72cJZGtllAc1GaHe6XGAyg==" }, "node_modules/@vue/tsconfig": { "version": "0.5.1", @@ -874,6 +855,17 @@ "integrity": "sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg==", "dev": true }, + "node_modules/entities": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, "node_modules/esbuild": { "version": "0.19.7", "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.19.7.tgz", @@ -1339,15 +1331,15 @@ } }, "node_modules/vue": { - "version": "3.3.13", - "resolved": "https://registry.npmjs.org/vue/-/vue-3.3.13.tgz", - "integrity": "sha512-LDnUpQvDgsfc0u/YgtAgTMXJlJQqjkxW1PVcOnJA5cshPleULDjHi7U45pl2VJYazSSvLH8UKcid/kzH8I0a0Q==", + "version": "3.4.5", + "resolved": "https://registry.npmjs.org/vue/-/vue-3.4.5.tgz", + "integrity": "sha512-VH6nHFhLPjgu2oh5vEBXoNZxsGHuZNr3qf4PHClwJWw6IDqw6B3x+4J+ABdoZ0aJuT8Zi0zf3GpGlLQCrGWHrw==", "dependencies": { - "@vue/compiler-dom": "3.3.13", - "@vue/compiler-sfc": "3.3.13", - "@vue/runtime-dom": "3.3.13", - "@vue/server-renderer": "3.3.13", - "@vue/shared": "3.3.13" + "@vue/compiler-dom": "3.4.5", + "@vue/compiler-sfc": "3.4.5", + "@vue/runtime-dom": "3.4.5", + "@vue/server-renderer": "3.4.5", + "@vue/shared": "3.4.5" }, "peerDependencies": { "typescript": "*" @@ -1683,9 +1675,9 @@ } }, "@vitejs/plugin-vue": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-5.0.0.tgz", - "integrity": "sha512-7x5e8X4J1Wi4NxudGjJBd2OFerAi/0nzF80ojCzvfj347WVr0YSn82C8BSsgwSHzlk9Kw5xnZfj0/7RLnNwP5w==", + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-5.0.2.tgz", + "integrity": "sha512-kEjJHrLb5ePBvjD0SPZwJlw1QTRcjjCA9sB5VyfonoXVBxTS7TMnqL6EkLt1Eu61RDeiuZ/WN9Hf6PxXhPI2uA==", "dev": true, "requires": {} }, @@ -1718,36 +1710,36 @@ } }, "@vue/compiler-core": { - "version": "3.3.13", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.3.13.tgz", - "integrity": "sha512-bwi9HShGu7uaZLOErZgsH2+ojsEdsjerbf2cMXPwmvcgZfVPZ2BVZzCVnwZBxTAYd6Mzbmf6izcUNDkWnBBQ6A==", + "version": "3.4.5", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.5.tgz", + "integrity": "sha512-Daka7P1z2AgKjzuueWXhwzIsKu0NkLB6vGbNVEV2iJ8GJTrzraZo/Sk4GWCMRtd/qVi3zwnk+Owbd/xSZbwHtQ==", "requires": { - "@babel/parser": "^7.23.5", - "@vue/shared": "3.3.13", + "@babel/parser": "^7.23.6", + "@vue/shared": "3.4.5", + "entities": "^4.5.0", "estree-walker": "^2.0.2", "source-map-js": "^1.0.2" } }, "@vue/compiler-dom": { - "version": "3.3.13", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.3.13.tgz", - "integrity": "sha512-EYRDpbLadGtNL0Gph+HoKiYqXLqZ0xSSpR5Dvnu/Ep7ggaCbjRDIus1MMxTS2Qm0koXED4xSlvTZaTnI8cYAsw==", + "version": "3.4.5", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.5.tgz", + "integrity": "sha512-J8YlxknJVd90SXFJ4HwGANSAXsx5I0lK30sO/zvYV7s5gXf7gZR7r/1BmZ2ju7RGH1lnc6bpBc6nL61yW+PsAQ==", "requires": { - "@vue/compiler-core": "3.3.13", - "@vue/shared": "3.3.13" + "@vue/compiler-core": "3.4.5", + "@vue/shared": "3.4.5" } }, "@vue/compiler-sfc": { - "version": "3.3.13", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.3.13.tgz", - "integrity": "sha512-DQVmHEy/EKIgggvnGRLx21hSqnr1smUS9Aq8tfxiiot8UR0/pXKHN9k78/qQ7etyQTFj5em5nruODON7dBeumw==", + "version": "3.4.5", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.5.tgz", + "integrity": "sha512-jauvkDuSSUbP0ebhfNqljhShA90YEfX/0wZ+w40oZF43IjGyWYjqYaJbvMJwGOd+9+vODW6eSvnk28f0SGV7OQ==", "requires": { - "@babel/parser": "^7.23.5", - "@vue/compiler-core": "3.3.13", - "@vue/compiler-dom": "3.3.13", - "@vue/compiler-ssr": "3.3.13", - "@vue/reactivity-transform": "3.3.13", - "@vue/shared": "3.3.13", + "@babel/parser": "^7.23.6", + "@vue/compiler-core": "3.4.5", + "@vue/compiler-dom": "3.4.5", + "@vue/compiler-ssr": "3.4.5", + "@vue/shared": "3.4.5", "estree-walker": "^2.0.2", "magic-string": "^0.30.5", "postcss": "^8.4.32", @@ -1755,12 +1747,12 @@ } }, "@vue/compiler-ssr": { - "version": "3.3.13", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.3.13.tgz", - "integrity": "sha512-d/P3bCeUGmkJNS1QUZSAvoCIW4fkOKK3l2deE7zrp0ypJEy+En2AcypIkqvcFQOcw3F0zt2VfMvNsA9JmExTaw==", + "version": "3.4.5", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.5.tgz", + "integrity": "sha512-DDdEcDzj2lWTMfUMMtEpLDhURai9LhM0zSZ219jCt7b2Vyl0/jy3keFgCPMitG0V1S1YG4Cmws3lWHWdxHQOpg==", "requires": { - "@vue/compiler-dom": "3.3.13", - "@vue/shared": "3.3.13" + "@vue/compiler-dom": "3.4.5", + "@vue/shared": "3.4.5" } }, "@vue/language-core": { @@ -1781,57 +1773,45 @@ } }, "@vue/reactivity": { - "version": "3.3.13", - "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.3.13.tgz", - "integrity": "sha512-fjzCxceMahHhi4AxUBzQqqVhuA21RJ0COaWTbIBl1PruGW1CeY97louZzLi4smpYx+CHfFPPU/CS8NybbGvPKQ==", + "version": "3.4.5", + "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.4.5.tgz", + "integrity": "sha512-BcWkKvjdvqJwb7BhhFkXPLDCecX4d4a6GATvCduJQDLv21PkPowAE5GKuIE5p6RC07/Lp9FMkkq4AYCTVF5KlQ==", "requires": { - "@vue/shared": "3.3.13" - } - }, - "@vue/reactivity-transform": { - "version": "3.3.13", - "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.3.13.tgz", - "integrity": "sha512-oWnydGH0bBauhXvh5KXUy61xr9gKaMbtsMHk40IK9M4gMuKPJ342tKFarY0eQ6jef8906m35q37wwA8DMZOm5Q==", - "requires": { - "@babel/parser": "^7.23.5", - "@vue/compiler-core": "3.3.13", - "@vue/shared": "3.3.13", - "estree-walker": "^2.0.2", - "magic-string": "^0.30.5" + "@vue/shared": "3.4.5" } }, "@vue/runtime-core": { - "version": "3.3.13", - "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.3.13.tgz", - "integrity": "sha512-1TzA5TvGuh2zUwMJgdfvrBABWZ7y8kBwBhm7BXk8rvdx2SsgcGfz2ruv2GzuGZNvL1aKnK8CQMV/jFOrxNQUMA==", + "version": "3.4.5", + "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.4.5.tgz", + "integrity": "sha512-wh9ELIOQKeWT9SaUPdLrsxRkZv14jp+SJm9aiQGWio+/MWNM3Lib0wE6CoKEqQ9+SCYyGjDBhTOTtO47kCgbkg==", "requires": { - "@vue/reactivity": "3.3.13", - "@vue/shared": "3.3.13" + "@vue/reactivity": "3.4.5", + "@vue/shared": "3.4.5" } }, "@vue/runtime-dom": { - "version": "3.3.13", - "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.3.13.tgz", - "integrity": "sha512-JJkpE8R/hJKXqVTgUoODwS5wqKtOsmJPEqmp90PDVGygtJ4C0PtOkcEYXwhiVEmef6xeXcIlrT3Yo5aQ4qkHhQ==", + "version": "3.4.5", + "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.4.5.tgz", + "integrity": "sha512-n5ewvOjyG3IEpqGBahdPXODFSpVlSz3H4LF76Sx0XAqpIOqyJ5bIb2PrdYuH2ogBMAQPh+o5tnoH4nJpBr8U0Q==", "requires": { - "@vue/runtime-core": "3.3.13", - "@vue/shared": "3.3.13", + "@vue/runtime-core": "3.4.5", + "@vue/shared": "3.4.5", "csstype": "^3.1.3" } }, "@vue/server-renderer": { - "version": "3.3.13", - "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.3.13.tgz", - "integrity": "sha512-vSnN+nuf6iSqTL3Qgx/9A+BT+0Zf/VJOgF5uMZrKjYPs38GMYyAU1coDyBNHauehXDaP+zl73VhwWv0vBRBHcg==", + "version": "3.4.5", + "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.4.5.tgz", + "integrity": "sha512-jOFc/VE87yvifQpNju12VcqimH8pBLxdcT+t3xMeiED1K6DfH9SORyhFEoZlW5TG2Vwfn3Ul5KE+1aC99xnSBg==", "requires": { - "@vue/compiler-ssr": "3.3.13", - "@vue/shared": "3.3.13" + "@vue/compiler-ssr": "3.4.5", + "@vue/shared": "3.4.5" } }, "@vue/shared": { - "version": "3.3.13", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.3.13.tgz", - "integrity": "sha512-/zYUwiHD8j7gKx2argXEMCUXVST6q/21DFU0sTfNX0URJroCe3b1UF6vLJ3lQDfLNIiiRl2ONp7Nh5UVWS6QnA==" + "version": "3.4.5", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.5.tgz", + "integrity": "sha512-6XptuzlMvN4l4cDnDw36pdGEV+9njYkQ1ZE0Q6iZLwrKefKaOJyiFmcP3/KBDHbt72cJZGtllAc1GaHe6XGAyg==" }, "@vue/tsconfig": { "version": "0.5.1", @@ -1912,6 +1892,11 @@ "integrity": "sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg==", "dev": true }, + "entities": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==" + }, "esbuild": { "version": "0.19.7", "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.19.7.tgz", @@ -2202,15 +2187,15 @@ } }, "vue": { - "version": "3.3.13", - "resolved": "https://registry.npmjs.org/vue/-/vue-3.3.13.tgz", - "integrity": "sha512-LDnUpQvDgsfc0u/YgtAgTMXJlJQqjkxW1PVcOnJA5cshPleULDjHi7U45pl2VJYazSSvLH8UKcid/kzH8I0a0Q==", + "version": "3.4.5", + "resolved": "https://registry.npmjs.org/vue/-/vue-3.4.5.tgz", + "integrity": "sha512-VH6nHFhLPjgu2oh5vEBXoNZxsGHuZNr3qf4PHClwJWw6IDqw6B3x+4J+ABdoZ0aJuT8Zi0zf3GpGlLQCrGWHrw==", "requires": { - "@vue/compiler-dom": "3.3.13", - "@vue/compiler-sfc": "3.3.13", - "@vue/runtime-dom": "3.3.13", - "@vue/server-renderer": "3.3.13", - "@vue/shared": "3.3.13" + "@vue/compiler-dom": "3.4.5", + "@vue/compiler-sfc": "3.4.5", + "@vue/runtime-dom": "3.4.5", + "@vue/server-renderer": "3.4.5", + "@vue/shared": "3.4.5" } }, "vue-template-compiler": { @@ -2245,19 +2230,12 @@ "vue3-simple-icons": { "version": "file:..", "requires": { - "@vitejs/plugin-vue": "^4.5.2", - "@vue/compiler-sfc": "^3.3.13", - "fs-extra": "^11.2.0", - "marked": "^11.1.0", - "pascal-case": "^3.1.2", - "simple-icons": "^10.4.0", - "tslib": "^2.6.2", - "typeface-nunito": "^1.1.13", + "@vitejs/plugin-vue": "^5.0.2", + "@vue/compiler-sfc": "^3.4.5", "typescript": "^5.3.3", - "vite": "^5.0.10", + "vite": "^5.0.11", "vue": "^3.2.37", - "vue-tsc": "^1.8.26", - "written-number": "^0.11.1" + "vue-tsc": "^1.8.27" } }, "yallist": { diff --git a/example/package.json b/example/package.json index 1c85f1f..969ebc6 100644 --- a/example/package.json +++ b/example/package.json @@ -8,7 +8,7 @@ "preview": "vite preview" }, "dependencies": { - "vue": "^3.3.12", + "vue": "^3.4.5", "lodash.kebabcase": "^4.1.1", "prismjs": "^1.29.0", "vue-tippy": "^6.4.1", @@ -18,7 +18,7 @@ "@kyvg/vue3-notification": "^3.1.3" }, "devDependencies": { - "@vitejs/plugin-vue": "^5.0.0", + "@vitejs/plugin-vue": "^5.0.2", "vite": "^5.0", "sass": "^1.69", "prettier": "^3", diff --git a/package-lock.json b/package-lock.json index 63cde85..6811aa6 100644 --- a/package-lock.json +++ b/package-lock.json @@ -12,19 +12,12 @@ "vue": "^3" }, "devDependencies": { - "@vitejs/plugin-vue": "^4.5.2", - "@vue/compiler-sfc": "^3.3.13", - "fs-extra": "^11.2.0", - "marked": "^11.1.0", - "pascal-case": "^3.1.2", - "simple-icons": "^10.4.0", - "tslib": "^2.6.2", - "typeface-nunito": "^1.1.13", + "@vitejs/plugin-vue": "^5.0.2", + "@vue/compiler-sfc": "^3.4.5", "typescript": "^5.3.3", - "vite": "^5.0.10", + "vite": "^5.0.11", "vue": "^3.2.37", - "vue-tsc": "^1.8.26", - "written-number": "^0.11.1" + "vue-tsc": "^1.8.27" } }, "node_modules/@babel/parser": { @@ -554,15 +547,15 @@ ] }, "node_modules/@vitejs/plugin-vue": { - "version": "4.5.2", - "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-4.5.2.tgz", - "integrity": "sha512-UGR3DlzLi/SaVBPX0cnSyE37vqxU3O6chn8l0HJNzQzDia6/Au2A4xKv+iIJW8w2daf80G7TYHhi1pAUjdZ0bQ==", + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-5.0.2.tgz", + "integrity": "sha512-kEjJHrLb5ePBvjD0SPZwJlw1QTRcjjCA9sB5VyfonoXVBxTS7TMnqL6EkLt1Eu61RDeiuZ/WN9Hf6PxXhPI2uA==", "dev": true, "engines": { - "node": "^14.18.0 || >=16.0.0" + "node": "^18.0.0 || >=20.0.0" }, "peerDependencies": { - "vite": "^4.0.0 || ^5.0.0", + "vite": "^5.0.0", "vue": "^3.2.25" } }, @@ -617,17 +610,16 @@ } }, "node_modules/@vue/compiler-sfc": { - "version": "3.3.13", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.3.13.tgz", - "integrity": "sha512-DQVmHEy/EKIgggvnGRLx21hSqnr1smUS9Aq8tfxiiot8UR0/pXKHN9k78/qQ7etyQTFj5em5nruODON7dBeumw==", + "version": "3.4.5", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.5.tgz", + "integrity": "sha512-jauvkDuSSUbP0ebhfNqljhShA90YEfX/0wZ+w40oZF43IjGyWYjqYaJbvMJwGOd+9+vODW6eSvnk28f0SGV7OQ==", "dev": true, "dependencies": { - "@babel/parser": "^7.23.5", - "@vue/compiler-core": "3.3.13", - "@vue/compiler-dom": "3.3.13", - "@vue/compiler-ssr": "3.3.13", - "@vue/reactivity-transform": "3.3.13", - "@vue/shared": "3.3.13", + "@babel/parser": "^7.23.6", + "@vue/compiler-core": "3.4.5", + "@vue/compiler-dom": "3.4.5", + "@vue/compiler-ssr": "3.4.5", + "@vue/shared": "3.4.5", "estree-walker": "^2.0.2", "magic-string": "^0.30.5", "postcss": "^8.4.32", @@ -635,41 +627,42 @@ } }, "node_modules/@vue/compiler-sfc/node_modules/@vue/compiler-core": { - "version": "3.3.13", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.3.13.tgz", - "integrity": "sha512-bwi9HShGu7uaZLOErZgsH2+ojsEdsjerbf2cMXPwmvcgZfVPZ2BVZzCVnwZBxTAYd6Mzbmf6izcUNDkWnBBQ6A==", + "version": "3.4.5", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.5.tgz", + "integrity": "sha512-Daka7P1z2AgKjzuueWXhwzIsKu0NkLB6vGbNVEV2iJ8GJTrzraZo/Sk4GWCMRtd/qVi3zwnk+Owbd/xSZbwHtQ==", "dev": true, "dependencies": { - "@babel/parser": "^7.23.5", - "@vue/shared": "3.3.13", + "@babel/parser": "^7.23.6", + "@vue/shared": "3.4.5", + "entities": "^4.5.0", "estree-walker": "^2.0.2", "source-map-js": "^1.0.2" } }, "node_modules/@vue/compiler-sfc/node_modules/@vue/compiler-dom": { - "version": "3.3.13", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.3.13.tgz", - "integrity": "sha512-EYRDpbLadGtNL0Gph+HoKiYqXLqZ0xSSpR5Dvnu/Ep7ggaCbjRDIus1MMxTS2Qm0koXED4xSlvTZaTnI8cYAsw==", + "version": "3.4.5", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.5.tgz", + "integrity": "sha512-J8YlxknJVd90SXFJ4HwGANSAXsx5I0lK30sO/zvYV7s5gXf7gZR7r/1BmZ2ju7RGH1lnc6bpBc6nL61yW+PsAQ==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.3.13", - "@vue/shared": "3.3.13" + "@vue/compiler-core": "3.4.5", + "@vue/shared": "3.4.5" } }, "node_modules/@vue/compiler-sfc/node_modules/@vue/compiler-ssr": { - "version": "3.3.13", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.3.13.tgz", - "integrity": "sha512-d/P3bCeUGmkJNS1QUZSAvoCIW4fkOKK3l2deE7zrp0ypJEy+En2AcypIkqvcFQOcw3F0zt2VfMvNsA9JmExTaw==", + "version": "3.4.5", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.5.tgz", + "integrity": "sha512-DDdEcDzj2lWTMfUMMtEpLDhURai9LhM0zSZ219jCt7b2Vyl0/jy3keFgCPMitG0V1S1YG4Cmws3lWHWdxHQOpg==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.3.13", - "@vue/shared": "3.3.13" + "@vue/compiler-dom": "3.4.5", + "@vue/shared": "3.4.5" } }, "node_modules/@vue/compiler-sfc/node_modules/@vue/shared": { - "version": "3.3.13", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.3.13.tgz", - "integrity": "sha512-/zYUwiHD8j7gKx2argXEMCUXVST6q/21DFU0sTfNX0URJroCe3b1UF6vLJ3lQDfLNIiiRl2ONp7Nh5UVWS6QnA==", + "version": "3.4.5", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.5.tgz", + "integrity": "sha512-6XptuzlMvN4l4cDnDw36pdGEV+9njYkQ1ZE0Q6iZLwrKefKaOJyiFmcP3/KBDHbt72cJZGtllAc1GaHe6XGAyg==", "dev": true }, "node_modules/@vue/compiler-ssr": { @@ -683,9 +676,9 @@ } }, "node_modules/@vue/language-core": { - "version": "1.8.26", - "resolved": "https://registry.npmjs.org/@vue/language-core/-/language-core-1.8.26.tgz", - "integrity": "sha512-9cmza/Y2YTiOnKZ0Mi9zsNn7Irw+aKirP+5LLWVSNaL3fjKJjW1cD3HGBckasY2RuVh4YycvdA9/Q6EBpVd/7Q==", + "version": "1.8.27", + "resolved": "https://registry.npmjs.org/@vue/language-core/-/language-core-1.8.27.tgz", + "integrity": "sha512-L8Kc27VdQserNaCUNiSFdDl9LWT24ly8Hpwf1ECy3aFb9m6bDhBGQYOujDm21N7EW3moKIOKEanQwe1q5BK+mA==", "dev": true, "dependencies": { "@volar/language-core": "~1.11.1", @@ -716,37 +709,6 @@ "@vue/shared": "3.3.9" } }, - "node_modules/@vue/reactivity-transform": { - "version": "3.3.13", - "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.3.13.tgz", - "integrity": "sha512-oWnydGH0bBauhXvh5KXUy61xr9gKaMbtsMHk40IK9M4gMuKPJ342tKFarY0eQ6jef8906m35q37wwA8DMZOm5Q==", - "dev": true, - "dependencies": { - "@babel/parser": "^7.23.5", - "@vue/compiler-core": "3.3.13", - "@vue/shared": "3.3.13", - "estree-walker": "^2.0.2", - "magic-string": "^0.30.5" - } - }, - "node_modules/@vue/reactivity-transform/node_modules/@vue/compiler-core": { - "version": "3.3.13", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.3.13.tgz", - "integrity": "sha512-bwi9HShGu7uaZLOErZgsH2+ojsEdsjerbf2cMXPwmvcgZfVPZ2BVZzCVnwZBxTAYd6Mzbmf6izcUNDkWnBBQ6A==", - "dev": true, - "dependencies": { - "@babel/parser": "^7.23.5", - "@vue/shared": "3.3.13", - "estree-walker": "^2.0.2", - "source-map-js": "^1.0.2" - } - }, - "node_modules/@vue/reactivity-transform/node_modules/@vue/shared": { - "version": "3.3.13", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.3.13.tgz", - "integrity": "sha512-/zYUwiHD8j7gKx2argXEMCUXVST6q/21DFU0sTfNX0URJroCe3b1UF6vLJ3lQDfLNIiiRl2ONp7Nh5UVWS6QnA==", - "dev": true - }, "node_modules/@vue/runtime-core": { "version": "3.3.9", "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.3.9.tgz", @@ -820,6 +782,18 @@ "integrity": "sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg==", "dev": true }, + "node_modules/entities": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "dev": true, + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, "node_modules/esbuild": { "version": "0.19.7", "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.19.7.tgz", @@ -863,20 +837,6 @@ "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", "dev": true }, - "node_modules/fs-extra": { - "version": "11.2.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.2.0.tgz", - "integrity": "sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==", - "dev": true, - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=14.14" - } - }, "node_modules/fsevents": { "version": "2.3.3", "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", @@ -891,12 +851,6 @@ "node": "^8.16.0 || ^10.6.0 || >=11.0.0" } }, - "node_modules/graceful-fs": { - "version": "4.2.11", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", - "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", - "dev": true - }, "node_modules/he": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", @@ -906,27 +860,6 @@ "he": "bin/he" } }, - "node_modules/jsonfile": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", - "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", - "dev": true, - "dependencies": { - "universalify": "^2.0.0" - }, - "optionalDependencies": { - "graceful-fs": "^4.1.6" - } - }, - "node_modules/lower-case": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz", - "integrity": "sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==", - "dev": true, - "dependencies": { - "tslib": "^2.0.3" - } - }, "node_modules/lru-cache": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", @@ -951,18 +884,6 @@ "node": ">=12" } }, - "node_modules/marked": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/marked/-/marked-11.1.0.tgz", - "integrity": "sha512-fvKJWAPEafVj1dwGwcPI5mBB/0pvViL6NlCbNDG1HOIRwwAU/jeMoFxfbRLuirO1wRH7m4yPvBqD/O1wyWvayw==", - "dev": true, - "bin": { - "marked": "bin/marked.js" - }, - "engines": { - "node": ">= 18" - } - }, "node_modules/minimatch": { "version": "9.0.3", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", @@ -1002,26 +923,6 @@ "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" } }, - "node_modules/no-case": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz", - "integrity": "sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==", - "dev": true, - "dependencies": { - "lower-case": "^2.0.2", - "tslib": "^2.0.3" - } - }, - "node_modules/pascal-case": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/pascal-case/-/pascal-case-3.1.2.tgz", - "integrity": "sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==", - "dev": true, - "dependencies": { - "no-case": "^3.0.4", - "tslib": "^2.0.3" - } - }, "node_modules/path-browserify": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz", @@ -1105,19 +1006,6 @@ "node": ">=10" } }, - "node_modules/simple-icons": { - "version": "10.4.0", - "resolved": "https://registry.npmjs.org/simple-icons/-/simple-icons-10.4.0.tgz", - "integrity": "sha512-XBoU1ljCsWjw59IVkaQ1nKc0PiaDAAKNFVx59ueC0tBy4WY/I4Q040sGj6ok2cZRLT8zBzL1HaTubi8MRqmojQ==", - "dev": true, - "engines": { - "node": ">=0.12.18" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/simple-icons" - } - }, "node_modules/source-map-js": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", @@ -1127,18 +1015,6 @@ "node": ">=0.10.0" } }, - "node_modules/tslib": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", - "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==", - "dev": true - }, - "node_modules/typeface-nunito": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/typeface-nunito/-/typeface-nunito-1.1.13.tgz", - "integrity": "sha512-S7tN6pMnJapUxRDNa/RPXtcsxJC0KkBNPFOfGpHCkatVLm+6ltMedgeGtr1lPZsGFXGN890TZmE18bq2pdsmKw==", - "dev": true - }, "node_modules/typescript": { "version": "5.3.3", "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.3.3.tgz", @@ -1152,19 +1028,10 @@ "node": ">=14.17" } }, - "node_modules/universalify": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", - "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", - "dev": true, - "engines": { - "node": ">= 10.0.0" - } - }, "node_modules/vite": { - "version": "5.0.10", - "resolved": "https://registry.npmjs.org/vite/-/vite-5.0.10.tgz", - "integrity": "sha512-2P8J7WWgmc355HUMlFrwofacvr98DAjoE52BfdbwQtyLH06XKwaL/FMnmKM2crF0iX4MpmMKoDlNCB1ok7zHCw==", + "version": "5.0.11", + "resolved": "https://registry.npmjs.org/vite/-/vite-5.0.11.tgz", + "integrity": "sha512-XBMnDjZcNAw/G1gEiskiM1v6yzM4GE5aMGvhWTlHAYYhxb7S3/V1s3m2LDHa8Vh6yIWYYB0iJwsEaS523c4oYA==", "dev": true, "dependencies": { "esbuild": "^0.19.3", @@ -1248,13 +1115,13 @@ } }, "node_modules/vue-tsc": { - "version": "1.8.26", - "resolved": "https://registry.npmjs.org/vue-tsc/-/vue-tsc-1.8.26.tgz", - "integrity": "sha512-jMEJ4aqU/l1hdgmeExH5h1TFoN+hbho0A2ZAhHy53/947DGm7Qj/bpB85VpECOCwV00h7JYNVnvoD2ceOorB4Q==", + "version": "1.8.27", + "resolved": "https://registry.npmjs.org/vue-tsc/-/vue-tsc-1.8.27.tgz", + "integrity": "sha512-WesKCAZCRAbmmhuGl3+VrdWItEvfoFIPXOvUJkjULi+x+6G/Dy69yO3TBRJDr9eUlmsNAwVmxsNZxvHKzbkKdg==", "dev": true, "dependencies": { "@volar/typescript": "~1.11.1", - "@vue/language-core": "1.8.26", + "@vue/language-core": "1.8.27", "semver": "^7.5.4" }, "bin": { @@ -1295,12 +1162,6 @@ "magic-string": "^0.30.5" } }, - "node_modules/written-number": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/written-number/-/written-number-0.11.1.tgz", - "integrity": "sha512-LhQ68uUnzHH0bwm/QiGA9JwqgadSDOwqB2AIs/LBsrOY6ScqVXKRN2slTCeKAhstDBJ/Of/Yxcjn0pnQmVlmtg==", - "dev": true - }, "node_modules/yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", diff --git a/package.json b/package.json index efd17c1..59dd834 100644 --- a/package.json +++ b/package.json @@ -13,16 +13,16 @@ ".": { "import": "./dist/vue3-simple-icons.mjs", "require": "./dist/vue3-simple-icons.umd.js", - "types": "./dist/types/main.d.ts" + "types": "./dist/types/index.d.ts" } }, - "types": "./dist/types/main.d.ts", + "types": "./dist/types/index.d.ts", "files": [ "dist" ], "scripts": { "build": "npm run build:icons && npm run build:dist && npm run build:type", - "build:icons": "node build", + "build:icons": "npm run --prefix buildTools build", "build:dist": "vite build", "build:type": "vue-tsc --emitDeclarationOnly" }, @@ -32,17 +32,10 @@ }, "devDependencies": { "typescript": "^5.3.3", - "@vitejs/plugin-vue": "^4.5.2", - "@vue/compiler-sfc": "^3.3.13", - "fs-extra": "^11.2.0", - "marked": "^11.1.0", - "pascal-case": "^3.1.2", - "simple-icons": "^10.4.0", - "tslib": "^2.6.2", - "typeface-nunito": "^1.1.13", - "vite": "^5.0.10", + "@vitejs/plugin-vue": "^5.0.2", + "@vue/compiler-sfc": "^3.4.5", + "vite": "^5.0.11", "vue": "^3.2.37", - "written-number": "^0.11.1", - "vue-tsc": "^1.8.26" + "vue-tsc": "^1.8.27" } } \ No newline at end of file diff --git a/tsconfig.json b/tsconfig.json index cfe657a..e06a4f6 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -27,10 +27,10 @@ "declaration": true }, "include": [ - "src/main.ts", + "src/index.ts", "src/components/*.vue", ], "exclude": [ "node_modules" ] -} \ No newline at end of file +} diff --git a/vite.config.js b/vite.config.js index f431833..08a230c 100644 --- a/vite.config.js +++ b/vite.config.js @@ -14,7 +14,7 @@ module.exports = defineConfig({ build: { target: 'esnext', lib: { - entry: path.resolve(__dirname, 'src/main.ts'), + entry: path.resolve(__dirname, 'src/index.ts'), name: 'Vue3-simple-icons', }, rollupOptions: {