From a1f00d73d013e5113f7909114d9b4fbfe610971c Mon Sep 17 00:00:00 2001 From: KingMcDonalds Date: Sun, 29 Jun 2025 15:09:12 -0700 Subject: [PATCH] new seatbelt script --- .../EGRP-Extras/data/dhssemi/vehicles.meta | 2 +- resources/seatbelt/.eslintignore | 2 + resources/seatbelt/.eslintrc.json | 172 ++ resources/seatbelt/.gitignore | 132 + resources/seatbelt/.stylelintignore | 2 + resources/seatbelt/.stylelintrc.json | 3 + resources/seatbelt/.yarnrc.yml | 1 + resources/seatbelt/LICENSE | 21 + resources/seatbelt/README.md | 70 + resources/seatbelt/client.lua | 177 ++ resources/seatbelt/config.default.lua | 49 + resources/seatbelt/fxmanifest.lua | 18 + resources/seatbelt/package.json | 30 + resources/seatbelt/server.lua | 7 + resources/seatbelt/static/assets/buckle.ogg | Bin 0 -> 47632 bytes resources/seatbelt/static/assets/chime.ogg | Bin 0 -> 56468 bytes resources/seatbelt/static/assets/unbuckle.ogg | Bin 0 -> 39407 bytes resources/seatbelt/static/index.html | 22 + resources/seatbelt/static/index.js | 86 + resources/seatbelt/static/seatbelt.svg | 3 + resources/seatbelt/static/style.css | 23 + resources/seatbelt/util.lua | 141 + resources/seatbelt/yarn.lock | 2417 +++++++++++++++++ server.cfg | 2 +- 24 files changed, 3378 insertions(+), 2 deletions(-) create mode 100644 resources/seatbelt/.eslintignore create mode 100644 resources/seatbelt/.eslintrc.json create mode 100644 resources/seatbelt/.gitignore create mode 100644 resources/seatbelt/.stylelintignore create mode 100644 resources/seatbelt/.stylelintrc.json create mode 100644 resources/seatbelt/.yarnrc.yml create mode 100644 resources/seatbelt/LICENSE create mode 100644 resources/seatbelt/README.md create mode 100644 resources/seatbelt/client.lua create mode 100644 resources/seatbelt/config.default.lua create mode 100644 resources/seatbelt/fxmanifest.lua create mode 100644 resources/seatbelt/package.json create mode 100644 resources/seatbelt/server.lua create mode 100644 resources/seatbelt/static/assets/buckle.ogg create mode 100644 resources/seatbelt/static/assets/chime.ogg create mode 100644 resources/seatbelt/static/assets/unbuckle.ogg create mode 100644 resources/seatbelt/static/index.html create mode 100644 resources/seatbelt/static/index.js create mode 100644 resources/seatbelt/static/seatbelt.svg create mode 100644 resources/seatbelt/static/style.css create mode 100644 resources/seatbelt/util.lua create mode 100644 resources/seatbelt/yarn.lock diff --git a/resources/[EGRP-CarPacks]/EGRP-Extras/data/dhssemi/vehicles.meta b/resources/[EGRP-CarPacks]/EGRP-Extras/data/dhssemi/vehicles.meta index 6c46f47e0..336ce930d 100644 --- a/resources/[EGRP-CarPacks]/EGRP-Extras/data/dhssemi/vehicles.meta +++ b/resources/[EGRP-CarPacks]/EGRP-Extras/data/dhssemi/vehicles.meta @@ -15,7 +15,7 @@ null null - GUARDIAN + kc80cumminsn14jake LAYOUT_TRUCK PHANTOM_COVER_OFFSET_INFO EXPLOSION_INFO_TRUCK diff --git a/resources/seatbelt/.eslintignore b/resources/seatbelt/.eslintignore new file mode 100644 index 000000000..02d6cf9e7 --- /dev/null +++ b/resources/seatbelt/.eslintignore @@ -0,0 +1,2 @@ +static/* +!static/**/*.js \ No newline at end of file diff --git a/resources/seatbelt/.eslintrc.json b/resources/seatbelt/.eslintrc.json new file mode 100644 index 000000000..b209b1eee --- /dev/null +++ b/resources/seatbelt/.eslintrc.json @@ -0,0 +1,172 @@ +{ + "root": true, + "extends": ["eslint:recommended", "plugin:prettier/recommended"], + "parserOptions": { + "ecmaVersion": 2021 + }, + "env": { + "es2021": true, + "browser": true, + "jquery": true + }, + "rules": { + "prettier/prettier": [ + 2, + { + "printWidth": 120, + "singleQuote": true, + "quoteProps": "as-needed", + "trailingComma": "all", + "endOfLine": "lf", + "arrowParens": "avoid" + } + ], + "strict": ["error", "global"], + "no-await-in-loop": "warn", + "no-compare-neg-zero": "error", + "no-template-curly-in-string": "error", + "no-unsafe-negation": "error", + "valid-jsdoc": [ + "error", + { + "requireReturn": false, + "requireReturnDescription": false, + "prefer": { + "return": "returns", + "arg": "param" + }, + "preferType": { + "String": "string", + "Number": "number", + "Boolean": "boolean", + "Symbol": "symbol", + "object": "Object", + "function": "Function", + "array": "Array", + "date": "Date", + "error": "Error", + "null": "void" + } + } + ], + + "accessor-pairs": "warn", + "array-callback-return": "error", + "consistent-return": "error", + "curly": ["error", "multi-line", "consistent"], + "dot-location": ["error", "property"], + "dot-notation": "error", + "eqeqeq": "error", + "no-empty-function": "error", + "no-floating-decimal": "error", + "no-implied-eval": "error", + "no-invalid-this": "error", + "no-lone-blocks": "error", + "no-multi-spaces": "error", + "no-new-func": "error", + "no-new-wrappers": "error", + "no-new": "error", + "no-octal-escape": "error", + "no-return-assign": "error", + "no-return-await": "error", + "no-self-compare": "error", + "no-sequences": "error", + "no-throw-literal": "error", + "no-unmodified-loop-condition": "error", + "no-unused-expressions": "error", + "no-useless-call": "error", + "no-useless-concat": "error", + "no-useless-escape": "error", + "no-useless-return": "error", + "no-void": "error", + "no-warning-comments": "warn", + "prefer-promise-reject-errors": "error", + "require-await": "warn", + "wrap-iife": "error", + "yoda": "error", + + "no-label-var": "error", + "no-shadow": "error", + "no-undef-init": "error", + + "callback-return": "error", + "getter-return": "off", + "handle-callback-err": "error", + "no-mixed-requires": "error", + "no-new-require": "error", + "no-path-concat": "error", + + "array-bracket-spacing": "error", + "block-spacing": "error", + "brace-style": ["error", "1tbs", { "allowSingleLine": true }], + "capitalized-comments": ["error", "always", { "ignoreConsecutiveComments": true }], + "comma-dangle": ["error", "always-multiline"], + "comma-spacing": "error", + "comma-style": "error", + "computed-property-spacing": "error", + "consistent-this": ["error", "$this"], + "eol-last": "error", + "func-names": "error", + "func-name-matching": "error", + "func-style": ["error", "declaration", { "allowArrowFunctions": true }], + "key-spacing": "error", + "keyword-spacing": "error", + "max-depth": "error", + "max-len": ["error", 120, 2], + "max-nested-callbacks": ["error", { "max": 4 }], + "max-statements-per-line": ["error", { "max": 2 }], + "new-cap": "off", + "newline-per-chained-call": ["error", { "ignoreChainWithDepth": 3 }], + "no-array-constructor": "error", + "no-inline-comments": "error", + "no-lonely-if": "error", + "no-multiple-empty-lines": ["error", { "max": 2, "maxEOF": 1, "maxBOF": 0 }], + "no-new-object": "error", + "no-spaced-func": "error", + "no-trailing-spaces": "error", + "no-unneeded-ternary": "error", + "no-whitespace-before-property": "error", + "nonblock-statement-body-position": "error", + "object-curly-spacing": ["error", "always"], + "operator-assignment": "error", + "padded-blocks": ["error", "never"], + "quote-props": ["error", "as-needed"], + "quotes": ["error", "single", { "avoidEscape": true, "allowTemplateLiterals": true }], + "semi-spacing": "error", + "semi": "error", + "space-before-blocks": "error", + "space-before-function-paren": [ + "error", + { + "anonymous": "never", + "named": "never", + "asyncArrow": "always" + } + ], + "space-in-parens": "error", + "space-infix-ops": "error", + "space-unary-ops": "error", + "spaced-comment": ["error", "always", { "markers": ["/"] }], + "template-tag-spacing": "error", + "unicode-bom": "error", + + "arrow-body-style": "error", + "arrow-parens": ["error", "as-needed"], + "arrow-spacing": "error", + "no-duplicate-imports": "error", + "no-useless-computed-key": "error", + "no-useless-constructor": "error", + "prefer-arrow-callback": "error", + "prefer-numeric-literals": "error", + "prefer-rest-params": "error", + "prefer-spread": "error", + "prefer-template": "error", + "prefer-object-has-own": "error", + "rest-spread-spacing": "error", + "template-curly-spacing": "error", + "yield-star-spacing": "error" + }, + "globals": { + "Howl": "readonly" + } +} \ No newline at end of file diff --git a/resources/seatbelt/.gitignore b/resources/seatbelt/.gitignore new file mode 100644 index 000000000..3f84c3488 --- /dev/null +++ b/resources/seatbelt/.gitignore @@ -0,0 +1,132 @@ +config.lua + +# Logs +logs +*.log +npm-debug.log* +yarn-debug.log* +yarn-error.log* +lerna-debug.log* +.pnpm-debug.log* + +# Diagnostic reports (https://nodejs.org/api/report.html) +report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json + +# Runtime data +pids +*.pid +*.seed +*.pid.lock + +# Directory for instrumented libs generated by jscoverage/JSCover +lib-cov + +# Coverage directory used by tools like istanbul +coverage +*.lcov + +# nyc test coverage +.nyc_output + +# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files) +.grunt + +# Bower dependency directory (https://bower.io/) +bower_components + +# node-waf configuration +.lock-wscript + +# Compiled binary addons (https://nodejs.org/api/addons.html) +build/Release + +# Dependency directories +node_modules/ +jspm_packages/ + +# Snowpack dependency directory (https://snowpack.dev/) +web_modules/ + +# TypeScript cache +*.tsbuildinfo + +# Optional npm cache directory +.npm + +# Optional eslint cache +.eslintcache + +# Optional stylelint cache +.stylelintcache + +# Microbundle cache +.rpt2_cache/ +.rts2_cache_cjs/ +.rts2_cache_es/ +.rts2_cache_umd/ + +# Optional REPL history +.node_repl_history + +# Output of 'npm pack' +*.tgz + +# Yarn Integrity file +.yarn-integrity + +# dotenv environment variable files +.env +.env.development.local +.env.test.local +.env.production.local +.env.local + +# parcel-bundler cache (https://parceljs.org/) +.cache +.parcel-cache + +# Next.js build output +.next +out + +# Nuxt.js build / generate output +.nuxt +dist + +# Gatsby files +.cache/ +# Comment in the public line in if your project uses Gatsby and not Next.js +# https://nextjs.org/blog/next-9-1#public-directory-support +# public + +# vuepress build output +.vuepress/dist + +# vuepress v2.x temp and cache directory +.temp +.cache + +# Docusaurus cache and generated files +.docusaurus + +# Serverless directories +.serverless/ + +# FuseBox cache +.fusebox/ + +# DynamoDB Local files +.dynamodb/ + +# TernJS port file +.tern-port + +# Stores VSCode versions used for testing VSCode extensions +.vscode-test + +# yarn v2 +.yarn/cache +.yarn/unplugged +.yarn/build-state.yml +.yarn/install-state.gz +.pnp.* \ No newline at end of file diff --git a/resources/seatbelt/.stylelintignore b/resources/seatbelt/.stylelintignore new file mode 100644 index 000000000..c38c93f3a --- /dev/null +++ b/resources/seatbelt/.stylelintignore @@ -0,0 +1,2 @@ +static/* +!static/**/*.css \ No newline at end of file diff --git a/resources/seatbelt/.stylelintrc.json b/resources/seatbelt/.stylelintrc.json new file mode 100644 index 000000000..425b4df0d --- /dev/null +++ b/resources/seatbelt/.stylelintrc.json @@ -0,0 +1,3 @@ +{ + "extends": "stylelint-config-standard" +} \ No newline at end of file diff --git a/resources/seatbelt/.yarnrc.yml b/resources/seatbelt/.yarnrc.yml new file mode 100644 index 000000000..3186f3f07 --- /dev/null +++ b/resources/seatbelt/.yarnrc.yml @@ -0,0 +1 @@ +nodeLinker: node-modules diff --git a/resources/seatbelt/LICENSE b/resources/seatbelt/LICENSE new file mode 100644 index 000000000..9fe6d0285 --- /dev/null +++ b/resources/seatbelt/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2021 Reece Stokes + +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: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. \ No newline at end of file diff --git a/resources/seatbelt/README.md b/resources/seatbelt/README.md new file mode 100644 index 000000000..75d402a96 --- /dev/null +++ b/resources/seatbelt/README.md @@ -0,0 +1,70 @@ +# Seatbelt + +## About + +A modern realisation on seatbelt scripts, for additional roleplay and realism to your server. + +## Installation + +- Install to your `resource` folder (or [download manually](https://github.com/TFNRP/seatbelt/archive/refs/heads/main.zip)): + +```bash +git clone https://github.com/TFNRP/seatbelt.git +``` + +- (Optional) Copy `config.default.lua`, rename the copy to `config.lua` and edit it to your liking. +- Add the following to your `server.cfg`: + - `ensure seatbelt` + - (Optional) `add_ace group.police seatbelt.notify allow` + Replace `police` with your LEO group. + This is optional if you don't use ACL - read [Configuration](#configuration). + +## Features + +Modern Seatbelt does the following: + +- Buckle up with `/seatbelt` or K. +- Keybinds can be changed in FiveM keybind settings. +- Quick unbuckle by pressing Shift + F. +- Heftier consequences for MVAs. +- Law enforcement notified of traffic violation + when driving behind (or crossing infront). +- Out-of-the-way notifications whilst driving + without seatbelt. +- Lightweight, out of the box. +- Supports the TFNRP framework. +- Realistic sound effects for buckling & driving w/o SB. + +## Coming Soon + +Features that are planned for Modern Seatbelt: + +- Complimentary scripts for compatible UI support. + +## Configuration + +> Note: Do not edit `config.default.lua` + +Copy `config.default.lua` and rename the copy to `config.lua`. +Check [config.lua](https://github.com/TFNRP/seatbelt/blob/main/config.default.lua) for better details. + +property | description +-- | -- +`LeoCheck` = `2` | The method this script should use to check whether a player is an (on-duty) LEO.
`1` = be inside a police vehicle; or
`2` = have the `seatbelt.notify` ACL. +`PlayerIdentifierType` = `1` | What type of LEO notifications should be shown?
`1` = Player ID (i.e. "Player 7")
`2` = Seat position (i.e. "Driver", "Passenger", "Rear left passenger", "Far rear left passenger")
`3` = Username (i.e. "Hagen Hyena", "1D-32 Backer P.") +`Distance` = `20` | The amount of distance LEOs have to be to detect people not weaing a seatbelt. +`DefaultKeybind` = `K` | The default seatbelt keybind. +`Excluded` | A list of excluded vehicles and vehicle seats. + +## Contributing + +[Reports issues and create suggestions](https://github.com/TFNRP/seatbelt/issues). +[Improve code, fix issues and add suggestions](https://github.com/TFNRP/seatbelt/pulls). + +## Credits & Copyright + +- [@TehRamsus](https://forum.cfx.re/u/TehRamsus) for their [Seatbelt](https://github.com/TehRamsus/Seatbelt) script, which inspired me to create Modern Seatbelt. +- [@Mercy3](https://forum.cfx.re/u/Mercy3) for providing and giving permission of use of `static/assets/{buckle,chime,unbuckle}.ogg` files. + +Licensed under [MIT License](https://github.com/TFNRP/seatbelt/blob/main/LICENSE). No code or assets of the inspiring work has been used. +The author of [Seatbelt](https://github.com/TehRamsus/Seatbelt) stated they would rework their original work but has not done so since Oct 25th, '21, hence my release. diff --git a/resources/seatbelt/client.lua b/resources/seatbelt/client.lua new file mode 100644 index 000000000..babeccb86 --- /dev/null +++ b/resources/seatbelt/client.lua @@ -0,0 +1,177 @@ +local showingWarning = false +local lastSpeed = 0 +local lastVelocity = vector3(0, 0, 0) +local newbieBeep = true +local showHelp = false +local activated +local hasSeatbelt + +RegisterKeyMapping('seatbelt', 'Seatbelt', 'keyboard', Constants.DefaultKeybind) +RegisterFrameworkCommand('seatbelt', function() + local ped = PlayerPedId() + if IsPedInAnyVehicle(ped) then + local vehcileHasSeatbelt, strong = DoesPedVehicleHaveSeatbelt(ped) + if vehcileHasSeatbelt and not strong then + if activated then + DeactivateSeatbelt() + else + ActivateSeatbelt() + end + SendNuiMessage('{"t":0,"d":' .. (activated == true and '1' or '0') .. '}') + end + end +end) + +function ActivateSeatbelt() + if activated == true then + return error('seatbelt attempted to activate when already active.') + end + -- compat for other resources like carhud + TriggerEvent('seatbelt:stateChange', true) + + -- disable exit keys + Citizen.CreateThread(function() + while activated do + Citizen.Wait(1) + DisableControlAction(0, 75, true) + DisableControlAction(27, 75, true) + end + end) + + -- quick unbuckled + Citizen.CreateThread(function() + while activated do + Citizen.Wait(1) + if IsDisabledControlJustPressed(0, 75) and IsControlPressed(0, 21) then + DeactivateSeatbelt() + end + end + end) + + -- validation + Citizen.CreateThread(function() + while activated do + if not IsPedInAnyVehicle(PlayerPedId()) then + DeactivateSeatbelt() + end + Citizen.Wait(50) + end + end) + + activated = true +end + +function DeactivateSeatbelt() + if activated == false then + return error('seatbelt attempted to deactivate when already deactivated.') + end + TriggerEvent('seatbelt:stateChange', false) + + -- help text separate from hud + Citizen.CreateThread(function() + while not activated do + if showHelp then + local message = '~BLIP_GANG_VEHICLE~ Press ~INPUT_REPLAY_SHOWHOTKEY~ to ~y~buckle~s~ your seatbelt.' + ShowHelpText(message, newbieBeep) + newbieBeep = false + for _ = 0, 8 do + Citizen.Wait(5) + ShowHelpText(message, false) + end + end + Citizen.Wait(65) + end + end) + + -- handling and HUD + Citizen.CreateThread(function() + while not activated do + local ped = PlayerPedId() + if IsPedInAnyVehicle(ped) then + local _hasSeatbelt, strong = DoesPedVehicleHaveSeatbelt(ped) + hasSeatbelt = _hasSeatbelt + if hasSeatbelt and not strong then + local vehicle = GetVehiclePedIsIn(ped) + local speed = GetEntitySpeed(vehicle) + + if speed > (50 / 3.6) and (lastSpeed - speed) > (speed * .2) then + local coords = GetEntityCoords(ped) + local fw = Fwv(ped) + ForceStopWarning() + showHelp = false + SetEntityCoords(ped, coords.x + fw.x, coords.y + fw.y, coords.z - .47, true, true, true) + SetEntityVelocity(ped, lastVelocity.x, lastVelocity.y, lastVelocity.z) + SetPedToRagdoll(ped, 1e3, 1e3, 0, false, false, false) + elseif speed > (20 / 3.6) then + SetWarning(true) + showHelp = not (IsPauseMenuActive() or IsHudHidden() or IsPlayerDead(PlayerId())) + else + SetWarning(false) + showHelp = false + end + + lastSpeed = speed + lastVelocity = GetEntityVelocity(vehicle) + end + else + ForceStopWarning() + showHelp = false + end + Citizen.Wait(50) + end + + SetWarning(false) + showHelp = false + end) + + -- notification + Citizen.CreateThread(function() + while not activated do + local ped = PlayerPedId() + local vehicle = GetVehiclePedIsIn(ped) + if IsPedInAnyVehicle(ped) and hasSeatbelt and GetEntitySpeed(vehicle) * 3.6 > 10 then + TriggerServerEvent('seatbelt:ServerNotify') + end + Citizen.Wait(3e3) + end + end) + + activated = false +end + +function SetWarning(bool) + if bool ~= showingWarning then + SendNuiMessage('{"t":1,"d":' .. (bool == true and '1' or '0') .. '}') + showingWarning = bool + end +end + +function ForceStopWarning() + if showingWarning then + SendNuiMessage('{"t":1,"d":3}') + showingWarning = false + end +end + +RegisterNetEvent('seatbelt:ClientNotify', function(serverId) + local ped = PlayerPedId() + local player = GetPlayerFromServerId(serverId) -- onesync notice: returns -1 if not loaded + local playerPed = GetPlayerPed(player) + if player ~= PlayerId() and player > 0 and IsLEO() and not IsHudHidden() and IsPedInAnyVehicle(playerPed) then + local vehicle = GetVehiclePedIsIn(playerPed) + local identifier = GetPlayerIdentifier_(serverId, playerPed, vehicle) + if #(GetEntityCoords(ped) - GetEntityCoords(GetPlayerPed(player))) < Constants.Distance and identifier then + ShowNotification( + identifier .. + ' is not weaing a seatbelt in ~y~' .. + GetVehicleNumberPlateText(vehicle) .. + '~s~.' + ) + end + end +end) + + +Citizen.CreateThread(function() + DeactivateSeatbelt() +end) \ No newline at end of file diff --git a/resources/seatbelt/config.default.lua b/resources/seatbelt/config.default.lua new file mode 100644 index 000000000..34cc67080 --- /dev/null +++ b/resources/seatbelt/config.default.lua @@ -0,0 +1,49 @@ +-- Do not edit config.default.lua +-- Copy config.default.lua and rename the copy to config.lua + +--- Configuration variables +--- @type {} +Config = {} + +--- The method that should be used to check whether a player is an on-duty LEO. +--- For a player to receive an LEO notification, they must +--- - `1` = be inside a police vehicle; or +--- - `2` = have the `seatbelt.notify` ACL. +--- @type 1 | 2 +Config.LeoCheck = 2 + +--- Changes how players are identified to LEOs. Cannot be nilish +--- - `1` = Player ID (i.e. "Player 7") +--- - `2` = Seat position (i.e. "Driver", "Passenger", "Rear left passenger", "Far rear left passenger") +--- - `3` = Username (i.e. "Hagen Hyena", "1D-32 Backer P.") +--- @type 1 | 2 | 3 +Config.PlayerIdentifierType = 1 + +--- Distance which LEOs can detect seatbelt-less occupants within. +--- @type number -- A postive number +Config.Distance = 20 + +--- The default seatbelt keybind. +--- After a player joins, their keybind will not change if +--- the default keybind changes. +--- Players can manually change this keybind in their settings. +--- @type string +--- @see {@link https://docs.fivem.net/docs/game-references/input-mapper-parameter-ids/keyboard} +Config.DefaultKeybind = 'K' + +--- Custom vehicles/seats that don't have seatbelts. +--- Bicycles, motorbikes and submersibles are excluded automatically +--- - `1` = Seatbelt always off, windscreen ejection still occurs +--- - `2` = Seatbelt always on, ejection is never calculated +--- @type table> +Config.Excluded = { + [GetHashKey('MINITANK')] = 2, -- Seatbelt always on. + [GetHashKey('HALFTRACK')] = { [3] = 1 }, -- Seat #3 has no seatbelt. + [GetHashKey('KHANJALI')] = 2, + [GetHashKey('APC')] = 2, + [GetHashKey('THRUSTER')] = 2, + [GetHashKey('RHINO')] = 2, +} + +--- A model hash key +--- @alias hash number \ No newline at end of file diff --git a/resources/seatbelt/fxmanifest.lua b/resources/seatbelt/fxmanifest.lua new file mode 100644 index 000000000..4521c5db7 --- /dev/null +++ b/resources/seatbelt/fxmanifest.lua @@ -0,0 +1,18 @@ +fx_version 'cerulean' +game 'gta5' + +repository 'https://github.com/TFNRP/seatbelt' +fork_repository 'https://github.com/TehRamsus/Seatbelt' +version '1.2.1' +author 'Reece Stokes ' + +client_script { + '@framework/util.lua', + 'config.default.lua', + 'config.lua', + 'util.lua', + 'client.lua', +} +server_script 'server.lua' +ui_page 'static/index.html' +file 'static/**' \ No newline at end of file diff --git a/resources/seatbelt/package.json b/resources/seatbelt/package.json new file mode 100644 index 000000000..0ef95eb35 --- /dev/null +++ b/resources/seatbelt/package.json @@ -0,0 +1,30 @@ +{ + "name": "seatbelt", + "version": "1.2.1", + "license": "MIT", + "author": "Reece Stokes ", + "private": true, + "scripts": { + "test": "eslint static && stylelint static", + "lint": "eslint static && stylelint static", + "lint:fix": "eslint static --fix && stylelint static --fix" + }, + "repository": { + "type": "git", + "url": "https://github.com/TFNRP/seatbelt.git" + }, + "bugs": { + "url": "https://github.com/TFNRP/seatbelt/issues" + }, + "homepage": "https://github.com/TFNRP/seatbelt#readme", + "devDependencies": { + "@types/howler": "^2.2.7", + "@types/jquery": "^3.5.16", + "eslint": "^8.46.0", + "eslint-config-prettier": "^8.9.0", + "eslint-plugin-prettier": "^5.0.0", + "prettier": "^3.0.0", + "stylelint": "^14.16.1", + "stylelint-config-standard": "^24.0.0" + } +} diff --git a/resources/seatbelt/server.lua b/resources/seatbelt/server.lua new file mode 100644 index 000000000..808d55cf0 --- /dev/null +++ b/resources/seatbelt/server.lua @@ -0,0 +1,7 @@ +RegisterNetEvent('seatbelt:ServerNotify', function() + TriggerClientEvent('seatbelt:ClientNotify', -1, source) +end) + +RegisterNetEvent('seatbelt:ServerHasAce', function() + TriggerClientEvent('seatbelt:ClientHasAce', source, IsPlayerAceAllowed(source, 'seatbelt.notify')) +end) \ No newline at end of file diff --git a/resources/seatbelt/static/assets/buckle.ogg b/resources/seatbelt/static/assets/buckle.ogg new file mode 100644 index 0000000000000000000000000000000000000000..332f351ae23a535f4380bd1bc4c2a9e53d470d52 GIT binary patch literal 47632 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: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 S0D~TvSf?4x$7heyRsSDv@@A(1 literal 0 HcmV?d00001 diff --git a/resources/seatbelt/static/assets/chime.ogg b/resources/seatbelt/static/assets/chime.ogg new file mode 100644 index 0000000000000000000000000000000000000000..9c4762e7a1048df25b66edd900f0ef982377cc47 GIT binary patch literal 56468 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�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 ae@0-x;UQ-IPnr{vcWgE0MTH=<;Qs;BF#Z_; literal 0 HcmV?d00001 diff --git a/resources/seatbelt/static/assets/unbuckle.ogg b/resources/seatbelt/static/assets/unbuckle.ogg new file mode 100644 index 0000000000000000000000000000000000000000..bf4b3d9fa19567e093c5aeeafcde5ef2d5615955 GIT binary patch literal 39407 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 literal 0 HcmV?d00001 diff --git a/resources/seatbelt/static/index.html b/resources/seatbelt/static/index.html new file mode 100644 index 000000000..ac9c1749d --- /dev/null +++ b/resources/seatbelt/static/index.html @@ -0,0 +1,22 @@ + + + + + + + + + + + + +

