├── .gitignore ├── .prettierrc ├── .yarn └── install-state.gz ├── .yarnrc.yml ├── LICENCE ├── README.md ├── bin └── cli.mjs ├── package.json ├── src ├── environment.mjs ├── environment │ └── cachedir.mjs ├── gleam.mjs ├── gleam │ └── compiler.mjs ├── installer.mjs └── main.mjs └── yarn.lock /.gitignore: -------------------------------------------------------------------------------- 1 | # Yarn specific stuff 2 | .yarn/* 3 | !.yarn/patches 4 | !.yarn/plugins 5 | !.yarn/releases 6 | !.yarn/sdks 7 | !.yarn/versions 8 | 9 | # Classical installation 10 | node_modules/ 11 | 12 | # OS files 13 | .DS_Store 14 | 15 | # Specific local files 16 | bin/gleam 17 | 18 | # Swap the comments on the following lines if you wish to use zero-installs 19 | # In that case, don't forget to run `yarn config set enableGlobalCache false`! 20 | # Documentation here: https://yarnpkg.com/features/caching#zero-installs 21 | 22 | #!.yarn/cache 23 | .pnp.* 24 | -------------------------------------------------------------------------------- /.prettierrc: -------------------------------------------------------------------------------- 1 | { 2 | "printWidth": 80, 3 | "semi": false, 4 | "singleQuote": true, 5 | "arrowParens": "avoid", 6 | "trailingComma": "es5", 7 | "importOrder": ["^\\@.*$", "^[^@\\.].*$", "^\\..*$"], 8 | "importOrderSortSpecifiers": true, 9 | "plugins": ["@trivago/prettier-plugin-sort-imports"], 10 | "proseWrap": "always" 11 | } 12 | -------------------------------------------------------------------------------- /.yarn/install-state.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghivert/gleam-lang-npm/ba4b872ea76d2a40af040cbe932512d16393645d/.yarn/install-state.gz -------------------------------------------------------------------------------- /.yarnrc.yml: -------------------------------------------------------------------------------- 1 | nodeLinker: node-modules 2 | -------------------------------------------------------------------------------- /LICENCE: -------------------------------------------------------------------------------- 1 | Copyright 2024 Guillaume Hivert 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: 4 | 5 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. 6 | 7 | THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 8 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Gleam Lang 2 | 3 | [Gleam](https://gleam.run) is a functional language that compiles to JavaScript! 4 | More information can be found 5 | [in the documentation](https://gleam.run/documentation/) directly, to get you 6 | started! 7 | 8 | ## What is this package for? 9 | 10 | For stantard development purposes, a classic gleam installation should be done, 11 | [following the official instructions](https://gleam.run/getting-started/installing/). 12 | However, having a gleam package on NPM allows everyone to embed gleam directly 13 | from a `package.json`, for certain scenarios: 14 | 15 | - When running on CI, and dependent on the `package.json`. 16 | - When you can't install softwares directly. 17 | - When you want to maintain multiple versions of gleam with NPM. 18 | 19 | ## Installation 20 | 21 | ``` 22 | yarn add @chouquette/gleam 23 | ``` 24 | 25 | ## Usage 26 | 27 | ``` 28 | yarn gleam --help 29 | ``` 30 | 31 | ## Goal of the package 32 | 33 | This package will mimic main releases of gleam, meaning all intermediates 34 | versions (1.1.0-rc1 for instance) will not be taken into account. Expect a new 35 | version of this package to ship soon after the official releases lands on 36 | GitHub. 37 | 38 | ## Limitations 39 | 40 | Because gleam compiles both to JS and Erlang, the gleam compiler can output both 41 | code. However, do not expect this package to help in Erlang development. This 42 | package is mainly aimed to use in the JS ecosystem, and do not ship Erlang 43 | runtime neither rebar3. Follow the classical installation of gleam and Erlang to 44 | get started with Erlang development! 45 | 46 | In case you succeed to use this package in an Erlang workflow, congrats! You 47 | achieved a strong engineering achievement! Do not ask for help if it bug though! 48 | 😇 49 | -------------------------------------------------------------------------------- /bin/cli.mjs: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env node 2 | import * as installer from '#chouquette/installer' 3 | import * as childProcess from 'node:child_process' 4 | import * as fs from 'node:fs' 5 | import * as path from 'node:path' 6 | 7 | // Replaces __dirname. 8 | const { cache, dirname } = installer.directories() 9 | const data = await installer.prepareDownload(dirname, cache) 10 | 11 | // User can run install with ignore scripts, compiler should be 12 | // downloaded before using it. 13 | const isExec = fs.existsSync(data.binPath) 14 | if (!isExec) await installer.install() 15 | 16 | // Run the compiler. 17 | const args = process.argv.slice(2) 18 | const options = { stdio: 'inherit' } 19 | childProcess.spawn(data.binPath, args, options).on('exit', process.exit) 20 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@chouquette/gleam", 3 | "version": "1.11.1", 4 | "author": "Guillaume Hivert ", 5 | "license": "MIT", 6 | "type": "module", 7 | "bin": "bin/cli.mjs", 8 | "repository": "https://github.com/ghivert/gleam-lang-npm", 9 | "packageManager": "yarn@4.6.0", 10 | "imports": { 11 | "#chouquette/*": "./src/*.mjs" 12 | }, 13 | "scripts": { 14 | "install": "node src/main.mjs" 15 | }, 16 | "keywords": [ 17 | "beam", 18 | "bin", 19 | "binary", 20 | "build", 21 | "bundler", 22 | "cli", 23 | "compile", 24 | "compiler", 25 | "erlang", 26 | "fallback", 27 | "gleam", 28 | "install", 29 | "installation", 30 | "lustre", 31 | "wrapper" 32 | ], 33 | "devDependencies": { 34 | "@trivago/prettier-plugin-sort-imports": "^4.3.0", 35 | "prettier": "^3.2.5" 36 | }, 37 | "dependencies": { 38 | "tar": "^7.1.0" 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /src/environment.mjs: -------------------------------------------------------------------------------- 1 | import * as fs from 'node:fs' 2 | import * as path from 'node:path' 3 | 4 | export { cachedir } from './environment/cachedir.mjs' 5 | 6 | export async function infos(dirname) { 7 | const arch = getArch() 8 | const platform = getPlatform() 9 | const version = await getVersion(dirname) 10 | return { arch, platform, version } 11 | } 12 | 13 | export function dirname() { 14 | const file = new URL(import.meta.url) 15 | const dirname = path.dirname(file.pathname) 16 | return dirname 17 | } 18 | 19 | async function getVersion(dirname) { 20 | const pack = path.resolve(dirname, '../package.json') 21 | const content = await fs.promises.readFile(pack, 'utf-8') 22 | const package_ = JSON.parse(content) 23 | return `v${package_.version}` 24 | } 25 | 26 | function getArch() { 27 | switch (process.arch) { 28 | case 'arm64': 29 | return 'aarch64' 30 | case 'x64': 31 | return 'x86_64' 32 | default: 33 | return null 34 | } 35 | } 36 | 37 | function getPlatform() { 38 | switch (process.platform) { 39 | case 'darwin': 40 | return 'apple-darwin' 41 | case 'win32': 42 | return 'pc-windows-msvc' 43 | case 'aix': 44 | case 'android': 45 | case 'freebsd': 46 | case 'linux': 47 | case 'netbsd': 48 | case 'openbsd': 49 | case 'sunos': 50 | return 'unknown-linux-musl' 51 | default: 52 | return null 53 | } 54 | } 55 | -------------------------------------------------------------------------------- /src/environment/cachedir.mjs: -------------------------------------------------------------------------------- 1 | import * as os from 'node:os' 2 | import * as path from 'node:path' 3 | 4 | function posix(id) { 5 | const xdgCache = process.env.XDG_CACHE_HOME 6 | const cacheHome = xdgCache || path.join(os.homedir(), '.cache') 7 | return path.join(cacheHome, id) 8 | } 9 | 10 | function darwin(id) { 11 | return path.join(os.homedir(), 'Library', 'Caches', id) 12 | } 13 | 14 | function win32(id) { 15 | const local = process.env.LOCALAPPDATA 16 | const appData = local || path.join(os.homedir(), 'AppData', 'Local') 17 | return path.join(appData, id, 'Cache') 18 | } 19 | 20 | export function cachedir(id) { 21 | switch (process.platform) { 22 | case 'darwin': 23 | return darwin(id) 24 | case 'win32': 25 | return win32(id) 26 | case 'aix': 27 | case 'android': 28 | case 'freebsd': 29 | case 'linux': 30 | case 'netbsd': 31 | case 'openbsd': 32 | case 'sunos': 33 | return posix(id) 34 | default: 35 | return null 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /src/gleam.mjs: -------------------------------------------------------------------------------- 1 | export * as compiler from './gleam/compiler.mjs' 2 | -------------------------------------------------------------------------------- /src/gleam/compiler.mjs: -------------------------------------------------------------------------------- 1 | import * as fs from 'node:fs' 2 | 3 | function endpoint(version, arch, platform) { 4 | const base = 'https://github.com/gleam-lang/gleam/releases/download' 5 | return `${base}/${version}/gleam-${version}-${arch}-${platform}.tar.gz` 6 | } 7 | 8 | export async function download({ tgzPath, version, arch, platform }) { 9 | if (fs.existsSync(tgzPath)) return 10 | const endpt = endpoint(version, arch, platform) 11 | const res = await fetch(endpt) 12 | if (!res.ok) throw new Error('Unreachable') 13 | const tgz = await res.arrayBuffer() 14 | await fs.promises.writeFile(tgzPath, Buffer.from(tgz)) 15 | } 16 | -------------------------------------------------------------------------------- /src/installer.mjs: -------------------------------------------------------------------------------- 1 | import * as fs from 'node:fs' 2 | import * as path from 'node:path' 3 | import * as tar from 'tar' 4 | import * as environment from './environment.mjs' 5 | import * as gleam from './gleam.mjs' 6 | 7 | export async function install(options) { 8 | const { dirname, cache } = directories() 9 | const data = await prepareDownload(dirname, cache) 10 | try { 11 | await fs.promises.mkdir(cache, { recursive: true }) 12 | await fs.promises.mkdir(data.binDir, { recursive: true }) 13 | await gleam.compiler.download(data) 14 | await tar.extract({ file: data.tgzPath, cwd: data.binDir }) 15 | } catch (error) { 16 | const isBadArchive = error.message.includes('TAR_BAD_ARCHIVE') 17 | const shouldRetry = !(options?.propagateErrors ?? false) 18 | const archiveExists = fs.existsSync(data.tgzPath) 19 | if (isBadArchive && shouldRetry && archiveExists) { 20 | await fs.promises.rm(data.tgzPath) 21 | return install({ propagateErrors: true }) 22 | } 23 | console.error(error) 24 | console.error( 25 | [ 26 | '--- ERROR -----------------------------------------------------', 27 | 'It looks like your operating system does not support Gleam yet.', 28 | 'Currently, Gleam supports macOS, Linux and Windows. ', 29 | '---------------------------------------------------------------', 30 | ].join('\n') 31 | ) 32 | } 33 | } 34 | 35 | export function directories() { 36 | const dirname = environment.dirname() 37 | const cache = environment.cachedir('gleam-npm') 38 | if (!cache) throw new Error() 39 | return { dirname, cache } 40 | } 41 | 42 | export async function prepareDownload(dirname, cache) { 43 | const { arch, version, platform } = await environment.infos(dirname) 44 | if (!arch || !platform) throw new Error('Impossible to detect the env.') 45 | const archiveName = `gleam-${version}-${arch}-${platform}.tgz` 46 | const binName = `gleam-${version}-${arch}-${platform}` 47 | const tgzPath = path.resolve(cache, archiveName) 48 | const binDir = path.resolve(cache, binName) 49 | const binPath = path.resolve(binDir, 'gleam') 50 | return { tgzPath, binDir, binPath, arch, version, platform } 51 | } 52 | -------------------------------------------------------------------------------- /src/main.mjs: -------------------------------------------------------------------------------- 1 | import * as installer from './installer.mjs' 2 | 3 | installer.install() 4 | -------------------------------------------------------------------------------- /yarn.lock: -------------------------------------------------------------------------------- 1 | # This file is generated by running "yarn install" inside your project. 2 | # Manual changes might be lost - proceed with caution! 3 | 4 | __metadata: 5 | version: 8 6 | cacheKey: 10c0 7 | 8 | "@babel/code-frame@npm:^7.22.13, @babel/code-frame@npm:^7.24.7": 9 | version: 7.24.7 10 | resolution: "@babel/code-frame@npm:7.24.7" 11 | dependencies: 12 | "@babel/highlight": "npm:^7.24.7" 13 | picocolors: "npm:^1.0.0" 14 | checksum: 10c0/ab0af539473a9f5aeaac7047e377cb4f4edd255a81d84a76058595f8540784cc3fbe8acf73f1e073981104562490aabfb23008cd66dc677a456a4ed5390fdde6 15 | languageName: node 16 | linkType: hard 17 | 18 | "@babel/generator@npm:7.17.7": 19 | version: 7.17.7 20 | resolution: "@babel/generator@npm:7.17.7" 21 | dependencies: 22 | "@babel/types": "npm:^7.17.0" 23 | jsesc: "npm:^2.5.1" 24 | source-map: "npm:^0.5.0" 25 | checksum: 10c0/8088453c4418e0ee6528506fbd5847bbdfd56327a0025ca9496a259261e162c594ffd08be0d63e74c32feced795616772f38acc5f5e493a86a45fd439fd9feb0 26 | languageName: node 27 | linkType: hard 28 | 29 | "@babel/generator@npm:^7.23.0": 30 | version: 7.24.7 31 | resolution: "@babel/generator@npm:7.24.7" 32 | dependencies: 33 | "@babel/types": "npm:^7.24.7" 34 | "@jridgewell/gen-mapping": "npm:^0.3.5" 35 | "@jridgewell/trace-mapping": "npm:^0.3.25" 36 | jsesc: "npm:^2.5.1" 37 | checksum: 10c0/06b1f3350baf527a3309e50ffd7065f7aee04dd06e1e7db794ddfde7fe9d81f28df64edd587173f8f9295496a7ddb74b9a185d4bf4de7bb619e6d4ec45c8fd35 38 | languageName: node 39 | linkType: hard 40 | 41 | "@babel/helper-environment-visitor@npm:^7.22.20": 42 | version: 7.24.7 43 | resolution: "@babel/helper-environment-visitor@npm:7.24.7" 44 | dependencies: 45 | "@babel/types": "npm:^7.24.7" 46 | checksum: 10c0/36ece78882b5960e2d26abf13cf15ff5689bf7c325b10a2895a74a499e712de0d305f8d78bb382dd3c05cfba7e47ec98fe28aab5674243e0625cd38438dd0b2d 47 | languageName: node 48 | linkType: hard 49 | 50 | "@babel/helper-function-name@npm:^7.23.0": 51 | version: 7.24.7 52 | resolution: "@babel/helper-function-name@npm:7.24.7" 53 | dependencies: 54 | "@babel/template": "npm:^7.24.7" 55 | "@babel/types": "npm:^7.24.7" 56 | checksum: 10c0/e5e41e6cf86bd0f8bf272cbb6e7c5ee0f3e9660414174435a46653efba4f2479ce03ce04abff2aa2ef9359cf057c79c06cb7b134a565ad9c0e8a50dcdc3b43c4 57 | languageName: node 58 | linkType: hard 59 | 60 | "@babel/helper-hoist-variables@npm:^7.22.5": 61 | version: 7.24.7 62 | resolution: "@babel/helper-hoist-variables@npm:7.24.7" 63 | dependencies: 64 | "@babel/types": "npm:^7.24.7" 65 | checksum: 10c0/19ee37563bbd1219f9d98991ad0e9abef77803ee5945fd85aa7aa62a67c69efca9a801696a1b58dda27f211e878b3327789e6fd2a6f6c725ccefe36774b5ce95 66 | languageName: node 67 | linkType: hard 68 | 69 | "@babel/helper-split-export-declaration@npm:^7.22.6": 70 | version: 7.24.7 71 | resolution: "@babel/helper-split-export-declaration@npm:7.24.7" 72 | dependencies: 73 | "@babel/types": "npm:^7.24.7" 74 | checksum: 10c0/0254577d7086bf09b01bbde98f731d4fcf4b7c3fa9634fdb87929801307c1f6202a1352e3faa5492450fa8da4420542d44de604daf540704ff349594a78184f6 75 | languageName: node 76 | linkType: hard 77 | 78 | "@babel/helper-string-parser@npm:^7.24.7": 79 | version: 7.24.7 80 | resolution: "@babel/helper-string-parser@npm:7.24.7" 81 | checksum: 10c0/47840c7004e735f3dc93939c77b099bb41a64bf3dda0cae62f60e6f74a5ff80b63e9b7cf77b5ec25a324516381fc994e1f62f922533236a8e3a6af57decb5e1e 82 | languageName: node 83 | linkType: hard 84 | 85 | "@babel/helper-string-parser@npm:^7.27.1": 86 | version: 7.27.1 87 | resolution: "@babel/helper-string-parser@npm:7.27.1" 88 | checksum: 10c0/8bda3448e07b5583727c103560bcf9c4c24b3c1051a4c516d4050ef69df37bb9a4734a585fe12725b8c2763de0a265aa1e909b485a4e3270b7cfd3e4dbe4b602 89 | languageName: node 90 | linkType: hard 91 | 92 | "@babel/helper-validator-identifier@npm:^7.16.7, @babel/helper-validator-identifier@npm:^7.24.7": 93 | version: 7.24.7 94 | resolution: "@babel/helper-validator-identifier@npm:7.24.7" 95 | checksum: 10c0/87ad608694c9477814093ed5b5c080c2e06d44cb1924ae8320474a74415241223cc2a725eea2640dd783ff1e3390e5f95eede978bc540e870053152e58f1d651 96 | languageName: node 97 | linkType: hard 98 | 99 | "@babel/helper-validator-identifier@npm:^7.27.1": 100 | version: 7.27.1 101 | resolution: "@babel/helper-validator-identifier@npm:7.27.1" 102 | checksum: 10c0/c558f11c4871d526498e49d07a84752d1800bf72ac0d3dad100309a2eaba24efbf56ea59af5137ff15e3a00280ebe588560534b0e894a4750f8b1411d8f78b84 103 | languageName: node 104 | linkType: hard 105 | 106 | "@babel/highlight@npm:^7.24.7": 107 | version: 7.24.7 108 | resolution: "@babel/highlight@npm:7.24.7" 109 | dependencies: 110 | "@babel/helper-validator-identifier": "npm:^7.24.7" 111 | chalk: "npm:^2.4.2" 112 | js-tokens: "npm:^4.0.0" 113 | picocolors: "npm:^1.0.0" 114 | checksum: 10c0/674334c571d2bb9d1c89bdd87566383f59231e16bcdcf5bb7835babdf03c9ae585ca0887a7b25bdf78f303984af028df52831c7989fecebb5101cc132da9393a 115 | languageName: node 116 | linkType: hard 117 | 118 | "@babel/parser@npm:^7.20.5, @babel/parser@npm:^7.23.0, @babel/parser@npm:^7.24.7": 119 | version: 7.24.7 120 | resolution: "@babel/parser@npm:7.24.7" 121 | bin: 122 | parser: ./bin/babel-parser.js 123 | checksum: 10c0/8b244756872185a1c6f14b979b3535e682ff08cb5a2a5fd97cc36c017c7ef431ba76439e95e419d43000c5b07720495b00cf29a7f0d9a483643d08802b58819b 124 | languageName: node 125 | linkType: hard 126 | 127 | "@babel/template@npm:^7.24.7": 128 | version: 7.24.7 129 | resolution: "@babel/template@npm:7.24.7" 130 | dependencies: 131 | "@babel/code-frame": "npm:^7.24.7" 132 | "@babel/parser": "npm:^7.24.7" 133 | "@babel/types": "npm:^7.24.7" 134 | checksum: 10c0/95b0b3ee80fcef685b7f4426f5713a855ea2cd5ac4da829b213f8fb5afe48a2a14683c2ea04d446dbc7f711c33c5cd4a965ef34dcbe5bc387c9e966b67877ae3 135 | languageName: node 136 | linkType: hard 137 | 138 | "@babel/traverse@npm:7.23.2": 139 | version: 7.23.2 140 | resolution: "@babel/traverse@npm:7.23.2" 141 | dependencies: 142 | "@babel/code-frame": "npm:^7.22.13" 143 | "@babel/generator": "npm:^7.23.0" 144 | "@babel/helper-environment-visitor": "npm:^7.22.20" 145 | "@babel/helper-function-name": "npm:^7.23.0" 146 | "@babel/helper-hoist-variables": "npm:^7.22.5" 147 | "@babel/helper-split-export-declaration": "npm:^7.22.6" 148 | "@babel/parser": "npm:^7.23.0" 149 | "@babel/types": "npm:^7.23.0" 150 | debug: "npm:^4.1.0" 151 | globals: "npm:^11.1.0" 152 | checksum: 10c0/d096c7c4bab9262a2f658298a3c630ae4a15a10755bb257ae91d5ab3e3b2877438934859c8d34018b7727379fe6b26c4fa2efc81cf4c462a7fe00caf79fa02ff 153 | languageName: node 154 | linkType: hard 155 | 156 | "@babel/types@npm:7.17.0": 157 | version: 7.17.0 158 | resolution: "@babel/types@npm:7.17.0" 159 | dependencies: 160 | "@babel/helper-validator-identifier": "npm:^7.16.7" 161 | to-fast-properties: "npm:^2.0.0" 162 | checksum: 10c0/ad09224272b40fedb00b262677d12b6838f5b5df5c47d67059ba1181bd4805439993393a8de32459dae137b536d60ebfcaf39ae84d8b3873f1e81cc75f5aeae8 163 | languageName: node 164 | linkType: hard 165 | 166 | "@babel/types@npm:^7.17.0, @babel/types@npm:^7.23.0, @babel/types@npm:^7.24.7": 167 | version: 7.24.7 168 | resolution: "@babel/types@npm:7.24.7" 169 | dependencies: 170 | "@babel/helper-string-parser": "npm:^7.24.7" 171 | "@babel/helper-validator-identifier": "npm:^7.24.7" 172 | to-fast-properties: "npm:^2.0.0" 173 | checksum: 10c0/d9ecbfc3eb2b05fb1e6eeea546836ac30d990f395ef3fe3f75ced777a222c3cfc4489492f72e0ce3d9a5a28860a1ce5f81e66b88cf5088909068b3ff4fab72c1 174 | languageName: node 175 | linkType: hard 176 | 177 | "@babel/types@npm:^7.8.3": 178 | version: 7.27.3 179 | resolution: "@babel/types@npm:7.27.3" 180 | dependencies: 181 | "@babel/helper-string-parser": "npm:^7.27.1" 182 | "@babel/helper-validator-identifier": "npm:^7.27.1" 183 | checksum: 10c0/bafdfc98e722a6b91a783b6f24388f478fd775f0c0652e92220e08be2cc33e02d42088542f1953ac5e5ece2ac052172b3dadedf12bec9aae57899e92fb9a9757 184 | languageName: node 185 | linkType: hard 186 | 187 | "@chouquette/gleam@workspace:.": 188 | version: 0.0.0-use.local 189 | resolution: "@chouquette/gleam@workspace:." 190 | dependencies: 191 | "@trivago/prettier-plugin-sort-imports": "npm:^4.3.0" 192 | prettier: "npm:^3.2.5" 193 | tar: "npm:^7.1.0" 194 | bin: 195 | gleam: bin/cli.mjs 196 | languageName: unknown 197 | linkType: soft 198 | 199 | "@isaacs/cliui@npm:^8.0.2": 200 | version: 8.0.2 201 | resolution: "@isaacs/cliui@npm:8.0.2" 202 | dependencies: 203 | string-width: "npm:^5.1.2" 204 | string-width-cjs: "npm:string-width@^4.2.0" 205 | strip-ansi: "npm:^7.0.1" 206 | strip-ansi-cjs: "npm:strip-ansi@^6.0.1" 207 | wrap-ansi: "npm:^8.1.0" 208 | wrap-ansi-cjs: "npm:wrap-ansi@^7.0.0" 209 | checksum: 10c0/b1bf42535d49f11dc137f18d5e4e63a28c5569de438a221c369483731e9dac9fb797af554e8bf02b6192d1e5eba6e6402cf93900c3d0ac86391d00d04876789e 210 | languageName: node 211 | linkType: hard 212 | 213 | "@isaacs/fs-minipass@npm:^4.0.0": 214 | version: 4.0.1 215 | resolution: "@isaacs/fs-minipass@npm:4.0.1" 216 | dependencies: 217 | minipass: "npm:^7.0.4" 218 | checksum: 10c0/c25b6dc1598790d5b55c0947a9b7d111cfa92594db5296c3b907e2f533c033666f692a3939eadac17b1c7c40d362d0b0635dc874cbfe3e70db7c2b07cc97a5d2 219 | languageName: node 220 | linkType: hard 221 | 222 | "@jridgewell/gen-mapping@npm:^0.3.5": 223 | version: 0.3.5 224 | resolution: "@jridgewell/gen-mapping@npm:0.3.5" 225 | dependencies: 226 | "@jridgewell/set-array": "npm:^1.2.1" 227 | "@jridgewell/sourcemap-codec": "npm:^1.4.10" 228 | "@jridgewell/trace-mapping": "npm:^0.3.24" 229 | checksum: 10c0/1be4fd4a6b0f41337c4f5fdf4afc3bd19e39c3691924817108b82ffcb9c9e609c273f936932b9fba4b3a298ce2eb06d9bff4eb1cc3bd81c4f4ee1b4917e25feb 230 | languageName: node 231 | linkType: hard 232 | 233 | "@jridgewell/resolve-uri@npm:^3.1.0": 234 | version: 3.1.2 235 | resolution: "@jridgewell/resolve-uri@npm:3.1.2" 236 | checksum: 10c0/d502e6fb516b35032331406d4e962c21fe77cdf1cbdb49c6142bcbd9e30507094b18972778a6e27cbad756209cfe34b1a27729e6fa08a2eb92b33943f680cf1e 237 | languageName: node 238 | linkType: hard 239 | 240 | "@jridgewell/set-array@npm:^1.2.1": 241 | version: 1.2.1 242 | resolution: "@jridgewell/set-array@npm:1.2.1" 243 | checksum: 10c0/2a5aa7b4b5c3464c895c802d8ae3f3d2b92fcbe84ad12f8d0bfbb1f5ad006717e7577ee1fd2eac00c088abe486c7adb27976f45d2941ff6b0b92b2c3302c60f4 244 | languageName: node 245 | linkType: hard 246 | 247 | "@jridgewell/sourcemap-codec@npm:^1.4.10, @jridgewell/sourcemap-codec@npm:^1.4.14": 248 | version: 1.5.0 249 | resolution: "@jridgewell/sourcemap-codec@npm:1.5.0" 250 | checksum: 10c0/2eb864f276eb1096c3c11da3e9bb518f6d9fc0023c78344cdc037abadc725172c70314bdb360f2d4b7bffec7f5d657ce006816bc5d4ecb35e61b66132db00c18 251 | languageName: node 252 | linkType: hard 253 | 254 | "@jridgewell/trace-mapping@npm:^0.3.24, @jridgewell/trace-mapping@npm:^0.3.25": 255 | version: 0.3.25 256 | resolution: "@jridgewell/trace-mapping@npm:0.3.25" 257 | dependencies: 258 | "@jridgewell/resolve-uri": "npm:^3.1.0" 259 | "@jridgewell/sourcemap-codec": "npm:^1.4.14" 260 | checksum: 10c0/3d1ce6ebc69df9682a5a8896b414c6537e428a1d68b02fcc8363b04284a8ca0df04d0ee3013132252ab14f2527bc13bea6526a912ecb5658f0e39fd2860b4df4 261 | languageName: node 262 | linkType: hard 263 | 264 | "@pkgjs/parseargs@npm:^0.11.0": 265 | version: 0.11.0 266 | resolution: "@pkgjs/parseargs@npm:0.11.0" 267 | checksum: 10c0/5bd7576bb1b38a47a7fc7b51ac9f38748e772beebc56200450c4a817d712232b8f1d3ef70532c80840243c657d491cf6a6be1e3a214cff907645819fdc34aadd 268 | languageName: node 269 | linkType: hard 270 | 271 | "@trivago/prettier-plugin-sort-imports@npm:^4.3.0": 272 | version: 4.3.0 273 | resolution: "@trivago/prettier-plugin-sort-imports@npm:4.3.0" 274 | dependencies: 275 | "@babel/generator": "npm:7.17.7" 276 | "@babel/parser": "npm:^7.20.5" 277 | "@babel/traverse": "npm:7.23.2" 278 | "@babel/types": "npm:7.17.0" 279 | javascript-natural-sort: "npm:0.7.1" 280 | lodash: "npm:^4.17.21" 281 | peerDependencies: 282 | "@vue/compiler-sfc": 3.x 283 | prettier: 2.x - 3.x 284 | peerDependenciesMeta: 285 | "@vue/compiler-sfc": 286 | optional: true 287 | checksum: 10c0/42270fb9c89e54a3f8b6ac8c43e6d0e03350e2857e902cdad4de22c78ef1864da600525595311bc7e94e51c16c7dd3882c2e048a162fdab59761ffa893756aa2 288 | languageName: node 289 | linkType: hard 290 | 291 | "ansi-regex@npm:^5.0.1": 292 | version: 5.0.1 293 | resolution: "ansi-regex@npm:5.0.1" 294 | checksum: 10c0/9a64bb8627b434ba9327b60c027742e5d17ac69277960d041898596271d992d4d52ba7267a63ca10232e29f6107fc8a835f6ce8d719b88c5f8493f8254813737 295 | languageName: node 296 | linkType: hard 297 | 298 | "ansi-regex@npm:^6.0.1": 299 | version: 6.0.1 300 | resolution: "ansi-regex@npm:6.0.1" 301 | checksum: 10c0/cbe16dbd2c6b2735d1df7976a7070dd277326434f0212f43abf6d87674095d247968209babdaad31bb00882fa68807256ba9be340eec2f1004de14ca75f52a08 302 | languageName: node 303 | linkType: hard 304 | 305 | "ansi-styles@npm:^3.2.1": 306 | version: 3.2.1 307 | resolution: "ansi-styles@npm:3.2.1" 308 | dependencies: 309 | color-convert: "npm:^1.9.0" 310 | checksum: 10c0/ece5a8ef069fcc5298f67e3f4771a663129abd174ea2dfa87923a2be2abf6cd367ef72ac87942da00ce85bd1d651d4cd8595aebdb1b385889b89b205860e977b 311 | languageName: node 312 | linkType: hard 313 | 314 | "ansi-styles@npm:^4.0.0": 315 | version: 4.3.0 316 | resolution: "ansi-styles@npm:4.3.0" 317 | dependencies: 318 | color-convert: "npm:^2.0.1" 319 | checksum: 10c0/895a23929da416f2bd3de7e9cb4eabd340949328ab85ddd6e484a637d8f6820d485f53933446f5291c3b760cbc488beb8e88573dd0f9c7daf83dccc8fe81b041 320 | languageName: node 321 | linkType: hard 322 | 323 | "ansi-styles@npm:^6.1.0": 324 | version: 6.2.1 325 | resolution: "ansi-styles@npm:6.2.1" 326 | checksum: 10c0/5d1ec38c123984bcedd996eac680d548f31828bd679a66db2bdf11844634dde55fec3efa9c6bb1d89056a5e79c1ac540c4c784d592ea1d25028a92227d2f2d5c 327 | languageName: node 328 | linkType: hard 329 | 330 | "balanced-match@npm:^1.0.0": 331 | version: 1.0.2 332 | resolution: "balanced-match@npm:1.0.2" 333 | checksum: 10c0/9308baf0a7e4838a82bbfd11e01b1cb0f0cf2893bc1676c27c2a8c0e70cbae1c59120c3268517a8ae7fb6376b4639ef81ca22582611dbee4ed28df945134aaee 334 | languageName: node 335 | linkType: hard 336 | 337 | "brace-expansion@npm:^2.0.1": 338 | version: 2.0.1 339 | resolution: "brace-expansion@npm:2.0.1" 340 | dependencies: 341 | balanced-match: "npm:^1.0.0" 342 | checksum: 10c0/b358f2fe060e2d7a87aa015979ecea07f3c37d4018f8d6deb5bd4c229ad3a0384fe6029bb76cd8be63c81e516ee52d1a0673edbe2023d53a5191732ae3c3e49f 343 | languageName: node 344 | linkType: hard 345 | 346 | "chalk@npm:^2.4.2": 347 | version: 2.4.2 348 | resolution: "chalk@npm:2.4.2" 349 | dependencies: 350 | ansi-styles: "npm:^3.2.1" 351 | escape-string-regexp: "npm:^1.0.5" 352 | supports-color: "npm:^5.3.0" 353 | checksum: 10c0/e6543f02ec877732e3a2d1c3c3323ddb4d39fbab687c23f526e25bd4c6a9bf3b83a696e8c769d078e04e5754921648f7821b2a2acfd16c550435fd630026e073 354 | languageName: node 355 | linkType: hard 356 | 357 | "chownr@npm:^3.0.0": 358 | version: 3.0.0 359 | resolution: "chownr@npm:3.0.0" 360 | checksum: 10c0/43925b87700f7e3893296c8e9c56cc58f926411cce3a6e5898136daaf08f08b9a8eb76d37d3267e707d0dcc17aed2e2ebdf5848c0c3ce95cf910a919935c1b10 361 | languageName: node 362 | linkType: hard 363 | 364 | "color-convert@npm:^1.9.0": 365 | version: 1.9.3 366 | resolution: "color-convert@npm:1.9.3" 367 | dependencies: 368 | color-name: "npm:1.1.3" 369 | checksum: 10c0/5ad3c534949a8c68fca8fbc6f09068f435f0ad290ab8b2f76841b9e6af7e0bb57b98cb05b0e19fe33f5d91e5a8611ad457e5f69e0a484caad1f7487fd0e8253c 370 | languageName: node 371 | linkType: hard 372 | 373 | "color-convert@npm:^2.0.1": 374 | version: 2.0.1 375 | resolution: "color-convert@npm:2.0.1" 376 | dependencies: 377 | color-name: "npm:~1.1.4" 378 | checksum: 10c0/37e1150172f2e311fe1b2df62c6293a342ee7380da7b9cfdba67ea539909afbd74da27033208d01d6d5cfc65ee7868a22e18d7e7648e004425441c0f8a15a7d7 379 | languageName: node 380 | linkType: hard 381 | 382 | "color-name@npm:1.1.3": 383 | version: 1.1.3 384 | resolution: "color-name@npm:1.1.3" 385 | checksum: 10c0/566a3d42cca25b9b3cd5528cd7754b8e89c0eb646b7f214e8e2eaddb69994ac5f0557d9c175eb5d8f0ad73531140d9c47525085ee752a91a2ab15ab459caf6d6 386 | languageName: node 387 | linkType: hard 388 | 389 | "color-name@npm:~1.1.4": 390 | version: 1.1.4 391 | resolution: "color-name@npm:1.1.4" 392 | checksum: 10c0/a1a3f914156960902f46f7f56bc62effc6c94e84b2cae157a526b1c1f74b677a47ec602bf68a61abfa2b42d15b7c5651c6dbe72a43af720bc588dff885b10f95 393 | languageName: node 394 | linkType: hard 395 | 396 | "cross-spawn@npm:^7.0.0": 397 | version: 7.0.3 398 | resolution: "cross-spawn@npm:7.0.3" 399 | dependencies: 400 | path-key: "npm:^3.1.0" 401 | shebang-command: "npm:^2.0.0" 402 | which: "npm:^2.0.1" 403 | checksum: 10c0/5738c312387081c98d69c98e105b6327b069197f864a60593245d64c8089c8a0a744e16349281210d56835bb9274130d825a78b2ad6853ca13cfbeffc0c31750 404 | languageName: node 405 | linkType: hard 406 | 407 | "debug@npm:^4.1.0": 408 | version: 4.3.5 409 | resolution: "debug@npm:4.3.5" 410 | dependencies: 411 | ms: "npm:2.1.2" 412 | peerDependenciesMeta: 413 | supports-color: 414 | optional: true 415 | checksum: 10c0/082c375a2bdc4f4469c99f325ff458adad62a3fc2c482d59923c260cb08152f34e2659f72b3767db8bb2f21ca81a60a42d1019605a412132d7b9f59363a005cc 416 | languageName: node 417 | linkType: hard 418 | 419 | "eastasianwidth@npm:^0.2.0": 420 | version: 0.2.0 421 | resolution: "eastasianwidth@npm:0.2.0" 422 | checksum: 10c0/26f364ebcdb6395f95124fda411f63137a4bfb5d3a06453f7f23dfe52502905bd84e0488172e0f9ec295fdc45f05c23d5d91baf16bd26f0fe9acd777a188dc39 423 | languageName: node 424 | linkType: hard 425 | 426 | "emoji-regex@npm:^8.0.0": 427 | version: 8.0.0 428 | resolution: "emoji-regex@npm:8.0.0" 429 | checksum: 10c0/b6053ad39951c4cf338f9092d7bfba448cdfd46fe6a2a034700b149ac9ffbc137e361cbd3c442297f86bed2e5f7576c1b54cc0a6bf8ef5106cc62f496af35010 430 | languageName: node 431 | linkType: hard 432 | 433 | "emoji-regex@npm:^9.2.2": 434 | version: 9.2.2 435 | resolution: "emoji-regex@npm:9.2.2" 436 | checksum: 10c0/af014e759a72064cf66e6e694a7fc6b0ed3d8db680427b021a89727689671cefe9d04151b2cad51dbaf85d5ba790d061cd167f1cf32eb7b281f6368b3c181639 437 | languageName: node 438 | linkType: hard 439 | 440 | "escape-string-regexp@npm:^1.0.5": 441 | version: 1.0.5 442 | resolution: "escape-string-regexp@npm:1.0.5" 443 | checksum: 10c0/a968ad453dd0c2724e14a4f20e177aaf32bb384ab41b674a8454afe9a41c5e6fe8903323e0a1052f56289d04bd600f81278edf140b0fcc02f5cac98d0f5b5371 444 | languageName: node 445 | linkType: hard 446 | 447 | "foreground-child@npm:^3.1.0": 448 | version: 3.2.1 449 | resolution: "foreground-child@npm:3.2.1" 450 | dependencies: 451 | cross-spawn: "npm:^7.0.0" 452 | signal-exit: "npm:^4.0.1" 453 | checksum: 10c0/9a53a33dbd87090e9576bef65fb4a71de60f6863a8062a7b11bc1cbe3cc86d428677d7c0b9ef61cdac11007ac580006f78bd5638618d564cfd5e6fd713d6878f 454 | languageName: node 455 | linkType: hard 456 | 457 | "glob@npm:^10.3.7": 458 | version: 10.4.5 459 | resolution: "glob@npm:10.4.5" 460 | dependencies: 461 | foreground-child: "npm:^3.1.0" 462 | jackspeak: "npm:^3.1.2" 463 | minimatch: "npm:^9.0.4" 464 | minipass: "npm:^7.1.2" 465 | package-json-from-dist: "npm:^1.0.0" 466 | path-scurry: "npm:^1.11.1" 467 | bin: 468 | glob: dist/esm/bin.mjs 469 | checksum: 10c0/19a9759ea77b8e3ca0a43c2f07ecddc2ad46216b786bb8f993c445aee80d345925a21e5280c7b7c6c59e860a0154b84e4b2b60321fea92cd3c56b4a7489f160e 470 | languageName: node 471 | linkType: hard 472 | 473 | "globals@npm:^11.1.0": 474 | version: 11.12.0 475 | resolution: "globals@npm:11.12.0" 476 | checksum: 10c0/758f9f258e7b19226bd8d4af5d3b0dcf7038780fb23d82e6f98932c44e239f884847f1766e8fa9cc5635ccb3204f7fa7314d4408dd4002a5e8ea827b4018f0a1 477 | languageName: node 478 | linkType: hard 479 | 480 | "has-flag@npm:^3.0.0": 481 | version: 3.0.0 482 | resolution: "has-flag@npm:3.0.0" 483 | checksum: 10c0/1c6c83b14b8b1b3c25b0727b8ba3e3b647f99e9e6e13eb7322107261de07a4c1be56fc0d45678fc376e09772a3a1642ccdaf8fc69bdf123b6c086598397ce473 484 | languageName: node 485 | linkType: hard 486 | 487 | "is-fullwidth-code-point@npm:^3.0.0": 488 | version: 3.0.0 489 | resolution: "is-fullwidth-code-point@npm:3.0.0" 490 | checksum: 10c0/bb11d825e049f38e04c06373a8d72782eee0205bda9d908cc550ccb3c59b99d750ff9537982e01733c1c94a58e35400661f57042158ff5e8f3e90cf936daf0fc 491 | languageName: node 492 | linkType: hard 493 | 494 | "isexe@npm:^2.0.0": 495 | version: 2.0.0 496 | resolution: "isexe@npm:2.0.0" 497 | checksum: 10c0/228cfa503fadc2c31596ab06ed6aa82c9976eec2bfd83397e7eaf06d0ccf42cd1dfd6743bf9aeb01aebd4156d009994c5f76ea898d2832c1fe342da923ca457d 498 | languageName: node 499 | linkType: hard 500 | 501 | "jackspeak@npm:^3.1.2": 502 | version: 3.4.2 503 | resolution: "jackspeak@npm:3.4.2" 504 | dependencies: 505 | "@isaacs/cliui": "npm:^8.0.2" 506 | "@pkgjs/parseargs": "npm:^0.11.0" 507 | dependenciesMeta: 508 | "@pkgjs/parseargs": 509 | optional: true 510 | checksum: 10c0/31952961f4d0d51831b8973db5c800233dc0f2181c3ca74af96f02cdc5c3f2b3df147a9ce2b56a643bd459036d782fb8c59f8992658d2bb4564753c42bb80c6c 511 | languageName: node 512 | linkType: hard 513 | 514 | "javascript-natural-sort@npm:0.7.1": 515 | version: 0.7.1 516 | resolution: "javascript-natural-sort@npm:0.7.1" 517 | checksum: 10c0/340f8ffc5d30fb516e06dc540e8fa9e0b93c865cf49d791fed3eac3bdc5fc71f0066fc81d44ec1433edc87caecaf9f13eec4a1fce8c5beafc709a71eaedae6fe 518 | languageName: node 519 | linkType: hard 520 | 521 | "js-tokens@npm:^4.0.0": 522 | version: 4.0.0 523 | resolution: "js-tokens@npm:4.0.0" 524 | checksum: 10c0/e248708d377aa058eacf2037b07ded847790e6de892bbad3dac0abba2e759cb9f121b00099a65195616badcb6eca8d14d975cb3e89eb1cfda644756402c8aeed 525 | languageName: node 526 | linkType: hard 527 | 528 | "jsesc@npm:^2.5.1": 529 | version: 2.5.2 530 | resolution: "jsesc@npm:2.5.2" 531 | bin: 532 | jsesc: bin/jsesc 533 | checksum: 10c0/dbf59312e0ebf2b4405ef413ec2b25abb5f8f4d9bc5fb8d9f90381622ebca5f2af6a6aa9a8578f65903f9e33990a6dc798edd0ce5586894bf0e9e31803a1de88 534 | languageName: node 535 | linkType: hard 536 | 537 | "lodash@npm:^4.17.21": 538 | version: 4.17.21 539 | resolution: "lodash@npm:4.17.21" 540 | checksum: 10c0/d8cbea072bb08655bb4c989da418994b073a608dffa608b09ac04b43a791b12aeae7cd7ad919aa4c925f33b48490b5cfe6c1f71d827956071dae2e7bb3a6b74c 541 | languageName: node 542 | linkType: hard 543 | 544 | "lru-cache@npm:^10.2.0": 545 | version: 10.4.3 546 | resolution: "lru-cache@npm:10.4.3" 547 | checksum: 10c0/ebd04fbca961e6c1d6c0af3799adcc966a1babe798f685bb84e6599266599cd95d94630b10262f5424539bc4640107e8a33aa28585374abf561d30d16f4b39fb 548 | languageName: node 549 | linkType: hard 550 | 551 | "minimatch@npm:^9.0.4": 552 | version: 9.0.5 553 | resolution: "minimatch@npm:9.0.5" 554 | dependencies: 555 | brace-expansion: "npm:^2.0.1" 556 | checksum: 10c0/de96cf5e35bdf0eab3e2c853522f98ffbe9a36c37797778d2665231ec1f20a9447a7e567cb640901f89e4daaa95ae5d70c65a9e8aa2bb0019b6facbc3c0575ed 557 | languageName: node 558 | linkType: hard 559 | 560 | "minipass@npm:^5.0.0 || ^6.0.2 || ^7.0.0, minipass@npm:^7.0.4, minipass@npm:^7.1.2": 561 | version: 7.1.2 562 | resolution: "minipass@npm:7.1.2" 563 | checksum: 10c0/b0fd20bb9fb56e5fa9a8bfac539e8915ae07430a619e4b86ff71f5fc757ef3924b23b2c4230393af1eda647ed3d75739e4e0acb250a6b1eb277cf7f8fe449557 564 | languageName: node 565 | linkType: hard 566 | 567 | "minizlib@npm:^3.0.1": 568 | version: 3.0.1 569 | resolution: "minizlib@npm:3.0.1" 570 | dependencies: 571 | minipass: "npm:^7.0.4" 572 | rimraf: "npm:^5.0.5" 573 | checksum: 10c0/82f8bf70da8af656909a8ee299d7ed3b3372636749d29e105f97f20e88971be31f5ed7642f2e898f00283b68b701cc01307401cdc209b0efc5dd3818220e5093 574 | languageName: node 575 | linkType: hard 576 | 577 | "mkdirp@npm:^3.0.1": 578 | version: 3.0.1 579 | resolution: "mkdirp@npm:3.0.1" 580 | bin: 581 | mkdirp: dist/cjs/src/bin.js 582 | checksum: 10c0/9f2b975e9246351f5e3a40dcfac99fcd0baa31fbfab615fe059fb11e51f10e4803c63de1f384c54d656e4db31d000e4767e9ef076a22e12a641357602e31d57d 583 | languageName: node 584 | linkType: hard 585 | 586 | "ms@npm:2.1.2": 587 | version: 2.1.2 588 | resolution: "ms@npm:2.1.2" 589 | checksum: 10c0/a437714e2f90dbf881b5191d35a6db792efbca5badf112f87b9e1c712aace4b4b9b742dd6537f3edf90fd6f684de897cec230abde57e87883766712ddda297cc 590 | languageName: node 591 | linkType: hard 592 | 593 | "package-json-from-dist@npm:^1.0.0": 594 | version: 1.0.0 595 | resolution: "package-json-from-dist@npm:1.0.0" 596 | checksum: 10c0/e3ffaf6ac1040ab6082a658230c041ad14e72fabe99076a2081bb1d5d41210f11872403fc09082daf4387fc0baa6577f96c9c0e94c90c394fd57794b66aa4033 597 | languageName: node 598 | linkType: hard 599 | 600 | "path-key@npm:^3.1.0": 601 | version: 3.1.1 602 | resolution: "path-key@npm:3.1.1" 603 | checksum: 10c0/748c43efd5a569c039d7a00a03b58eecd1d75f3999f5a28303d75f521288df4823bc057d8784eb72358b2895a05f29a070bc9f1f17d28226cc4e62494cc58c4c 604 | languageName: node 605 | linkType: hard 606 | 607 | "path-scurry@npm:^1.11.1": 608 | version: 1.11.1 609 | resolution: "path-scurry@npm:1.11.1" 610 | dependencies: 611 | lru-cache: "npm:^10.2.0" 612 | minipass: "npm:^5.0.0 || ^6.0.2 || ^7.0.0" 613 | checksum: 10c0/32a13711a2a505616ae1cc1b5076801e453e7aae6ac40ab55b388bb91b9d0547a52f5aaceff710ea400205f18691120d4431e520afbe4266b836fadede15872d 614 | languageName: node 615 | linkType: hard 616 | 617 | "picocolors@npm:^1.0.0": 618 | version: 1.0.1 619 | resolution: "picocolors@npm:1.0.1" 620 | checksum: 10c0/c63cdad2bf812ef0d66c8db29583802355d4ca67b9285d846f390cc15c2f6ccb94e8cb7eb6a6e97fc5990a6d3ad4ae42d86c84d3146e667c739a4234ed50d400 621 | languageName: node 622 | linkType: hard 623 | 624 | "prettier@npm:^3.2.5": 625 | version: 3.3.2 626 | resolution: "prettier@npm:3.3.2" 627 | bin: 628 | prettier: bin/prettier.cjs 629 | checksum: 10c0/39ed27d17f0238da6dd6571d63026566bd790d3d0edac57c285fbab525982060c8f1e01955fe38134ab10f0951a6076da37f015db8173c02f14bc7f0803a384c 630 | languageName: node 631 | linkType: hard 632 | 633 | "rimraf@npm:^5.0.5": 634 | version: 5.0.9 635 | resolution: "rimraf@npm:5.0.9" 636 | dependencies: 637 | glob: "npm:^10.3.7" 638 | bin: 639 | rimraf: dist/esm/bin.mjs 640 | checksum: 10c0/87374682492b9e64de9c6fcbf2c8f209c7a2cd0e9749b3732eef8a62c6f859a9ed996d46f662d9ad5dd38c2c469f8e88de56b6c509026070ee3f06369cac1bc8 641 | languageName: node 642 | linkType: hard 643 | 644 | "shebang-command@npm:^2.0.0": 645 | version: 2.0.0 646 | resolution: "shebang-command@npm:2.0.0" 647 | dependencies: 648 | shebang-regex: "npm:^3.0.0" 649 | checksum: 10c0/a41692e7d89a553ef21d324a5cceb5f686d1f3c040759c50aab69688634688c5c327f26f3ecf7001ebfd78c01f3c7c0a11a7c8bfd0a8bc9f6240d4f40b224e4e 650 | languageName: node 651 | linkType: hard 652 | 653 | "shebang-regex@npm:^3.0.0": 654 | version: 3.0.0 655 | resolution: "shebang-regex@npm:3.0.0" 656 | checksum: 10c0/1dbed0726dd0e1152a92696c76c7f06084eb32a90f0528d11acd764043aacf76994b2fb30aa1291a21bd019d6699164d048286309a278855ee7bec06cf6fb690 657 | languageName: node 658 | linkType: hard 659 | 660 | "signal-exit@npm:^4.0.1": 661 | version: 4.1.0 662 | resolution: "signal-exit@npm:4.1.0" 663 | checksum: 10c0/41602dce540e46d599edba9d9860193398d135f7ff72cab629db5171516cfae628d21e7bfccde1bbfdf11c48726bc2a6d1a8fb8701125852fbfda7cf19c6aa83 664 | languageName: node 665 | linkType: hard 666 | 667 | "source-map@npm:^0.5.0": 668 | version: 0.5.7 669 | resolution: "source-map@npm:0.5.7" 670 | checksum: 10c0/904e767bb9c494929be013017380cbba013637da1b28e5943b566031e29df04fba57edf3f093e0914be094648b577372bd8ad247fa98cfba9c600794cd16b599 671 | languageName: node 672 | linkType: hard 673 | 674 | "string-width-cjs@npm:string-width@^4.2.0, string-width@npm:^4.1.0": 675 | version: 4.2.3 676 | resolution: "string-width@npm:4.2.3" 677 | dependencies: 678 | emoji-regex: "npm:^8.0.0" 679 | is-fullwidth-code-point: "npm:^3.0.0" 680 | strip-ansi: "npm:^6.0.1" 681 | checksum: 10c0/1e525e92e5eae0afd7454086eed9c818ee84374bb80328fc41217ae72ff5f065ef1c9d7f72da41de40c75fa8bb3dee63d92373fd492c84260a552c636392a47b 682 | languageName: node 683 | linkType: hard 684 | 685 | "string-width@npm:^5.0.1, string-width@npm:^5.1.2": 686 | version: 5.1.2 687 | resolution: "string-width@npm:5.1.2" 688 | dependencies: 689 | eastasianwidth: "npm:^0.2.0" 690 | emoji-regex: "npm:^9.2.2" 691 | strip-ansi: "npm:^7.0.1" 692 | checksum: 10c0/ab9c4264443d35b8b923cbdd513a089a60de339216d3b0ed3be3ba57d6880e1a192b70ae17225f764d7adbf5994e9bb8df253a944736c15a0240eff553c678ca 693 | languageName: node 694 | linkType: hard 695 | 696 | "strip-ansi-cjs@npm:strip-ansi@^6.0.1, strip-ansi@npm:^6.0.0, strip-ansi@npm:^6.0.1": 697 | version: 6.0.1 698 | resolution: "strip-ansi@npm:6.0.1" 699 | dependencies: 700 | ansi-regex: "npm:^5.0.1" 701 | checksum: 10c0/1ae5f212a126fe5b167707f716942490e3933085a5ff6c008ab97ab2f272c8025d3aa218b7bd6ab25729ca20cc81cddb252102f8751e13482a5199e873680952 702 | languageName: node 703 | linkType: hard 704 | 705 | "strip-ansi@npm:^7.0.1": 706 | version: 7.1.0 707 | resolution: "strip-ansi@npm:7.1.0" 708 | dependencies: 709 | ansi-regex: "npm:^6.0.1" 710 | checksum: 10c0/a198c3762e8832505328cbf9e8c8381de14a4fa50a4f9b2160138158ea88c0f5549fb50cb13c651c3088f47e63a108b34622ec18c0499b6c8c3a5ddf6b305ac4 711 | languageName: node 712 | linkType: hard 713 | 714 | "supports-color@npm:^5.3.0": 715 | version: 5.5.0 716 | resolution: "supports-color@npm:5.5.0" 717 | dependencies: 718 | has-flag: "npm:^3.0.0" 719 | checksum: 10c0/6ae5ff319bfbb021f8a86da8ea1f8db52fac8bd4d499492e30ec17095b58af11f0c55f8577390a749b1c4dde691b6a0315dab78f5f54c9b3d83f8fb5905c1c05 720 | languageName: node 721 | linkType: hard 722 | 723 | "tar@npm:^7.1.0": 724 | version: 7.4.0 725 | resolution: "tar@npm:7.4.0" 726 | dependencies: 727 | "@isaacs/fs-minipass": "npm:^4.0.0" 728 | chownr: "npm:^3.0.0" 729 | minipass: "npm:^7.1.2" 730 | minizlib: "npm:^3.0.1" 731 | mkdirp: "npm:^3.0.1" 732 | yallist: "npm:^5.0.0" 733 | checksum: 10c0/f4bab85fd101585f2cececc41eb8706191052ab65cc33f1a798198e0c7905f41b06ae3d6731fb2b6084847c53bc1e2265b77e05a105c0c44afaf6cb7a08ddf14 734 | languageName: node 735 | linkType: hard 736 | 737 | "to-fast-properties@npm:^2.0.0": 738 | version: 2.0.0 739 | resolution: "to-fast-properties@npm:2.0.0" 740 | checksum: 10c0/b214d21dbfb4bce3452b6244b336806ffea9c05297148d32ebb428d5c43ce7545bdfc65a1ceb58c9ef4376a65c0cb2854d645f33961658b3e3b4f84910ddcdd7 741 | languageName: node 742 | linkType: hard 743 | 744 | "which@npm:^2.0.1": 745 | version: 2.0.2 746 | resolution: "which@npm:2.0.2" 747 | dependencies: 748 | isexe: "npm:^2.0.0" 749 | bin: 750 | node-which: ./bin/node-which 751 | checksum: 10c0/66522872a768b60c2a65a57e8ad184e5372f5b6a9ca6d5f033d4b0dc98aff63995655a7503b9c0a2598936f532120e81dd8cc155e2e92ed662a2b9377cc4374f 752 | languageName: node 753 | linkType: hard 754 | 755 | "wrap-ansi-cjs@npm:wrap-ansi@^7.0.0": 756 | version: 7.0.0 757 | resolution: "wrap-ansi@npm:7.0.0" 758 | dependencies: 759 | ansi-styles: "npm:^4.0.0" 760 | string-width: "npm:^4.1.0" 761 | strip-ansi: "npm:^6.0.0" 762 | checksum: 10c0/d15fc12c11e4cbc4044a552129ebc75ee3f57aa9c1958373a4db0292d72282f54373b536103987a4a7594db1ef6a4f10acf92978f79b98c49306a4b58c77d4da 763 | languageName: node 764 | linkType: hard 765 | 766 | "wrap-ansi@npm:^8.1.0": 767 | version: 8.1.0 768 | resolution: "wrap-ansi@npm:8.1.0" 769 | dependencies: 770 | ansi-styles: "npm:^6.1.0" 771 | string-width: "npm:^5.0.1" 772 | strip-ansi: "npm:^7.0.1" 773 | checksum: 10c0/138ff58a41d2f877eae87e3282c0630fc2789012fc1af4d6bd626eeb9a2f9a65ca92005e6e69a75c7b85a68479fe7443c7dbe1eb8fbaa681a4491364b7c55c60 774 | languageName: node 775 | linkType: hard 776 | 777 | "yallist@npm:^5.0.0": 778 | version: 5.0.0 779 | resolution: "yallist@npm:5.0.0" 780 | checksum: 10c0/a499c81ce6d4a1d260d4ea0f6d49ab4da09681e32c3f0472dee16667ed69d01dae63a3b81745a24bd78476ec4fcf856114cb4896ace738e01da34b2c42235416 781 | languageName: node 782 | linkType: hard 783 | --------------------------------------------------------------------------------