+ + + +
+ + + \ No newline at end of file diff --git a/resources/seatbelt/static/index.js b/resources/seatbelt/static/index.js new file mode 100644 index 000000000..add434caf --- /dev/null +++ b/resources/seatbelt/static/index.js @@ -0,0 +1,86 @@ +/// +/// + +'use strict'; + +const sounds = { + buckle: new Howl({ src: ['./assets/buckle.ogg'] }), + chime: new Howl({ src: ['./assets/chime.ogg'] }), + unbluckle: new Howl({ src: ['./assets/unbuckle.ogg'] }), +}; +const buckle = [sounds.unbluckle, sounds.buckle]; + +$(() => { + const top = $('#seatbelt').css('top'); + + const enableIcon = () => { + const ui = $('#ui'); + ui.stop(true, true); + ui.css('display', 'flex'); + $('#seatbelt').animate( + { + top, + opacity: '1.0', + }, + 700, + ); + } + + const disableIcon = () => { + const ui = $('#ui'); + ui.stop(true, true); + $('#seatbelt').animate( + { + top: '100vw', + opacity: '0.0', + }, + 700, + () => ui.css('display', 'none'), + ); + } + + sounds.chime.on('play', enableIcon); + sounds.chime.on('stop', disableIcon); + sounds.chime.on('end', () => { + if (!sounds.chime.loop()) disableIcon(); + }); + + window.addEventListener('message', event => { + const payload = event.data; + + switch (payload.t) { + case 0: { + const data = payload.d; + let playing; + // If another sound is already playing, play the new sound from the reverse of the elapsed time + if ((playing = buckle.find(sound => sound.playing()))) { + const seek = buckle[data].duration() - playing.seek() - 0.423764; + playing.stop(); + buckle[data].play(); + if (seek > 0) buckle[data].seek(seek); + } else { + buckle[data].play(); + } + break; + } + + case 1: { + switch (payload.d) { + case 1: + sounds.chime.loop(true); + if (!sounds.chime.playing()) + sounds.chime.play(); + break; + + case 3: + sounds.chime.stop(); + sounds.unbluckle.stop(); + + case 0: + sounds.chime.loop(false); + break; + } break; + } + } + }); +}); diff --git a/resources/seatbelt/static/seatbelt.svg b/resources/seatbelt/static/seatbelt.svg new file mode 100644 index 000000000..c5e3e4eef --- /dev/null +++ b/resources/seatbelt/static/seatbelt.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/resources/seatbelt/static/style.css b/resources/seatbelt/static/style.css new file mode 100644 index 000000000..7edd2fe99 --- /dev/null +++ b/resources/seatbelt/static/style.css @@ -0,0 +1,23 @@ +body { + user-select: none; + overflow: hidden; +} + +#ui { + display: none; +} + +@keyframes blink { + 0% { opacity: 1; } + 50% { opacity: 0; } +} + +svg { + position: absolute; + animation: blink normal 1s infinite ease-in-out; + fill: red; + top: 42.1vw; + left: 15.4vw; + width: 3vw; + height: 3vw; +} diff --git a/resources/seatbelt/util.lua b/resources/seatbelt/util.lua new file mode 100644 index 000000000..1855f1b44 --- /dev/null +++ b/resources/seatbelt/util.lua @@ -0,0 +1,141 @@ +if RegisterFrameworkCommand == nil then + -- polyfill + RegisterFrameworkCommand = function (name, handler, restricted) + if type(name) == 'table' then + for _, c in ipairs(name) do + RegisterFrameworkCommand(c, handler, restricted) + end + else + RegisterCommand(name, handler, restricted) + end + end +end + +if GetConvar('tfnrp_framework_init', 'false') == 'true' then + IsHudHidden = exports.framework.IsHudHidden + function IsLEO() + return exports.framework:GetLocalClientDuty() > 0 + end +else + function IsHudHidden() + return false + end + if (Config.LeoCheck == 2) then + local has_ace = false + local update = true + + function IsLEO() + if (update) then + TriggerServerEvent('seatbelt:ServerHasAce') + update = false + Citizen.SetTimeout(12e3, function () + update = true + end) + + while update == false do + Citizen.Wait(1) + end + + update = false + end + + return has_ace + end + + RegisterNetEvent('seatbelt:ClientHasAce', function(bool) + has_ace = bool + update = true + end) + else + if (Config.LeoCheck ~= 1) then + Citizen.Trace('Config.LeoCheck was not set correctly, using police vehicle check instead') + end + function IsLEO() + return IsPedInAnyPoliceVehicle(PlayerPedId()) + end + end + + Config.LeoCheck = nil +end + +-- config setup +Constants = { + Distance = Config.Distance + 0.0, + Excluded = Config.Excluded, + DefaultKeybind = Config.DefaultKeybind, +} + +local GetPlayerIdentifierMethods = { + function(serverId) + return 'Player ' .. serverId .. '' + end, + function(_, playerPed, vehicle) + local hash = GetEntityModel(vehicle) + local seats = GetVehicleModelNumberOfSeats(hash) + local names = { + 'Driver', + 'Passenger', + 'Rear left passenger', + 'Rear right passenger', + 'Far rear left passenger', + 'Far rear right passenger', + } + for seat = 1, math.min(#names, seats) do + if GetPedInVehicleSeat(vehicle, seat - 2) == playerPed then + return names[seat] + end + end + end, + function(serverId) + return '' .. GetPlayerName(serverId) .. '' + end, +} + +--- GetPlayerIdentifier is a reserved namespace +GetPlayerIdentifier_ = GetPlayerIdentifierMethods[Config.PlayerIdentifierType] + +GetPlayerIdentifierMethods = nil +Config = nil + +function DoesPedVehicleHaveSeatbelt(ped) + if not IsPedInAnyVehicle(ped) + or IsPedOnAnyBike(ped) + or IsPedInAnyBoat(ped) + or IsPedInAnyPlane(ped) + or IsPedInAnyHeli(ped) + then return false, false end + + local vehicle = GetVehiclePedIsIn(ped) + local model = GetEntityModel(vehicle) + if Constants.Excluded[model] then + if Constants.Excluded[model] == 2 then + return true, true + elseif type(Constants.Excluded[model]) == 'table' then + for seat, type in pairs(Constants.Excluded[model]) do + if GetPedInVehicleSeat(vehicle, seat - 2) == ped then + return false, type == 2 + end + end + end + end + return true, false +end + +function Fwv(entity) + local hr = GetEntityHeading(entity) + 90.0 + if hr < 0.0 then hr = 360.0 + hr end + hr = hr * 0.0174533 + return { x = math.cos(hr) * 2.0, y = math.sin(hr) * 2.0 } +end + +function ShowNotification(string) + BeginTextCommandThefeedPost('STRING') + AddTextComponentSubstringPlayerName(string) + EndTextCommandThefeedPostTicker(true, true) +end + +function ShowHelpText(text, beep) + SetTextComponentFormat('STRING') + AddTextComponentSubstringPlayerName(text) + EndTextCommandDisplayHelp(0, 0, beep, -1) +end \ No newline at end of file diff --git a/resources/seatbelt/yarn.lock b/resources/seatbelt/yarn.lock new file mode 100644 index 000000000..6c53f2940 --- /dev/null +++ b/resources/seatbelt/yarn.lock @@ -0,0 +1,2417 @@ +# This file is generated by running "yarn install" inside your project. +# Manual changes might be lost - proceed with caution! + +__metadata: + version: 6 + cacheKey: 8 + +"@aashutoshrathi/word-wrap@npm:^1.2.3": + version: 1.2.6 + resolution: "@aashutoshrathi/word-wrap@npm:1.2.6" + checksum: ada901b9e7c680d190f1d012c84217ce0063d8f5c5a7725bb91ec3c5ed99bb7572680eb2d2938a531ccbaec39a95422fcd8a6b4a13110c7d98dd75402f66a0cd + languageName: node + linkType: hard + +"@babel/code-frame@npm:^7.0.0": + version: 7.22.5 + resolution: "@babel/code-frame@npm:7.22.5" + dependencies: + "@babel/highlight": ^7.22.5 + checksum: cfe804f518f53faaf9a1d3e0f9f74127ab9a004912c3a16fda07fb6a633393ecb9918a053cb71804204c1b7ec3d49e1699604715e2cfb0c9f7bc4933d324ebb6 + languageName: node + linkType: hard + +"@babel/helper-validator-identifier@npm:^7.22.5": + version: 7.22.5 + resolution: "@babel/helper-validator-identifier@npm:7.22.5" + checksum: 7f0f30113474a28298c12161763b49de5018732290ca4de13cdaefd4fd0d635a6fe3f6686c37a02905fb1e64f21a5ee2b55140cf7b070e729f1bd66866506aea + languageName: node + linkType: hard + +"@babel/highlight@npm:^7.22.5": + version: 7.22.5 + resolution: "@babel/highlight@npm:7.22.5" + dependencies: + "@babel/helper-validator-identifier": ^7.22.5 + chalk: ^2.0.0 + js-tokens: ^4.0.0 + checksum: f61ae6de6ee0ea8d9b5bcf2a532faec5ab0a1dc0f7c640e5047fc61630a0edb88b18d8c92eb06566d30da7a27db841aca11820ecd3ebe9ce514c9350fbed39c4 + languageName: node + linkType: hard + +"@csstools/selector-specificity@npm:^2.0.2": + version: 2.2.0 + resolution: "@csstools/selector-specificity@npm:2.2.0" + peerDependencies: + postcss-selector-parser: ^6.0.10 + checksum: 97c89f23b3b527d7bd51ed299969ed2b9fbb219a367948b44aefec228b8eda6ae0ad74fe8a82f9aac8ff32cfd00bb6d0c98d1daeab2e8fc6d5c4af25e5be5673 + languageName: node + linkType: hard + +"@eslint-community/eslint-utils@npm:^4.2.0": + version: 4.4.0 + resolution: "@eslint-community/eslint-utils@npm:4.4.0" + dependencies: + eslint-visitor-keys: ^3.3.0 + peerDependencies: + eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 + checksum: cdfe3ae42b4f572cbfb46d20edafe6f36fc5fb52bf2d90875c58aefe226892b9677fef60820e2832caf864a326fe4fc225714c46e8389ccca04d5f9288aabd22 + languageName: node + linkType: hard + +"@eslint-community/regexpp@npm:^4.6.1": + version: 4.6.2 + resolution: "@eslint-community/regexpp@npm:4.6.2" + checksum: a3c341377b46b54fa228f455771b901d1a2717f95d47dcdf40199df30abc000ba020f747f114f08560d119e979d882a94cf46cfc51744544d54b00319c0f2724 + languageName: node + linkType: hard + +"@eslint/eslintrc@npm:^2.1.1": + version: 2.1.1 + resolution: "@eslint/eslintrc@npm:2.1.1" + dependencies: + ajv: ^6.12.4 + debug: ^4.3.2 + espree: ^9.6.0 + globals: ^13.19.0 + ignore: ^5.2.0 + import-fresh: ^3.2.1 + js-yaml: ^4.1.0 + minimatch: ^3.1.2 + strip-json-comments: ^3.1.1 + checksum: bf909ea183d27238c257a82d4ffdec38ca94b906b4b8dfae02ecbe7ecc9e5a8182ef5e469c808bb8cb4fea4750f43ac4ca7c4b4a167b6cd7e3aaacd386b2bd25 + languageName: node + linkType: hard + +"@eslint/js@npm:^8.46.0": + version: 8.46.0 + resolution: "@eslint/js@npm:8.46.0" + checksum: 7aed479832302882faf5bec37e9d068f270f84c19b3fb529646a7c1b031e73a312f730569c78806492bc09cfce3d7651dfab4ce09a56cbb06bc6469449e56377 + languageName: node + linkType: hard + +"@humanwhocodes/config-array@npm:^0.11.10": + version: 0.11.10 + resolution: "@humanwhocodes/config-array@npm:0.11.10" + dependencies: + "@humanwhocodes/object-schema": ^1.2.1 + debug: ^4.1.1 + minimatch: ^3.0.5 + checksum: 1b1302e2403d0e35bc43e66d67a2b36b0ad1119efc704b5faff68c41f791a052355b010fb2d27ef022670f550de24cd6d08d5ecf0821c16326b7dcd0ee5d5d8a + languageName: node + linkType: hard + +"@humanwhocodes/module-importer@npm:^1.0.1": + version: 1.0.1 + resolution: "@humanwhocodes/module-importer@npm:1.0.1" + checksum: 0fd22007db8034a2cdf2c764b140d37d9020bbfce8a49d3ec5c05290e77d4b0263b1b972b752df8c89e5eaa94073408f2b7d977aed131faf6cf396ebb5d7fb61 + languageName: node + linkType: hard + +"@humanwhocodes/object-schema@npm:^1.2.1": + version: 1.2.1 + resolution: "@humanwhocodes/object-schema@npm:1.2.1" + checksum: a824a1ec31591231e4bad5787641f59e9633827d0a2eaae131a288d33c9ef0290bd16fda8da6f7c0fcb014147865d12118df10db57f27f41e20da92369fcb3f1 + languageName: node + linkType: hard + +"@nodelib/fs.scandir@npm:2.1.5": + version: 2.1.5 + resolution: "@nodelib/fs.scandir@npm:2.1.5" + dependencies: + "@nodelib/fs.stat": 2.0.5 + run-parallel: ^1.1.9 + checksum: a970d595bd23c66c880e0ef1817791432dbb7acbb8d44b7e7d0e7a22f4521260d4a83f7f9fd61d44fda4610105577f8f58a60718105fb38352baed612fd79e59 + languageName: node + linkType: hard + +"@nodelib/fs.stat@npm:2.0.5, @nodelib/fs.stat@npm:^2.0.2": + version: 2.0.5 + resolution: "@nodelib/fs.stat@npm:2.0.5" + checksum: 012480b5ca9d97bff9261571dbbec7bbc6033f69cc92908bc1ecfad0792361a5a1994bc48674b9ef76419d056a03efadfce5a6cf6dbc0a36559571a7a483f6f0 + languageName: node + linkType: hard + +"@nodelib/fs.walk@npm:^1.2.3, @nodelib/fs.walk@npm:^1.2.8": + version: 1.2.8 + resolution: "@nodelib/fs.walk@npm:1.2.8" + dependencies: + "@nodelib/fs.scandir": 2.1.5 + fastq: ^1.6.0 + checksum: 190c643f156d8f8f277bf2a6078af1ffde1fd43f498f187c2db24d35b4b4b5785c02c7dc52e356497b9a1b65b13edc996de08de0b961c32844364da02986dc53 + languageName: node + linkType: hard + +"@pkgr/utils@npm:^2.3.1": + version: 2.4.2 + resolution: "@pkgr/utils@npm:2.4.2" + dependencies: + cross-spawn: ^7.0.3 + fast-glob: ^3.3.0 + is-glob: ^4.0.3 + open: ^9.1.0 + picocolors: ^1.0.0 + tslib: ^2.6.0 + checksum: 24e04c121269317d259614cd32beea3af38277151c4002df5883c4be920b8e3490bb897748e844f9d46bf68230f86dabd4e8f093773130e7e60529a769a132fc + languageName: node + linkType: hard + +"@types/howler@npm:^2.2.7": + version: 2.2.7 + resolution: "@types/howler@npm:2.2.7" + checksum: e9d6723f946a7526c8562436c06ad64d55f63a0573bfbf08c776e3785ab520a3138da84058f280b0fe7d8a819af77af3dd62d88f873a316d3723dc2ad575aa0d + languageName: node + linkType: hard + +"@types/jquery@npm:^3.5.16": + version: 3.5.16 + resolution: "@types/jquery@npm:3.5.16" + dependencies: + "@types/sizzle": "*" + checksum: 13c995f15d1c2f1d322103dc1cb0a22b95eecc3e7546f00279b8731aea21d7ec04550af40e609ee48e755d4e11bf61c25b4aa9f53df3bcbec4b8fe8e81471732 + languageName: node + linkType: hard + +"@types/minimist@npm:^1.2.0": + version: 1.2.2 + resolution: "@types/minimist@npm:1.2.2" + checksum: b8da83c66eb4aac0440e64674b19564d9d86c80ae273144db9681e5eeff66f238ade9515f5006ffbfa955ceff8b89ad2bd8ec577d7caee74ba101431fb07045d + languageName: node + linkType: hard + +"@types/normalize-package-data@npm:^2.4.0": + version: 2.4.1 + resolution: "@types/normalize-package-data@npm:2.4.1" + checksum: e87bccbf11f95035c89a132b52b79ce69a1e3652fe55962363063c9c0dae0fe2477ebc585e03a9652adc6f381d24ba5589cc5e51849df4ced3d3e004a7d40ed5 + languageName: node + linkType: hard + +"@types/parse-json@npm:^4.0.0": + version: 4.0.0 + resolution: "@types/parse-json@npm:4.0.0" + checksum: fd6bce2b674b6efc3db4c7c3d336bd70c90838e8439de639b909ce22f3720d21344f52427f1d9e57b265fcb7f6c018699b99e5e0c208a1a4823014269a6bf35b + languageName: node + linkType: hard + +"@types/sizzle@npm:*": + version: 2.3.3 + resolution: "@types/sizzle@npm:2.3.3" + checksum: 586a9fb1f6ff3e325e0f2cc1596a460615f0bc8a28f6e276ac9b509401039dd242fa8b34496d3a30c52f5b495873922d09a9e76c50c2ab2bcc70ba3fb9c4e160 + languageName: node + linkType: hard + +"acorn-jsx@npm:^5.3.2": + version: 5.3.2 + resolution: "acorn-jsx@npm:5.3.2" + peerDependencies: + acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 + checksum: c3d3b2a89c9a056b205b69530a37b972b404ee46ec8e5b341666f9513d3163e2a4f214a71f4dfc7370f5a9c07472d2fd1c11c91c3f03d093e37637d95da98950 + languageName: node + linkType: hard + +"acorn@npm:^8.9.0": + version: 8.10.0 + resolution: "acorn@npm:8.10.0" + bin: + acorn: bin/acorn + checksum: 538ba38af0cc9e5ef983aee196c4b8b4d87c0c94532334fa7e065b2c8a1f85863467bb774231aae91613fcda5e68740c15d97b1967ae3394d20faddddd8af61d + languageName: node + linkType: hard + +"ajv@npm:^6.12.4": + version: 6.12.6 + resolution: "ajv@npm:6.12.6" + dependencies: + fast-deep-equal: ^3.1.1 + fast-json-stable-stringify: ^2.0.0 + json-schema-traverse: ^0.4.1 + uri-js: ^4.2.2 + checksum: 874972efe5c4202ab0a68379481fbd3d1b5d0a7bd6d3cc21d40d3536ebff3352a2a1fabb632d4fd2cc7fe4cbdcd5ed6782084c9bbf7f32a1536d18f9da5007d4 + languageName: node + linkType: hard + +"ajv@npm:^8.0.1": + version: 8.12.0 + resolution: "ajv@npm:8.12.0" + dependencies: + fast-deep-equal: ^3.1.1 + json-schema-traverse: ^1.0.0 + require-from-string: ^2.0.2 + uri-js: ^4.2.2 + checksum: 4dc13714e316e67537c8b31bc063f99a1d9d9a497eb4bbd55191ac0dcd5e4985bbb71570352ad6f1e76684fb6d790928f96ba3b2d4fd6e10024be9612fe3f001 + languageName: node + linkType: hard + +"ansi-regex@npm:^5.0.1": + version: 5.0.1 + resolution: "ansi-regex@npm:5.0.1" + checksum: 2aa4bb54caf2d622f1afdad09441695af2a83aa3fe8b8afa581d205e57ed4261c183c4d3877cee25794443fde5876417d859c108078ab788d6af7e4fe52eb66b + languageName: node + linkType: hard + +"ansi-styles@npm:^3.2.1": + version: 3.2.1 + resolution: "ansi-styles@npm:3.2.1" + dependencies: + color-convert: ^1.9.0 + checksum: d85ade01c10e5dd77b6c89f34ed7531da5830d2cb5882c645f330079975b716438cd7ebb81d0d6e6b4f9c577f19ae41ab55f07f19786b02f9dfd9e0377395665 + languageName: node + linkType: hard + +"ansi-styles@npm:^4.0.0, ansi-styles@npm:^4.1.0": + version: 4.3.0 + resolution: "ansi-styles@npm:4.3.0" + dependencies: + color-convert: ^2.0.1 + checksum: 513b44c3b2105dd14cc42a19271e80f386466c4be574bccf60b627432f9198571ebf4ab1e4c3ba17347658f4ee1711c163d574248c0c1cdc2d5917a0ad582ec4 + languageName: node + linkType: hard + +"argparse@npm:^2.0.1": + version: 2.0.1 + resolution: "argparse@npm:2.0.1" + checksum: 83644b56493e89a254bae05702abf3a1101b4fa4d0ca31df1c9985275a5a5bd47b3c27b7fa0b71098d41114d8ca000e6ed90cad764b306f8a503665e4d517ced + languageName: node + linkType: hard + +"array-union@npm:^2.1.0": + version: 2.1.0 + resolution: "array-union@npm:2.1.0" + checksum: 5bee12395cba82da674931df6d0fea23c4aa4660cb3b338ced9f828782a65caa232573e6bf3968f23e0c5eb301764a382cef2f128b170a9dc59de0e36c39f98d + languageName: node + linkType: hard + +"arrify@npm:^1.0.1": + version: 1.0.1 + resolution: "arrify@npm:1.0.1" + checksum: 745075dd4a4624ff0225c331dacb99be501a515d39bcb7c84d24660314a6ec28e68131b137e6f7e16318170842ce97538cd298fc4cd6b2cc798e0b957f2747e7 + languageName: node + linkType: hard + +"astral-regex@npm:^2.0.0": + version: 2.0.0 + resolution: "astral-regex@npm:2.0.0" + checksum: 876231688c66400473ba505731df37ea436e574dd524520294cc3bbc54ea40334865e01fa0d074d74d036ee874ee7e62f486ea38bc421ee8e6a871c06f011766 + languageName: node + linkType: hard + +"balanced-match@npm:^1.0.0": + version: 1.0.2 + resolution: "balanced-match@npm:1.0.2" + checksum: 9706c088a283058a8a99e0bf91b0a2f75497f185980d9ffa8b304de1d9e58ebda7c72c07ebf01dadedaac5b2907b2c6f566f660d62bd336c3468e960403b9d65 + languageName: node + linkType: hard + +"balanced-match@npm:^2.0.0": + version: 2.0.0 + resolution: "balanced-match@npm:2.0.0" + checksum: 9a5caad6a292c5df164cc6d0c38e0eedf9a1413f42e5fece733640949d74d0052cfa9587c1a1681f772147fb79be495121325a649526957fd75b3a216d1fbc68 + languageName: node + linkType: hard + +"big-integer@npm:^1.6.44": + version: 1.6.51 + resolution: "big-integer@npm:1.6.51" + checksum: 3d444173d1b2e20747e2c175568bedeebd8315b0637ea95d75fd27830d3b8e8ba36c6af40374f36bdaea7b5de376dcada1b07587cb2a79a928fccdb6e6e3c518 + languageName: node + linkType: hard + +"bplist-parser@npm:^0.2.0": + version: 0.2.0 + resolution: "bplist-parser@npm:0.2.0" + dependencies: + big-integer: ^1.6.44 + checksum: d5339dd16afc51de6c88f88f58a45b72ed6a06aa31f5557d09877575f220b7c1d3fbe375da0b62e6a10d4b8ed80523567e351f24014f5bc886ad523758142cdd + languageName: node + linkType: hard + +"brace-expansion@npm:^1.1.7": + version: 1.1.11 + resolution: "brace-expansion@npm:1.1.11" + dependencies: + balanced-match: ^1.0.0 + concat-map: 0.0.1 + checksum: faf34a7bb0c3fcf4b59c7808bc5d2a96a40988addf2e7e09dfbb67a2251800e0d14cd2bfc1aa79174f2f5095c54ff27f46fb1289fe2d77dac755b5eb3434cc07 + languageName: node + linkType: hard + +"braces@npm:^3.0.2": + version: 3.0.2 + resolution: "braces@npm:3.0.2" + dependencies: + fill-range: ^7.0.1 + checksum: e2a8e769a863f3d4ee887b5fe21f63193a891c68b612ddb4b68d82d1b5f3ff9073af066c343e9867a393fe4c2555dcb33e89b937195feb9c1613d259edfcd459 + languageName: node + linkType: hard + +"bundle-name@npm:^3.0.0": + version: 3.0.0 + resolution: "bundle-name@npm:3.0.0" + dependencies: + run-applescript: ^5.0.0 + checksum: edf2b1fbe6096ed32e7566947ace2ea937ee427391744d7510a2880c4b9a5b3543d3f6c551236a29e5c87d3195f8e2912516290e638c15bcbede7b37cc375615 + languageName: node + linkType: hard + +"callsites@npm:^3.0.0": + version: 3.1.0 + resolution: "callsites@npm:3.1.0" + checksum: 072d17b6abb459c2ba96598918b55868af677154bec7e73d222ef95a8fdb9bbf7dae96a8421085cdad8cd190d86653b5b6dc55a4484f2e5b2e27d5e0c3fc15b3 + languageName: node + linkType: hard + +"camelcase-keys@npm:^6.2.2": + version: 6.2.2 + resolution: "camelcase-keys@npm:6.2.2" + dependencies: + camelcase: ^5.3.1 + map-obj: ^4.0.0 + quick-lru: ^4.0.1 + checksum: 43c9af1adf840471e54c68ab3e5fe8a62719a6b7dbf4e2e86886b7b0ff96112c945736342b837bd2529ec9d1c7d1934e5653318478d98e0cf22c475c04658e2a + languageName: node + linkType: hard + +"camelcase@npm:^5.3.1": + version: 5.3.1 + resolution: "camelcase@npm:5.3.1" + checksum: e6effce26b9404e3c0f301498184f243811c30dfe6d0b9051863bd8e4034d09c8c2923794f280d6827e5aa055f6c434115ff97864a16a963366fb35fd673024b + languageName: node + linkType: hard + +"chalk@npm:^2.0.0": + version: 2.4.2 + resolution: "chalk@npm:2.4.2" + dependencies: + ansi-styles: ^3.2.1 + escape-string-regexp: ^1.0.5 + supports-color: ^5.3.0 + checksum: ec3661d38fe77f681200f878edbd9448821924e0f93a9cefc0e26a33b145f1027a2084bf19967160d11e1f03bfe4eaffcabf5493b89098b2782c3fe0b03d80c2 + languageName: node + linkType: hard + +"chalk@npm:^4.0.0": + version: 4.1.2 + resolution: "chalk@npm:4.1.2" + dependencies: + ansi-styles: ^4.1.0 + supports-color: ^7.1.0 + checksum: fe75c9d5c76a7a98d45495b91b2172fa3b7a09e0cc9370e5c8feb1c567b85c4288e2b3fded7cfdd7359ac28d6b3844feb8b82b8686842e93d23c827c417e83fc + languageName: node + linkType: hard + +"color-convert@npm:^1.9.0": + version: 1.9.3 + resolution: "color-convert@npm:1.9.3" + dependencies: + color-name: 1.1.3 + checksum: fd7a64a17cde98fb923b1dd05c5f2e6f7aefda1b60d67e8d449f9328b4e53b228a428fd38bfeaeb2db2ff6b6503a776a996150b80cdf224062af08a5c8a3a203 + languageName: node + linkType: hard + +"color-convert@npm:^2.0.1": + version: 2.0.1 + resolution: "color-convert@npm:2.0.1" + dependencies: + color-name: ~1.1.4 + checksum: 79e6bdb9fd479a205c71d89574fccfb22bd9053bd98c6c4d870d65c132e5e904e6034978e55b43d69fcaa7433af2016ee203ce76eeba9cfa554b373e7f7db336 + languageName: node + linkType: hard + +"color-name@npm:1.1.3": + version: 1.1.3 + resolution: "color-name@npm:1.1.3" + checksum: 09c5d3e33d2105850153b14466501f2bfb30324a2f76568a408763a3b7433b0e50e5b4ab1947868e65cb101bb7cb75029553f2c333b6d4b8138a73fcc133d69d + languageName: node + linkType: hard + +"color-name@npm:~1.1.4": + version: 1.1.4 + resolution: "color-name@npm:1.1.4" + checksum: b0445859521eb4021cd0fb0cc1a75cecf67fceecae89b63f62b201cca8d345baf8b952c966862a9d9a2632987d4f6581f0ec8d957dfacece86f0a7919316f610 + languageName: node + linkType: hard + +"colord@npm:^2.9.3": + version: 2.9.3 + resolution: "colord@npm:2.9.3" + checksum: 95d909bfbcfd8d5605cbb5af56f2d1ce2b323990258fd7c0d2eb0e6d3bb177254d7fb8213758db56bb4ede708964f78c6b992b326615f81a18a6aaf11d64c650 + languageName: node + linkType: hard + +"concat-map@npm:0.0.1": + version: 0.0.1 + resolution: "concat-map@npm:0.0.1" + checksum: 902a9f5d8967a3e2faf138d5cb784b9979bad2e6db5357c5b21c568df4ebe62bcb15108af1b2253744844eb964fc023fbd9afbbbb6ddd0bcc204c6fb5b7bf3af + languageName: node + linkType: hard + +"cosmiconfig@npm:^7.1.0": + version: 7.1.0 + resolution: "cosmiconfig@npm:7.1.0" + dependencies: + "@types/parse-json": ^4.0.0 + import-fresh: ^3.2.1 + parse-json: ^5.0.0 + path-type: ^4.0.0 + yaml: ^1.10.0 + checksum: c53bf7befc1591b2651a22414a5e786cd5f2eeaa87f3678a3d49d6069835a9d8d1aef223728e98aa8fec9a95bf831120d245096db12abe019fecb51f5696c96f + languageName: node + linkType: hard + +"cross-spawn@npm:^7.0.2, cross-spawn@npm:^7.0.3": + version: 7.0.3 + resolution: "cross-spawn@npm:7.0.3" + dependencies: + path-key: ^3.1.0 + shebang-command: ^2.0.0 + which: ^2.0.1 + checksum: 671cc7c7288c3a8406f3c69a3ae2fc85555c04169e9d611def9a675635472614f1c0ed0ef80955d5b6d4e724f6ced67f0ad1bb006c2ea643488fcfef994d7f52 + languageName: node + linkType: hard + +"css-functions-list@npm:^3.1.0": + version: 3.2.0 + resolution: "css-functions-list@npm:3.2.0" + checksum: fe912ea852fad500aef9a4f04db9a0371c7b0eb1ac1a45fbd8df0156ae0538cee7492ebd620b9bb502fe5bf2b5ed3bf3c16b6659cf67c7144eff0b597bcc3891 + languageName: node + linkType: hard + +"cssesc@npm:^3.0.0": + version: 3.0.0 + resolution: "cssesc@npm:3.0.0" + bin: + cssesc: bin/cssesc + checksum: f8c4ababffbc5e2ddf2fa9957dda1ee4af6048e22aeda1869d0d00843223c1b13ad3f5d88b51caa46c994225eacb636b764eb807a8883e2fb6f99b4f4e8c48b2 + languageName: node + linkType: hard + +"debug@npm:^4.1.1, debug@npm:^4.3.2, debug@npm:^4.3.4": + version: 4.3.4 + resolution: "debug@npm:4.3.4" + dependencies: + ms: 2.1.2 + peerDependenciesMeta: + supports-color: + optional: true + checksum: 3dbad3f94ea64f34431a9cbf0bafb61853eda57bff2880036153438f50fb5a84f27683ba0d8e5426bf41a8c6ff03879488120cf5b3a761e77953169c0600a708 + languageName: node + linkType: hard + +"decamelize-keys@npm:^1.1.0": + version: 1.1.1 + resolution: "decamelize-keys@npm:1.1.1" + dependencies: + decamelize: ^1.1.0 + map-obj: ^1.0.0 + checksum: fc645fe20b7bda2680bbf9481a3477257a7f9304b1691036092b97ab04c0ab53e3bf9fcc2d2ae382536568e402ec41fb11e1d4c3836a9abe2d813dd9ef4311e0 + languageName: node + linkType: hard + +"decamelize@npm:^1.1.0, decamelize@npm:^1.2.0": + version: 1.2.0 + resolution: "decamelize@npm:1.2.0" + checksum: ad8c51a7e7e0720c70ec2eeb1163b66da03e7616d7b98c9ef43cce2416395e84c1e9548dd94f5f6ffecfee9f8b94251fc57121a8b021f2ff2469b2bae247b8aa + languageName: node + linkType: hard + +"deep-is@npm:^0.1.3": + version: 0.1.4 + resolution: "deep-is@npm:0.1.4" + checksum: edb65dd0d7d1b9c40b2f50219aef30e116cedd6fc79290e740972c132c09106d2e80aa0bc8826673dd5a00222d4179c84b36a790eef63a4c4bca75a37ef90804 + languageName: node + linkType: hard + +"default-browser-id@npm:^3.0.0": + version: 3.0.0 + resolution: "default-browser-id@npm:3.0.0" + dependencies: + bplist-parser: ^0.2.0 + untildify: ^4.0.0 + checksum: 279c7ad492542e5556336b6c254a4eaf31b2c63a5433265655ae6e47301197b6cfb15c595a6fdc6463b2ff8e1a1a1ed3cba56038a60e1527ba4ab1628c6b9941 + languageName: node + linkType: hard + +"default-browser@npm:^4.0.0": + version: 4.0.0 + resolution: "default-browser@npm:4.0.0" + dependencies: + bundle-name: ^3.0.0 + default-browser-id: ^3.0.0 + execa: ^7.1.1 + titleize: ^3.0.0 + checksum: 40c5af984799042b140300be5639c9742599bda76dc9eba5ac9ad5943c83dd36cebc4471eafcfddf8e0ec817166d5ba89d56f08e66a126c7c7908a179cead1a7 + languageName: node + linkType: hard + +"define-lazy-prop@npm:^3.0.0": + version: 3.0.0 + resolution: "define-lazy-prop@npm:3.0.0" + checksum: 54884f94caac0791bf6395a3ec530ce901cf71c47b0196b8754f3fd17edb6c0e80149c1214429d851873bb0d689dbe08dcedbb2306dc45c8534a5934723851b6 + languageName: node + linkType: hard + +"dir-glob@npm:^3.0.1": + version: 3.0.1 + resolution: "dir-glob@npm:3.0.1" + dependencies: + path-type: ^4.0.0 + checksum: fa05e18324510d7283f55862f3161c6759a3f2f8dbce491a2fc14c8324c498286c54282c1f0e933cb930da8419b30679389499b919122952a4f8592362ef4615 + languageName: node + linkType: hard + +"doctrine@npm:^3.0.0": + version: 3.0.0 + resolution: "doctrine@npm:3.0.0" + dependencies: + esutils: ^2.0.2 + checksum: fd7673ca77fe26cd5cba38d816bc72d641f500f1f9b25b83e8ce28827fe2da7ad583a8da26ab6af85f834138cf8dae9f69b0cd6ab925f52ddab1754db44d99ce + languageName: node + linkType: hard + +"emoji-regex@npm:^8.0.0": + version: 8.0.0 + resolution: "emoji-regex@npm:8.0.0" + checksum: d4c5c39d5a9868b5fa152f00cada8a936868fd3367f33f71be515ecee4c803132d11b31a6222b2571b1e5f7e13890156a94880345594d0ce7e3c9895f560f192 + languageName: node + linkType: hard + +"error-ex@npm:^1.3.1": + version: 1.3.2 + resolution: "error-ex@npm:1.3.2" + dependencies: + is-arrayish: ^0.2.1 + checksum: c1c2b8b65f9c91b0f9d75f0debaa7ec5b35c266c2cac5de412c1a6de86d4cbae04ae44e510378cb14d032d0645a36925d0186f8bb7367bcc629db256b743a001 + languageName: node + linkType: hard + +"escape-string-regexp@npm:^1.0.5": + version: 1.0.5 + resolution: "escape-string-regexp@npm:1.0.5" + checksum: 6092fda75c63b110c706b6a9bfde8a612ad595b628f0bd2147eea1d3406723020810e591effc7db1da91d80a71a737a313567c5abb3813e8d9c71f4aa595b410 + languageName: node + linkType: hard + +"escape-string-regexp@npm:^4.0.0": + version: 4.0.0 + resolution: "escape-string-regexp@npm:4.0.0" + checksum: 98b48897d93060f2322108bf29db0feba7dd774be96cd069458d1453347b25ce8682ecc39859d4bca2203cc0ab19c237bcc71755eff49a0f8d90beadeeba5cc5 + languageName: node + linkType: hard + +"eslint-config-prettier@npm:^8.9.0": + version: 8.9.0 + resolution: "eslint-config-prettier@npm:8.9.0" + peerDependencies: + eslint: ">=7.0.0" + bin: + eslint-config-prettier: bin/cli.js + checksum: a675d0dabd76b700ef2d062b5ec6a634e105a8e8c070f95281fd2ccb614527fac60b4c758132058c50f0521fd19313f1f5be45ce9ebf081f2e5f77ae6eb7d8db + languageName: node + linkType: hard + +"eslint-plugin-prettier@npm:^5.0.0": + version: 5.0.0 + resolution: "eslint-plugin-prettier@npm:5.0.0" + dependencies: + prettier-linter-helpers: ^1.0.0 + synckit: ^0.8.5 + peerDependencies: + "@types/eslint": ">=8.0.0" + eslint: ">=8.0.0" + prettier: ">=3.0.0" + peerDependenciesMeta: + "@types/eslint": + optional: true + eslint-config-prettier: + optional: true + checksum: 84e88744b9050f2d5ef31b94e85294dda16f3a53c2449f9d33eac8ae6264889b459bf35a68e438fb6b329c2a1d6491aac4bfa00d86317e7009de3dad0311bec6 + languageName: node + linkType: hard + +"eslint-scope@npm:^7.2.2": + version: 7.2.2 + resolution: "eslint-scope@npm:7.2.2" + dependencies: + esrecurse: ^4.3.0 + estraverse: ^5.2.0 + checksum: ec97dbf5fb04b94e8f4c5a91a7f0a6dd3c55e46bfc7bbcd0e3138c3a76977570e02ed89a1810c778dcd72072ff0e9621ba1379b4babe53921d71e2e4486fda3e + languageName: node + linkType: hard + +"eslint-visitor-keys@npm:^3.3.0, eslint-visitor-keys@npm:^3.4.1, eslint-visitor-keys@npm:^3.4.2": + version: 3.4.2 + resolution: "eslint-visitor-keys@npm:3.4.2" + checksum: 9e0e7e4aaea705c097ae37c97410e5f167d4d2193be2edcb1f0760762ede3df01545e4820ae314f42dcec687745f2c6dcaf6d83575c4a2a241eb0c8517d724f2 + languageName: node + linkType: hard + +"eslint@npm:^8.46.0": + version: 8.46.0 + resolution: "eslint@npm:8.46.0" + dependencies: + "@eslint-community/eslint-utils": ^4.2.0 + "@eslint-community/regexpp": ^4.6.1 + "@eslint/eslintrc": ^2.1.1 + "@eslint/js": ^8.46.0 + "@humanwhocodes/config-array": ^0.11.10 + "@humanwhocodes/module-importer": ^1.0.1 + "@nodelib/fs.walk": ^1.2.8 + ajv: ^6.12.4 + chalk: ^4.0.0 + cross-spawn: ^7.0.2 + debug: ^4.3.2 + doctrine: ^3.0.0 + escape-string-regexp: ^4.0.0 + eslint-scope: ^7.2.2 + eslint-visitor-keys: ^3.4.2 + espree: ^9.6.1 + esquery: ^1.4.2 + esutils: ^2.0.2 + fast-deep-equal: ^3.1.3 + file-entry-cache: ^6.0.1 + find-up: ^5.0.0 + glob-parent: ^6.0.2 + globals: ^13.19.0 + graphemer: ^1.4.0 + ignore: ^5.2.0 + imurmurhash: ^0.1.4 + is-glob: ^4.0.0 + is-path-inside: ^3.0.3 + js-yaml: ^4.1.0 + json-stable-stringify-without-jsonify: ^1.0.1 + levn: ^0.4.1 + lodash.merge: ^4.6.2 + minimatch: ^3.1.2 + natural-compare: ^1.4.0 + optionator: ^0.9.3 + strip-ansi: ^6.0.1 + text-table: ^0.2.0 + bin: + eslint: bin/eslint.js + checksum: 7a7d36b1a3bbc12e08fbb5bc36fd482a7a5a1797e62e762499dd45601b9e45aaa53a129f31ce0b4444551a9639b8b681ad535f379893dd1e3ae37b31dccd82aa + languageName: node + linkType: hard + +"espree@npm:^9.6.0, espree@npm:^9.6.1": + version: 9.6.1 + resolution: "espree@npm:9.6.1" + dependencies: + acorn: ^8.9.0 + acorn-jsx: ^5.3.2 + eslint-visitor-keys: ^3.4.1 + checksum: eb8c149c7a2a77b3f33a5af80c10875c3abd65450f60b8af6db1bfcfa8f101e21c1e56a561c6dc13b848e18148d43469e7cd208506238554fb5395a9ea5a1ab9 + languageName: node + linkType: hard + +"esquery@npm:^1.4.2": + version: 1.5.0 + resolution: "esquery@npm:1.5.0" + dependencies: + estraverse: ^5.1.0 + checksum: aefb0d2596c230118656cd4ec7532d447333a410a48834d80ea648b1e7b5c9bc9ed8b5e33a89cb04e487b60d622f44cf5713bf4abed7c97343edefdc84a35900 + languageName: node + linkType: hard + +"esrecurse@npm:^4.3.0": + version: 4.3.0 + resolution: "esrecurse@npm:4.3.0" + dependencies: + estraverse: ^5.2.0 + checksum: ebc17b1a33c51cef46fdc28b958994b1dc43cd2e86237515cbc3b4e5d2be6a811b2315d0a1a4d9d340b6d2308b15322f5c8291059521cc5f4802f65e7ec32837 + languageName: node + linkType: hard + +"estraverse@npm:^5.1.0, estraverse@npm:^5.2.0": + version: 5.3.0 + resolution: "estraverse@npm:5.3.0" + checksum: 072780882dc8416ad144f8fe199628d2b3e7bbc9989d9ed43795d2c90309a2047e6bc5979d7e2322a341163d22cfad9e21f4110597fe487519697389497e4e2b + languageName: node + linkType: hard + +"esutils@npm:^2.0.2": + version: 2.0.3 + resolution: "esutils@npm:2.0.3" + checksum: 22b5b08f74737379a840b8ed2036a5fb35826c709ab000683b092d9054e5c2a82c27818f12604bfc2a9a76b90b6834ef081edbc1c7ae30d1627012e067c6ec87 + languageName: node + linkType: hard + +"execa@npm:^5.0.0": + version: 5.1.1 + resolution: "execa@npm:5.1.1" + dependencies: + cross-spawn: ^7.0.3 + get-stream: ^6.0.0 + human-signals: ^2.1.0 + is-stream: ^2.0.0 + merge-stream: ^2.0.0 + npm-run-path: ^4.0.1 + onetime: ^5.1.2 + signal-exit: ^3.0.3 + strip-final-newline: ^2.0.0 + checksum: fba9022c8c8c15ed862847e94c252b3d946036d7547af310e344a527e59021fd8b6bb0723883ea87044dc4f0201f949046993124a42ccb0855cae5bf8c786343 + languageName: node + linkType: hard + +"execa@npm:^7.1.1": + version: 7.2.0 + resolution: "execa@npm:7.2.0" + dependencies: + cross-spawn: ^7.0.3 + get-stream: ^6.0.1 + human-signals: ^4.3.0 + is-stream: ^3.0.0 + merge-stream: ^2.0.0 + npm-run-path: ^5.1.0 + onetime: ^6.0.0 + signal-exit: ^3.0.7 + strip-final-newline: ^3.0.0 + checksum: 14fd17ba0ca8c87b277584d93b1d9fc24f2a65e5152b31d5eb159a3b814854283eaae5f51efa9525e304447e2f757c691877f7adff8fde5746aae67eb1edd1cc + languageName: node + linkType: hard + +"fast-deep-equal@npm:^3.1.1, fast-deep-equal@npm:^3.1.3": + version: 3.1.3 + resolution: "fast-deep-equal@npm:3.1.3" + checksum: e21a9d8d84f53493b6aa15efc9cfd53dd5b714a1f23f67fb5dc8f574af80df889b3bce25dc081887c6d25457cce704e636395333abad896ccdec03abaf1f3f9d + languageName: node + linkType: hard + +"fast-diff@npm:^1.1.2": + version: 1.3.0 + resolution: "fast-diff@npm:1.3.0" + checksum: d22d371b994fdc8cce9ff510d7b8dc4da70ac327bcba20df607dd5b9cae9f908f4d1028f5fe467650f058d1e7270235ae0b8230809a262b4df587a3b3aa216c3 + languageName: node + linkType: hard + +"fast-glob@npm:^3.2.12, fast-glob@npm:^3.2.9, fast-glob@npm:^3.3.0": + version: 3.3.1 + resolution: "fast-glob@npm:3.3.1" + dependencies: + "@nodelib/fs.stat": ^2.0.2 + "@nodelib/fs.walk": ^1.2.3 + glob-parent: ^5.1.2 + merge2: ^1.3.0 + micromatch: ^4.0.4 + checksum: b6f3add6403e02cf3a798bfbb1183d0f6da2afd368f27456010c0bc1f9640aea308243d4cb2c0ab142f618276e65ecb8be1661d7c62a7b4e5ba774b9ce5432e5 + languageName: node + linkType: hard + +"fast-json-stable-stringify@npm:^2.0.0": + version: 2.1.0 + resolution: "fast-json-stable-stringify@npm:2.1.0" + checksum: b191531e36c607977e5b1c47811158733c34ccb3bfde92c44798929e9b4154884378536d26ad90dfecd32e1ffc09c545d23535ad91b3161a27ddbb8ebe0cbecb + languageName: node + linkType: hard + +"fast-levenshtein@npm:^2.0.6": + version: 2.0.6 + resolution: "fast-levenshtein@npm:2.0.6" + checksum: 92cfec0a8dfafd9c7a15fba8f2cc29cd0b62b85f056d99ce448bbcd9f708e18ab2764bda4dd5158364f4145a7c72788538994f0d1787b956ef0d1062b0f7c24c + languageName: node + linkType: hard + +"fastest-levenshtein@npm:^1.0.16": + version: 1.0.16 + resolution: "fastest-levenshtein@npm:1.0.16" + checksum: a78d44285c9e2ae2c25f3ef0f8a73f332c1247b7ea7fb4a191e6bb51aa6ee1ef0dfb3ed113616dcdc7023e18e35a8db41f61c8d88988e877cf510df8edafbc71 + languageName: node + linkType: hard + +"fastq@npm:^1.6.0": + version: 1.15.0 + resolution: "fastq@npm:1.15.0" + dependencies: + reusify: ^1.0.4 + checksum: 0170e6bfcd5d57a70412440b8ef600da6de3b2a6c5966aeaf0a852d542daff506a0ee92d6de7679d1de82e644bce69d7a574a6c93f0b03964b5337eed75ada1a + languageName: node + linkType: hard + +"file-entry-cache@npm:^6.0.1": + version: 6.0.1 + resolution: "file-entry-cache@npm:6.0.1" + dependencies: + flat-cache: ^3.0.4 + checksum: f49701feaa6314c8127c3c2f6173cfefff17612f5ed2daaafc6da13b5c91fd43e3b2a58fd0d63f9f94478a501b167615931e7200e31485e320f74a33885a9c74 + languageName: node + linkType: hard + +"fill-range@npm:^7.0.1": + version: 7.0.1 + resolution: "fill-range@npm:7.0.1" + dependencies: + to-regex-range: ^5.0.1 + checksum: cc283f4e65b504259e64fd969bcf4def4eb08d85565e906b7d36516e87819db52029a76b6363d0f02d0d532f0033c9603b9e2d943d56ee3b0d4f7ad3328ff917 + languageName: node + linkType: hard + +"find-up@npm:^4.1.0": + version: 4.1.0 + resolution: "find-up@npm:4.1.0" + dependencies: + locate-path: ^5.0.0 + path-exists: ^4.0.0 + checksum: 4c172680e8f8c1f78839486e14a43ef82e9decd0e74145f40707cc42e7420506d5ec92d9a11c22bd2c48fb0c384ea05dd30e10dd152fefeec6f2f75282a8b844 + languageName: node + linkType: hard + +"find-up@npm:^5.0.0": + version: 5.0.0 + resolution: "find-up@npm:5.0.0" + dependencies: + locate-path: ^6.0.0 + path-exists: ^4.0.0 + checksum: 07955e357348f34660bde7920783204ff5a26ac2cafcaa28bace494027158a97b9f56faaf2d89a6106211a8174db650dd9f503f9c0d526b1202d5554a00b9095 + languageName: node + linkType: hard + +"flat-cache@npm:^3.0.4": + version: 3.0.4 + resolution: "flat-cache@npm:3.0.4" + dependencies: + flatted: ^3.1.0 + rimraf: ^3.0.2 + checksum: 4fdd10ecbcbf7d520f9040dd1340eb5dfe951e6f0ecf2252edeec03ee68d989ec8b9a20f4434270e71bcfd57800dc09b3344fca3966b2eb8f613072c7d9a2365 + languageName: node + linkType: hard + +"flatted@npm:^3.1.0": + version: 3.2.7 + resolution: "flatted@npm:3.2.7" + checksum: 427633049d55bdb80201c68f7eb1cbd533e03eac541f97d3aecab8c5526f12a20ccecaeede08b57503e772c769e7f8680b37e8d482d1e5f8d7e2194687f9ea35 + languageName: node + linkType: hard + +"fs.realpath@npm:^1.0.0": + version: 1.0.0 + resolution: "fs.realpath@npm:1.0.0" + checksum: 99ddea01a7e75aa276c250a04eedeffe5662bce66c65c07164ad6264f9de18fb21be9433ead460e54cff20e31721c811f4fb5d70591799df5f85dce6d6746fd0 + languageName: node + linkType: hard + +"function-bind@npm:^1.1.1": + version: 1.1.1 + resolution: "function-bind@npm:1.1.1" + checksum: b32fbaebb3f8ec4969f033073b43f5c8befbb58f1a79e12f1d7490358150359ebd92f49e72ff0144f65f2c48ea2a605bff2d07965f548f6474fd8efd95bf361a + languageName: node + linkType: hard + +"get-stream@npm:^6.0.0, get-stream@npm:^6.0.1": + version: 6.0.1 + resolution: "get-stream@npm:6.0.1" + checksum: e04ecece32c92eebf5b8c940f51468cd53554dcbb0ea725b2748be583c9523d00128137966afce410b9b051eb2ef16d657cd2b120ca8edafcf5a65e81af63cad + languageName: node + linkType: hard + +"glob-parent@npm:^5.1.2": + version: 5.1.2 + resolution: "glob-parent@npm:5.1.2" + dependencies: + is-glob: ^4.0.1 + checksum: f4f2bfe2425296e8a47e36864e4f42be38a996db40420fe434565e4480e3322f18eb37589617a98640c5dc8fdec1a387007ee18dbb1f3f5553409c34d17f425e + languageName: node + linkType: hard + +"glob-parent@npm:^6.0.2": + version: 6.0.2 + resolution: "glob-parent@npm:6.0.2" + dependencies: + is-glob: ^4.0.3 + checksum: c13ee97978bef4f55106b71e66428eb1512e71a7466ba49025fc2aec59a5bfb0954d5abd58fc5ee6c9b076eef4e1f6d3375c2e964b88466ca390da4419a786a8 + languageName: node + linkType: hard + +"glob@npm:^7.1.3": + version: 7.2.3 + resolution: "glob@npm:7.2.3" + dependencies: + fs.realpath: ^1.0.0 + inflight: ^1.0.4 + inherits: 2 + minimatch: ^3.1.1 + once: ^1.3.0 + path-is-absolute: ^1.0.0 + checksum: 29452e97b38fa704dabb1d1045350fb2467cf0277e155aa9ff7077e90ad81d1ea9d53d3ee63bd37c05b09a065e90f16aec4a65f5b8de401d1dac40bc5605d133 + languageName: node + linkType: hard + +"global-modules@npm:^2.0.0": + version: 2.0.0 + resolution: "global-modules@npm:2.0.0" + dependencies: + global-prefix: ^3.0.0 + checksum: d6197f25856c878c2fb5f038899f2dca7cbb2f7b7cf8999660c0104972d5cfa5c68b5a0a77fa8206bb536c3903a4615665acb9709b4d80846e1bb47eaef65430 + languageName: node + linkType: hard + +"global-prefix@npm:^3.0.0": + version: 3.0.0 + resolution: "global-prefix@npm:3.0.0" + dependencies: + ini: ^1.3.5 + kind-of: ^6.0.2 + which: ^1.3.1 + checksum: 8a82fc1d6f22c45484a4e34656cc91bf021a03e03213b0035098d605bfc612d7141f1e14a21097e8a0413b4884afd5b260df0b6a25605ce9d722e11f1df2881d + languageName: node + linkType: hard + +"globals@npm:^13.19.0": + version: 13.20.0 + resolution: "globals@npm:13.20.0" + dependencies: + type-fest: ^0.20.2 + checksum: ad1ecf914bd051325faad281d02ea2c0b1df5d01bd94d368dcc5513340eac41d14b3c61af325768e3c7f8d44576e72780ec0b6f2d366121f8eec6e03c3a3b97a + languageName: node + linkType: hard + +"globby@npm:^11.1.0": + version: 11.1.0 + resolution: "globby@npm:11.1.0" + dependencies: + array-union: ^2.1.0 + dir-glob: ^3.0.1 + fast-glob: ^3.2.9 + ignore: ^5.2.0 + merge2: ^1.4.1 + slash: ^3.0.0 + checksum: b4be8885e0cfa018fc783792942d53926c35c50b3aefd3fdcfb9d22c627639dc26bd2327a40a0b74b074100ce95bb7187bfeae2f236856aa3de183af7a02aea6 + languageName: node + linkType: hard + +"globjoin@npm:^0.1.4": + version: 0.1.4 + resolution: "globjoin@npm:0.1.4" + checksum: 0a47d88d566122d9e42da946453ee38b398e0021515ac6a95d13f980ba8c1e42954e05ee26cfcbffce1ac1ee094d0524b16ce1dd874ca52408d6db5c6d39985b + languageName: node + linkType: hard + +"graphemer@npm:^1.4.0": + version: 1.4.0 + resolution: "graphemer@npm:1.4.0" + checksum: bab8f0be9b568857c7bec9fda95a89f87b783546d02951c40c33f84d05bb7da3fd10f863a9beb901463669b6583173a8c8cc6d6b306ea2b9b9d5d3d943c3a673 + languageName: node + linkType: hard + +"hard-rejection@npm:^2.1.0": + version: 2.1.0 + resolution: "hard-rejection@npm:2.1.0" + checksum: 7baaf80a0c7fff4ca79687b4060113f1529589852152fa935e6787a2bc96211e784ad4588fb3048136ff8ffc9dfcf3ae385314a5b24db32de20bea0d1597f9dc + languageName: node + linkType: hard + +"has-flag@npm:^3.0.0": + version: 3.0.0 + resolution: "has-flag@npm:3.0.0" + checksum: 4a15638b454bf086c8148979aae044dd6e39d63904cd452d970374fa6a87623423da485dfb814e7be882e05c096a7ccf1ebd48e7e7501d0208d8384ff4dea73b + languageName: node + linkType: hard + +"has-flag@npm:^4.0.0": + version: 4.0.0 + resolution: "has-flag@npm:4.0.0" + checksum: 261a1357037ead75e338156b1f9452c016a37dcd3283a972a30d9e4a87441ba372c8b81f818cd0fbcd9c0354b4ae7e18b9e1afa1971164aef6d18c2b6095a8ad + languageName: node + linkType: hard + +"has@npm:^1.0.3": + version: 1.0.3 + resolution: "has@npm:1.0.3" + dependencies: + function-bind: ^1.1.1 + checksum: b9ad53d53be4af90ce5d1c38331e712522417d017d5ef1ebd0507e07c2fbad8686fffb8e12ddecd4c39ca9b9b47431afbb975b8abf7f3c3b82c98e9aad052792 + languageName: node + linkType: hard + +"hosted-git-info@npm:^2.1.4": + version: 2.8.9 + resolution: "hosted-git-info@npm:2.8.9" + checksum: c955394bdab888a1e9bb10eb33029e0f7ce5a2ac7b3f158099dc8c486c99e73809dca609f5694b223920ca2174db33d32b12f9a2a47141dc59607c29da5a62dd + languageName: node + linkType: hard + +"hosted-git-info@npm:^4.0.1": + version: 4.1.0 + resolution: "hosted-git-info@npm:4.1.0" + dependencies: + lru-cache: ^6.0.0 + checksum: c3f87b3c2f7eb8c2748c8f49c0c2517c9a95f35d26f4bf54b2a8cba05d2e668f3753548b6ea366b18ec8dadb4e12066e19fa382a01496b0ffa0497eb23cbe461 + languageName: node + linkType: hard + +"html-tags@npm:^3.2.0": + version: 3.3.1 + resolution: "html-tags@npm:3.3.1" + checksum: b4ef1d5a76b678e43cce46e3783d563607b1d550cab30b4f511211564574770aa8c658a400b100e588bc60b8234e59b35ff72c7851cc28f3b5403b13a2c6cbce + languageName: node + linkType: hard + +"human-signals@npm:^2.1.0": + version: 2.1.0 + resolution: "human-signals@npm:2.1.0" + checksum: b87fd89fce72391625271454e70f67fe405277415b48bcc0117ca73d31fa23a4241787afdc8d67f5a116cf37258c052f59ea82daffa72364d61351423848e3b8 + languageName: node + linkType: hard + +"human-signals@npm:^4.3.0": + version: 4.3.1 + resolution: "human-signals@npm:4.3.1" + checksum: 6f12958df3f21b6fdaf02d90896c271df00636a31e2bbea05bddf817a35c66b38a6fdac5863e2df85bd52f34958997f1f50350ff97249e1dff8452865d5235d1 + languageName: node + linkType: hard + +"ignore@npm:^5.2.0, ignore@npm:^5.2.1": + version: 5.2.4 + resolution: "ignore@npm:5.2.4" + checksum: 3d4c309c6006e2621659311783eaea7ebcd41fe4ca1d78c91c473157ad6666a57a2df790fe0d07a12300d9aac2888204d7be8d59f9aaf665b1c7fcdb432517ef + languageName: node + linkType: hard + +"import-fresh@npm:^3.2.1": + version: 3.3.0 + resolution: "import-fresh@npm:3.3.0" + dependencies: + parent-module: ^1.0.0 + resolve-from: ^4.0.0 + checksum: 2cacfad06e652b1edc50be650f7ec3be08c5e5a6f6d12d035c440a42a8cc028e60a5b99ca08a77ab4d6b1346da7d971915828f33cdab730d3d42f08242d09baa + languageName: node + linkType: hard + +"import-lazy@npm:^4.0.0": + version: 4.0.0 + resolution: "import-lazy@npm:4.0.0" + checksum: 22f5e51702134aef78890156738454f620e5fe7044b204ebc057c614888a1dd6fdf2ede0fdcca44d5c173fd64f65c985f19a51775b06967ef58cc3d26898df07 + languageName: node + linkType: hard + +"imurmurhash@npm:^0.1.4": + version: 0.1.4 + resolution: "imurmurhash@npm:0.1.4" + checksum: 7cae75c8cd9a50f57dadd77482359f659eaebac0319dd9368bcd1714f55e65badd6929ca58569da2b6494ef13fdd5598cd700b1eba23f8b79c5f19d195a3ecf7 + languageName: node + linkType: hard + +"indent-string@npm:^4.0.0": + version: 4.0.0 + resolution: "indent-string@npm:4.0.0" + checksum: 824cfb9929d031dabf059bebfe08cf3137365e112019086ed3dcff6a0a7b698cb80cf67ccccde0e25b9e2d7527aa6cc1fed1ac490c752162496caba3e6699612 + languageName: node + linkType: hard + +"inflight@npm:^1.0.4": + version: 1.0.6 + resolution: "inflight@npm:1.0.6" + dependencies: + once: ^1.3.0 + wrappy: 1 + checksum: f4f76aa072ce19fae87ce1ef7d221e709afb59d445e05d47fba710e85470923a75de35bfae47da6de1b18afc3ce83d70facf44cfb0aff89f0a3f45c0a0244dfd + languageName: node + linkType: hard + +"inherits@npm:2": + version: 2.0.4 + resolution: "inherits@npm:2.0.4" + checksum: 4a48a733847879d6cf6691860a6b1e3f0f4754176e4d71494c41f3475553768b10f84b5ce1d40fbd0e34e6bfbb864ee35858ad4dd2cf31e02fc4a154b724d7f1 + languageName: node + linkType: hard + +"ini@npm:^1.3.5": + version: 1.3.8 + resolution: "ini@npm:1.3.8" + checksum: dfd98b0ca3a4fc1e323e38a6c8eb8936e31a97a918d3b377649ea15bdb15d481207a0dda1021efbd86b464cae29a0d33c1d7dcaf6c5672bee17fa849bc50a1b3 + languageName: node + linkType: hard + +"is-arrayish@npm:^0.2.1": + version: 0.2.1 + resolution: "is-arrayish@npm:0.2.1" + checksum: eef4417e3c10e60e2c810b6084942b3ead455af16c4509959a27e490e7aee87cfb3f38e01bbde92220b528a0ee1a18d52b787e1458ee86174d8c7f0e58cd488f + languageName: node + linkType: hard + +"is-core-module@npm:^2.12.0, is-core-module@npm:^2.5.0": + version: 2.12.1 + resolution: "is-core-module@npm:2.12.1" + dependencies: + has: ^1.0.3 + checksum: f04ea30533b5e62764e7b2e049d3157dc0abd95ef44275b32489ea2081176ac9746ffb1cdb107445cf1ff0e0dfcad522726ca27c27ece64dadf3795428b8e468 + languageName: node + linkType: hard + +"is-docker@npm:^2.0.0": + version: 2.2.1 + resolution: "is-docker@npm:2.2.1" + bin: + is-docker: cli.js + checksum: 3fef7ddbf0be25958e8991ad941901bf5922ab2753c46980b60b05c1bf9c9c2402d35e6dc32e4380b980ef5e1970a5d9d5e5aa2e02d77727c3b6b5e918474c56 + languageName: node + linkType: hard + +"is-docker@npm:^3.0.0": + version: 3.0.0 + resolution: "is-docker@npm:3.0.0" + bin: + is-docker: cli.js + checksum: b698118f04feb7eaf3338922bd79cba064ea54a1c3db6ec8c0c8d8ee7613e7e5854d802d3ef646812a8a3ace81182a085dfa0a71cc68b06f3fa794b9783b3c90 + languageName: node + linkType: hard + +"is-extglob@npm:^2.1.1": + version: 2.1.1 + resolution: "is-extglob@npm:2.1.1" + checksum: df033653d06d0eb567461e58a7a8c9f940bd8c22274b94bf7671ab36df5719791aae15eef6d83bbb5e23283967f2f984b8914559d4449efda578c775c4be6f85 + languageName: node + linkType: hard + +"is-fullwidth-code-point@npm:^3.0.0": + version: 3.0.0 + resolution: "is-fullwidth-code-point@npm:3.0.0" + checksum: 44a30c29457c7fb8f00297bce733f0a64cd22eca270f83e58c105e0d015e45c019491a4ab2faef91ab51d4738c670daff901c799f6a700e27f7314029e99e348 + languageName: node + linkType: hard + +"is-glob@npm:^4.0.0, is-glob@npm:^4.0.1, is-glob@npm:^4.0.3": + version: 4.0.3 + resolution: "is-glob@npm:4.0.3" + dependencies: + is-extglob: ^2.1.1 + checksum: d381c1319fcb69d341cc6e6c7cd588e17cd94722d9a32dbd60660b993c4fb7d0f19438674e68dfec686d09b7c73139c9166b47597f846af387450224a8101ab4 + languageName: node + linkType: hard + +"is-inside-container@npm:^1.0.0": + version: 1.0.0 + resolution: "is-inside-container@npm:1.0.0" + dependencies: + is-docker: ^3.0.0 + bin: + is-inside-container: cli.js + checksum: c50b75a2ab66ab3e8b92b3bc534e1ea72ca25766832c0623ac22d134116a98bcf012197d1caabe1d1c4bd5f84363d4aa5c36bb4b585fbcaf57be172cd10a1a03 + languageName: node + linkType: hard + +"is-number@npm:^7.0.0": + version: 7.0.0 + resolution: "is-number@npm:7.0.0" + checksum: 456ac6f8e0f3111ed34668a624e45315201dff921e5ac181f8ec24923b99e9f32ca1a194912dc79d539c97d33dba17dc635202ff0b2cf98326f608323276d27a + languageName: node + linkType: hard + +"is-path-inside@npm:^3.0.3": + version: 3.0.3 + resolution: "is-path-inside@npm:3.0.3" + checksum: abd50f06186a052b349c15e55b182326f1936c89a78bf6c8f2b707412517c097ce04bc49a0ca221787bc44e1049f51f09a2ffb63d22899051988d3a618ba13e9 + languageName: node + linkType: hard + +"is-plain-obj@npm:^1.1.0": + version: 1.1.0 + resolution: "is-plain-obj@npm:1.1.0" + checksum: 0ee04807797aad50859652a7467481816cbb57e5cc97d813a7dcd8915da8195dc68c436010bf39d195226cde6a2d352f4b815f16f26b7bf486a5754290629931 + languageName: node + linkType: hard + +"is-plain-object@npm:^5.0.0": + version: 5.0.0 + resolution: "is-plain-object@npm:5.0.0" + checksum: e32d27061eef62c0847d303125440a38660517e586f2f3db7c9d179ae5b6674ab0f469d519b2e25c147a1a3bc87156d0d5f4d8821e0ce4a9ee7fe1fcf11ce45c + languageName: node + linkType: hard + +"is-stream@npm:^2.0.0": + version: 2.0.1 + resolution: "is-stream@npm:2.0.1" + checksum: b8e05ccdf96ac330ea83c12450304d4a591f9958c11fd17bed240af8d5ffe08aedafa4c0f4cfccd4d28dc9d4d129daca1023633d5c11601a6cbc77521f6fae66 + languageName: node + linkType: hard + +"is-stream@npm:^3.0.0": + version: 3.0.0 + resolution: "is-stream@npm:3.0.0" + checksum: 172093fe99119ffd07611ab6d1bcccfe8bc4aa80d864b15f43e63e54b7abc71e779acd69afdb854c4e2a67fdc16ae710e370eda40088d1cfc956a50ed82d8f16 + languageName: node + linkType: hard + +"is-wsl@npm:^2.2.0": + version: 2.2.0 + resolution: "is-wsl@npm:2.2.0" + dependencies: + is-docker: ^2.0.0 + checksum: 20849846ae414997d290b75e16868e5261e86ff5047f104027026fd61d8b5a9b0b3ade16239f35e1a067b3c7cc02f70183cb661010ed16f4b6c7c93dad1b19d8 + languageName: node + linkType: hard + +"isexe@npm:^2.0.0": + version: 2.0.0 + resolution: "isexe@npm:2.0.0" + checksum: 26bf6c5480dda5161c820c5b5c751ae1e766c587b1f951ea3fcfc973bafb7831ae5b54a31a69bd670220e42e99ec154475025a468eae58ea262f813fdc8d1c62 + languageName: node + linkType: hard + +"js-tokens@npm:^4.0.0": + version: 4.0.0 + resolution: "js-tokens@npm:4.0.0" + checksum: 8a95213a5a77deb6cbe94d86340e8d9ace2b93bc367790b260101d2f36a2eaf4e4e22d9fa9cf459b38af3a32fb4190e638024cf82ec95ef708680e405ea7cc78 + languageName: node + linkType: hard + +"js-yaml@npm:^4.1.0": + version: 4.1.0 + resolution: "js-yaml@npm:4.1.0" + dependencies: + argparse: ^2.0.1 + bin: + js-yaml: bin/js-yaml.js + checksum: c7830dfd456c3ef2c6e355cc5a92e6700ceafa1d14bba54497b34a99f0376cecbb3e9ac14d3e5849b426d5a5140709a66237a8c991c675431271c4ce5504151a + languageName: node + linkType: hard + +"json-parse-even-better-errors@npm:^2.3.0": + version: 2.3.1 + resolution: "json-parse-even-better-errors@npm:2.3.1" + checksum: 798ed4cf3354a2d9ccd78e86d2169515a0097a5c133337807cdf7f1fc32e1391d207ccfc276518cc1d7d8d4db93288b8a50ba4293d212ad1336e52a8ec0a941f + languageName: node + linkType: hard + +"json-schema-traverse@npm:^0.4.1": + version: 0.4.1 + resolution: "json-schema-traverse@npm:0.4.1" + checksum: 7486074d3ba247769fda17d5181b345c9fb7d12e0da98b22d1d71a5db9698d8b4bd900a3ec1a4ffdd60846fc2556274a5c894d0c48795f14cb03aeae7b55260b + languageName: node + linkType: hard + +"json-schema-traverse@npm:^1.0.0": + version: 1.0.0 + resolution: "json-schema-traverse@npm:1.0.0" + checksum: 02f2f466cdb0362558b2f1fd5e15cce82ef55d60cd7f8fa828cf35ba74330f8d767fcae5c5c2adb7851fa811766c694b9405810879bc4e1ddd78a7c0e03658ad + languageName: node + linkType: hard + +"json-stable-stringify-without-jsonify@npm:^1.0.1": + version: 1.0.1 + resolution: "json-stable-stringify-without-jsonify@npm:1.0.1" + checksum: cff44156ddce9c67c44386ad5cddf91925fe06b1d217f2da9c4910d01f358c6e3989c4d5a02683c7a5667f9727ff05831f7aa8ae66c8ff691c556f0884d49215 + languageName: node + linkType: hard + +"kind-of@npm:^6.0.2, kind-of@npm:^6.0.3": + version: 6.0.3 + resolution: "kind-of@npm:6.0.3" + checksum: 3ab01e7b1d440b22fe4c31f23d8d38b4d9b91d9f291df683476576493d5dfd2e03848a8b05813dd0c3f0e835bc63f433007ddeceb71f05cb25c45ae1b19c6d3b + languageName: node + linkType: hard + +"known-css-properties@npm:^0.26.0": + version: 0.26.0 + resolution: "known-css-properties@npm:0.26.0" + checksum: e706f4af9d2683202df9f717e7d713f0f8c3330f155842c40d8f3b2a5837956c34aeb7ba08760977ccde1afce8b5377e29b40eb3e5c0b42bef28ddd108543cfb + languageName: node + linkType: hard + +"levn@npm:^0.4.1": + version: 0.4.1 + resolution: "levn@npm:0.4.1" + dependencies: + prelude-ls: ^1.2.1 + type-check: ~0.4.0 + checksum: 12c5021c859bd0f5248561bf139121f0358285ec545ebf48bb3d346820d5c61a4309535c7f387ed7d84361cf821e124ce346c6b7cef8ee09a67c1473b46d0fc4 + languageName: node + linkType: hard + +"lines-and-columns@npm:^1.1.6": + version: 1.2.4 + resolution: "lines-and-columns@npm:1.2.4" + checksum: 0c37f9f7fa212b38912b7145e1cd16a5f3cd34d782441c3e6ca653485d326f58b3caccda66efce1c5812bde4961bbde3374fae4b0d11bf1226152337f3894aa5 + languageName: node + linkType: hard + +"locate-path@npm:^5.0.0": + version: 5.0.0 + resolution: "locate-path@npm:5.0.0" + dependencies: + p-locate: ^4.1.0 + checksum: 83e51725e67517287d73e1ded92b28602e3ae5580b301fe54bfb76c0c723e3f285b19252e375712316774cf52006cb236aed5704692c32db0d5d089b69696e30 + languageName: node + linkType: hard + +"locate-path@npm:^6.0.0": + version: 6.0.0 + resolution: "locate-path@npm:6.0.0" + dependencies: + p-locate: ^5.0.0 + checksum: 72eb661788a0368c099a184c59d2fee760b3831c9c1c33955e8a19ae4a21b4116e53fa736dc086cdeb9fce9f7cc508f2f92d2d3aae516f133e16a2bb59a39f5a + languageName: node + linkType: hard + +"lodash.merge@npm:^4.6.2": + version: 4.6.2 + resolution: "lodash.merge@npm:4.6.2" + checksum: ad580b4bdbb7ca1f7abf7e1bce63a9a0b98e370cf40194b03380a46b4ed799c9573029599caebc1b14e3f24b111aef72b96674a56cfa105e0f5ac70546cdc005 + languageName: node + linkType: hard + +"lodash.truncate@npm:^4.4.2": + version: 4.4.2 + resolution: "lodash.truncate@npm:4.4.2" + checksum: b463d8a382cfb5f0e71c504dcb6f807a7bd379ff1ea216669aa42c52fc28c54e404bfbd96791aa09e6df0de2c1d7b8f1b7f4b1a61f324d38fe98bc535aeee4f5 + languageName: node + linkType: hard + +"lru-cache@npm:^6.0.0": + version: 6.0.0 + resolution: "lru-cache@npm:6.0.0" + dependencies: + yallist: ^4.0.0 + checksum: f97f499f898f23e4585742138a22f22526254fdba6d75d41a1c2526b3b6cc5747ef59c5612ba7375f42aca4f8461950e925ba08c991ead0651b4918b7c978297 + languageName: node + linkType: hard + +"map-obj@npm:^1.0.0": + version: 1.0.1 + resolution: "map-obj@npm:1.0.1" + checksum: 9949e7baec2a336e63b8d4dc71018c117c3ce6e39d2451ccbfd3b8350c547c4f6af331a4cbe1c83193d7c6b786082b6256bde843db90cb7da2a21e8fcc28afed + languageName: node + linkType: hard + +"map-obj@npm:^4.0.0": + version: 4.3.0 + resolution: "map-obj@npm:4.3.0" + checksum: fbc554934d1a27a1910e842bc87b177b1a556609dd803747c85ece420692380827c6ae94a95cce4407c054fa0964be3bf8226f7f2cb2e9eeee432c7c1985684e + languageName: node + linkType: hard + +"mathml-tag-names@npm:^2.1.3": + version: 2.1.3 + resolution: "mathml-tag-names@npm:2.1.3" + checksum: 1201a25a137d6b9e328facd67912058b8b45b19a6c4cc62641c9476195da28a275ca6e0eca070af5378b905c2b11abc1114676ba703411db0b9ce007de921ad0 + languageName: node + linkType: hard + +"meow@npm:^9.0.0": + version: 9.0.0 + resolution: "meow@npm:9.0.0" + dependencies: + "@types/minimist": ^1.2.0 + camelcase-keys: ^6.2.2 + decamelize: ^1.2.0 + decamelize-keys: ^1.1.0 + hard-rejection: ^2.1.0 + minimist-options: 4.1.0 + normalize-package-data: ^3.0.0 + read-pkg-up: ^7.0.1 + redent: ^3.0.0 + trim-newlines: ^3.0.0 + type-fest: ^0.18.0 + yargs-parser: ^20.2.3 + checksum: 99799c47247f4daeee178e3124f6ef6f84bde2ba3f37652865d5d8f8b8adcf9eedfc551dd043e2455cd8206545fd848e269c0c5ab6b594680a0ad4d3617c9639 + languageName: node + linkType: hard + +"merge-stream@npm:^2.0.0": + version: 2.0.0 + resolution: "merge-stream@npm:2.0.0" + checksum: 6fa4dcc8d86629705cea944a4b88ef4cb0e07656ebf223fa287443256414283dd25d91c1cd84c77987f2aec5927af1a9db6085757cb43d90eb170ebf4b47f4f4 + languageName: node + linkType: hard + +"merge2@npm:^1.3.0, merge2@npm:^1.4.1": + version: 1.4.1 + resolution: "merge2@npm:1.4.1" + checksum: 7268db63ed5169466540b6fb947aec313200bcf6d40c5ab722c22e242f651994619bcd85601602972d3c85bd2cc45a358a4c61937e9f11a061919a1da569b0c2 + languageName: node + linkType: hard + +"micromatch@npm:^4.0.4, micromatch@npm:^4.0.5": + version: 4.0.5 + resolution: "micromatch@npm:4.0.5" + dependencies: + braces: ^3.0.2 + picomatch: ^2.3.1 + checksum: 02a17b671c06e8fefeeb6ef996119c1e597c942e632a21ef589154f23898c9c6a9858526246abb14f8bca6e77734aa9dcf65476fca47cedfb80d9577d52843fc + languageName: node + linkType: hard + +"mimic-fn@npm:^2.1.0": + version: 2.1.0 + resolution: "mimic-fn@npm:2.1.0" + checksum: d2421a3444848ce7f84bd49115ddacff29c15745db73f54041edc906c14b131a38d05298dae3081667627a59b2eb1ca4b436ff2e1b80f69679522410418b478a + languageName: node + linkType: hard + +"mimic-fn@npm:^4.0.0": + version: 4.0.0 + resolution: "mimic-fn@npm:4.0.0" + checksum: 995dcece15ee29aa16e188de6633d43a3db4611bcf93620e7e62109ec41c79c0f34277165b8ce5e361205049766e371851264c21ac64ca35499acb5421c2ba56 + languageName: node + linkType: hard + +"min-indent@npm:^1.0.0": + version: 1.0.1 + resolution: "min-indent@npm:1.0.1" + checksum: bfc6dd03c5eaf623a4963ebd94d087f6f4bbbfd8c41329a7f09706b0cb66969c4ddd336abeb587bc44bc6f08e13bf90f0b374f9d71f9f01e04adc2cd6f083ef1 + languageName: node + linkType: hard + +"minimatch@npm:^3.0.5, minimatch@npm:^3.1.1, minimatch@npm:^3.1.2": + version: 3.1.2 + resolution: "minimatch@npm:3.1.2" + dependencies: + brace-expansion: ^1.1.7 + checksum: c154e566406683e7bcb746e000b84d74465b3a832c45d59912b9b55cd50dee66e5c4b1e5566dba26154040e51672f9aa450a9aef0c97cfc7336b78b7afb9540a + languageName: node + linkType: hard + +"minimist-options@npm:4.1.0": + version: 4.1.0 + resolution: "minimist-options@npm:4.1.0" + dependencies: + arrify: ^1.0.1 + is-plain-obj: ^1.1.0 + kind-of: ^6.0.3 + checksum: 8c040b3068811e79de1140ca2b708d3e203c8003eb9a414c1ab3cd467fc5f17c9ca02a5aef23bedc51a7f8bfbe77f87e9a7e31ec81fba304cda675b019496f4e + languageName: node + linkType: hard + +"ms@npm:2.1.2": + version: 2.1.2 + resolution: "ms@npm:2.1.2" + checksum: 673cdb2c3133eb050c745908d8ce632ed2c02d85640e2edb3ace856a2266a813b30c613569bf3354fdf4ea7d1a1494add3bfa95e2713baa27d0c2c71fc44f58f + languageName: node + linkType: hard + +"nanoid@npm:^3.3.6": + version: 3.3.6 + resolution: "nanoid@npm:3.3.6" + bin: + nanoid: bin/nanoid.cjs + checksum: 7d0eda657002738aa5206107bd0580aead6c95c460ef1bdd0b1a87a9c7ae6277ac2e9b945306aaa5b32c6dcb7feaf462d0f552e7f8b5718abfc6ead5c94a71b3 + languageName: node + linkType: hard + +"natural-compare@npm:^1.4.0": + version: 1.4.0 + resolution: "natural-compare@npm:1.4.0" + checksum: 23ad088b08f898fc9b53011d7bb78ec48e79de7627e01ab5518e806033861bef68d5b0cd0e2205c2f36690ac9571ff6bcb05eb777ced2eeda8d4ac5b44592c3d + languageName: node + linkType: hard + +"normalize-package-data@npm:^2.5.0": + version: 2.5.0 + resolution: "normalize-package-data@npm:2.5.0" + dependencies: + hosted-git-info: ^2.1.4 + resolve: ^1.10.0 + semver: 2 || 3 || 4 || 5 + validate-npm-package-license: ^3.0.1 + checksum: 7999112efc35a6259bc22db460540cae06564aa65d0271e3bdfa86876d08b0e578b7b5b0028ee61b23f1cae9fc0e7847e4edc0948d3068a39a2a82853efc8499 + languageName: node + linkType: hard + +"normalize-package-data@npm:^3.0.0": + version: 3.0.3 + resolution: "normalize-package-data@npm:3.0.3" + dependencies: + hosted-git-info: ^4.0.1 + is-core-module: ^2.5.0 + semver: ^7.3.4 + validate-npm-package-license: ^3.0.1 + checksum: bbcee00339e7c26fdbc760f9b66d429258e2ceca41a5df41f5df06cc7652de8d82e8679ff188ca095cad8eff2b6118d7d866af2b68400f74602fbcbce39c160a + languageName: node + linkType: hard + +"normalize-path@npm:^3.0.0": + version: 3.0.0 + resolution: "normalize-path@npm:3.0.0" + checksum: 88eeb4da891e10b1318c4b2476b6e2ecbeb5ff97d946815ffea7794c31a89017c70d7f34b3c2ebf23ef4e9fc9fb99f7dffe36da22011b5b5c6ffa34f4873ec20 + languageName: node + linkType: hard + +"npm-run-path@npm:^4.0.1": + version: 4.0.1 + resolution: "npm-run-path@npm:4.0.1" + dependencies: + path-key: ^3.0.0 + checksum: 5374c0cea4b0bbfdfae62da7bbdf1e1558d338335f4cacf2515c282ff358ff27b2ecb91ffa5330a8b14390ac66a1e146e10700440c1ab868208430f56b5f4d23 + languageName: node + linkType: hard + +"npm-run-path@npm:^5.1.0": + version: 5.1.0 + resolution: "npm-run-path@npm:5.1.0" + dependencies: + path-key: ^4.0.0 + checksum: dc184eb5ec239d6a2b990b43236845332ef12f4e0beaa9701de724aa797fe40b6bbd0157fb7639d24d3ab13f5d5cf22d223a19c6300846b8126f335f788bee66 + languageName: node + linkType: hard + +"once@npm:^1.3.0": + version: 1.4.0 + resolution: "once@npm:1.4.0" + dependencies: + wrappy: 1 + checksum: cd0a88501333edd640d95f0d2700fbde6bff20b3d4d9bdc521bdd31af0656b5706570d6c6afe532045a20bb8dc0849f8332d6f2a416e0ba6d3d3b98806c7db68 + languageName: node + linkType: hard + +"onetime@npm:^5.1.2": + version: 5.1.2 + resolution: "onetime@npm:5.1.2" + dependencies: + mimic-fn: ^2.1.0 + checksum: 2478859ef817fc5d4e9c2f9e5728512ddd1dbc9fb7829ad263765bb6d3b91ce699d6e2332eef6b7dff183c2f490bd3349f1666427eaba4469fba0ac38dfd0d34 + languageName: node + linkType: hard + +"onetime@npm:^6.0.0": + version: 6.0.0 + resolution: "onetime@npm:6.0.0" + dependencies: + mimic-fn: ^4.0.0 + checksum: 0846ce78e440841335d4e9182ef69d5762e9f38aa7499b19f42ea1c4cd40f0b4446094c455c713f9adac3f4ae86f613bb5e30c99e52652764d06a89f709b3788 + languageName: node + linkType: hard + +"open@npm:^9.1.0": + version: 9.1.0 + resolution: "open@npm:9.1.0" + dependencies: + default-browser: ^4.0.0 + define-lazy-prop: ^3.0.0 + is-inside-container: ^1.0.0 + is-wsl: ^2.2.0 + checksum: 3993c0f61d51fed8ac290e99c9c3cf45d3b6cfb3e2aa2b74cafd312c3486c22fd81df16ac8f3ab91dd8a4e3e729a16fc2480cfc406c4833416cf908acf1ae7c9 + languageName: node + linkType: hard + +"optionator@npm:^0.9.3": + version: 0.9.3 + resolution: "optionator@npm:0.9.3" + dependencies: + "@aashutoshrathi/word-wrap": ^1.2.3 + deep-is: ^0.1.3 + fast-levenshtein: ^2.0.6 + levn: ^0.4.1 + prelude-ls: ^1.2.1 + type-check: ^0.4.0 + checksum: 09281999441f2fe9c33a5eeab76700795365a061563d66b098923eb719251a42bdbe432790d35064d0816ead9296dbeb1ad51a733edf4167c96bd5d0882e428a + languageName: node + linkType: hard + +"p-limit@npm:^2.2.0": + version: 2.3.0 + resolution: "p-limit@npm:2.3.0" + dependencies: + p-try: ^2.0.0 + checksum: 84ff17f1a38126c3314e91ecfe56aecbf36430940e2873dadaa773ffe072dc23b7af8e46d4b6485d302a11673fe94c6b67ca2cfbb60c989848b02100d0594ac1 + languageName: node + linkType: hard + +"p-limit@npm:^3.0.2": + version: 3.1.0 + resolution: "p-limit@npm:3.1.0" + dependencies: + yocto-queue: ^0.1.0 + checksum: 7c3690c4dbf62ef625671e20b7bdf1cbc9534e83352a2780f165b0d3ceba21907e77ad63401708145ca4e25bfc51636588d89a8c0aeb715e6c37d1c066430360 + languageName: node + linkType: hard + +"p-locate@npm:^4.1.0": + version: 4.1.0 + resolution: "p-locate@npm:4.1.0" + dependencies: + p-limit: ^2.2.0 + checksum: 513bd14a455f5da4ebfcb819ef706c54adb09097703de6aeaa5d26fe5ea16df92b48d1ac45e01e3944ce1e6aa2a66f7f8894742b8c9d6e276e16cd2049a2b870 + languageName: node + linkType: hard + +"p-locate@npm:^5.0.0": + version: 5.0.0 + resolution: "p-locate@npm:5.0.0" + dependencies: + p-limit: ^3.0.2 + checksum: 1623088f36cf1cbca58e9b61c4e62bf0c60a07af5ae1ca99a720837356b5b6c5ba3eb1b2127e47a06865fee59dd0453cad7cc844cda9d5a62ac1a5a51b7c86d3 + languageName: node + linkType: hard + +"p-try@npm:^2.0.0": + version: 2.2.0 + resolution: "p-try@npm:2.2.0" + checksum: f8a8e9a7693659383f06aec604ad5ead237c7a261c18048a6e1b5b85a5f8a067e469aa24f5bc009b991ea3b058a87f5065ef4176793a200d4917349881216cae + languageName: node + linkType: hard + +"parent-module@npm:^1.0.0": + version: 1.0.1 + resolution: "parent-module@npm:1.0.1" + dependencies: + callsites: ^3.0.0 + checksum: 6ba8b255145cae9470cf5551eb74be2d22281587af787a2626683a6c20fbb464978784661478dd2a3f1dad74d1e802d403e1b03c1a31fab310259eec8ac560ff + languageName: node + linkType: hard + +"parse-json@npm:^5.0.0": + version: 5.2.0 + resolution: "parse-json@npm:5.2.0" + dependencies: + "@babel/code-frame": ^7.0.0 + error-ex: ^1.3.1 + json-parse-even-better-errors: ^2.3.0 + lines-and-columns: ^1.1.6 + checksum: 62085b17d64da57f40f6afc2ac1f4d95def18c4323577e1eced571db75d9ab59b297d1d10582920f84b15985cbfc6b6d450ccbf317644cfa176f3ed982ad87e2 + languageName: node + linkType: hard + +"path-exists@npm:^4.0.0": + version: 4.0.0 + resolution: "path-exists@npm:4.0.0" + checksum: 505807199dfb7c50737b057dd8d351b82c033029ab94cb10a657609e00c1bc53b951cfdbccab8de04c5584d5eff31128ce6afd3db79281874a5ef2adbba55ed1 + languageName: node + linkType: hard + +"path-is-absolute@npm:^1.0.0": + version: 1.0.1 + resolution: "path-is-absolute@npm:1.0.1" + checksum: 060840f92cf8effa293bcc1bea81281bd7d363731d214cbe5c227df207c34cd727430f70c6037b5159c8a870b9157cba65e775446b0ab06fd5ecc7e54615a3b8 + languageName: node + linkType: hard + +"path-key@npm:^3.0.0, path-key@npm:^3.1.0": + version: 3.1.1 + resolution: "path-key@npm:3.1.1" + checksum: 55cd7a9dd4b343412a8386a743f9c746ef196e57c823d90ca3ab917f90ab9f13dd0ded27252ba49dbdfcab2b091d998bc446f6220cd3cea65db407502a740020 + languageName: node + linkType: hard + +"path-key@npm:^4.0.0": + version: 4.0.0 + resolution: "path-key@npm:4.0.0" + checksum: 8e6c314ae6d16b83e93032c61020129f6f4484590a777eed709c4a01b50e498822b00f76ceaf94bc64dbd90b327df56ceadce27da3d83393790f1219e07721d7 + languageName: node + linkType: hard + +"path-parse@npm:^1.0.7": + version: 1.0.7 + resolution: "path-parse@npm:1.0.7" + checksum: 49abf3d81115642938a8700ec580da6e830dde670be21893c62f4e10bd7dd4c3742ddc603fe24f898cba7eb0c6bc1777f8d9ac14185d34540c6d4d80cd9cae8a + languageName: node + linkType: hard + +"path-type@npm:^4.0.0": + version: 4.0.0 + resolution: "path-type@npm:4.0.0" + checksum: 5b1e2daa247062061325b8fdbfd1fb56dde0a448fb1455453276ea18c60685bdad23a445dc148cf87bc216be1573357509b7d4060494a6fd768c7efad833ee45 + languageName: node + linkType: hard + +"picocolors@npm:^1.0.0": + version: 1.0.0 + resolution: "picocolors@npm:1.0.0" + checksum: a2e8092dd86c8396bdba9f2b5481032848525b3dc295ce9b57896f931e63fc16f79805144321f72976383fc249584672a75cc18d6777c6b757603f372f745981 + languageName: node + linkType: hard + +"picomatch@npm:^2.3.1": + version: 2.3.1 + resolution: "picomatch@npm:2.3.1" + checksum: 050c865ce81119c4822c45d3c84f1ced46f93a0126febae20737bd05ca20589c564d6e9226977df859ed5e03dc73f02584a2b0faad36e896936238238b0446cf + languageName: node + linkType: hard + +"postcss-media-query-parser@npm:^0.2.3": + version: 0.2.3 + resolution: "postcss-media-query-parser@npm:0.2.3" + checksum: 8000d4d95b912994928ff86137f5ab0ed4c4ee1498af2336e93d708ae8827a690cd7acbaed55d14684cf44d82c8d44b031c1c69ae6bcd2f9620ea67573888090 + languageName: node + linkType: hard + +"postcss-resolve-nested-selector@npm:^0.1.1": + version: 0.1.1 + resolution: "postcss-resolve-nested-selector@npm:0.1.1" + checksum: b08fb76ab092a09ee01328bad620a01dcb445ac5eb02dd0ed9ed75217c2f779ecb3bf99a361c46e695689309c08c09f1a1ad7354c8d58c2c2c40d364657fcb08 + languageName: node + linkType: hard + +"postcss-safe-parser@npm:^6.0.0": + version: 6.0.0 + resolution: "postcss-safe-parser@npm:6.0.0" + peerDependencies: + postcss: ^8.3.3 + checksum: 06c733eaad83a3954367e7ee02ddfe3796e7a44d4299ccf9239f40964a4daac153c7d77613f32964b5a86c0c6c2f6167738f31d578b73b17cb69d0c4446f0ebe + languageName: node + linkType: hard + +"postcss-selector-parser@npm:^6.0.11": + version: 6.0.13 + resolution: "postcss-selector-parser@npm:6.0.13" + dependencies: + cssesc: ^3.0.0 + util-deprecate: ^1.0.2 + checksum: f89163338a1ce3b8ece8e9055cd5a3165e79a15e1c408e18de5ad8f87796b61ec2d48a2902d179ae0c4b5de10fccd3a325a4e660596549b040bc5ad1b465f096 + languageName: node + linkType: hard + +"postcss-value-parser@npm:^4.2.0": + version: 4.2.0 + resolution: "postcss-value-parser@npm:4.2.0" + checksum: 819ffab0c9d51cf0acbabf8996dffbfafbafa57afc0e4c98db88b67f2094cb44488758f06e5da95d7036f19556a4a732525e84289a425f4f6fd8e412a9d7442f + languageName: node + linkType: hard + +"postcss@npm:^8.4.19": + version: 8.4.27 + resolution: "postcss@npm:8.4.27" + dependencies: + nanoid: ^3.3.6 + picocolors: ^1.0.0 + source-map-js: ^1.0.2 + checksum: 1cdd0c298849df6cd65f7e646a3ba36870a37b65f55fd59d1a165539c263e9b4872a402bf4ed1ca1bc31f58b68b2835545e33ea1a23b161a1f8aa6d5ded81e78 + languageName: node + linkType: hard + +"prelude-ls@npm:^1.2.1": + version: 1.2.1 + resolution: "prelude-ls@npm:1.2.1" + checksum: cd192ec0d0a8e4c6da3bb80e4f62afe336df3f76271ac6deb0e6a36187133b6073a19e9727a1ff108cd8b9982e4768850d413baa71214dd80c7979617dca827a + languageName: node + linkType: hard + +"prettier-linter-helpers@npm:^1.0.0": + version: 1.0.0 + resolution: "prettier-linter-helpers@npm:1.0.0" + dependencies: + fast-diff: ^1.1.2 + checksum: 00ce8011cf6430158d27f9c92cfea0a7699405633f7f1d4a45f07e21bf78e99895911cbcdc3853db3a824201a7c745bd49bfea8abd5fb9883e765a90f74f8392 + languageName: node + linkType: hard + +"prettier@npm:^3.0.0": + version: 3.0.0 + resolution: "prettier@npm:3.0.0" + bin: + prettier: bin/prettier.cjs + checksum: 6a832876a1552dc58330d2467874e5a0b46b9ccbfc5d3531eb69d15684743e7f83dc9fbd202db6270446deba9c82b79d24383d09924c462b457136a759425e33 + languageName: node + linkType: hard + +"punycode@npm:^2.1.0": + version: 2.3.0 + resolution: "punycode@npm:2.3.0" + checksum: 39f760e09a2a3bbfe8f5287cf733ecdad69d6af2fe6f97ca95f24b8921858b91e9ea3c9eeec6e08cede96181b3bb33f95c6ffd8c77e63986508aa2e8159fa200 + languageName: node + linkType: hard + +"queue-microtask@npm:^1.2.2": + version: 1.2.3 + resolution: "queue-microtask@npm:1.2.3" + checksum: b676f8c040cdc5b12723ad2f91414d267605b26419d5c821ff03befa817ddd10e238d22b25d604920340fd73efd8ba795465a0377c4adf45a4a41e4234e42dc4 + languageName: node + linkType: hard + +"quick-lru@npm:^4.0.1": + version: 4.0.1 + resolution: "quick-lru@npm:4.0.1" + checksum: bea46e1abfaa07023e047d3cf1716a06172c4947886c053ede5c50321893711577cb6119360f810cc3ffcd70c4d7db4069c3cee876b358ceff8596e062bd1154 + languageName: node + linkType: hard + +"read-pkg-up@npm:^7.0.1": + version: 7.0.1 + resolution: "read-pkg-up@npm:7.0.1" + dependencies: + find-up: ^4.1.0 + read-pkg: ^5.2.0 + type-fest: ^0.8.1 + checksum: e4e93ce70e5905b490ca8f883eb9e48b5d3cebc6cd4527c25a0d8f3ae2903bd4121c5ab9c5a3e217ada0141098eeb661313c86fa008524b089b8ed0b7f165e44 + languageName: node + linkType: hard + +"read-pkg@npm:^5.2.0": + version: 5.2.0 + resolution: "read-pkg@npm:5.2.0" + dependencies: + "@types/normalize-package-data": ^2.4.0 + normalize-package-data: ^2.5.0 + parse-json: ^5.0.0 + type-fest: ^0.6.0 + checksum: eb696e60528b29aebe10e499ba93f44991908c57d70f2d26f369e46b8b9afc208ef11b4ba64f67630f31df8b6872129e0a8933c8c53b7b4daf0eace536901222 + languageName: node + linkType: hard + +"redent@npm:^3.0.0": + version: 3.0.0 + resolution: "redent@npm:3.0.0" + dependencies: + indent-string: ^4.0.0 + strip-indent: ^3.0.0 + checksum: fa1ef20404a2d399235e83cc80bd55a956642e37dd197b4b612ba7327bf87fa32745aeb4a1634b2bab25467164ab4ed9c15be2c307923dd08b0fe7c52431ae6b + languageName: node + linkType: hard + +"require-from-string@npm:^2.0.2": + version: 2.0.2 + resolution: "require-from-string@npm:2.0.2" + checksum: a03ef6895445f33a4015300c426699bc66b2b044ba7b670aa238610381b56d3f07c686251740d575e22f4c87531ba662d06937508f0f3c0f1ddc04db3130560b + languageName: node + linkType: hard + +"resolve-from@npm:^4.0.0": + version: 4.0.0 + resolution: "resolve-from@npm:4.0.0" + checksum: f4ba0b8494846a5066328ad33ef8ac173801a51739eb4d63408c847da9a2e1c1de1e6cbbf72699211f3d13f8fc1325648b169bd15eb7da35688e30a5fb0e4a7f + languageName: node + linkType: hard + +"resolve-from@npm:^5.0.0": + version: 5.0.0 + resolution: "resolve-from@npm:5.0.0" + checksum: 4ceeb9113e1b1372d0cd969f3468fa042daa1dd9527b1b6bb88acb6ab55d8b9cd65dbf18819f9f9ddf0db804990901dcdaade80a215e7b2c23daae38e64f5bdf + languageName: node + linkType: hard + +"resolve@npm:^1.10.0": + version: 1.22.3 + resolution: "resolve@npm:1.22.3" + dependencies: + is-core-module: ^2.12.0 + path-parse: ^1.0.7 + supports-preserve-symlinks-flag: ^1.0.0 + bin: + resolve: bin/resolve + checksum: fb834b81348428cb545ff1b828a72ea28feb5a97c026a1cf40aa1008352c72811ff4d4e71f2035273dc536dcfcae20c13604ba6283c612d70fa0b6e44519c374 + languageName: node + linkType: hard + +"resolve@patch:resolve@^1.10.0#~builtin": + version: 1.22.3 + resolution: "resolve@patch:resolve@npm%3A1.22.3#~builtin::version=1.22.3&hash=c3c19d" + dependencies: + is-core-module: ^2.12.0 + path-parse: ^1.0.7 + supports-preserve-symlinks-flag: ^1.0.0 + bin: + resolve: bin/resolve + checksum: ad59734723b596d0891321c951592ed9015a77ce84907f89c9d9307dd0c06e11a67906a3e628c4cae143d3e44898603478af0ddeb2bba3f229a9373efe342665 + languageName: node + linkType: hard + +"reusify@npm:^1.0.4": + version: 1.0.4 + resolution: "reusify@npm:1.0.4" + checksum: c3076ebcc22a6bc252cb0b9c77561795256c22b757f40c0d8110b1300723f15ec0fc8685e8d4ea6d7666f36c79ccc793b1939c748bf36f18f542744a4e379fcc + languageName: node + linkType: hard + +"rimraf@npm:^3.0.2": + version: 3.0.2 + resolution: "rimraf@npm:3.0.2" + dependencies: + glob: ^7.1.3 + bin: + rimraf: bin.js + checksum: 87f4164e396f0171b0a3386cc1877a817f572148ee13a7e113b238e48e8a9f2f31d009a92ec38a591ff1567d9662c6b67fd8818a2dbbaed74bc26a87a2a4a9a0 + languageName: node + linkType: hard + +"run-applescript@npm:^5.0.0": + version: 5.0.0 + resolution: "run-applescript@npm:5.0.0" + dependencies: + execa: ^5.0.0 + checksum: d00c2dbfa5b2d774de7451194b8b125f40f65fc183de7d9dcae97f57f59433586d3c39b9001e111c38bfa24c3436c99df1bb4066a2a0c90d39a8c4cd6889af77 + languageName: node + linkType: hard + +"run-parallel@npm:^1.1.9": + version: 1.2.0 + resolution: "run-parallel@npm:1.2.0" + dependencies: + queue-microtask: ^1.2.2 + checksum: cb4f97ad25a75ebc11a8ef4e33bb962f8af8516bb2001082ceabd8902e15b98f4b84b4f8a9b222e5d57fc3bd1379c483886ed4619367a7680dad65316993021d + languageName: node + linkType: hard + +"seatbelt@workspace:.": + version: 0.0.0-use.local + resolution: "seatbelt@workspace:." + dependencies: + "@types/howler": ^2.2.7 + "@types/jquery": ^3.5.16 + eslint: ^8.46.0 + eslint-config-prettier: ^8.9.0 + eslint-plugin-prettier: ^5.0.0 + prettier: ^3.0.0 + stylelint: ^14.16.1 + stylelint-config-standard: ^24.0.0 + languageName: unknown + linkType: soft + +"semver@npm:2 || 3 || 4 || 5": + version: 5.7.2 + resolution: "semver@npm:5.7.2" + bin: + semver: bin/semver + checksum: fb4ab5e0dd1c22ce0c937ea390b4a822147a9c53dbd2a9a0132f12fe382902beef4fbf12cf51bb955248d8d15874ce8cd89532569756384f994309825f10b686 + languageName: node + linkType: hard + +"semver@npm:^7.3.4": + version: 7.5.4 + resolution: "semver@npm:7.5.4" + dependencies: + lru-cache: ^6.0.0 + bin: + semver: bin/semver.js + checksum: 12d8ad952fa353b0995bf180cdac205a4068b759a140e5d3c608317098b3575ac2f1e09182206bf2eb26120e1c0ed8fb92c48c592f6099680de56bb071423ca3 + languageName: node + linkType: hard + +"shebang-command@npm:^2.0.0": + version: 2.0.0 + resolution: "shebang-command@npm:2.0.0" + dependencies: + shebang-regex: ^3.0.0 + checksum: 6b52fe87271c12968f6a054e60f6bde5f0f3d2db483a1e5c3e12d657c488a15474121a1d55cd958f6df026a54374ec38a4a963988c213b7570e1d51575cea7fa + languageName: node + linkType: hard + +"shebang-regex@npm:^3.0.0": + version: 3.0.0 + resolution: "shebang-regex@npm:3.0.0" + checksum: 1a2bcae50de99034fcd92ad4212d8e01eedf52c7ec7830eedcf886622804fe36884278f2be8be0ea5fde3fd1c23911643a4e0f726c8685b61871c8908af01222 + languageName: node + linkType: hard + +"signal-exit@npm:^3.0.3, signal-exit@npm:^3.0.7": + version: 3.0.7 + resolution: "signal-exit@npm:3.0.7" + checksum: a2f098f247adc367dffc27845853e9959b9e88b01cb301658cfe4194352d8d2bb32e18467c786a7fe15f1d44b233ea35633d076d5e737870b7139949d1ab6318 + languageName: node + linkType: hard + +"slash@npm:^3.0.0": + version: 3.0.0 + resolution: "slash@npm:3.0.0" + checksum: 94a93fff615f25a999ad4b83c9d5e257a7280c90a32a7cb8b4a87996e4babf322e469c42b7f649fd5796edd8687652f3fb452a86dc97a816f01113183393f11c + languageName: node + linkType: hard + +"slice-ansi@npm:^4.0.0": + version: 4.0.0 + resolution: "slice-ansi@npm:4.0.0" + dependencies: + ansi-styles: ^4.0.0 + astral-regex: ^2.0.0 + is-fullwidth-code-point: ^3.0.0 + checksum: 4a82d7f085b0e1b070e004941ada3c40d3818563ac44766cca4ceadd2080427d337554f9f99a13aaeb3b4a94d9964d9466c807b3d7b7541d1ec37ee32d308756 + languageName: node + linkType: hard + +"source-map-js@npm:^1.0.2": + version: 1.0.2 + resolution: "source-map-js@npm:1.0.2" + checksum: c049a7fc4deb9a7e9b481ae3d424cc793cb4845daa690bc5a05d428bf41bf231ced49b4cf0c9e77f9d42fdb3d20d6187619fc586605f5eabe995a316da8d377c + languageName: node + linkType: hard + +"spdx-correct@npm:^3.0.0": + version: 3.2.0 + resolution: "spdx-correct@npm:3.2.0" + dependencies: + spdx-expression-parse: ^3.0.0 + spdx-license-ids: ^3.0.0 + checksum: e9ae98d22f69c88e7aff5b8778dc01c361ef635580e82d29e5c60a6533cc8f4d820803e67d7432581af0cc4fb49973125076ee3b90df191d153e223c004193b2 + languageName: node + linkType: hard + +"spdx-exceptions@npm:^2.1.0": + version: 2.3.0 + resolution: "spdx-exceptions@npm:2.3.0" + checksum: cb69a26fa3b46305637123cd37c85f75610e8c477b6476fa7354eb67c08128d159f1d36715f19be6f9daf4b680337deb8c65acdcae7f2608ba51931540687ac0 + languageName: node + linkType: hard + +"spdx-expression-parse@npm:^3.0.0": + version: 3.0.1 + resolution: "spdx-expression-parse@npm:3.0.1" + dependencies: + spdx-exceptions: ^2.1.0 + spdx-license-ids: ^3.0.0 + checksum: a1c6e104a2cbada7a593eaa9f430bd5e148ef5290d4c0409899855ce8b1c39652bcc88a725259491a82601159d6dc790bedefc9016c7472f7de8de7361f8ccde + languageName: node + linkType: hard + +"spdx-license-ids@npm:^3.0.0": + version: 3.0.13 + resolution: "spdx-license-ids@npm:3.0.13" + checksum: 3469d85c65f3245a279fa11afc250c3dca96e9e847f2f79d57f466940c5bb8495da08a542646086d499b7f24a74b8d0b42f3fc0f95d50ff99af1f599f6360ad7 + languageName: node + linkType: hard + +"string-width@npm:^4.2.3": + version: 4.2.3 + resolution: "string-width@npm:4.2.3" + dependencies: + emoji-regex: ^8.0.0 + is-fullwidth-code-point: ^3.0.0 + strip-ansi: ^6.0.1 + checksum: e52c10dc3fbfcd6c3a15f159f54a90024241d0f149cf8aed2982a2d801d2e64df0bf1dc351cf8e95c3319323f9f220c16e740b06faecd53e2462df1d2b5443fb + languageName: node + linkType: hard + +"strip-ansi@npm:^6.0.1": + version: 6.0.1 + resolution: "strip-ansi@npm:6.0.1" + dependencies: + ansi-regex: ^5.0.1 + checksum: f3cd25890aef3ba6e1a74e20896c21a46f482e93df4a06567cebf2b57edabb15133f1f94e57434e0a958d61186087b1008e89c94875d019910a213181a14fc8c + languageName: node + linkType: hard + +"strip-final-newline@npm:^2.0.0": + version: 2.0.0 + resolution: "strip-final-newline@npm:2.0.0" + checksum: 69412b5e25731e1938184b5d489c32e340605bb611d6140344abc3421b7f3c6f9984b21dff296dfcf056681b82caa3bb4cc996a965ce37bcfad663e92eae9c64 + languageName: node + linkType: hard + +"strip-final-newline@npm:^3.0.0": + version: 3.0.0 + resolution: "strip-final-newline@npm:3.0.0" + checksum: 23ee263adfa2070cd0f23d1ac14e2ed2f000c9b44229aec9c799f1367ec001478469560abefd00c5c99ee6f0b31c137d53ec6029c53e9f32a93804e18c201050 + languageName: node + linkType: hard + +"strip-indent@npm:^3.0.0": + version: 3.0.0 + resolution: "strip-indent@npm:3.0.0" + dependencies: + min-indent: ^1.0.0 + checksum: 18f045d57d9d0d90cd16f72b2313d6364fd2cb4bf85b9f593523ad431c8720011a4d5f08b6591c9d580f446e78855c5334a30fb91aa1560f5d9f95ed1b4a0530 + languageName: node + linkType: hard + +"strip-json-comments@npm:^3.1.1": + version: 3.1.1 + resolution: "strip-json-comments@npm:3.1.1" + checksum: 492f73e27268f9b1c122733f28ecb0e7e8d8a531a6662efbd08e22cccb3f9475e90a1b82cab06a392f6afae6d2de636f977e231296400d0ec5304ba70f166443 + languageName: node + linkType: hard + +"style-search@npm:^0.1.0": + version: 0.1.0 + resolution: "style-search@npm:0.1.0" + checksum: 3cfefe335033aad6d47da0725cb48f5db91a73935954c77eab77d9e415e6668cdb406da4a4f7ef9f1aca77853cf5ba7952c45e869caa5bd6439691d88098d468 + languageName: node + linkType: hard + +"stylelint-config-recommended@npm:^6.0.0": + version: 6.0.0 + resolution: "stylelint-config-recommended@npm:6.0.0" + peerDependencies: + stylelint: ^14.0.0 + checksum: 103b3c122253a908f91f5728d39eff6fed3866157e29a6e550da051cfc207b0d159b7434e0806126e3c3939e6528a0a1cd5a1cf00b835dd49b3a18ba4a007fa1 + languageName: node + linkType: hard + +"stylelint-config-standard@npm:^24.0.0": + version: 24.0.0 + resolution: "stylelint-config-standard@npm:24.0.0" + dependencies: + stylelint-config-recommended: ^6.0.0 + peerDependencies: + stylelint: ^14.0.0 + checksum: 5993ede913d81410830639db054a7a3f5c87e56254368be45ce876321106fad1c11ee4cb77247049aaf22e283a393dd90d93dec8f796f8f139ed21eb86a9a168 + languageName: node + linkType: hard + +"stylelint@npm:^14.16.1": + version: 14.16.1 + resolution: "stylelint@npm:14.16.1" + dependencies: + "@csstools/selector-specificity": ^2.0.2 + balanced-match: ^2.0.0 + colord: ^2.9.3 + cosmiconfig: ^7.1.0 + css-functions-list: ^3.1.0 + debug: ^4.3.4 + fast-glob: ^3.2.12 + fastest-levenshtein: ^1.0.16 + file-entry-cache: ^6.0.1 + global-modules: ^2.0.0 + globby: ^11.1.0 + globjoin: ^0.1.4 + html-tags: ^3.2.0 + ignore: ^5.2.1 + import-lazy: ^4.0.0 + imurmurhash: ^0.1.4 + is-plain-object: ^5.0.0 + known-css-properties: ^0.26.0 + mathml-tag-names: ^2.1.3 + meow: ^9.0.0 + micromatch: ^4.0.5 + normalize-path: ^3.0.0 + picocolors: ^1.0.0 + postcss: ^8.4.19 + postcss-media-query-parser: ^0.2.3 + postcss-resolve-nested-selector: ^0.1.1 + postcss-safe-parser: ^6.0.0 + postcss-selector-parser: ^6.0.11 + postcss-value-parser: ^4.2.0 + resolve-from: ^5.0.0 + string-width: ^4.2.3 + strip-ansi: ^6.0.1 + style-search: ^0.1.0 + supports-hyperlinks: ^2.3.0 + svg-tags: ^1.0.0 + table: ^6.8.1 + v8-compile-cache: ^2.3.0 + write-file-atomic: ^4.0.2 + bin: + stylelint: bin/stylelint.js + checksum: bc24050415e3c357a76d8ca2799e74ce31f33c9158b4086462512b0191db5d6a161b81ef35b064039c6eacf98a5553e45fca4c5f21eb4d45e7f1d44b2d226e9b + languageName: node + linkType: hard + +"supports-color@npm:^5.3.0": + version: 5.5.0 + resolution: "supports-color@npm:5.5.0" + dependencies: + has-flag: ^3.0.0 + checksum: 95f6f4ba5afdf92f495b5a912d4abee8dcba766ae719b975c56c084f5004845f6f5a5f7769f52d53f40e21952a6d87411bafe34af4a01e65f9926002e38e1dac + languageName: node + linkType: hard + +"supports-color@npm:^7.0.0, supports-color@npm:^7.1.0": + version: 7.2.0 + resolution: "supports-color@npm:7.2.0" + dependencies: + has-flag: ^4.0.0 + checksum: 3dda818de06ebbe5b9653e07842d9479f3555ebc77e9a0280caf5a14fb877ffee9ed57007c3b78f5a6324b8dbeec648d9e97a24e2ed9fdb81ddc69ea07100f4a + languageName: node + linkType: hard + +"supports-hyperlinks@npm:^2.3.0": + version: 2.3.0 + resolution: "supports-hyperlinks@npm:2.3.0" + dependencies: + has-flag: ^4.0.0 + supports-color: ^7.0.0 + checksum: 9ee0de3c8ce919d453511b2b1588a8205bd429d98af94a01df87411391010fe22ca463f268c84b2ce2abad019dfff8452aa02806eeb5c905a8d7ad5c4f4c52b8 + languageName: node + linkType: hard + +"supports-preserve-symlinks-flag@npm:^1.0.0": + version: 1.0.0 + resolution: "supports-preserve-symlinks-flag@npm:1.0.0" + checksum: 53b1e247e68e05db7b3808b99b892bd36fb096e6fba213a06da7fab22045e97597db425c724f2bbd6c99a3c295e1e73f3e4de78592289f38431049e1277ca0ae + languageName: node + linkType: hard + +"svg-tags@npm:^1.0.0": + version: 1.0.0 + resolution: "svg-tags@npm:1.0.0" + checksum: 407e5ef87cfa2fb81c61d738081c2decd022ce13b922d035b214b49810630bf5d1409255a4beb3a940b77b32f6957806deff16f1bf0ce1ab11c7a184115a0b7f + languageName: node + linkType: hard + +"synckit@npm:^0.8.5": + version: 0.8.5 + resolution: "synckit@npm:0.8.5" + dependencies: + "@pkgr/utils": ^2.3.1 + tslib: ^2.5.0 + checksum: 8a9560e5d8f3d94dc3cf5f7b9c83490ffa30d320093560a37b88f59483040771fd1750e76b9939abfbb1b5a23fd6dfbae77f6b338abffe7cae7329cd9b9bb86b + languageName: node + linkType: hard + +"table@npm:^6.8.1": + version: 6.8.1 + resolution: "table@npm:6.8.1" + dependencies: + ajv: ^8.0.1 + lodash.truncate: ^4.4.2 + slice-ansi: ^4.0.0 + string-width: ^4.2.3 + strip-ansi: ^6.0.1 + checksum: 08249c7046125d9d0a944a6e96cfe9ec66908d6b8a9db125531be6eb05fa0de047fd5542e9d43b4f987057f00a093b276b8d3e19af162a9c40db2681058fd306 + languageName: node + linkType: hard + +"text-table@npm:^0.2.0": + version: 0.2.0 + resolution: "text-table@npm:0.2.0" + checksum: b6937a38c80c7f84d9c11dd75e49d5c44f71d95e810a3250bd1f1797fc7117c57698204adf676b71497acc205d769d65c16ae8fa10afad832ae1322630aef10a + languageName: node + linkType: hard + +"titleize@npm:^3.0.0": + version: 3.0.0 + resolution: "titleize@npm:3.0.0" + checksum: 71fbbeabbfb36ccd840559f67f21e356e1d03da2915b32d2ae1a60ddcc13a124be2739f696d2feb884983441d159a18649e8d956648d591bdad35c430a6b6d28 + languageName: node + linkType: hard + +"to-regex-range@npm:^5.0.1": + version: 5.0.1 + resolution: "to-regex-range@npm:5.0.1" + dependencies: + is-number: ^7.0.0 + checksum: f76fa01b3d5be85db6a2a143e24df9f60dd047d151062d0ba3df62953f2f697b16fe5dad9b0ac6191c7efc7b1d9dcaa4b768174b7b29da89d4428e64bc0a20ed + languageName: node + linkType: hard + +"trim-newlines@npm:^3.0.0": + version: 3.0.1 + resolution: "trim-newlines@npm:3.0.1" + checksum: b530f3fadf78e570cf3c761fb74fef655beff6b0f84b29209bac6c9622db75ad1417f4a7b5d54c96605dcd72734ad44526fef9f396807b90839449eb543c6206 + languageName: node + linkType: hard + +"tslib@npm:^2.5.0, tslib@npm:^2.6.0": + version: 2.6.1 + resolution: "tslib@npm:2.6.1" + checksum: b0d176d176487905b66ae4d5856647df50e37beea7571c53b8d10ba9222c074b81f1410fb91da13debaf2cbc970663609068bdebafa844ea9d69b146527c38fe + languageName: node + linkType: hard + +"type-check@npm:^0.4.0, type-check@npm:~0.4.0": + version: 0.4.0 + resolution: "type-check@npm:0.4.0" + dependencies: + prelude-ls: ^1.2.1 + checksum: ec688ebfc9c45d0c30412e41ca9c0cdbd704580eb3a9ccf07b9b576094d7b86a012baebc95681999dd38f4f444afd28504cb3a89f2ef16b31d4ab61a0739025a + languageName: node + linkType: hard + +"type-fest@npm:^0.18.0": + version: 0.18.1 + resolution: "type-fest@npm:0.18.1" + checksum: e96dcee18abe50ec82dab6cbc4751b3a82046da54c52e3b2d035b3c519732c0b3dd7a2fa9df24efd1a38d953d8d4813c50985f215f1957ee5e4f26b0fe0da395 + languageName: node + linkType: hard + +"type-fest@npm:^0.20.2": + version: 0.20.2 + resolution: "type-fest@npm:0.20.2" + checksum: 4fb3272df21ad1c552486f8a2f8e115c09a521ad7a8db3d56d53718d0c907b62c6e9141ba5f584af3f6830d0872c521357e512381f24f7c44acae583ad517d73 + languageName: node + linkType: hard + +"type-fest@npm:^0.6.0": + version: 0.6.0 + resolution: "type-fest@npm:0.6.0" + checksum: b2188e6e4b21557f6e92960ec496d28a51d68658018cba8b597bd3ef757721d1db309f120ae987abeeda874511d14b776157ff809f23c6d1ce8f83b9b2b7d60f + languageName: node + linkType: hard + +"type-fest@npm:^0.8.1": + version: 0.8.1 + resolution: "type-fest@npm:0.8.1" + checksum: d61c4b2eba24009033ae4500d7d818a94fd6d1b481a8111612ee141400d5f1db46f199c014766b9fa9b31a6a7374d96fc748c6d688a78a3ce5a33123839becb7 + languageName: node + linkType: hard + +"untildify@npm:^4.0.0": + version: 4.0.0 + resolution: "untildify@npm:4.0.0" + checksum: 39ced9c418a74f73f0a56e1ba4634b4d959422dff61f4c72a8e39f60b99380c1b45ed776fbaa0a4101b157e4310d873ad7d114e8534ca02609b4916bb4187fb9 + languageName: node + linkType: hard + +"uri-js@npm:^4.2.2": + version: 4.4.1 + resolution: "uri-js@npm:4.4.1" + dependencies: + punycode: ^2.1.0 + checksum: 7167432de6817fe8e9e0c9684f1d2de2bb688c94388f7569f7dbdb1587c9f4ca2a77962f134ec90be0cc4d004c939ff0d05acc9f34a0db39a3c797dada262633 + languageName: node + linkType: hard + +"util-deprecate@npm:^1.0.2": + version: 1.0.2 + resolution: "util-deprecate@npm:1.0.2" + checksum: 474acf1146cb2701fe3b074892217553dfcf9a031280919ba1b8d651a068c9b15d863b7303cb15bd00a862b498e6cf4ad7b4a08fb134edd5a6f7641681cb54a2 + languageName: node + linkType: hard + +"v8-compile-cache@npm:^2.3.0": + version: 2.3.0 + resolution: "v8-compile-cache@npm:2.3.0" + checksum: adb0a271eaa2297f2f4c536acbfee872d0dd26ec2d76f66921aa7fc437319132773483344207bdbeee169225f4739016d8d2dbf0553913a52bb34da6d0334f8e + languageName: node + linkType: hard + +"validate-npm-package-license@npm:^3.0.1": + version: 3.0.4 + resolution: "validate-npm-package-license@npm:3.0.4" + dependencies: + spdx-correct: ^3.0.0 + spdx-expression-parse: ^3.0.0 + checksum: 35703ac889d419cf2aceef63daeadbe4e77227c39ab6287eeb6c1b36a746b364f50ba22e88591f5d017bc54685d8137bc2d328d0a896e4d3fd22093c0f32a9ad + languageName: node + linkType: hard + +"which@npm:^1.3.1": + version: 1.3.1 + resolution: "which@npm:1.3.1" + dependencies: + isexe: ^2.0.0 + bin: + which: ./bin/which + checksum: f2e185c6242244b8426c9df1510e86629192d93c1a986a7d2a591f2c24869e7ffd03d6dac07ca863b2e4c06f59a4cc9916c585b72ee9fa1aa609d0124df15e04 + languageName: node + linkType: hard + +"which@npm:^2.0.1": + version: 2.0.2 + resolution: "which@npm:2.0.2" + dependencies: + isexe: ^2.0.0 + bin: + node-which: ./bin/node-which + checksum: 1a5c563d3c1b52d5f893c8b61afe11abc3bab4afac492e8da5bde69d550de701cf9806235f20a47b5c8fa8a1d6a9135841de2596535e998027a54589000e66d1 + languageName: node + linkType: hard + +"wrappy@npm:1": + version: 1.0.2 + resolution: "wrappy@npm:1.0.2" + checksum: 159da4805f7e84a3d003d8841557196034155008f817172d4e986bd591f74aa82aa7db55929a54222309e01079a65a92a9e6414da5a6aa4b01ee44a511ac3ee5 + languageName: node + linkType: hard + +"write-file-atomic@npm:^4.0.2": + version: 4.0.2 + resolution: "write-file-atomic@npm:4.0.2" + dependencies: + imurmurhash: ^0.1.4 + signal-exit: ^3.0.7 + checksum: 5da60bd4eeeb935eec97ead3df6e28e5917a6bd317478e4a85a5285e8480b8ed96032bbcc6ecd07b236142a24f3ca871c924ec4a6575e623ec1b11bf8c1c253c + languageName: node + linkType: hard + +"yallist@npm:^4.0.0": + version: 4.0.0 + resolution: "yallist@npm:4.0.0" + checksum: 343617202af32df2a15a3be36a5a8c0c8545208f3d3dfbc6bb7c3e3b7e8c6f8e7485432e4f3b88da3031a6e20afa7c711eded32ddfb122896ac5d914e75848d5 + languageName: node + linkType: hard + +"yaml@npm:^1.10.0": + version: 1.10.2 + resolution: "yaml@npm:1.10.2" + checksum: ce4ada136e8a78a0b08dc10b4b900936912d15de59905b2bf415b4d33c63df1d555d23acb2a41b23cf9fb5da41c256441afca3d6509de7247daa062fd2c5ea5f + languageName: node + linkType: hard + +"yargs-parser@npm:^20.2.3": + version: 20.2.9 + resolution: "yargs-parser@npm:20.2.9" + checksum: 8bb69015f2b0ff9e17b2c8e6bfe224ab463dd00ca211eece72a4cd8a906224d2703fb8a326d36fdd0e68701e201b2a60ed7cf81ce0fd9b3799f9fe7745977ae3 + languageName: node + linkType: hard + +"yocto-queue@npm:^0.1.0": + version: 0.1.0 + resolution: "yocto-queue@npm:0.1.0" + checksum: f77b3d8d00310def622123df93d4ee654fc6a0096182af8bd60679ddcdfb3474c56c6c7190817c84a2785648cdee9d721c0154eb45698c62176c322fb46fc700 + languageName: node + linkType: hard diff --git a/server.cfg b/server.cfg index a9c36f152..9bedd58af 100644 --- a/server.cfg +++ b/server.cfg @@ -229,7 +229,7 @@ ensure scully_lawenforcement ensure VehicleTrustSystem-master ensure LSRPC-K9 ensure 5500wrecker -ensure seatbelt-1.2.1 +ensure seatbelt ***EUPCLOTHING*** ensure eup-stream