Various AT Protocol integrations with obsidian

Initial commit

authored by

treethought and committed by
treethought
40aa78c1

+5883
+10
.editorconfig
··· 1 + # top-most EditorConfig file 2 + root = true 3 + 4 + [*] 5 + charset = utf-8 6 + end_of_line = lf 7 + insert_final_newline = true 8 + indent_style = tab 9 + indent_size = 4 10 + tab_width = 4
+28
.github/workflows/lint.yml
··· 1 + name: Node.js build 2 + 3 + on: 4 + push: 5 + branches: ["**"] 6 + pull_request: 7 + branches: ["**"] 8 + 9 + jobs: 10 + build: 11 + runs-on: ubuntu-latest 12 + 13 + strategy: 14 + matrix: 15 + node-version: [20.x, 22.x] 16 + # See supported Node.js release schedule at https://nodejs.org/en/about/releases/ 17 + 18 + steps: 19 + - uses: actions/checkout@v4 20 + - name: Use Node.js ${{ matrix.node-version }} 21 + uses: actions/setup-node@v4 22 + with: 23 + node-version: ${{ matrix.node-version }} 24 + cache: "npm" 25 + - run: npm ci 26 + - run: npm run build --if-present 27 + - run: npm run lint 28 +
+22
.gitignore
··· 1 + # vscode 2 + .vscode 3 + 4 + # Intellij 5 + *.iml 6 + .idea 7 + 8 + # npm 9 + node_modules 10 + 11 + # Don't include the compiled main.js file in the repo. 12 + # They should be uploaded to GitHub releases instead. 13 + main.js 14 + 15 + # Exclude sourcemaps 16 + *.map 17 + 18 + # obsidian 19 + data.json 20 + 21 + # Exclude macOS Finder (System Explorer) View States 22 + .DS_Store
+1
.npmrc
··· 1 + tag-version-prefix=""
+251
AGENTS.md
··· 1 + # Obsidian community plugin 2 + 3 + ## Project overview 4 + 5 + - Target: Obsidian Community Plugin (TypeScript → bundled JavaScript). 6 + - Entry point: `main.ts` compiled to `main.js` and loaded by Obsidian. 7 + - Required release artifacts: `main.js`, `manifest.json`, and optional `styles.css`. 8 + 9 + ## Environment & tooling 10 + 11 + - Node.js: use current LTS (Node 18+ recommended). 12 + - **Package manager: npm** (required for this sample - `package.json` defines npm scripts and dependencies). 13 + - **Bundler: esbuild** (required for this sample - `esbuild.config.mjs` and build scripts depend on it). Alternative bundlers like Rollup or webpack are acceptable for other projects if they bundle all external dependencies into `main.js`. 14 + - Types: `obsidian` type definitions. 15 + 16 + **Note**: This sample project has specific technical dependencies on npm and esbuild. If you're creating a plugin from scratch, you can choose different tools, but you'll need to replace the build configuration accordingly. 17 + 18 + ### Install 19 + 20 + ```bash 21 + npm install 22 + ``` 23 + 24 + ### Dev (watch) 25 + 26 + ```bash 27 + npm run dev 28 + ``` 29 + 30 + ### Production build 31 + 32 + ```bash 33 + npm run build 34 + ``` 35 + 36 + ## Linting 37 + 38 + - To use eslint install eslint from terminal: `npm install -g eslint` 39 + - To use eslint to analyze this project use this command: `eslint main.ts` 40 + - eslint will then create a report with suggestions for code improvement by file and line number. 41 + - If your source code is in a folder, such as `src`, you can use eslint with this command to analyze all files in that folder: `eslint ./src/` 42 + 43 + ## File & folder conventions 44 + 45 + - **Organize code into multiple files**: Split functionality across separate modules rather than putting everything in `main.ts`. 46 + - Source lives in `src/`. Keep `main.ts` small and focused on plugin lifecycle (loading, unloading, registering commands). 47 + - **Example file structure**: 48 + ``` 49 + src/ 50 + main.ts # Plugin entry point, lifecycle management 51 + settings.ts # Settings interface and defaults 52 + commands/ # Command implementations 53 + command1.ts 54 + command2.ts 55 + ui/ # UI components, modals, views 56 + modal.ts 57 + view.ts 58 + utils/ # Utility functions, helpers 59 + helpers.ts 60 + constants.ts 61 + types.ts # TypeScript interfaces and types 62 + ``` 63 + - **Do not commit build artifacts**: Never commit `node_modules/`, `main.js`, or other generated files to version control. 64 + - Keep the plugin small. Avoid large dependencies. Prefer browser-compatible packages. 65 + - Generated output should be placed at the plugin root or `dist/` depending on your build setup. Release artifacts must end up at the top level of the plugin folder in the vault (`main.js`, `manifest.json`, `styles.css`). 66 + 67 + ## Manifest rules (`manifest.json`) 68 + 69 + - Must include (non-exhaustive): 70 + - `id` (plugin ID; for local dev it should match the folder name) 71 + - `name` 72 + - `version` (Semantic Versioning `x.y.z`) 73 + - `minAppVersion` 74 + - `description` 75 + - `isDesktopOnly` (boolean) 76 + - Optional: `author`, `authorUrl`, `fundingUrl` (string or map) 77 + - Never change `id` after release. Treat it as stable API. 78 + - Keep `minAppVersion` accurate when using newer APIs. 79 + - Canonical requirements are coded here: https://github.com/obsidianmd/obsidian-releases/blob/master/.github/workflows/validate-plugin-entry.yml 80 + 81 + ## Testing 82 + 83 + - Manual install for testing: copy `main.js`, `manifest.json`, `styles.css` (if any) to: 84 + ``` 85 + <Vault>/.obsidian/plugins/<plugin-id>/ 86 + ``` 87 + - Reload Obsidian and enable the plugin in **Settings → Community plugins**. 88 + 89 + ## Commands & settings 90 + 91 + - Any user-facing commands should be added via `this.addCommand(...)`. 92 + - If the plugin has configuration, provide a settings tab and sensible defaults. 93 + - Persist settings using `this.loadData()` / `this.saveData()`. 94 + - Use stable command IDs; avoid renaming once released. 95 + 96 + ## Versioning & releases 97 + 98 + - Bump `version` in `manifest.json` (SemVer) and update `versions.json` to map plugin version → minimum app version. 99 + - Create a GitHub release whose tag exactly matches `manifest.json`'s `version`. Do not use a leading `v`. 100 + - Attach `manifest.json`, `main.js`, and `styles.css` (if present) to the release as individual assets. 101 + - After the initial release, follow the process to add/update your plugin in the community catalog as required. 102 + 103 + ## Security, privacy, and compliance 104 + 105 + Follow Obsidian's **Developer Policies** and **Plugin Guidelines**. In particular: 106 + 107 + - Default to local/offline operation. Only make network requests when essential to the feature. 108 + - No hidden telemetry. If you collect optional analytics or call third-party services, require explicit opt-in and document clearly in `README.md` and in settings. 109 + - Never execute remote code, fetch and eval scripts, or auto-update plugin code outside of normal releases. 110 + - Minimize scope: read/write only what's necessary inside the vault. Do not access files outside the vault. 111 + - Clearly disclose any external services used, data sent, and risks. 112 + - Respect user privacy. Do not collect vault contents, filenames, or personal information unless absolutely necessary and explicitly consented. 113 + - Avoid deceptive patterns, ads, or spammy notifications. 114 + - Register and clean up all DOM, app, and interval listeners using the provided `register*` helpers so the plugin unloads safely. 115 + 116 + ## UX & copy guidelines (for UI text, commands, settings) 117 + 118 + - Prefer sentence case for headings, buttons, and titles. 119 + - Use clear, action-oriented imperatives in step-by-step copy. 120 + - Use **bold** to indicate literal UI labels. Prefer "select" for interactions. 121 + - Use arrow notation for navigation: **Settings → Community plugins**. 122 + - Keep in-app strings short, consistent, and free of jargon. 123 + 124 + ## Performance 125 + 126 + - Keep startup light. Defer heavy work until needed. 127 + - Avoid long-running tasks during `onload`; use lazy initialization. 128 + - Batch disk access and avoid excessive vault scans. 129 + - Debounce/throttle expensive operations in response to file system events. 130 + 131 + ## Coding conventions 132 + 133 + - TypeScript with `"strict": true` preferred. 134 + - **Keep `main.ts` minimal**: Focus only on plugin lifecycle (onload, onunload, addCommand calls). Delegate all feature logic to separate modules. 135 + - **Split large files**: If any file exceeds ~200-300 lines, consider breaking it into smaller, focused modules. 136 + - **Use clear module boundaries**: Each file should have a single, well-defined responsibility. 137 + - Bundle everything into `main.js` (no unbundled runtime deps). 138 + - Avoid Node/Electron APIs if you want mobile compatibility; set `isDesktopOnly` accordingly. 139 + - Prefer `async/await` over promise chains; handle errors gracefully. 140 + 141 + ## Mobile 142 + 143 + - Where feasible, test on iOS and Android. 144 + - Don't assume desktop-only behavior unless `isDesktopOnly` is `true`. 145 + - Avoid large in-memory structures; be mindful of memory and storage constraints. 146 + 147 + ## Agent do/don't 148 + 149 + **Do** 150 + - Add commands with stable IDs (don't rename once released). 151 + - Provide defaults and validation in settings. 152 + - Write idempotent code paths so reload/unload doesn't leak listeners or intervals. 153 + - Use `this.register*` helpers for everything that needs cleanup. 154 + 155 + **Don't** 156 + - Introduce network calls without an obvious user-facing reason and documentation. 157 + - Ship features that require cloud services without clear disclosure and explicit opt-in. 158 + - Store or transmit vault contents unless essential and consented. 159 + 160 + ## Common tasks 161 + 162 + ### Organize code across multiple files 163 + 164 + **main.ts** (minimal, lifecycle only): 165 + ```ts 166 + import { Plugin } from "obsidian"; 167 + import { MySettings, DEFAULT_SETTINGS } from "./settings"; 168 + import { registerCommands } from "./commands"; 169 + 170 + export default class MyPlugin extends Plugin { 171 + settings: MySettings; 172 + 173 + async onload() { 174 + this.settings = Object.assign({}, DEFAULT_SETTINGS, await this.loadData()); 175 + registerCommands(this); 176 + } 177 + } 178 + ``` 179 + 180 + **settings.ts**: 181 + ```ts 182 + export interface MySettings { 183 + enabled: boolean; 184 + apiKey: string; 185 + } 186 + 187 + export const DEFAULT_SETTINGS: MySettings = { 188 + enabled: true, 189 + apiKey: "", 190 + }; 191 + ``` 192 + 193 + **commands/index.ts**: 194 + ```ts 195 + import { Plugin } from "obsidian"; 196 + import { doSomething } from "./my-command"; 197 + 198 + export function registerCommands(plugin: Plugin) { 199 + plugin.addCommand({ 200 + id: "do-something", 201 + name: "Do something", 202 + callback: () => doSomething(plugin), 203 + }); 204 + } 205 + ``` 206 + 207 + ### Add a command 208 + 209 + ```ts 210 + this.addCommand({ 211 + id: "your-command-id", 212 + name: "Do the thing", 213 + callback: () => this.doTheThing(), 214 + }); 215 + ``` 216 + 217 + ### Persist settings 218 + 219 + ```ts 220 + interface MySettings { enabled: boolean } 221 + const DEFAULT_SETTINGS: MySettings = { enabled: true }; 222 + 223 + async onload() { 224 + this.settings = Object.assign({}, DEFAULT_SETTINGS, await this.loadData()); 225 + await this.saveData(this.settings); 226 + } 227 + ``` 228 + 229 + ### Register listeners safely 230 + 231 + ```ts 232 + this.registerEvent(this.app.workspace.on("file-open", f => { /* ... */ })); 233 + this.registerDomEvent(window, "resize", () => { /* ... */ }); 234 + this.registerInterval(window.setInterval(() => { /* ... */ }, 1000)); 235 + ``` 236 + 237 + ## Troubleshooting 238 + 239 + - Plugin doesn't load after build: ensure `main.js` and `manifest.json` are at the top level of the plugin folder under `<Vault>/.obsidian/plugins/<plugin-id>/`. 240 + - Build issues: if `main.js` is missing, run `npm run build` or `npm run dev` to compile your TypeScript source code. 241 + - Commands not appearing: verify `addCommand` runs after `onload` and IDs are unique. 242 + - Settings not persisting: ensure `loadData`/`saveData` are awaited and you re-render the UI after changes. 243 + - Mobile-only issues: confirm you're not using desktop-only APIs; check `isDesktopOnly` and adjust. 244 + 245 + ## References 246 + 247 + - Obsidian sample plugin: https://github.com/obsidianmd/obsidian-sample-plugin 248 + - API documentation: https://docs.obsidian.md 249 + - Developer policies: https://docs.obsidian.md/Developer+policies 250 + - Plugin guidelines: https://docs.obsidian.md/Plugins/Releasing/Plugin+guidelines 251 + - Style guide: https://help.obsidian.md/style-guide
+5
LICENSE
··· 1 + Copyright (C) 2020-2025 by Dynalist Inc. 2 + 3 + Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted. 4 + 5 + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+90
README.md
··· 1 + # Obsidian Sample Plugin 2 + 3 + This is a sample plugin for Obsidian (https://obsidian.md). 4 + 5 + This project uses TypeScript to provide type checking and documentation. 6 + The repo depends on the latest plugin API (obsidian.d.ts) in TypeScript Definition format, which contains TSDoc comments describing what it does. 7 + 8 + This sample plugin demonstrates some of the basic functionality the plugin API can do. 9 + - Adds a ribbon icon, which shows a Notice when clicked. 10 + - Adds a command "Open modal (simple)" which opens a Modal. 11 + - Adds a plugin setting tab to the settings page. 12 + - Registers a global click event and output 'click' to the console. 13 + - Registers a global interval which logs 'setInterval' to the console. 14 + 15 + ## First time developing plugins? 16 + 17 + Quick starting guide for new plugin devs: 18 + 19 + - Check if [someone already developed a plugin for what you want](https://obsidian.md/plugins)! There might be an existing plugin similar enough that you can partner up with. 20 + - Make a copy of this repo as a template with the "Use this template" button (login to GitHub if you don't see it). 21 + - Clone your repo to a local development folder. For convenience, you can place this folder in your `.obsidian/plugins/your-plugin-name` folder. 22 + - Install NodeJS, then run `npm i` in the command line under your repo folder. 23 + - Run `npm run dev` to compile your plugin from `main.ts` to `main.js`. 24 + - Make changes to `main.ts` (or create new `.ts` files). Those changes should be automatically compiled into `main.js`. 25 + - Reload Obsidian to load the new version of your plugin. 26 + - Enable plugin in settings window. 27 + - For updates to the Obsidian API run `npm update` in the command line under your repo folder. 28 + 29 + ## Releasing new releases 30 + 31 + - Update your `manifest.json` with your new version number, such as `1.0.1`, and the minimum Obsidian version required for your latest release. 32 + - Update your `versions.json` file with `"new-plugin-version": "minimum-obsidian-version"` so older versions of Obsidian can download an older version of your plugin that's compatible. 33 + - Create new GitHub release using your new version number as the "Tag version". Use the exact version number, don't include a prefix `v`. See here for an example: https://github.com/obsidianmd/obsidian-sample-plugin/releases 34 + - Upload the files `manifest.json`, `main.js`, `styles.css` as binary attachments. Note: The manifest.json file must be in two places, first the root path of your repository and also in the release. 35 + - Publish the release. 36 + 37 + > You can simplify the version bump process by running `npm version patch`, `npm version minor` or `npm version major` after updating `minAppVersion` manually in `manifest.json`. 38 + > The command will bump version in `manifest.json` and `package.json`, and add the entry for the new version to `versions.json` 39 + 40 + ## Adding your plugin to the community plugin list 41 + 42 + - Check the [plugin guidelines](https://docs.obsidian.md/Plugins/Releasing/Plugin+guidelines). 43 + - Publish an initial version. 44 + - Make sure you have a `README.md` file in the root of your repo. 45 + - Make a pull request at https://github.com/obsidianmd/obsidian-releases to add your plugin. 46 + 47 + ## How to use 48 + 49 + - Clone this repo. 50 + - Make sure your NodeJS is at least v16 (`node --version`). 51 + - `npm i` or `yarn` to install dependencies. 52 + - `npm run dev` to start compilation in watch mode. 53 + 54 + ## Manually installing the plugin 55 + 56 + - Copy over `main.js`, `styles.css`, `manifest.json` to your vault `VaultFolder/.obsidian/plugins/your-plugin-id/`. 57 + 58 + ## Improve code quality with eslint 59 + - [ESLint](https://eslint.org/) is a tool that analyzes your code to quickly find problems. You can run ESLint against your plugin to find common bugs and ways to improve your code. 60 + - This project already has eslint preconfigured, you can invoke a check by running`npm run lint` 61 + - Together with a custom eslint [plugin](https://github.com/obsidianmd/eslint-plugin) for Obsidan specific code guidelines. 62 + - A GitHub action is preconfigured to automatically lint every commit on all branches. 63 + 64 + ## Funding URL 65 + 66 + You can include funding URLs where people who use your plugin can financially support it. 67 + 68 + The simple way is to set the `fundingUrl` field to your link in your `manifest.json` file: 69 + 70 + ```json 71 + { 72 + "fundingUrl": "https://buymeacoffee.com" 73 + } 74 + ``` 75 + 76 + If you have multiple URLs, you can also do: 77 + 78 + ```json 79 + { 80 + "fundingUrl": { 81 + "Buy Me a Coffee": "https://buymeacoffee.com", 82 + "GitHub Sponsor": "https://github.com/sponsors", 83 + "Patreon": "https://www.patreon.com/" 84 + } 85 + } 86 + ``` 87 + 88 + ## API Documentation 89 + 90 + See https://docs.obsidian.md
+49
esbuild.config.mjs
··· 1 + import esbuild from "esbuild"; 2 + import process from "process"; 3 + import { builtinModules } from 'node:module'; 4 + 5 + const banner = 6 + `/* 7 + THIS IS A GENERATED/BUNDLED FILE BY ESBUILD 8 + if you want to view the source, please visit the github repository of this plugin 9 + */ 10 + `; 11 + 12 + const prod = (process.argv[2] === "production"); 13 + 14 + const context = await esbuild.context({ 15 + banner: { 16 + js: banner, 17 + }, 18 + entryPoints: ["src/main.ts"], 19 + bundle: true, 20 + external: [ 21 + "obsidian", 22 + "electron", 23 + "@codemirror/autocomplete", 24 + "@codemirror/collab", 25 + "@codemirror/commands", 26 + "@codemirror/language", 27 + "@codemirror/lint", 28 + "@codemirror/search", 29 + "@codemirror/state", 30 + "@codemirror/view", 31 + "@lezer/common", 32 + "@lezer/highlight", 33 + "@lezer/lr", 34 + ...builtinModules], 35 + format: "cjs", 36 + target: "es2018", 37 + logLevel: "info", 38 + sourcemap: prod ? false : "inline", 39 + treeShaking: true, 40 + outfile: "main.js", 41 + minify: prod, 42 + }); 43 + 44 + if (prod) { 45 + await context.rebuild(); 46 + process.exit(0); 47 + } else { 48 + await context.watch(); 49 + }
+34
eslint.config.mts
··· 1 + import tseslint from 'typescript-eslint'; 2 + import obsidianmd from "eslint-plugin-obsidianmd"; 3 + import globals from "globals"; 4 + import { globalIgnores } from "eslint/config"; 5 + 6 + export default tseslint.config( 7 + { 8 + languageOptions: { 9 + globals: { 10 + ...globals.browser, 11 + }, 12 + parserOptions: { 13 + projectService: { 14 + allowDefaultProject: [ 15 + 'eslint.config.js', 16 + 'manifest.json' 17 + ] 18 + }, 19 + tsconfigRootDir: import.meta.dirname, 20 + extraFileExtensions: ['.json'] 21 + }, 22 + }, 23 + }, 24 + ...obsidianmd.configs.recommended, 25 + globalIgnores([ 26 + "node_modules", 27 + "dist", 28 + "esbuild.config.mjs", 29 + "eslint.config.js", 30 + "version-bump.mjs", 31 + "versions.json", 32 + "main.js", 33 + ]), 34 + );
+11
manifest.json
··· 1 + { 2 + "id": "sample-plugin", 3 + "name": "Sample Plugin", 4 + "version": "1.0.0", 5 + "minAppVersion": "0.15.0", 6 + "description": "Demonstrates some of the capabilities of the Obsidian API.", 7 + "author": "Obsidian", 8 + "authorUrl": "https://obsidian.md", 9 + "fundingUrl": "https://obsidian.md/pricing", 10 + "isDesktopOnly": false 11 + }
+5160
package-lock.json
··· 1 + { 2 + "name": "obsidian-sample-plugin", 3 + "version": "1.0.0", 4 + "lockfileVersion": 3, 5 + "requires": true, 6 + "packages": { 7 + "": { 8 + "name": "obsidian-sample-plugin", 9 + "version": "1.0.0", 10 + "license": "0-BSD", 11 + "dependencies": { 12 + "obsidian": "latest" 13 + }, 14 + "devDependencies": { 15 + "@eslint/js": "9.30.1", 16 + "@types/node": "^16.11.6", 17 + "esbuild": "0.25.5", 18 + "eslint-plugin-obsidianmd": "0.1.9", 19 + "globals": "14.0.0", 20 + "jiti": "2.6.1", 21 + "tslib": "2.4.0", 22 + "typescript": "^5.8.3", 23 + "typescript-eslint": "8.35.1" 24 + } 25 + }, 26 + "node_modules/@codemirror/state": { 27 + "version": "6.5.0", 28 + "resolved": "https://registry.npmjs.org/@codemirror/state/-/state-6.5.0.tgz", 29 + "integrity": "sha512-MwBHVK60IiIHDcoMet78lxt6iw5gJOGSbNbOIVBHWVXIH4/Nq1+GQgLLGgI1KlnN86WDXsPudVaqYHKBIx7Eyw==", 30 + "license": "MIT", 31 + "peer": true, 32 + "dependencies": { 33 + "@marijn/find-cluster-break": "^1.0.0" 34 + } 35 + }, 36 + "node_modules/@codemirror/view": { 37 + "version": "6.38.6", 38 + "resolved": "https://registry.npmjs.org/@codemirror/view/-/view-6.38.6.tgz", 39 + "integrity": "sha512-qiS0z1bKs5WOvHIAC0Cybmv4AJSkAXgX5aD6Mqd2epSLlVJsQl8NG23jCVouIgkh4All/mrbdsf2UOLFnJw0tw==", 40 + "license": "MIT", 41 + "peer": true, 42 + "dependencies": { 43 + "@codemirror/state": "^6.5.0", 44 + "crelt": "^1.0.6", 45 + "style-mod": "^4.1.0", 46 + "w3c-keyname": "^2.2.4" 47 + } 48 + }, 49 + "node_modules/@esbuild/aix-ppc64": { 50 + "version": "0.25.5", 51 + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.25.5.tgz", 52 + "integrity": "sha512-9o3TMmpmftaCMepOdA5k/yDw8SfInyzWWTjYTFCX3kPSDJMROQTb8jg+h9Cnwnmm1vOzvxN7gIfB5V2ewpjtGA==", 53 + "cpu": [ 54 + "ppc64" 55 + ], 56 + "dev": true, 57 + "license": "MIT", 58 + "optional": true, 59 + "os": [ 60 + "aix" 61 + ], 62 + "engines": { 63 + "node": ">=18" 64 + } 65 + }, 66 + "node_modules/@esbuild/android-arm": { 67 + "version": "0.25.5", 68 + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.25.5.tgz", 69 + "integrity": "sha512-AdJKSPeEHgi7/ZhuIPtcQKr5RQdo6OO2IL87JkianiMYMPbCtot9fxPbrMiBADOWWm3T2si9stAiVsGbTQFkbA==", 70 + "cpu": [ 71 + "arm" 72 + ], 73 + "dev": true, 74 + "license": "MIT", 75 + "optional": true, 76 + "os": [ 77 + "android" 78 + ], 79 + "engines": { 80 + "node": ">=18" 81 + } 82 + }, 83 + "node_modules/@esbuild/android-arm64": { 84 + "version": "0.25.5", 85 + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.25.5.tgz", 86 + "integrity": "sha512-VGzGhj4lJO+TVGV1v8ntCZWJktV7SGCs3Pn1GRWI1SBFtRALoomm8k5E9Pmwg3HOAal2VDc2F9+PM/rEY6oIDg==", 87 + "cpu": [ 88 + "arm64" 89 + ], 90 + "dev": true, 91 + "license": "MIT", 92 + "optional": true, 93 + "os": [ 94 + "android" 95 + ], 96 + "engines": { 97 + "node": ">=18" 98 + } 99 + }, 100 + "node_modules/@esbuild/android-x64": { 101 + "version": "0.25.5", 102 + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.25.5.tgz", 103 + "integrity": "sha512-D2GyJT1kjvO//drbRT3Hib9XPwQeWd9vZoBJn+bu/lVsOZ13cqNdDeqIF/xQ5/VmWvMduP6AmXvylO/PIc2isw==", 104 + "cpu": [ 105 + "x64" 106 + ], 107 + "dev": true, 108 + "license": "MIT", 109 + "optional": true, 110 + "os": [ 111 + "android" 112 + ], 113 + "engines": { 114 + "node": ">=18" 115 + } 116 + }, 117 + "node_modules/@esbuild/darwin-arm64": { 118 + "version": "0.25.5", 119 + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.25.5.tgz", 120 + "integrity": "sha512-GtaBgammVvdF7aPIgH2jxMDdivezgFu6iKpmT+48+F8Hhg5J/sfnDieg0aeG/jfSvkYQU2/pceFPDKlqZzwnfQ==", 121 + "cpu": [ 122 + "arm64" 123 + ], 124 + "dev": true, 125 + "license": "MIT", 126 + "optional": true, 127 + "os": [ 128 + "darwin" 129 + ], 130 + "engines": { 131 + "node": ">=18" 132 + } 133 + }, 134 + "node_modules/@esbuild/darwin-x64": { 135 + "version": "0.25.5", 136 + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.25.5.tgz", 137 + "integrity": "sha512-1iT4FVL0dJ76/q1wd7XDsXrSW+oLoquptvh4CLR4kITDtqi2e/xwXwdCVH8hVHU43wgJdsq7Gxuzcs6Iq/7bxQ==", 138 + "cpu": [ 139 + "x64" 140 + ], 141 + "dev": true, 142 + "license": "MIT", 143 + "optional": true, 144 + "os": [ 145 + "darwin" 146 + ], 147 + "engines": { 148 + "node": ">=18" 149 + } 150 + }, 151 + "node_modules/@esbuild/freebsd-arm64": { 152 + "version": "0.25.5", 153 + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.5.tgz", 154 + "integrity": "sha512-nk4tGP3JThz4La38Uy/gzyXtpkPW8zSAmoUhK9xKKXdBCzKODMc2adkB2+8om9BDYugz+uGV7sLmpTYzvmz6Sw==", 155 + "cpu": [ 156 + "arm64" 157 + ], 158 + "dev": true, 159 + "license": "MIT", 160 + "optional": true, 161 + "os": [ 162 + "freebsd" 163 + ], 164 + "engines": { 165 + "node": ">=18" 166 + } 167 + }, 168 + "node_modules/@esbuild/freebsd-x64": { 169 + "version": "0.25.5", 170 + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.25.5.tgz", 171 + "integrity": "sha512-PrikaNjiXdR2laW6OIjlbeuCPrPaAl0IwPIaRv+SMV8CiM8i2LqVUHFC1+8eORgWyY7yhQY+2U2fA55mBzReaw==", 172 + "cpu": [ 173 + "x64" 174 + ], 175 + "dev": true, 176 + "license": "MIT", 177 + "optional": true, 178 + "os": [ 179 + "freebsd" 180 + ], 181 + "engines": { 182 + "node": ">=18" 183 + } 184 + }, 185 + "node_modules/@esbuild/linux-arm": { 186 + "version": "0.25.5", 187 + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.25.5.tgz", 188 + "integrity": "sha512-cPzojwW2okgh7ZlRpcBEtsX7WBuqbLrNXqLU89GxWbNt6uIg78ET82qifUy3W6OVww6ZWobWub5oqZOVtwolfw==", 189 + "cpu": [ 190 + "arm" 191 + ], 192 + "dev": true, 193 + "license": "MIT", 194 + "optional": true, 195 + "os": [ 196 + "linux" 197 + ], 198 + "engines": { 199 + "node": ">=18" 200 + } 201 + }, 202 + "node_modules/@esbuild/linux-arm64": { 203 + "version": "0.25.5", 204 + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.25.5.tgz", 205 + "integrity": "sha512-Z9kfb1v6ZlGbWj8EJk9T6czVEjjq2ntSYLY2cw6pAZl4oKtfgQuS4HOq41M/BcoLPzrUbNd+R4BXFyH//nHxVg==", 206 + "cpu": [ 207 + "arm64" 208 + ], 209 + "dev": true, 210 + "license": "MIT", 211 + "optional": true, 212 + "os": [ 213 + "linux" 214 + ], 215 + "engines": { 216 + "node": ">=18" 217 + } 218 + }, 219 + "node_modules/@esbuild/linux-ia32": { 220 + "version": "0.25.5", 221 + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.25.5.tgz", 222 + "integrity": "sha512-sQ7l00M8bSv36GLV95BVAdhJ2QsIbCuCjh/uYrWiMQSUuV+LpXwIqhgJDcvMTj+VsQmqAHL2yYaasENvJ7CDKA==", 223 + "cpu": [ 224 + "ia32" 225 + ], 226 + "dev": true, 227 + "license": "MIT", 228 + "optional": true, 229 + "os": [ 230 + "linux" 231 + ], 232 + "engines": { 233 + "node": ">=18" 234 + } 235 + }, 236 + "node_modules/@esbuild/linux-loong64": { 237 + "version": "0.25.5", 238 + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.25.5.tgz", 239 + "integrity": "sha512-0ur7ae16hDUC4OL5iEnDb0tZHDxYmuQyhKhsPBV8f99f6Z9KQM02g33f93rNH5A30agMS46u2HP6qTdEt6Q1kg==", 240 + "cpu": [ 241 + "loong64" 242 + ], 243 + "dev": true, 244 + "license": "MIT", 245 + "optional": true, 246 + "os": [ 247 + "linux" 248 + ], 249 + "engines": { 250 + "node": ">=18" 251 + } 252 + }, 253 + "node_modules/@esbuild/linux-mips64el": { 254 + "version": "0.25.5", 255 + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.25.5.tgz", 256 + "integrity": "sha512-kB/66P1OsHO5zLz0i6X0RxlQ+3cu0mkxS3TKFvkb5lin6uwZ/ttOkP3Z8lfR9mJOBk14ZwZ9182SIIWFGNmqmg==", 257 + "cpu": [ 258 + "mips64el" 259 + ], 260 + "dev": true, 261 + "license": "MIT", 262 + "optional": true, 263 + "os": [ 264 + "linux" 265 + ], 266 + "engines": { 267 + "node": ">=18" 268 + } 269 + }, 270 + "node_modules/@esbuild/linux-ppc64": { 271 + "version": "0.25.5", 272 + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.25.5.tgz", 273 + "integrity": "sha512-UZCmJ7r9X2fe2D6jBmkLBMQetXPXIsZjQJCjgwpVDz+YMcS6oFR27alkgGv3Oqkv07bxdvw7fyB71/olceJhkQ==", 274 + "cpu": [ 275 + "ppc64" 276 + ], 277 + "dev": true, 278 + "license": "MIT", 279 + "optional": true, 280 + "os": [ 281 + "linux" 282 + ], 283 + "engines": { 284 + "node": ">=18" 285 + } 286 + }, 287 + "node_modules/@esbuild/linux-riscv64": { 288 + "version": "0.25.5", 289 + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.25.5.tgz", 290 + "integrity": "sha512-kTxwu4mLyeOlsVIFPfQo+fQJAV9mh24xL+y+Bm6ej067sYANjyEw1dNHmvoqxJUCMnkBdKpvOn0Ahql6+4VyeA==", 291 + "cpu": [ 292 + "riscv64" 293 + ], 294 + "dev": true, 295 + "license": "MIT", 296 + "optional": true, 297 + "os": [ 298 + "linux" 299 + ], 300 + "engines": { 301 + "node": ">=18" 302 + } 303 + }, 304 + "node_modules/@esbuild/linux-s390x": { 305 + "version": "0.25.5", 306 + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.25.5.tgz", 307 + "integrity": "sha512-K2dSKTKfmdh78uJ3NcWFiqyRrimfdinS5ErLSn3vluHNeHVnBAFWC8a4X5N+7FgVE1EjXS1QDZbpqZBjfrqMTQ==", 308 + "cpu": [ 309 + "s390x" 310 + ], 311 + "dev": true, 312 + "license": "MIT", 313 + "optional": true, 314 + "os": [ 315 + "linux" 316 + ], 317 + "engines": { 318 + "node": ">=18" 319 + } 320 + }, 321 + "node_modules/@esbuild/linux-x64": { 322 + "version": "0.25.5", 323 + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.25.5.tgz", 324 + "integrity": "sha512-uhj8N2obKTE6pSZ+aMUbqq+1nXxNjZIIjCjGLfsWvVpy7gKCOL6rsY1MhRh9zLtUtAI7vpgLMK6DxjO8Qm9lJw==", 325 + "cpu": [ 326 + "x64" 327 + ], 328 + "dev": true, 329 + "license": "MIT", 330 + "optional": true, 331 + "os": [ 332 + "linux" 333 + ], 334 + "engines": { 335 + "node": ">=18" 336 + } 337 + }, 338 + "node_modules/@esbuild/netbsd-arm64": { 339 + "version": "0.25.5", 340 + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.5.tgz", 341 + "integrity": "sha512-pwHtMP9viAy1oHPvgxtOv+OkduK5ugofNTVDilIzBLpoWAM16r7b/mxBvfpuQDpRQFMfuVr5aLcn4yveGvBZvw==", 342 + "cpu": [ 343 + "arm64" 344 + ], 345 + "dev": true, 346 + "license": "MIT", 347 + "optional": true, 348 + "os": [ 349 + "netbsd" 350 + ], 351 + "engines": { 352 + "node": ">=18" 353 + } 354 + }, 355 + "node_modules/@esbuild/netbsd-x64": { 356 + "version": "0.25.5", 357 + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.25.5.tgz", 358 + "integrity": "sha512-WOb5fKrvVTRMfWFNCroYWWklbnXH0Q5rZppjq0vQIdlsQKuw6mdSihwSo4RV/YdQ5UCKKvBy7/0ZZYLBZKIbwQ==", 359 + "cpu": [ 360 + "x64" 361 + ], 362 + "dev": true, 363 + "license": "MIT", 364 + "optional": true, 365 + "os": [ 366 + "netbsd" 367 + ], 368 + "engines": { 369 + "node": ">=18" 370 + } 371 + }, 372 + "node_modules/@esbuild/openbsd-arm64": { 373 + "version": "0.25.5", 374 + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.5.tgz", 375 + "integrity": "sha512-7A208+uQKgTxHd0G0uqZO8UjK2R0DDb4fDmERtARjSHWxqMTye4Erz4zZafx7Di9Cv+lNHYuncAkiGFySoD+Mw==", 376 + "cpu": [ 377 + "arm64" 378 + ], 379 + "dev": true, 380 + "license": "MIT", 381 + "optional": true, 382 + "os": [ 383 + "openbsd" 384 + ], 385 + "engines": { 386 + "node": ">=18" 387 + } 388 + }, 389 + "node_modules/@esbuild/openbsd-x64": { 390 + "version": "0.25.5", 391 + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.25.5.tgz", 392 + "integrity": "sha512-G4hE405ErTWraiZ8UiSoesH8DaCsMm0Cay4fsFWOOUcz8b8rC6uCvnagr+gnioEjWn0wC+o1/TAHt+It+MpIMg==", 393 + "cpu": [ 394 + "x64" 395 + ], 396 + "dev": true, 397 + "license": "MIT", 398 + "optional": true, 399 + "os": [ 400 + "openbsd" 401 + ], 402 + "engines": { 403 + "node": ">=18" 404 + } 405 + }, 406 + "node_modules/@esbuild/sunos-x64": { 407 + "version": "0.25.5", 408 + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.25.5.tgz", 409 + "integrity": "sha512-l+azKShMy7FxzY0Rj4RCt5VD/q8mG/e+mDivgspo+yL8zW7qEwctQ6YqKX34DTEleFAvCIUviCFX1SDZRSyMQA==", 410 + "cpu": [ 411 + "x64" 412 + ], 413 + "dev": true, 414 + "license": "MIT", 415 + "optional": true, 416 + "os": [ 417 + "sunos" 418 + ], 419 + "engines": { 420 + "node": ">=18" 421 + } 422 + }, 423 + "node_modules/@esbuild/win32-arm64": { 424 + "version": "0.25.5", 425 + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.25.5.tgz", 426 + "integrity": "sha512-O2S7SNZzdcFG7eFKgvwUEZ2VG9D/sn/eIiz8XRZ1Q/DO5a3s76Xv0mdBzVM5j5R639lXQmPmSo0iRpHqUUrsxw==", 427 + "cpu": [ 428 + "arm64" 429 + ], 430 + "dev": true, 431 + "license": "MIT", 432 + "optional": true, 433 + "os": [ 434 + "win32" 435 + ], 436 + "engines": { 437 + "node": ">=18" 438 + } 439 + }, 440 + "node_modules/@esbuild/win32-ia32": { 441 + "version": "0.25.5", 442 + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.25.5.tgz", 443 + "integrity": "sha512-onOJ02pqs9h1iMJ1PQphR+VZv8qBMQ77Klcsqv9CNW2w6yLqoURLcgERAIurY6QE63bbLuqgP9ATqajFLK5AMQ==", 444 + "cpu": [ 445 + "ia32" 446 + ], 447 + "dev": true, 448 + "license": "MIT", 449 + "optional": true, 450 + "os": [ 451 + "win32" 452 + ], 453 + "engines": { 454 + "node": ">=18" 455 + } 456 + }, 457 + "node_modules/@esbuild/win32-x64": { 458 + "version": "0.25.5", 459 + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.25.5.tgz", 460 + "integrity": "sha512-TXv6YnJ8ZMVdX+SXWVBo/0p8LTcrUYngpWjvm91TMjjBQii7Oz11Lw5lbDV5Y0TzuhSJHwiH4hEtC1I42mMS0g==", 461 + "cpu": [ 462 + "x64" 463 + ], 464 + "dev": true, 465 + "license": "MIT", 466 + "optional": true, 467 + "os": [ 468 + "win32" 469 + ], 470 + "engines": { 471 + "node": ">=18" 472 + } 473 + }, 474 + "node_modules/@eslint-community/eslint-utils": { 475 + "version": "4.9.0", 476 + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.9.0.tgz", 477 + "integrity": "sha512-ayVFHdtZ+hsq1t2Dy24wCmGXGe4q9Gu3smhLYALJrr473ZH27MsnSL+LKUlimp4BWJqMDMLmPpx/Q9R3OAlL4g==", 478 + "dev": true, 479 + "license": "MIT", 480 + "dependencies": { 481 + "eslint-visitor-keys": "^3.4.3" 482 + }, 483 + "engines": { 484 + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" 485 + }, 486 + "funding": { 487 + "url": "https://opencollective.com/eslint" 488 + }, 489 + "peerDependencies": { 490 + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" 491 + } 492 + }, 493 + "node_modules/@eslint-community/eslint-utils/node_modules/eslint-visitor-keys": { 494 + "version": "3.4.3", 495 + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", 496 + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", 497 + "dev": true, 498 + "license": "Apache-2.0", 499 + "engines": { 500 + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" 501 + }, 502 + "funding": { 503 + "url": "https://opencollective.com/eslint" 504 + } 505 + }, 506 + "node_modules/@eslint-community/regexpp": { 507 + "version": "4.12.2", 508 + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.2.tgz", 509 + "integrity": "sha512-EriSTlt5OC9/7SXkRSCAhfSxxoSUgBm33OH+IkwbdpgoqsSsUg7y3uh+IICI/Qg4BBWr3U2i39RpmycbxMq4ew==", 510 + "dev": true, 511 + "license": "MIT", 512 + "engines": { 513 + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" 514 + } 515 + }, 516 + "node_modules/@eslint/config-array": { 517 + "version": "0.21.1", 518 + "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.21.1.tgz", 519 + "integrity": "sha512-aw1gNayWpdI/jSYVgzN5pL0cfzU02GT3NBpeT/DXbx1/1x7ZKxFPd9bwrzygx/qiwIQiJ1sw/zD8qY/kRvlGHA==", 520 + "dev": true, 521 + "license": "Apache-2.0", 522 + "dependencies": { 523 + "@eslint/object-schema": "^2.1.7", 524 + "debug": "^4.3.1", 525 + "minimatch": "^3.1.2" 526 + }, 527 + "engines": { 528 + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 529 + } 530 + }, 531 + "node_modules/@eslint/config-helpers": { 532 + "version": "0.4.2", 533 + "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.4.2.tgz", 534 + "integrity": "sha512-gBrxN88gOIf3R7ja5K9slwNayVcZgK6SOUORm2uBzTeIEfeVaIhOpCtTox3P6R7o2jLFwLFTLnC7kU/RGcYEgw==", 535 + "dev": true, 536 + "license": "Apache-2.0", 537 + "dependencies": { 538 + "@eslint/core": "^0.17.0" 539 + }, 540 + "engines": { 541 + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 542 + } 543 + }, 544 + "node_modules/@eslint/core": { 545 + "version": "0.17.0", 546 + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.17.0.tgz", 547 + "integrity": "sha512-yL/sLrpmtDaFEiUj1osRP4TI2MDz1AddJL+jZ7KSqvBuliN4xqYY54IfdN8qD8Toa6g1iloph1fxQNkjOxrrpQ==", 548 + "dev": true, 549 + "license": "Apache-2.0", 550 + "dependencies": { 551 + "@types/json-schema": "^7.0.15" 552 + }, 553 + "engines": { 554 + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 555 + } 556 + }, 557 + "node_modules/@eslint/eslintrc": { 558 + "version": "3.3.1", 559 + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.3.1.tgz", 560 + "integrity": "sha512-gtF186CXhIl1p4pJNGZw8Yc6RlshoePRvE0X91oPGb3vZ8pM3qOS9W9NGPat9LziaBV7XrJWGylNQXkGcnM3IQ==", 561 + "dev": true, 562 + "license": "MIT", 563 + "dependencies": { 564 + "ajv": "^6.12.4", 565 + "debug": "^4.3.2", 566 + "espree": "^10.0.1", 567 + "globals": "^14.0.0", 568 + "ignore": "^5.2.0", 569 + "import-fresh": "^3.2.1", 570 + "js-yaml": "^4.1.0", 571 + "minimatch": "^3.1.2", 572 + "strip-json-comments": "^3.1.1" 573 + }, 574 + "engines": { 575 + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 576 + }, 577 + "funding": { 578 + "url": "https://opencollective.com/eslint" 579 + } 580 + }, 581 + "node_modules/@eslint/js": { 582 + "version": "9.30.1", 583 + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.30.1.tgz", 584 + "integrity": "sha512-zXhuECFlyep42KZUhWjfvsmXGX39W8K8LFb8AWXM9gSV9dQB+MrJGLKvW6Zw0Ggnbpw0VHTtrhFXYe3Gym18jg==", 585 + "dev": true, 586 + "license": "MIT", 587 + "engines": { 588 + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 589 + }, 590 + "funding": { 591 + "url": "https://eslint.org/donate" 592 + } 593 + }, 594 + "node_modules/@eslint/json": { 595 + "version": "0.14.0", 596 + "resolved": "https://registry.npmjs.org/@eslint/json/-/json-0.14.0.tgz", 597 + "integrity": "sha512-rvR/EZtvUG3p9uqrSmcDJPYSH7atmWr0RnFWN6m917MAPx82+zQgPUmDu0whPFG6XTyM0vB/hR6c1Q63OaYtCQ==", 598 + "dev": true, 599 + "license": "Apache-2.0", 600 + "peer": true, 601 + "dependencies": { 602 + "@eslint/core": "^0.17.0", 603 + "@eslint/plugin-kit": "^0.4.1", 604 + "@humanwhocodes/momoa": "^3.3.10", 605 + "natural-compare": "^1.4.0" 606 + }, 607 + "engines": { 608 + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 609 + } 610 + }, 611 + "node_modules/@eslint/object-schema": { 612 + "version": "2.1.7", 613 + "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.7.tgz", 614 + "integrity": "sha512-VtAOaymWVfZcmZbp6E2mympDIHvyjXs/12LqWYjVw6qjrfF+VK+fyG33kChz3nnK+SU5/NeHOqrTEHS8sXO3OA==", 615 + "dev": true, 616 + "license": "Apache-2.0", 617 + "engines": { 618 + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 619 + } 620 + }, 621 + "node_modules/@eslint/plugin-kit": { 622 + "version": "0.4.1", 623 + "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.4.1.tgz", 624 + "integrity": "sha512-43/qtrDUokr7LJqoF2c3+RInu/t4zfrpYdoSDfYyhg52rwLV6TnOvdG4fXm7IkSB3wErkcmJS9iEhjVtOSEjjA==", 625 + "dev": true, 626 + "license": "Apache-2.0", 627 + "dependencies": { 628 + "@eslint/core": "^0.17.0", 629 + "levn": "^0.4.1" 630 + }, 631 + "engines": { 632 + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 633 + } 634 + }, 635 + "node_modules/@humanfs/core": { 636 + "version": "0.19.1", 637 + "resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.1.tgz", 638 + "integrity": "sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==", 639 + "dev": true, 640 + "license": "Apache-2.0", 641 + "engines": { 642 + "node": ">=18.18.0" 643 + } 644 + }, 645 + "node_modules/@humanfs/node": { 646 + "version": "0.16.7", 647 + "resolved": "https://registry.npmjs.org/@humanfs/node/-/node-0.16.7.tgz", 648 + "integrity": "sha512-/zUx+yOsIrG4Y43Eh2peDeKCxlRt/gET6aHfaKpuq267qXdYDFViVHfMaLyygZOnl0kGWxFIgsBy8QFuTLUXEQ==", 649 + "dev": true, 650 + "license": "Apache-2.0", 651 + "dependencies": { 652 + "@humanfs/core": "^0.19.1", 653 + "@humanwhocodes/retry": "^0.4.0" 654 + }, 655 + "engines": { 656 + "node": ">=18.18.0" 657 + } 658 + }, 659 + "node_modules/@humanwhocodes/module-importer": { 660 + "version": "1.0.1", 661 + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", 662 + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", 663 + "dev": true, 664 + "license": "Apache-2.0", 665 + "engines": { 666 + "node": ">=12.22" 667 + }, 668 + "funding": { 669 + "type": "github", 670 + "url": "https://github.com/sponsors/nzakas" 671 + } 672 + }, 673 + "node_modules/@humanwhocodes/momoa": { 674 + "version": "3.3.10", 675 + "resolved": "https://registry.npmjs.org/@humanwhocodes/momoa/-/momoa-3.3.10.tgz", 676 + "integrity": "sha512-KWiFQpSAqEIyrTXko3hFNLeQvSK8zXlJQzhhxsyVn58WFRYXST99b3Nqnu+ttOtjds2Pl2grUHGpe2NzhPynuQ==", 677 + "dev": true, 678 + "license": "Apache-2.0", 679 + "peer": true, 680 + "engines": { 681 + "node": ">=18" 682 + } 683 + }, 684 + "node_modules/@humanwhocodes/retry": { 685 + "version": "0.4.3", 686 + "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.3.tgz", 687 + "integrity": "sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==", 688 + "dev": true, 689 + "license": "Apache-2.0", 690 + "engines": { 691 + "node": ">=18.18" 692 + }, 693 + "funding": { 694 + "type": "github", 695 + "url": "https://github.com/sponsors/nzakas" 696 + } 697 + }, 698 + "node_modules/@marijn/find-cluster-break": { 699 + "version": "1.0.2", 700 + "resolved": "https://registry.npmjs.org/@marijn/find-cluster-break/-/find-cluster-break-1.0.2.tgz", 701 + "integrity": "sha512-l0h88YhZFyKdXIFNfSWpyjStDjGHwZ/U7iobcK1cQQD8sejsONdQtTVU+1wVN1PBw40PiiHB1vA5S7VTfQiP9g==", 702 + "license": "MIT", 703 + "peer": true 704 + }, 705 + "node_modules/@microsoft/eslint-plugin-sdl": { 706 + "version": "1.1.0", 707 + "resolved": "https://registry.npmjs.org/@microsoft/eslint-plugin-sdl/-/eslint-plugin-sdl-1.1.0.tgz", 708 + "integrity": "sha512-dxdNHOemLnBhfY3eByrujX9KyLigcNtW8sU+axzWv5nLGcsSBeKW2YYyTpfPo1hV8YPOmIGnfA4fZHyKVtWqBQ==", 709 + "dev": true, 710 + "license": "MIT", 711 + "dependencies": { 712 + "eslint-plugin-n": "17.10.3", 713 + "eslint-plugin-react": "7.37.3", 714 + "eslint-plugin-security": "1.4.0" 715 + }, 716 + "engines": { 717 + "node": ">=18.0.0" 718 + }, 719 + "peerDependencies": { 720 + "eslint": "^9" 721 + } 722 + }, 723 + "node_modules/@microsoft/eslint-plugin-sdl/node_modules/eslint-plugin-security": { 724 + "version": "1.4.0", 725 + "resolved": "https://registry.npmjs.org/eslint-plugin-security/-/eslint-plugin-security-1.4.0.tgz", 726 + "integrity": "sha512-xlS7P2PLMXeqfhyf3NpqbvbnW04kN8M9NtmhpR3XGyOvt/vNKS7XPXT5EDbwKW9vCjWH4PpfQvgD/+JgN0VJKA==", 727 + "dev": true, 728 + "license": "Apache-2.0", 729 + "dependencies": { 730 + "safe-regex": "^1.1.0" 731 + } 732 + }, 733 + "node_modules/@microsoft/eslint-plugin-sdl/node_modules/safe-regex": { 734 + "version": "1.1.0", 735 + "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", 736 + "integrity": "sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg==", 737 + "dev": true, 738 + "license": "MIT", 739 + "dependencies": { 740 + "ret": "~0.1.10" 741 + } 742 + }, 743 + "node_modules/@nodelib/fs.scandir": { 744 + "version": "2.1.5", 745 + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", 746 + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", 747 + "dev": true, 748 + "license": "MIT", 749 + "dependencies": { 750 + "@nodelib/fs.stat": "2.0.5", 751 + "run-parallel": "^1.1.9" 752 + }, 753 + "engines": { 754 + "node": ">= 8" 755 + } 756 + }, 757 + "node_modules/@nodelib/fs.stat": { 758 + "version": "2.0.5", 759 + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", 760 + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", 761 + "dev": true, 762 + "license": "MIT", 763 + "engines": { 764 + "node": ">= 8" 765 + } 766 + }, 767 + "node_modules/@nodelib/fs.walk": { 768 + "version": "1.2.8", 769 + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", 770 + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", 771 + "dev": true, 772 + "license": "MIT", 773 + "dependencies": { 774 + "@nodelib/fs.scandir": "2.1.5", 775 + "fastq": "^1.6.0" 776 + }, 777 + "engines": { 778 + "node": ">= 8" 779 + } 780 + }, 781 + "node_modules/@pkgr/core": { 782 + "version": "0.1.2", 783 + "resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.1.2.tgz", 784 + "integrity": "sha512-fdDH1LSGfZdTH2sxdpVMw31BanV28K/Gry0cVFxaNP77neJSkd82mM8ErPNYs9e+0O7SdHBLTDzDgwUuy18RnQ==", 785 + "dev": true, 786 + "license": "MIT", 787 + "engines": { 788 + "node": "^12.20.0 || ^14.18.0 || >=16.0.0" 789 + }, 790 + "funding": { 791 + "url": "https://opencollective.com/unts" 792 + } 793 + }, 794 + "node_modules/@rtsao/scc": { 795 + "version": "1.1.0", 796 + "resolved": "https://registry.npmjs.org/@rtsao/scc/-/scc-1.1.0.tgz", 797 + "integrity": "sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==", 798 + "dev": true, 799 + "license": "MIT" 800 + }, 801 + "node_modules/@types/codemirror": { 802 + "version": "5.60.8", 803 + "resolved": "https://registry.npmjs.org/@types/codemirror/-/codemirror-5.60.8.tgz", 804 + "integrity": "sha512-VjFgDF/eB+Aklcy15TtOTLQeMjTo07k7KAjql8OK5Dirr7a6sJY4T1uVBDuTVG9VEmn1uUsohOpYnVfgC6/jyw==", 805 + "license": "MIT", 806 + "dependencies": { 807 + "@types/tern": "*" 808 + } 809 + }, 810 + "node_modules/@types/eslint": { 811 + "version": "8.56.2", 812 + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.56.2.tgz", 813 + "integrity": "sha512-uQDwm1wFHmbBbCZCqAlq6Do9LYwByNZHWzXppSnay9SuwJ+VRbjkbLABer54kcPnMSlG6Fdiy2yaFXm/z9Z5gw==", 814 + "dev": true, 815 + "license": "MIT", 816 + "dependencies": { 817 + "@types/estree": "*", 818 + "@types/json-schema": "*" 819 + } 820 + }, 821 + "node_modules/@types/estree": { 822 + "version": "1.0.8", 823 + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.8.tgz", 824 + "integrity": "sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==", 825 + "license": "MIT" 826 + }, 827 + "node_modules/@types/json-schema": { 828 + "version": "7.0.15", 829 + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", 830 + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", 831 + "dev": true, 832 + "license": "MIT" 833 + }, 834 + "node_modules/@types/json5": { 835 + "version": "0.0.29", 836 + "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", 837 + "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", 838 + "dev": true, 839 + "license": "MIT" 840 + }, 841 + "node_modules/@types/node": { 842 + "version": "16.18.126", 843 + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.126.tgz", 844 + "integrity": "sha512-OTcgaiwfGFBKacvfwuHzzn1KLxH/er8mluiy8/uM3sGXHaRe73RrSIj01jow9t4kJEW633Ov+cOexXeiApTyAw==", 845 + "dev": true, 846 + "license": "MIT" 847 + }, 848 + "node_modules/@types/tern": { 849 + "version": "0.23.9", 850 + "resolved": "https://registry.npmjs.org/@types/tern/-/tern-0.23.9.tgz", 851 + "integrity": "sha512-ypzHFE/wBzh+BlH6rrBgS5I/Z7RD21pGhZ2rltb/+ZrVM1awdZwjx7hE5XfuYgHWk9uvV5HLZN3SloevCAp3Bw==", 852 + "license": "MIT", 853 + "dependencies": { 854 + "@types/estree": "*" 855 + } 856 + }, 857 + "node_modules/@typescript-eslint/eslint-plugin": { 858 + "version": "8.35.1", 859 + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.35.1.tgz", 860 + "integrity": "sha512-9XNTlo7P7RJxbVeICaIIIEipqxLKguyh+3UbXuT2XQuFp6d8VOeDEGuz5IiX0dgZo8CiI6aOFLg4e8cF71SFVg==", 861 + "dev": true, 862 + "license": "MIT", 863 + "dependencies": { 864 + "@eslint-community/regexpp": "^4.10.0", 865 + "@typescript-eslint/scope-manager": "8.35.1", 866 + "@typescript-eslint/type-utils": "8.35.1", 867 + "@typescript-eslint/utils": "8.35.1", 868 + "@typescript-eslint/visitor-keys": "8.35.1", 869 + "graphemer": "^1.4.0", 870 + "ignore": "^7.0.0", 871 + "natural-compare": "^1.4.0", 872 + "ts-api-utils": "^2.1.0" 873 + }, 874 + "engines": { 875 + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 876 + }, 877 + "funding": { 878 + "type": "opencollective", 879 + "url": "https://opencollective.com/typescript-eslint" 880 + }, 881 + "peerDependencies": { 882 + "@typescript-eslint/parser": "^8.35.1", 883 + "eslint": "^8.57.0 || ^9.0.0", 884 + "typescript": ">=4.8.4 <5.9.0" 885 + } 886 + }, 887 + "node_modules/@typescript-eslint/eslint-plugin/node_modules/ignore": { 888 + "version": "7.0.5", 889 + "resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.5.tgz", 890 + "integrity": "sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg==", 891 + "dev": true, 892 + "license": "MIT", 893 + "engines": { 894 + "node": ">= 4" 895 + } 896 + }, 897 + "node_modules/@typescript-eslint/parser": { 898 + "version": "8.35.1", 899 + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.35.1.tgz", 900 + "integrity": "sha512-3MyiDfrfLeK06bi/g9DqJxP5pV74LNv4rFTyvGDmT3x2p1yp1lOd+qYZfiRPIOf/oON+WRZR5wxxuF85qOar+w==", 901 + "dev": true, 902 + "license": "MIT", 903 + "dependencies": { 904 + "@typescript-eslint/scope-manager": "8.35.1", 905 + "@typescript-eslint/types": "8.35.1", 906 + "@typescript-eslint/typescript-estree": "8.35.1", 907 + "@typescript-eslint/visitor-keys": "8.35.1", 908 + "debug": "^4.3.4" 909 + }, 910 + "engines": { 911 + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 912 + }, 913 + "funding": { 914 + "type": "opencollective", 915 + "url": "https://opencollective.com/typescript-eslint" 916 + }, 917 + "peerDependencies": { 918 + "eslint": "^8.57.0 || ^9.0.0", 919 + "typescript": ">=4.8.4 <5.9.0" 920 + } 921 + }, 922 + "node_modules/@typescript-eslint/project-service": { 923 + "version": "8.35.1", 924 + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.35.1.tgz", 925 + "integrity": "sha512-VYxn/5LOpVxADAuP3NrnxxHYfzVtQzLKeldIhDhzC8UHaiQvYlXvKuVho1qLduFbJjjy5U5bkGwa3rUGUb1Q6Q==", 926 + "dev": true, 927 + "license": "MIT", 928 + "dependencies": { 929 + "@typescript-eslint/tsconfig-utils": "^8.35.1", 930 + "@typescript-eslint/types": "^8.35.1", 931 + "debug": "^4.3.4" 932 + }, 933 + "engines": { 934 + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 935 + }, 936 + "funding": { 937 + "type": "opencollective", 938 + "url": "https://opencollective.com/typescript-eslint" 939 + }, 940 + "peerDependencies": { 941 + "typescript": ">=4.8.4 <5.9.0" 942 + } 943 + }, 944 + "node_modules/@typescript-eslint/scope-manager": { 945 + "version": "8.35.1", 946 + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.35.1.tgz", 947 + "integrity": "sha512-s/Bpd4i7ht2934nG+UoSPlYXd08KYz3bmjLEb7Ye1UVob0d1ENiT3lY8bsCmik4RqfSbPw9xJJHbugpPpP5JUg==", 948 + "dev": true, 949 + "license": "MIT", 950 + "dependencies": { 951 + "@typescript-eslint/types": "8.35.1", 952 + "@typescript-eslint/visitor-keys": "8.35.1" 953 + }, 954 + "engines": { 955 + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 956 + }, 957 + "funding": { 958 + "type": "opencollective", 959 + "url": "https://opencollective.com/typescript-eslint" 960 + } 961 + }, 962 + "node_modules/@typescript-eslint/tsconfig-utils": { 963 + "version": "8.35.1", 964 + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.35.1.tgz", 965 + "integrity": "sha512-K5/U9VmT9dTHoNowWZpz+/TObS3xqC5h0xAIjXPw+MNcKV9qg6eSatEnmeAwkjHijhACH0/N7bkhKvbt1+DXWQ==", 966 + "dev": true, 967 + "license": "MIT", 968 + "engines": { 969 + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 970 + }, 971 + "funding": { 972 + "type": "opencollective", 973 + "url": "https://opencollective.com/typescript-eslint" 974 + }, 975 + "peerDependencies": { 976 + "typescript": ">=4.8.4 <5.9.0" 977 + } 978 + }, 979 + "node_modules/@typescript-eslint/type-utils": { 980 + "version": "8.35.1", 981 + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.35.1.tgz", 982 + "integrity": "sha512-HOrUBlfVRz5W2LIKpXzZoy6VTZzMu2n8q9C2V/cFngIC5U1nStJgv0tMV4sZPzdf4wQm9/ToWUFPMN9Vq9VJQQ==", 983 + "dev": true, 984 + "license": "MIT", 985 + "dependencies": { 986 + "@typescript-eslint/typescript-estree": "8.35.1", 987 + "@typescript-eslint/utils": "8.35.1", 988 + "debug": "^4.3.4", 989 + "ts-api-utils": "^2.1.0" 990 + }, 991 + "engines": { 992 + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 993 + }, 994 + "funding": { 995 + "type": "opencollective", 996 + "url": "https://opencollective.com/typescript-eslint" 997 + }, 998 + "peerDependencies": { 999 + "eslint": "^8.57.0 || ^9.0.0", 1000 + "typescript": ">=4.8.4 <5.9.0" 1001 + } 1002 + }, 1003 + "node_modules/@typescript-eslint/types": { 1004 + "version": "8.35.1", 1005 + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.35.1.tgz", 1006 + "integrity": "sha512-q/O04vVnKHfrrhNAscndAn1tuQhIkwqnaW+eu5waD5IPts2eX1dgJxgqcPx5BX109/qAz7IG6VrEPTOYKCNfRQ==", 1007 + "dev": true, 1008 + "license": "MIT", 1009 + "engines": { 1010 + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 1011 + }, 1012 + "funding": { 1013 + "type": "opencollective", 1014 + "url": "https://opencollective.com/typescript-eslint" 1015 + } 1016 + }, 1017 + "node_modules/@typescript-eslint/typescript-estree": { 1018 + "version": "8.35.1", 1019 + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.35.1.tgz", 1020 + "integrity": "sha512-Vvpuvj4tBxIka7cPs6Y1uvM7gJgdF5Uu9F+mBJBPY4MhvjrjWGK4H0lVgLJd/8PWZ23FTqsaJaLEkBCFUk8Y9g==", 1021 + "dev": true, 1022 + "license": "MIT", 1023 + "dependencies": { 1024 + "@typescript-eslint/project-service": "8.35.1", 1025 + "@typescript-eslint/tsconfig-utils": "8.35.1", 1026 + "@typescript-eslint/types": "8.35.1", 1027 + "@typescript-eslint/visitor-keys": "8.35.1", 1028 + "debug": "^4.3.4", 1029 + "fast-glob": "^3.3.2", 1030 + "is-glob": "^4.0.3", 1031 + "minimatch": "^9.0.4", 1032 + "semver": "^7.6.0", 1033 + "ts-api-utils": "^2.1.0" 1034 + }, 1035 + "engines": { 1036 + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 1037 + }, 1038 + "funding": { 1039 + "type": "opencollective", 1040 + "url": "https://opencollective.com/typescript-eslint" 1041 + }, 1042 + "peerDependencies": { 1043 + "typescript": ">=4.8.4 <5.9.0" 1044 + } 1045 + }, 1046 + "node_modules/@typescript-eslint/typescript-estree/node_modules/brace-expansion": { 1047 + "version": "2.0.2", 1048 + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", 1049 + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", 1050 + "dev": true, 1051 + "license": "MIT", 1052 + "dependencies": { 1053 + "balanced-match": "^1.0.0" 1054 + } 1055 + }, 1056 + "node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch": { 1057 + "version": "9.0.5", 1058 + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", 1059 + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", 1060 + "dev": true, 1061 + "license": "ISC", 1062 + "dependencies": { 1063 + "brace-expansion": "^2.0.1" 1064 + }, 1065 + "engines": { 1066 + "node": ">=16 || 14 >=14.17" 1067 + }, 1068 + "funding": { 1069 + "url": "https://github.com/sponsors/isaacs" 1070 + } 1071 + }, 1072 + "node_modules/@typescript-eslint/typescript-estree/node_modules/semver": { 1073 + "version": "7.7.3", 1074 + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz", 1075 + "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==", 1076 + "dev": true, 1077 + "license": "ISC", 1078 + "bin": { 1079 + "semver": "bin/semver.js" 1080 + }, 1081 + "engines": { 1082 + "node": ">=10" 1083 + } 1084 + }, 1085 + "node_modules/@typescript-eslint/utils": { 1086 + "version": "8.35.1", 1087 + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.35.1.tgz", 1088 + "integrity": "sha512-lhnwatFmOFcazAsUm3ZnZFpXSxiwoa1Lj50HphnDe1Et01NF4+hrdXONSUHIcbVu2eFb1bAf+5yjXkGVkXBKAQ==", 1089 + "dev": true, 1090 + "license": "MIT", 1091 + "dependencies": { 1092 + "@eslint-community/eslint-utils": "^4.7.0", 1093 + "@typescript-eslint/scope-manager": "8.35.1", 1094 + "@typescript-eslint/types": "8.35.1", 1095 + "@typescript-eslint/typescript-estree": "8.35.1" 1096 + }, 1097 + "engines": { 1098 + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 1099 + }, 1100 + "funding": { 1101 + "type": "opencollective", 1102 + "url": "https://opencollective.com/typescript-eslint" 1103 + }, 1104 + "peerDependencies": { 1105 + "eslint": "^8.57.0 || ^9.0.0", 1106 + "typescript": ">=4.8.4 <5.9.0" 1107 + } 1108 + }, 1109 + "node_modules/@typescript-eslint/visitor-keys": { 1110 + "version": "8.35.1", 1111 + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.35.1.tgz", 1112 + "integrity": "sha512-VRwixir4zBWCSTP/ljEo091lbpypz57PoeAQ9imjG+vbeof9LplljsL1mos4ccG6H9IjfrVGM359RozUnuFhpw==", 1113 + "dev": true, 1114 + "license": "MIT", 1115 + "dependencies": { 1116 + "@typescript-eslint/types": "8.35.1", 1117 + "eslint-visitor-keys": "^4.2.1" 1118 + }, 1119 + "engines": { 1120 + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 1121 + }, 1122 + "funding": { 1123 + "type": "opencollective", 1124 + "url": "https://opencollective.com/typescript-eslint" 1125 + } 1126 + }, 1127 + "node_modules/acorn": { 1128 + "version": "8.15.0", 1129 + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.15.0.tgz", 1130 + "integrity": "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==", 1131 + "dev": true, 1132 + "license": "MIT", 1133 + "bin": { 1134 + "acorn": "bin/acorn" 1135 + }, 1136 + "engines": { 1137 + "node": ">=0.4.0" 1138 + } 1139 + }, 1140 + "node_modules/acorn-jsx": { 1141 + "version": "5.3.2", 1142 + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", 1143 + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", 1144 + "dev": true, 1145 + "license": "MIT", 1146 + "peerDependencies": { 1147 + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" 1148 + } 1149 + }, 1150 + "node_modules/ajv": { 1151 + "version": "6.12.6", 1152 + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", 1153 + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", 1154 + "dev": true, 1155 + "license": "MIT", 1156 + "dependencies": { 1157 + "fast-deep-equal": "^3.1.1", 1158 + "fast-json-stable-stringify": "^2.0.0", 1159 + "json-schema-traverse": "^0.4.1", 1160 + "uri-js": "^4.2.2" 1161 + }, 1162 + "funding": { 1163 + "type": "github", 1164 + "url": "https://github.com/sponsors/epoberezkin" 1165 + } 1166 + }, 1167 + "node_modules/ansi-styles": { 1168 + "version": "4.3.0", 1169 + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", 1170 + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", 1171 + "dev": true, 1172 + "license": "MIT", 1173 + "dependencies": { 1174 + "color-convert": "^2.0.1" 1175 + }, 1176 + "engines": { 1177 + "node": ">=8" 1178 + }, 1179 + "funding": { 1180 + "url": "https://github.com/chalk/ansi-styles?sponsor=1" 1181 + } 1182 + }, 1183 + "node_modules/argparse": { 1184 + "version": "2.0.1", 1185 + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", 1186 + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", 1187 + "dev": true, 1188 + "license": "Python-2.0" 1189 + }, 1190 + "node_modules/array-buffer-byte-length": { 1191 + "version": "1.0.2", 1192 + "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.2.tgz", 1193 + "integrity": "sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==", 1194 + "dev": true, 1195 + "license": "MIT", 1196 + "dependencies": { 1197 + "call-bound": "^1.0.3", 1198 + "is-array-buffer": "^3.0.5" 1199 + }, 1200 + "engines": { 1201 + "node": ">= 0.4" 1202 + }, 1203 + "funding": { 1204 + "url": "https://github.com/sponsors/ljharb" 1205 + } 1206 + }, 1207 + "node_modules/array-includes": { 1208 + "version": "3.1.9", 1209 + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.9.tgz", 1210 + "integrity": "sha512-FmeCCAenzH0KH381SPT5FZmiA/TmpndpcaShhfgEN9eCVjnFBqq3l1xrI42y8+PPLI6hypzou4GXw00WHmPBLQ==", 1211 + "dev": true, 1212 + "license": "MIT", 1213 + "dependencies": { 1214 + "call-bind": "^1.0.8", 1215 + "call-bound": "^1.0.4", 1216 + "define-properties": "^1.2.1", 1217 + "es-abstract": "^1.24.0", 1218 + "es-object-atoms": "^1.1.1", 1219 + "get-intrinsic": "^1.3.0", 1220 + "is-string": "^1.1.1", 1221 + "math-intrinsics": "^1.1.0" 1222 + }, 1223 + "engines": { 1224 + "node": ">= 0.4" 1225 + }, 1226 + "funding": { 1227 + "url": "https://github.com/sponsors/ljharb" 1228 + } 1229 + }, 1230 + "node_modules/array.prototype.findlast": { 1231 + "version": "1.2.5", 1232 + "resolved": "https://registry.npmjs.org/array.prototype.findlast/-/array.prototype.findlast-1.2.5.tgz", 1233 + "integrity": "sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==", 1234 + "dev": true, 1235 + "license": "MIT", 1236 + "dependencies": { 1237 + "call-bind": "^1.0.7", 1238 + "define-properties": "^1.2.1", 1239 + "es-abstract": "^1.23.2", 1240 + "es-errors": "^1.3.0", 1241 + "es-object-atoms": "^1.0.0", 1242 + "es-shim-unscopables": "^1.0.2" 1243 + }, 1244 + "engines": { 1245 + "node": ">= 0.4" 1246 + }, 1247 + "funding": { 1248 + "url": "https://github.com/sponsors/ljharb" 1249 + } 1250 + }, 1251 + "node_modules/array.prototype.findlastindex": { 1252 + "version": "1.2.6", 1253 + "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.6.tgz", 1254 + "integrity": "sha512-F/TKATkzseUExPlfvmwQKGITM3DGTK+vkAsCZoDc5daVygbJBnjEUCbgkAvVFsgfXfX4YIqZ/27G3k3tdXrTxQ==", 1255 + "dev": true, 1256 + "license": "MIT", 1257 + "dependencies": { 1258 + "call-bind": "^1.0.8", 1259 + "call-bound": "^1.0.4", 1260 + "define-properties": "^1.2.1", 1261 + "es-abstract": "^1.23.9", 1262 + "es-errors": "^1.3.0", 1263 + "es-object-atoms": "^1.1.1", 1264 + "es-shim-unscopables": "^1.1.0" 1265 + }, 1266 + "engines": { 1267 + "node": ">= 0.4" 1268 + }, 1269 + "funding": { 1270 + "url": "https://github.com/sponsors/ljharb" 1271 + } 1272 + }, 1273 + "node_modules/array.prototype.flat": { 1274 + "version": "1.3.3", 1275 + "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.3.tgz", 1276 + "integrity": "sha512-rwG/ja1neyLqCuGZ5YYrznA62D4mZXg0i1cIskIUKSiqF3Cje9/wXAls9B9s1Wa2fomMsIv8czB8jZcPmxCXFg==", 1277 + "dev": true, 1278 + "license": "MIT", 1279 + "dependencies": { 1280 + "call-bind": "^1.0.8", 1281 + "define-properties": "^1.2.1", 1282 + "es-abstract": "^1.23.5", 1283 + "es-shim-unscopables": "^1.0.2" 1284 + }, 1285 + "engines": { 1286 + "node": ">= 0.4" 1287 + }, 1288 + "funding": { 1289 + "url": "https://github.com/sponsors/ljharb" 1290 + } 1291 + }, 1292 + "node_modules/array.prototype.flatmap": { 1293 + "version": "1.3.3", 1294 + "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.3.tgz", 1295 + "integrity": "sha512-Y7Wt51eKJSyi80hFrJCePGGNo5ktJCslFuboqJsbf57CCPcm5zztluPlc4/aD8sWsKvlwatezpV4U1efk8kpjg==", 1296 + "dev": true, 1297 + "license": "MIT", 1298 + "dependencies": { 1299 + "call-bind": "^1.0.8", 1300 + "define-properties": "^1.2.1", 1301 + "es-abstract": "^1.23.5", 1302 + "es-shim-unscopables": "^1.0.2" 1303 + }, 1304 + "engines": { 1305 + "node": ">= 0.4" 1306 + }, 1307 + "funding": { 1308 + "url": "https://github.com/sponsors/ljharb" 1309 + } 1310 + }, 1311 + "node_modules/array.prototype.tosorted": { 1312 + "version": "1.1.4", 1313 + "resolved": "https://registry.npmjs.org/array.prototype.tosorted/-/array.prototype.tosorted-1.1.4.tgz", 1314 + "integrity": "sha512-p6Fx8B7b7ZhL/gmUsAy0D15WhvDccw3mnGNbZpi3pmeJdxtWsj2jEaI4Y6oo3XiHfzuSgPwKc04MYt6KgvC/wA==", 1315 + "dev": true, 1316 + "license": "MIT", 1317 + "dependencies": { 1318 + "call-bind": "^1.0.7", 1319 + "define-properties": "^1.2.1", 1320 + "es-abstract": "^1.23.3", 1321 + "es-errors": "^1.3.0", 1322 + "es-shim-unscopables": "^1.0.2" 1323 + }, 1324 + "engines": { 1325 + "node": ">= 0.4" 1326 + } 1327 + }, 1328 + "node_modules/arraybuffer.prototype.slice": { 1329 + "version": "1.0.4", 1330 + "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.4.tgz", 1331 + "integrity": "sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==", 1332 + "dev": true, 1333 + "license": "MIT", 1334 + "dependencies": { 1335 + "array-buffer-byte-length": "^1.0.1", 1336 + "call-bind": "^1.0.8", 1337 + "define-properties": "^1.2.1", 1338 + "es-abstract": "^1.23.5", 1339 + "es-errors": "^1.3.0", 1340 + "get-intrinsic": "^1.2.6", 1341 + "is-array-buffer": "^3.0.4" 1342 + }, 1343 + "engines": { 1344 + "node": ">= 0.4" 1345 + }, 1346 + "funding": { 1347 + "url": "https://github.com/sponsors/ljharb" 1348 + } 1349 + }, 1350 + "node_modules/async-function": { 1351 + "version": "1.0.0", 1352 + "resolved": "https://registry.npmjs.org/async-function/-/async-function-1.0.0.tgz", 1353 + "integrity": "sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==", 1354 + "dev": true, 1355 + "license": "MIT", 1356 + "engines": { 1357 + "node": ">= 0.4" 1358 + } 1359 + }, 1360 + "node_modules/available-typed-arrays": { 1361 + "version": "1.0.7", 1362 + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", 1363 + "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", 1364 + "dev": true, 1365 + "license": "MIT", 1366 + "dependencies": { 1367 + "possible-typed-array-names": "^1.0.0" 1368 + }, 1369 + "engines": { 1370 + "node": ">= 0.4" 1371 + }, 1372 + "funding": { 1373 + "url": "https://github.com/sponsors/ljharb" 1374 + } 1375 + }, 1376 + "node_modules/balanced-match": { 1377 + "version": "1.0.2", 1378 + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", 1379 + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", 1380 + "dev": true, 1381 + "license": "MIT" 1382 + }, 1383 + "node_modules/brace-expansion": { 1384 + "version": "1.1.12", 1385 + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", 1386 + "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", 1387 + "dev": true, 1388 + "license": "MIT", 1389 + "dependencies": { 1390 + "balanced-match": "^1.0.0", 1391 + "concat-map": "0.0.1" 1392 + } 1393 + }, 1394 + "node_modules/braces": { 1395 + "version": "3.0.3", 1396 + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", 1397 + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", 1398 + "dev": true, 1399 + "license": "MIT", 1400 + "dependencies": { 1401 + "fill-range": "^7.1.1" 1402 + }, 1403 + "engines": { 1404 + "node": ">=8" 1405 + } 1406 + }, 1407 + "node_modules/call-bind": { 1408 + "version": "1.0.8", 1409 + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.8.tgz", 1410 + "integrity": "sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==", 1411 + "dev": true, 1412 + "license": "MIT", 1413 + "dependencies": { 1414 + "call-bind-apply-helpers": "^1.0.0", 1415 + "es-define-property": "^1.0.0", 1416 + "get-intrinsic": "^1.2.4", 1417 + "set-function-length": "^1.2.2" 1418 + }, 1419 + "engines": { 1420 + "node": ">= 0.4" 1421 + }, 1422 + "funding": { 1423 + "url": "https://github.com/sponsors/ljharb" 1424 + } 1425 + }, 1426 + "node_modules/call-bind-apply-helpers": { 1427 + "version": "1.0.2", 1428 + "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", 1429 + "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", 1430 + "dev": true, 1431 + "license": "MIT", 1432 + "dependencies": { 1433 + "es-errors": "^1.3.0", 1434 + "function-bind": "^1.1.2" 1435 + }, 1436 + "engines": { 1437 + "node": ">= 0.4" 1438 + } 1439 + }, 1440 + "node_modules/call-bound": { 1441 + "version": "1.0.4", 1442 + "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz", 1443 + "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==", 1444 + "dev": true, 1445 + "license": "MIT", 1446 + "dependencies": { 1447 + "call-bind-apply-helpers": "^1.0.2", 1448 + "get-intrinsic": "^1.3.0" 1449 + }, 1450 + "engines": { 1451 + "node": ">= 0.4" 1452 + }, 1453 + "funding": { 1454 + "url": "https://github.com/sponsors/ljharb" 1455 + } 1456 + }, 1457 + "node_modules/callsites": { 1458 + "version": "3.1.0", 1459 + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", 1460 + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", 1461 + "dev": true, 1462 + "license": "MIT", 1463 + "engines": { 1464 + "node": ">=6" 1465 + } 1466 + }, 1467 + "node_modules/chalk": { 1468 + "version": "4.1.2", 1469 + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", 1470 + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", 1471 + "dev": true, 1472 + "license": "MIT", 1473 + "dependencies": { 1474 + "ansi-styles": "^4.1.0", 1475 + "supports-color": "^7.1.0" 1476 + }, 1477 + "engines": { 1478 + "node": ">=10" 1479 + }, 1480 + "funding": { 1481 + "url": "https://github.com/chalk/chalk?sponsor=1" 1482 + } 1483 + }, 1484 + "node_modules/color-convert": { 1485 + "version": "2.0.1", 1486 + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", 1487 + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", 1488 + "dev": true, 1489 + "license": "MIT", 1490 + "dependencies": { 1491 + "color-name": "~1.1.4" 1492 + }, 1493 + "engines": { 1494 + "node": ">=7.0.0" 1495 + } 1496 + }, 1497 + "node_modules/color-name": { 1498 + "version": "1.1.4", 1499 + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", 1500 + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", 1501 + "dev": true, 1502 + "license": "MIT" 1503 + }, 1504 + "node_modules/concat-map": { 1505 + "version": "0.0.1", 1506 + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", 1507 + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", 1508 + "dev": true, 1509 + "license": "MIT" 1510 + }, 1511 + "node_modules/crelt": { 1512 + "version": "1.0.6", 1513 + "resolved": "https://registry.npmjs.org/crelt/-/crelt-1.0.6.tgz", 1514 + "integrity": "sha512-VQ2MBenTq1fWZUH9DJNGti7kKv6EeAuYr3cLwxUWhIu1baTaXh4Ib5W2CqHVqib4/MqbYGJqiL3Zb8GJZr3l4g==", 1515 + "license": "MIT", 1516 + "peer": true 1517 + }, 1518 + "node_modules/cross-spawn": { 1519 + "version": "7.0.6", 1520 + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", 1521 + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", 1522 + "dev": true, 1523 + "license": "MIT", 1524 + "dependencies": { 1525 + "path-key": "^3.1.0", 1526 + "shebang-command": "^2.0.0", 1527 + "which": "^2.0.1" 1528 + }, 1529 + "engines": { 1530 + "node": ">= 8" 1531 + } 1532 + }, 1533 + "node_modules/data-view-buffer": { 1534 + "version": "1.0.2", 1535 + "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.2.tgz", 1536 + "integrity": "sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==", 1537 + "dev": true, 1538 + "license": "MIT", 1539 + "dependencies": { 1540 + "call-bound": "^1.0.3", 1541 + "es-errors": "^1.3.0", 1542 + "is-data-view": "^1.0.2" 1543 + }, 1544 + "engines": { 1545 + "node": ">= 0.4" 1546 + }, 1547 + "funding": { 1548 + "url": "https://github.com/sponsors/ljharb" 1549 + } 1550 + }, 1551 + "node_modules/data-view-byte-length": { 1552 + "version": "1.0.2", 1553 + "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.2.tgz", 1554 + "integrity": "sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==", 1555 + "dev": true, 1556 + "license": "MIT", 1557 + "dependencies": { 1558 + "call-bound": "^1.0.3", 1559 + "es-errors": "^1.3.0", 1560 + "is-data-view": "^1.0.2" 1561 + }, 1562 + "engines": { 1563 + "node": ">= 0.4" 1564 + }, 1565 + "funding": { 1566 + "url": "https://github.com/sponsors/inspect-js" 1567 + } 1568 + }, 1569 + "node_modules/data-view-byte-offset": { 1570 + "version": "1.0.1", 1571 + "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.1.tgz", 1572 + "integrity": "sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==", 1573 + "dev": true, 1574 + "license": "MIT", 1575 + "dependencies": { 1576 + "call-bound": "^1.0.2", 1577 + "es-errors": "^1.3.0", 1578 + "is-data-view": "^1.0.1" 1579 + }, 1580 + "engines": { 1581 + "node": ">= 0.4" 1582 + }, 1583 + "funding": { 1584 + "url": "https://github.com/sponsors/ljharb" 1585 + } 1586 + }, 1587 + "node_modules/debug": { 1588 + "version": "4.4.3", 1589 + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", 1590 + "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", 1591 + "dev": true, 1592 + "license": "MIT", 1593 + "dependencies": { 1594 + "ms": "^2.1.3" 1595 + }, 1596 + "engines": { 1597 + "node": ">=6.0" 1598 + }, 1599 + "peerDependenciesMeta": { 1600 + "supports-color": { 1601 + "optional": true 1602 + } 1603 + } 1604 + }, 1605 + "node_modules/deep-is": { 1606 + "version": "0.1.4", 1607 + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", 1608 + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", 1609 + "dev": true, 1610 + "license": "MIT" 1611 + }, 1612 + "node_modules/define-data-property": { 1613 + "version": "1.1.4", 1614 + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", 1615 + "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", 1616 + "dev": true, 1617 + "license": "MIT", 1618 + "dependencies": { 1619 + "es-define-property": "^1.0.0", 1620 + "es-errors": "^1.3.0", 1621 + "gopd": "^1.0.1" 1622 + }, 1623 + "engines": { 1624 + "node": ">= 0.4" 1625 + }, 1626 + "funding": { 1627 + "url": "https://github.com/sponsors/ljharb" 1628 + } 1629 + }, 1630 + "node_modules/define-properties": { 1631 + "version": "1.2.1", 1632 + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", 1633 + "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", 1634 + "dev": true, 1635 + "license": "MIT", 1636 + "dependencies": { 1637 + "define-data-property": "^1.0.1", 1638 + "has-property-descriptors": "^1.0.0", 1639 + "object-keys": "^1.1.1" 1640 + }, 1641 + "engines": { 1642 + "node": ">= 0.4" 1643 + }, 1644 + "funding": { 1645 + "url": "https://github.com/sponsors/ljharb" 1646 + } 1647 + }, 1648 + "node_modules/doctrine": { 1649 + "version": "2.1.0", 1650 + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", 1651 + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", 1652 + "dev": true, 1653 + "license": "Apache-2.0", 1654 + "dependencies": { 1655 + "esutils": "^2.0.2" 1656 + }, 1657 + "engines": { 1658 + "node": ">=0.10.0" 1659 + } 1660 + }, 1661 + "node_modules/dunder-proto": { 1662 + "version": "1.0.1", 1663 + "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", 1664 + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", 1665 + "dev": true, 1666 + "license": "MIT", 1667 + "dependencies": { 1668 + "call-bind-apply-helpers": "^1.0.1", 1669 + "es-errors": "^1.3.0", 1670 + "gopd": "^1.2.0" 1671 + }, 1672 + "engines": { 1673 + "node": ">= 0.4" 1674 + } 1675 + }, 1676 + "node_modules/empathic": { 1677 + "version": "2.0.0", 1678 + "resolved": "https://registry.npmjs.org/empathic/-/empathic-2.0.0.tgz", 1679 + "integrity": "sha512-i6UzDscO/XfAcNYD75CfICkmfLedpyPDdozrLMmQc5ORaQcdMoc21OnlEylMIqI7U8eniKrPMxxtj8k0vhmJhA==", 1680 + "dev": true, 1681 + "license": "MIT", 1682 + "engines": { 1683 + "node": ">=14" 1684 + } 1685 + }, 1686 + "node_modules/enhanced-resolve": { 1687 + "version": "5.18.3", 1688 + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.18.3.tgz", 1689 + "integrity": "sha512-d4lC8xfavMeBjzGr2vECC3fsGXziXZQyJxD868h2M/mBI3PwAuODxAkLkq5HYuvrPYcUtiLzsTo8U3PgX3Ocww==", 1690 + "dev": true, 1691 + "license": "MIT", 1692 + "dependencies": { 1693 + "graceful-fs": "^4.2.4", 1694 + "tapable": "^2.2.0" 1695 + }, 1696 + "engines": { 1697 + "node": ">=10.13.0" 1698 + } 1699 + }, 1700 + "node_modules/es-abstract": { 1701 + "version": "1.24.0", 1702 + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.24.0.tgz", 1703 + "integrity": "sha512-WSzPgsdLtTcQwm4CROfS5ju2Wa1QQcVeT37jFjYzdFz1r9ahadC8B8/a4qxJxM+09F18iumCdRmlr96ZYkQvEg==", 1704 + "dev": true, 1705 + "license": "MIT", 1706 + "dependencies": { 1707 + "array-buffer-byte-length": "^1.0.2", 1708 + "arraybuffer.prototype.slice": "^1.0.4", 1709 + "available-typed-arrays": "^1.0.7", 1710 + "call-bind": "^1.0.8", 1711 + "call-bound": "^1.0.4", 1712 + "data-view-buffer": "^1.0.2", 1713 + "data-view-byte-length": "^1.0.2", 1714 + "data-view-byte-offset": "^1.0.1", 1715 + "es-define-property": "^1.0.1", 1716 + "es-errors": "^1.3.0", 1717 + "es-object-atoms": "^1.1.1", 1718 + "es-set-tostringtag": "^2.1.0", 1719 + "es-to-primitive": "^1.3.0", 1720 + "function.prototype.name": "^1.1.8", 1721 + "get-intrinsic": "^1.3.0", 1722 + "get-proto": "^1.0.1", 1723 + "get-symbol-description": "^1.1.0", 1724 + "globalthis": "^1.0.4", 1725 + "gopd": "^1.2.0", 1726 + "has-property-descriptors": "^1.0.2", 1727 + "has-proto": "^1.2.0", 1728 + "has-symbols": "^1.1.0", 1729 + "hasown": "^2.0.2", 1730 + "internal-slot": "^1.1.0", 1731 + "is-array-buffer": "^3.0.5", 1732 + "is-callable": "^1.2.7", 1733 + "is-data-view": "^1.0.2", 1734 + "is-negative-zero": "^2.0.3", 1735 + "is-regex": "^1.2.1", 1736 + "is-set": "^2.0.3", 1737 + "is-shared-array-buffer": "^1.0.4", 1738 + "is-string": "^1.1.1", 1739 + "is-typed-array": "^1.1.15", 1740 + "is-weakref": "^1.1.1", 1741 + "math-intrinsics": "^1.1.0", 1742 + "object-inspect": "^1.13.4", 1743 + "object-keys": "^1.1.1", 1744 + "object.assign": "^4.1.7", 1745 + "own-keys": "^1.0.1", 1746 + "regexp.prototype.flags": "^1.5.4", 1747 + "safe-array-concat": "^1.1.3", 1748 + "safe-push-apply": "^1.0.0", 1749 + "safe-regex-test": "^1.1.0", 1750 + "set-proto": "^1.0.0", 1751 + "stop-iteration-iterator": "^1.1.0", 1752 + "string.prototype.trim": "^1.2.10", 1753 + "string.prototype.trimend": "^1.0.9", 1754 + "string.prototype.trimstart": "^1.0.8", 1755 + "typed-array-buffer": "^1.0.3", 1756 + "typed-array-byte-length": "^1.0.3", 1757 + "typed-array-byte-offset": "^1.0.4", 1758 + "typed-array-length": "^1.0.7", 1759 + "unbox-primitive": "^1.1.0", 1760 + "which-typed-array": "^1.1.19" 1761 + }, 1762 + "engines": { 1763 + "node": ">= 0.4" 1764 + }, 1765 + "funding": { 1766 + "url": "https://github.com/sponsors/ljharb" 1767 + } 1768 + }, 1769 + "node_modules/es-define-property": { 1770 + "version": "1.0.1", 1771 + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", 1772 + "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", 1773 + "dev": true, 1774 + "license": "MIT", 1775 + "engines": { 1776 + "node": ">= 0.4" 1777 + } 1778 + }, 1779 + "node_modules/es-errors": { 1780 + "version": "1.3.0", 1781 + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", 1782 + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", 1783 + "dev": true, 1784 + "license": "MIT", 1785 + "engines": { 1786 + "node": ">= 0.4" 1787 + } 1788 + }, 1789 + "node_modules/es-iterator-helpers": { 1790 + "version": "1.2.1", 1791 + "resolved": "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.2.1.tgz", 1792 + "integrity": "sha512-uDn+FE1yrDzyC0pCo961B2IHbdM8y/ACZsKD4dG6WqrjV53BADjwa7D+1aom2rsNVfLyDgU/eigvlJGJ08OQ4w==", 1793 + "dev": true, 1794 + "license": "MIT", 1795 + "dependencies": { 1796 + "call-bind": "^1.0.8", 1797 + "call-bound": "^1.0.3", 1798 + "define-properties": "^1.2.1", 1799 + "es-abstract": "^1.23.6", 1800 + "es-errors": "^1.3.0", 1801 + "es-set-tostringtag": "^2.0.3", 1802 + "function-bind": "^1.1.2", 1803 + "get-intrinsic": "^1.2.6", 1804 + "globalthis": "^1.0.4", 1805 + "gopd": "^1.2.0", 1806 + "has-property-descriptors": "^1.0.2", 1807 + "has-proto": "^1.2.0", 1808 + "has-symbols": "^1.1.0", 1809 + "internal-slot": "^1.1.0", 1810 + "iterator.prototype": "^1.1.4", 1811 + "safe-array-concat": "^1.1.3" 1812 + }, 1813 + "engines": { 1814 + "node": ">= 0.4" 1815 + } 1816 + }, 1817 + "node_modules/es-object-atoms": { 1818 + "version": "1.1.1", 1819 + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", 1820 + "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", 1821 + "dev": true, 1822 + "license": "MIT", 1823 + "dependencies": { 1824 + "es-errors": "^1.3.0" 1825 + }, 1826 + "engines": { 1827 + "node": ">= 0.4" 1828 + } 1829 + }, 1830 + "node_modules/es-set-tostringtag": { 1831 + "version": "2.1.0", 1832 + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", 1833 + "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", 1834 + "dev": true, 1835 + "license": "MIT", 1836 + "dependencies": { 1837 + "es-errors": "^1.3.0", 1838 + "get-intrinsic": "^1.2.6", 1839 + "has-tostringtag": "^1.0.2", 1840 + "hasown": "^2.0.2" 1841 + }, 1842 + "engines": { 1843 + "node": ">= 0.4" 1844 + } 1845 + }, 1846 + "node_modules/es-shim-unscopables": { 1847 + "version": "1.1.0", 1848 + "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.1.0.tgz", 1849 + "integrity": "sha512-d9T8ucsEhh8Bi1woXCf+TIKDIROLG5WCkxg8geBCbvk22kzwC5G2OnXVMO6FUsvQlgUUXQ2itephWDLqDzbeCw==", 1850 + "dev": true, 1851 + "license": "MIT", 1852 + "dependencies": { 1853 + "hasown": "^2.0.2" 1854 + }, 1855 + "engines": { 1856 + "node": ">= 0.4" 1857 + } 1858 + }, 1859 + "node_modules/es-to-primitive": { 1860 + "version": "1.3.0", 1861 + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.3.0.tgz", 1862 + "integrity": "sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==", 1863 + "dev": true, 1864 + "license": "MIT", 1865 + "dependencies": { 1866 + "is-callable": "^1.2.7", 1867 + "is-date-object": "^1.0.5", 1868 + "is-symbol": "^1.0.4" 1869 + }, 1870 + "engines": { 1871 + "node": ">= 0.4" 1872 + }, 1873 + "funding": { 1874 + "url": "https://github.com/sponsors/ljharb" 1875 + } 1876 + }, 1877 + "node_modules/esbuild": { 1878 + "version": "0.25.5", 1879 + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.25.5.tgz", 1880 + "integrity": "sha512-P8OtKZRv/5J5hhz0cUAdu/cLuPIKXpQl1R9pZtvmHWQvrAUVd0UNIPT4IB4W3rNOqVO0rlqHmCIbSwxh/c9yUQ==", 1881 + "dev": true, 1882 + "hasInstallScript": true, 1883 + "license": "MIT", 1884 + "bin": { 1885 + "esbuild": "bin/esbuild" 1886 + }, 1887 + "engines": { 1888 + "node": ">=18" 1889 + }, 1890 + "optionalDependencies": { 1891 + "@esbuild/aix-ppc64": "0.25.5", 1892 + "@esbuild/android-arm": "0.25.5", 1893 + "@esbuild/android-arm64": "0.25.5", 1894 + "@esbuild/android-x64": "0.25.5", 1895 + "@esbuild/darwin-arm64": "0.25.5", 1896 + "@esbuild/darwin-x64": "0.25.5", 1897 + "@esbuild/freebsd-arm64": "0.25.5", 1898 + "@esbuild/freebsd-x64": "0.25.5", 1899 + "@esbuild/linux-arm": "0.25.5", 1900 + "@esbuild/linux-arm64": "0.25.5", 1901 + "@esbuild/linux-ia32": "0.25.5", 1902 + "@esbuild/linux-loong64": "0.25.5", 1903 + "@esbuild/linux-mips64el": "0.25.5", 1904 + "@esbuild/linux-ppc64": "0.25.5", 1905 + "@esbuild/linux-riscv64": "0.25.5", 1906 + "@esbuild/linux-s390x": "0.25.5", 1907 + "@esbuild/linux-x64": "0.25.5", 1908 + "@esbuild/netbsd-arm64": "0.25.5", 1909 + "@esbuild/netbsd-x64": "0.25.5", 1910 + "@esbuild/openbsd-arm64": "0.25.5", 1911 + "@esbuild/openbsd-x64": "0.25.5", 1912 + "@esbuild/sunos-x64": "0.25.5", 1913 + "@esbuild/win32-arm64": "0.25.5", 1914 + "@esbuild/win32-ia32": "0.25.5", 1915 + "@esbuild/win32-x64": "0.25.5" 1916 + } 1917 + }, 1918 + "node_modules/escape-string-regexp": { 1919 + "version": "4.0.0", 1920 + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", 1921 + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", 1922 + "dev": true, 1923 + "license": "MIT", 1924 + "engines": { 1925 + "node": ">=10" 1926 + }, 1927 + "funding": { 1928 + "url": "https://github.com/sponsors/sindresorhus" 1929 + } 1930 + }, 1931 + "node_modules/eslint": { 1932 + "version": "9.39.1", 1933 + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.39.1.tgz", 1934 + "integrity": "sha512-BhHmn2yNOFA9H9JmmIVKJmd288g9hrVRDkdoIgRCRuSySRUHH7r/DI6aAXW9T1WwUuY3DFgrcaqB+deURBLR5g==", 1935 + "dev": true, 1936 + "license": "MIT", 1937 + "dependencies": { 1938 + "@eslint-community/eslint-utils": "^4.8.0", 1939 + "@eslint-community/regexpp": "^4.12.1", 1940 + "@eslint/config-array": "^0.21.1", 1941 + "@eslint/config-helpers": "^0.4.2", 1942 + "@eslint/core": "^0.17.0", 1943 + "@eslint/eslintrc": "^3.3.1", 1944 + "@eslint/js": "9.39.1", 1945 + "@eslint/plugin-kit": "^0.4.1", 1946 + "@humanfs/node": "^0.16.6", 1947 + "@humanwhocodes/module-importer": "^1.0.1", 1948 + "@humanwhocodes/retry": "^0.4.2", 1949 + "@types/estree": "^1.0.6", 1950 + "ajv": "^6.12.4", 1951 + "chalk": "^4.0.0", 1952 + "cross-spawn": "^7.0.6", 1953 + "debug": "^4.3.2", 1954 + "escape-string-regexp": "^4.0.0", 1955 + "eslint-scope": "^8.4.0", 1956 + "eslint-visitor-keys": "^4.2.1", 1957 + "espree": "^10.4.0", 1958 + "esquery": "^1.5.0", 1959 + "esutils": "^2.0.2", 1960 + "fast-deep-equal": "^3.1.3", 1961 + "file-entry-cache": "^8.0.0", 1962 + "find-up": "^5.0.0", 1963 + "glob-parent": "^6.0.2", 1964 + "ignore": "^5.2.0", 1965 + "imurmurhash": "^0.1.4", 1966 + "is-glob": "^4.0.0", 1967 + "json-stable-stringify-without-jsonify": "^1.0.1", 1968 + "lodash.merge": "^4.6.2", 1969 + "minimatch": "^3.1.2", 1970 + "natural-compare": "^1.4.0", 1971 + "optionator": "^0.9.3" 1972 + }, 1973 + "bin": { 1974 + "eslint": "bin/eslint.js" 1975 + }, 1976 + "engines": { 1977 + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 1978 + }, 1979 + "funding": { 1980 + "url": "https://eslint.org/donate" 1981 + }, 1982 + "peerDependencies": { 1983 + "jiti": "*" 1984 + }, 1985 + "peerDependenciesMeta": { 1986 + "jiti": { 1987 + "optional": true 1988 + } 1989 + } 1990 + }, 1991 + "node_modules/eslint-compat-utils": { 1992 + "version": "0.5.1", 1993 + "resolved": "https://registry.npmjs.org/eslint-compat-utils/-/eslint-compat-utils-0.5.1.tgz", 1994 + "integrity": "sha512-3z3vFexKIEnjHE3zCMRo6fn/e44U7T1khUjg+Hp0ZQMCigh28rALD0nPFBcGZuiLC5rLZa2ubQHDRln09JfU2Q==", 1995 + "dev": true, 1996 + "license": "MIT", 1997 + "dependencies": { 1998 + "semver": "^7.5.4" 1999 + }, 2000 + "engines": { 2001 + "node": ">=12" 2002 + }, 2003 + "peerDependencies": { 2004 + "eslint": ">=6.0.0" 2005 + } 2006 + }, 2007 + "node_modules/eslint-compat-utils/node_modules/semver": { 2008 + "version": "7.7.3", 2009 + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz", 2010 + "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==", 2011 + "dev": true, 2012 + "license": "ISC", 2013 + "bin": { 2014 + "semver": "bin/semver.js" 2015 + }, 2016 + "engines": { 2017 + "node": ">=10" 2018 + } 2019 + }, 2020 + "node_modules/eslint-import-resolver-node": { 2021 + "version": "0.3.9", 2022 + "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz", 2023 + "integrity": "sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==", 2024 + "dev": true, 2025 + "license": "MIT", 2026 + "dependencies": { 2027 + "debug": "^3.2.7", 2028 + "is-core-module": "^2.13.0", 2029 + "resolve": "^1.22.4" 2030 + } 2031 + }, 2032 + "node_modules/eslint-import-resolver-node/node_modules/debug": { 2033 + "version": "3.2.7", 2034 + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", 2035 + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", 2036 + "dev": true, 2037 + "license": "MIT", 2038 + "dependencies": { 2039 + "ms": "^2.1.1" 2040 + } 2041 + }, 2042 + "node_modules/eslint-module-utils": { 2043 + "version": "2.12.1", 2044 + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.12.1.tgz", 2045 + "integrity": "sha512-L8jSWTze7K2mTg0vos/RuLRS5soomksDPoJLXIslC7c8Wmut3bx7CPpJijDcBZtxQ5lrbUdM+s0OlNbz0DCDNw==", 2046 + "dev": true, 2047 + "license": "MIT", 2048 + "dependencies": { 2049 + "debug": "^3.2.7" 2050 + }, 2051 + "engines": { 2052 + "node": ">=4" 2053 + }, 2054 + "peerDependenciesMeta": { 2055 + "eslint": { 2056 + "optional": true 2057 + } 2058 + } 2059 + }, 2060 + "node_modules/eslint-module-utils/node_modules/debug": { 2061 + "version": "3.2.7", 2062 + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", 2063 + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", 2064 + "dev": true, 2065 + "license": "MIT", 2066 + "dependencies": { 2067 + "ms": "^2.1.1" 2068 + } 2069 + }, 2070 + "node_modules/eslint-plugin-depend": { 2071 + "version": "1.3.1", 2072 + "resolved": "https://registry.npmjs.org/eslint-plugin-depend/-/eslint-plugin-depend-1.3.1.tgz", 2073 + "integrity": "sha512-1uo2rFAr9vzNrCYdp7IBZRB54LiyVxfaIso0R6/QV3t6Dax6DTbW/EV2Hktf0f4UtmGHK8UyzJWI382pwW04jw==", 2074 + "dev": true, 2075 + "license": "MIT", 2076 + "dependencies": { 2077 + "empathic": "^2.0.0", 2078 + "module-replacements": "^2.8.0", 2079 + "semver": "^7.6.3" 2080 + } 2081 + }, 2082 + "node_modules/eslint-plugin-depend/node_modules/semver": { 2083 + "version": "7.7.3", 2084 + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz", 2085 + "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==", 2086 + "dev": true, 2087 + "license": "ISC", 2088 + "bin": { 2089 + "semver": "bin/semver.js" 2090 + }, 2091 + "engines": { 2092 + "node": ">=10" 2093 + } 2094 + }, 2095 + "node_modules/eslint-plugin-es-x": { 2096 + "version": "7.8.0", 2097 + "resolved": "https://registry.npmjs.org/eslint-plugin-es-x/-/eslint-plugin-es-x-7.8.0.tgz", 2098 + "integrity": "sha512-7Ds8+wAAoV3T+LAKeu39Y5BzXCrGKrcISfgKEqTS4BDN8SFEDQd0S43jiQ8vIa3wUKD07qitZdfzlenSi8/0qQ==", 2099 + "dev": true, 2100 + "funding": [ 2101 + "https://github.com/sponsors/ota-meshi", 2102 + "https://opencollective.com/eslint" 2103 + ], 2104 + "license": "MIT", 2105 + "dependencies": { 2106 + "@eslint-community/eslint-utils": "^4.1.2", 2107 + "@eslint-community/regexpp": "^4.11.0", 2108 + "eslint-compat-utils": "^0.5.1" 2109 + }, 2110 + "engines": { 2111 + "node": "^14.18.0 || >=16.0.0" 2112 + }, 2113 + "peerDependencies": { 2114 + "eslint": ">=8" 2115 + } 2116 + }, 2117 + "node_modules/eslint-plugin-import": { 2118 + "version": "2.32.0", 2119 + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.32.0.tgz", 2120 + "integrity": "sha512-whOE1HFo/qJDyX4SnXzP4N6zOWn79WhnCUY/iDR0mPfQZO8wcYE4JClzI2oZrhBnnMUCBCHZhO6VQyoBU95mZA==", 2121 + "dev": true, 2122 + "license": "MIT", 2123 + "dependencies": { 2124 + "@rtsao/scc": "^1.1.0", 2125 + "array-includes": "^3.1.9", 2126 + "array.prototype.findlastindex": "^1.2.6", 2127 + "array.prototype.flat": "^1.3.3", 2128 + "array.prototype.flatmap": "^1.3.3", 2129 + "debug": "^3.2.7", 2130 + "doctrine": "^2.1.0", 2131 + "eslint-import-resolver-node": "^0.3.9", 2132 + "eslint-module-utils": "^2.12.1", 2133 + "hasown": "^2.0.2", 2134 + "is-core-module": "^2.16.1", 2135 + "is-glob": "^4.0.3", 2136 + "minimatch": "^3.1.2", 2137 + "object.fromentries": "^2.0.8", 2138 + "object.groupby": "^1.0.3", 2139 + "object.values": "^1.2.1", 2140 + "semver": "^6.3.1", 2141 + "string.prototype.trimend": "^1.0.9", 2142 + "tsconfig-paths": "^3.15.0" 2143 + }, 2144 + "engines": { 2145 + "node": ">=4" 2146 + }, 2147 + "peerDependencies": { 2148 + "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 || ^9" 2149 + } 2150 + }, 2151 + "node_modules/eslint-plugin-import/node_modules/debug": { 2152 + "version": "3.2.7", 2153 + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", 2154 + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", 2155 + "dev": true, 2156 + "license": "MIT", 2157 + "dependencies": { 2158 + "ms": "^2.1.1" 2159 + } 2160 + }, 2161 + "node_modules/eslint-plugin-json-schema-validator": { 2162 + "version": "5.1.0", 2163 + "resolved": "https://registry.npmjs.org/eslint-plugin-json-schema-validator/-/eslint-plugin-json-schema-validator-5.1.0.tgz", 2164 + "integrity": "sha512-ZmVyxRIjm58oqe2kTuy90PpmZPrrKvOjRPXKzq8WCgRgAkidCgm5X8domL2KSfadZ3QFAmifMgGTcVNhZ5ez2g==", 2165 + "dev": true, 2166 + "license": "MIT", 2167 + "dependencies": { 2168 + "@eslint-community/eslint-utils": "^4.3.0", 2169 + "ajv": "^8.0.0", 2170 + "debug": "^4.3.1", 2171 + "eslint-compat-utils": "^0.5.0", 2172 + "json-schema-migrate": "^2.0.0", 2173 + "jsonc-eslint-parser": "^2.0.0", 2174 + "minimatch": "^8.0.0", 2175 + "synckit": "^0.9.0", 2176 + "toml-eslint-parser": "^0.9.0", 2177 + "tunnel-agent": "^0.6.0", 2178 + "yaml-eslint-parser": "^1.0.0" 2179 + }, 2180 + "engines": { 2181 + "node": "^14.18.0 || >=16.0.0" 2182 + }, 2183 + "funding": { 2184 + "url": "https://github.com/sponsors/ota-meshi" 2185 + }, 2186 + "peerDependencies": { 2187 + "eslint": ">=6.0.0" 2188 + } 2189 + }, 2190 + "node_modules/eslint-plugin-json-schema-validator/node_modules/ajv": { 2191 + "version": "8.17.1", 2192 + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz", 2193 + "integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==", 2194 + "dev": true, 2195 + "license": "MIT", 2196 + "dependencies": { 2197 + "fast-deep-equal": "^3.1.3", 2198 + "fast-uri": "^3.0.1", 2199 + "json-schema-traverse": "^1.0.0", 2200 + "require-from-string": "^2.0.2" 2201 + }, 2202 + "funding": { 2203 + "type": "github", 2204 + "url": "https://github.com/sponsors/epoberezkin" 2205 + } 2206 + }, 2207 + "node_modules/eslint-plugin-json-schema-validator/node_modules/brace-expansion": { 2208 + "version": "2.0.2", 2209 + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", 2210 + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", 2211 + "dev": true, 2212 + "license": "MIT", 2213 + "dependencies": { 2214 + "balanced-match": "^1.0.0" 2215 + } 2216 + }, 2217 + "node_modules/eslint-plugin-json-schema-validator/node_modules/json-schema-traverse": { 2218 + "version": "1.0.0", 2219 + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", 2220 + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", 2221 + "dev": true, 2222 + "license": "MIT" 2223 + }, 2224 + "node_modules/eslint-plugin-json-schema-validator/node_modules/minimatch": { 2225 + "version": "8.0.4", 2226 + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-8.0.4.tgz", 2227 + "integrity": "sha512-W0Wvr9HyFXZRGIDgCicunpQ299OKXs9RgZfaukz4qAW/pJhcpUfupc9c+OObPOFueNy8VSrZgEmDtk6Kh4WzDA==", 2228 + "dev": true, 2229 + "license": "ISC", 2230 + "dependencies": { 2231 + "brace-expansion": "^2.0.1" 2232 + }, 2233 + "engines": { 2234 + "node": ">=16 || 14 >=14.17" 2235 + }, 2236 + "funding": { 2237 + "url": "https://github.com/sponsors/isaacs" 2238 + } 2239 + }, 2240 + "node_modules/eslint-plugin-n": { 2241 + "version": "17.10.3", 2242 + "resolved": "https://registry.npmjs.org/eslint-plugin-n/-/eslint-plugin-n-17.10.3.tgz", 2243 + "integrity": "sha512-ySZBfKe49nQZWR1yFaA0v/GsH6Fgp8ah6XV0WDz6CN8WO0ek4McMzb7A2xnf4DCYV43frjCygvb9f/wx7UUxRw==", 2244 + "dev": true, 2245 + "license": "MIT", 2246 + "dependencies": { 2247 + "@eslint-community/eslint-utils": "^4.4.0", 2248 + "enhanced-resolve": "^5.17.0", 2249 + "eslint-plugin-es-x": "^7.5.0", 2250 + "get-tsconfig": "^4.7.0", 2251 + "globals": "^15.8.0", 2252 + "ignore": "^5.2.4", 2253 + "minimatch": "^9.0.5", 2254 + "semver": "^7.5.3" 2255 + }, 2256 + "engines": { 2257 + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 2258 + }, 2259 + "funding": { 2260 + "url": "https://opencollective.com/eslint" 2261 + }, 2262 + "peerDependencies": { 2263 + "eslint": ">=8.23.0" 2264 + } 2265 + }, 2266 + "node_modules/eslint-plugin-n/node_modules/brace-expansion": { 2267 + "version": "2.0.2", 2268 + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", 2269 + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", 2270 + "dev": true, 2271 + "license": "MIT", 2272 + "dependencies": { 2273 + "balanced-match": "^1.0.0" 2274 + } 2275 + }, 2276 + "node_modules/eslint-plugin-n/node_modules/globals": { 2277 + "version": "15.15.0", 2278 + "resolved": "https://registry.npmjs.org/globals/-/globals-15.15.0.tgz", 2279 + "integrity": "sha512-7ACyT3wmyp3I61S4fG682L0VA2RGD9otkqGJIwNUMF1SWUombIIk+af1unuDYgMm082aHYwD+mzJvv9Iu8dsgg==", 2280 + "dev": true, 2281 + "license": "MIT", 2282 + "engines": { 2283 + "node": ">=18" 2284 + }, 2285 + "funding": { 2286 + "url": "https://github.com/sponsors/sindresorhus" 2287 + } 2288 + }, 2289 + "node_modules/eslint-plugin-n/node_modules/minimatch": { 2290 + "version": "9.0.5", 2291 + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", 2292 + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", 2293 + "dev": true, 2294 + "license": "ISC", 2295 + "dependencies": { 2296 + "brace-expansion": "^2.0.1" 2297 + }, 2298 + "engines": { 2299 + "node": ">=16 || 14 >=14.17" 2300 + }, 2301 + "funding": { 2302 + "url": "https://github.com/sponsors/isaacs" 2303 + } 2304 + }, 2305 + "node_modules/eslint-plugin-n/node_modules/semver": { 2306 + "version": "7.7.3", 2307 + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz", 2308 + "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==", 2309 + "dev": true, 2310 + "license": "ISC", 2311 + "bin": { 2312 + "semver": "bin/semver.js" 2313 + }, 2314 + "engines": { 2315 + "node": ">=10" 2316 + } 2317 + }, 2318 + "node_modules/eslint-plugin-obsidianmd": { 2319 + "version": "0.1.9", 2320 + "resolved": "https://registry.npmjs.org/eslint-plugin-obsidianmd/-/eslint-plugin-obsidianmd-0.1.9.tgz", 2321 + "integrity": "sha512-/gyo5vky3Y7re4BtT/8MQbHU5Wes4o6VRqas3YmXE7aTCnMsdV0kfzV1GDXJN9Hrsc9UQPoeKUMiapKL0aGE4g==", 2322 + "dev": true, 2323 + "license": "MIT", 2324 + "dependencies": { 2325 + "@microsoft/eslint-plugin-sdl": "^1.1.0", 2326 + "@types/eslint": "8.56.2", 2327 + "@types/node": "20.12.12", 2328 + "eslint": ">=9.0.0 <10.0.0", 2329 + "eslint-plugin-depend": "1.3.1", 2330 + "eslint-plugin-import": "^2.31.0", 2331 + "eslint-plugin-json-schema-validator": "5.1.0", 2332 + "eslint-plugin-security": "2.1.1", 2333 + "globals": "14.0.0", 2334 + "obsidian": "1.8.7", 2335 + "typescript": "5.4.5" 2336 + }, 2337 + "bin": { 2338 + "eslint-plugin-obsidian": "dist/lib/index.js" 2339 + }, 2340 + "engines": { 2341 + "node": ">= 18" 2342 + }, 2343 + "peerDependencies": { 2344 + "@eslint/js": "^9.30.1", 2345 + "@eslint/json": "0.14.0", 2346 + "eslint": ">=9.0.0 <10.0.0", 2347 + "obsidian": "1.8.7", 2348 + "typescript-eslint": "^8.35.1" 2349 + } 2350 + }, 2351 + "node_modules/eslint-plugin-obsidianmd/node_modules/@types/node": { 2352 + "version": "20.12.12", 2353 + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.12.tgz", 2354 + "integrity": "sha512-eWLDGF/FOSPtAvEqeRAQ4C8LSA7M1I7i0ky1I8U7kD1J5ITyW3AsRhQrKVoWf5pFKZ2kILsEGJhsI9r93PYnOw==", 2355 + "dev": true, 2356 + "license": "MIT", 2357 + "dependencies": { 2358 + "undici-types": "~5.26.4" 2359 + } 2360 + }, 2361 + "node_modules/eslint-plugin-obsidianmd/node_modules/obsidian": { 2362 + "version": "1.8.7", 2363 + "resolved": "https://registry.npmjs.org/obsidian/-/obsidian-1.8.7.tgz", 2364 + "integrity": "sha512-h4bWwNFAGRXlMlMAzdEiIM2ppTGlrh7uGOJS6w4gClrsjc+ei/3YAtU2VdFUlCiPuTHpY4aBpFJJW75S1Tl/JA==", 2365 + "dev": true, 2366 + "license": "MIT", 2367 + "dependencies": { 2368 + "@types/codemirror": "5.60.8", 2369 + "moment": "2.29.4" 2370 + }, 2371 + "peerDependencies": { 2372 + "@codemirror/state": "^6.0.0", 2373 + "@codemirror/view": "^6.0.0" 2374 + } 2375 + }, 2376 + "node_modules/eslint-plugin-obsidianmd/node_modules/typescript": { 2377 + "version": "5.4.5", 2378 + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.4.5.tgz", 2379 + "integrity": "sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ==", 2380 + "dev": true, 2381 + "license": "Apache-2.0", 2382 + "bin": { 2383 + "tsc": "bin/tsc", 2384 + "tsserver": "bin/tsserver" 2385 + }, 2386 + "engines": { 2387 + "node": ">=14.17" 2388 + } 2389 + }, 2390 + "node_modules/eslint-plugin-react": { 2391 + "version": "7.37.3", 2392 + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.37.3.tgz", 2393 + "integrity": "sha512-DomWuTQPFYZwF/7c9W2fkKkStqZmBd3uugfqBYLdkZ3Hii23WzZuOLUskGxB8qkSKqftxEeGL1TB2kMhrce0jA==", 2394 + "dev": true, 2395 + "license": "MIT", 2396 + "dependencies": { 2397 + "array-includes": "^3.1.8", 2398 + "array.prototype.findlast": "^1.2.5", 2399 + "array.prototype.flatmap": "^1.3.3", 2400 + "array.prototype.tosorted": "^1.1.4", 2401 + "doctrine": "^2.1.0", 2402 + "es-iterator-helpers": "^1.2.1", 2403 + "estraverse": "^5.3.0", 2404 + "hasown": "^2.0.2", 2405 + "jsx-ast-utils": "^2.4.1 || ^3.0.0", 2406 + "minimatch": "^3.1.2", 2407 + "object.entries": "^1.1.8", 2408 + "object.fromentries": "^2.0.8", 2409 + "object.values": "^1.2.1", 2410 + "prop-types": "^15.8.1", 2411 + "resolve": "^2.0.0-next.5", 2412 + "semver": "^6.3.1", 2413 + "string.prototype.matchall": "^4.0.12", 2414 + "string.prototype.repeat": "^1.0.0" 2415 + }, 2416 + "engines": { 2417 + "node": ">=4" 2418 + }, 2419 + "peerDependencies": { 2420 + "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7" 2421 + } 2422 + }, 2423 + "node_modules/eslint-plugin-react/node_modules/resolve": { 2424 + "version": "2.0.0-next.5", 2425 + "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.5.tgz", 2426 + "integrity": "sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==", 2427 + "dev": true, 2428 + "license": "MIT", 2429 + "dependencies": { 2430 + "is-core-module": "^2.13.0", 2431 + "path-parse": "^1.0.7", 2432 + "supports-preserve-symlinks-flag": "^1.0.0" 2433 + }, 2434 + "bin": { 2435 + "resolve": "bin/resolve" 2436 + }, 2437 + "funding": { 2438 + "url": "https://github.com/sponsors/ljharb" 2439 + } 2440 + }, 2441 + "node_modules/eslint-plugin-security": { 2442 + "version": "2.1.1", 2443 + "resolved": "https://registry.npmjs.org/eslint-plugin-security/-/eslint-plugin-security-2.1.1.tgz", 2444 + "integrity": "sha512-7cspIGj7WTfR3EhaILzAPcfCo5R9FbeWvbgsPYWivSurTBKW88VQxtP3c4aWMG9Hz/GfJlJVdXEJ3c8LqS+u2w==", 2445 + "dev": true, 2446 + "license": "Apache-2.0", 2447 + "dependencies": { 2448 + "safe-regex": "^2.1.1" 2449 + } 2450 + }, 2451 + "node_modules/eslint-scope": { 2452 + "version": "8.4.0", 2453 + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.4.0.tgz", 2454 + "integrity": "sha512-sNXOfKCn74rt8RICKMvJS7XKV/Xk9kA7DyJr8mJik3S7Cwgy3qlkkmyS2uQB3jiJg6VNdZd/pDBJu0nvG2NlTg==", 2455 + "dev": true, 2456 + "license": "BSD-2-Clause", 2457 + "dependencies": { 2458 + "esrecurse": "^4.3.0", 2459 + "estraverse": "^5.2.0" 2460 + }, 2461 + "engines": { 2462 + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 2463 + }, 2464 + "funding": { 2465 + "url": "https://opencollective.com/eslint" 2466 + } 2467 + }, 2468 + "node_modules/eslint-visitor-keys": { 2469 + "version": "4.2.1", 2470 + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz", 2471 + "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==", 2472 + "dev": true, 2473 + "license": "Apache-2.0", 2474 + "engines": { 2475 + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 2476 + }, 2477 + "funding": { 2478 + "url": "https://opencollective.com/eslint" 2479 + } 2480 + }, 2481 + "node_modules/eslint/node_modules/@eslint/js": { 2482 + "version": "9.39.1", 2483 + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.39.1.tgz", 2484 + "integrity": "sha512-S26Stp4zCy88tH94QbBv3XCuzRQiZ9yXofEILmglYTh/Ug/a9/umqvgFtYBAo3Lp0nsI/5/qH1CCrbdK3AP1Tw==", 2485 + "dev": true, 2486 + "license": "MIT", 2487 + "engines": { 2488 + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 2489 + }, 2490 + "funding": { 2491 + "url": "https://eslint.org/donate" 2492 + } 2493 + }, 2494 + "node_modules/espree": { 2495 + "version": "10.4.0", 2496 + "resolved": "https://registry.npmjs.org/espree/-/espree-10.4.0.tgz", 2497 + "integrity": "sha512-j6PAQ2uUr79PZhBjP5C5fhl8e39FmRnOjsD5lGnWrFU8i2G776tBK7+nP8KuQUTTyAZUwfQqXAgrVH5MbH9CYQ==", 2498 + "dev": true, 2499 + "license": "BSD-2-Clause", 2500 + "dependencies": { 2501 + "acorn": "^8.15.0", 2502 + "acorn-jsx": "^5.3.2", 2503 + "eslint-visitor-keys": "^4.2.1" 2504 + }, 2505 + "engines": { 2506 + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 2507 + }, 2508 + "funding": { 2509 + "url": "https://opencollective.com/eslint" 2510 + } 2511 + }, 2512 + "node_modules/esquery": { 2513 + "version": "1.6.0", 2514 + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.6.0.tgz", 2515 + "integrity": "sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==", 2516 + "dev": true, 2517 + "license": "BSD-3-Clause", 2518 + "dependencies": { 2519 + "estraverse": "^5.1.0" 2520 + }, 2521 + "engines": { 2522 + "node": ">=0.10" 2523 + } 2524 + }, 2525 + "node_modules/esrecurse": { 2526 + "version": "4.3.0", 2527 + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", 2528 + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", 2529 + "dev": true, 2530 + "license": "BSD-2-Clause", 2531 + "dependencies": { 2532 + "estraverse": "^5.2.0" 2533 + }, 2534 + "engines": { 2535 + "node": ">=4.0" 2536 + } 2537 + }, 2538 + "node_modules/estraverse": { 2539 + "version": "5.3.0", 2540 + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", 2541 + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", 2542 + "dev": true, 2543 + "license": "BSD-2-Clause", 2544 + "engines": { 2545 + "node": ">=4.0" 2546 + } 2547 + }, 2548 + "node_modules/esutils": { 2549 + "version": "2.0.3", 2550 + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", 2551 + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", 2552 + "dev": true, 2553 + "license": "BSD-2-Clause", 2554 + "engines": { 2555 + "node": ">=0.10.0" 2556 + } 2557 + }, 2558 + "node_modules/fast-deep-equal": { 2559 + "version": "3.1.3", 2560 + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", 2561 + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", 2562 + "dev": true, 2563 + "license": "MIT" 2564 + }, 2565 + "node_modules/fast-glob": { 2566 + "version": "3.3.3", 2567 + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz", 2568 + "integrity": "sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==", 2569 + "dev": true, 2570 + "license": "MIT", 2571 + "dependencies": { 2572 + "@nodelib/fs.stat": "^2.0.2", 2573 + "@nodelib/fs.walk": "^1.2.3", 2574 + "glob-parent": "^5.1.2", 2575 + "merge2": "^1.3.0", 2576 + "micromatch": "^4.0.8" 2577 + }, 2578 + "engines": { 2579 + "node": ">=8.6.0" 2580 + } 2581 + }, 2582 + "node_modules/fast-glob/node_modules/glob-parent": { 2583 + "version": "5.1.2", 2584 + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", 2585 + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", 2586 + "dev": true, 2587 + "license": "ISC", 2588 + "dependencies": { 2589 + "is-glob": "^4.0.1" 2590 + }, 2591 + "engines": { 2592 + "node": ">= 6" 2593 + } 2594 + }, 2595 + "node_modules/fast-json-stable-stringify": { 2596 + "version": "2.1.0", 2597 + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", 2598 + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", 2599 + "dev": true, 2600 + "license": "MIT" 2601 + }, 2602 + "node_modules/fast-levenshtein": { 2603 + "version": "2.0.6", 2604 + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", 2605 + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", 2606 + "dev": true, 2607 + "license": "MIT" 2608 + }, 2609 + "node_modules/fast-uri": { 2610 + "version": "3.1.0", 2611 + "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.1.0.tgz", 2612 + "integrity": "sha512-iPeeDKJSWf4IEOasVVrknXpaBV0IApz/gp7S2bb7Z4Lljbl2MGJRqInZiUrQwV16cpzw/D3S5j5Julj/gT52AA==", 2613 + "dev": true, 2614 + "funding": [ 2615 + { 2616 + "type": "github", 2617 + "url": "https://github.com/sponsors/fastify" 2618 + }, 2619 + { 2620 + "type": "opencollective", 2621 + "url": "https://opencollective.com/fastify" 2622 + } 2623 + ], 2624 + "license": "BSD-3-Clause" 2625 + }, 2626 + "node_modules/fastq": { 2627 + "version": "1.19.1", 2628 + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.19.1.tgz", 2629 + "integrity": "sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==", 2630 + "dev": true, 2631 + "license": "ISC", 2632 + "dependencies": { 2633 + "reusify": "^1.0.4" 2634 + } 2635 + }, 2636 + "node_modules/file-entry-cache": { 2637 + "version": "8.0.0", 2638 + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-8.0.0.tgz", 2639 + "integrity": "sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==", 2640 + "dev": true, 2641 + "license": "MIT", 2642 + "dependencies": { 2643 + "flat-cache": "^4.0.0" 2644 + }, 2645 + "engines": { 2646 + "node": ">=16.0.0" 2647 + } 2648 + }, 2649 + "node_modules/fill-range": { 2650 + "version": "7.1.1", 2651 + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", 2652 + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", 2653 + "dev": true, 2654 + "license": "MIT", 2655 + "dependencies": { 2656 + "to-regex-range": "^5.0.1" 2657 + }, 2658 + "engines": { 2659 + "node": ">=8" 2660 + } 2661 + }, 2662 + "node_modules/find-up": { 2663 + "version": "5.0.0", 2664 + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", 2665 + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", 2666 + "dev": true, 2667 + "license": "MIT", 2668 + "dependencies": { 2669 + "locate-path": "^6.0.0", 2670 + "path-exists": "^4.0.0" 2671 + }, 2672 + "engines": { 2673 + "node": ">=10" 2674 + }, 2675 + "funding": { 2676 + "url": "https://github.com/sponsors/sindresorhus" 2677 + } 2678 + }, 2679 + "node_modules/flat-cache": { 2680 + "version": "4.0.1", 2681 + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-4.0.1.tgz", 2682 + "integrity": "sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==", 2683 + "dev": true, 2684 + "license": "MIT", 2685 + "dependencies": { 2686 + "flatted": "^3.2.9", 2687 + "keyv": "^4.5.4" 2688 + }, 2689 + "engines": { 2690 + "node": ">=16" 2691 + } 2692 + }, 2693 + "node_modules/flatted": { 2694 + "version": "3.3.3", 2695 + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.3.tgz", 2696 + "integrity": "sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==", 2697 + "dev": true, 2698 + "license": "ISC" 2699 + }, 2700 + "node_modules/for-each": { 2701 + "version": "0.3.5", 2702 + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.5.tgz", 2703 + "integrity": "sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==", 2704 + "dev": true, 2705 + "license": "MIT", 2706 + "dependencies": { 2707 + "is-callable": "^1.2.7" 2708 + }, 2709 + "engines": { 2710 + "node": ">= 0.4" 2711 + }, 2712 + "funding": { 2713 + "url": "https://github.com/sponsors/ljharb" 2714 + } 2715 + }, 2716 + "node_modules/function-bind": { 2717 + "version": "1.1.2", 2718 + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", 2719 + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", 2720 + "dev": true, 2721 + "license": "MIT", 2722 + "funding": { 2723 + "url": "https://github.com/sponsors/ljharb" 2724 + } 2725 + }, 2726 + "node_modules/function.prototype.name": { 2727 + "version": "1.1.8", 2728 + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.8.tgz", 2729 + "integrity": "sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q==", 2730 + "dev": true, 2731 + "license": "MIT", 2732 + "dependencies": { 2733 + "call-bind": "^1.0.8", 2734 + "call-bound": "^1.0.3", 2735 + "define-properties": "^1.2.1", 2736 + "functions-have-names": "^1.2.3", 2737 + "hasown": "^2.0.2", 2738 + "is-callable": "^1.2.7" 2739 + }, 2740 + "engines": { 2741 + "node": ">= 0.4" 2742 + }, 2743 + "funding": { 2744 + "url": "https://github.com/sponsors/ljharb" 2745 + } 2746 + }, 2747 + "node_modules/functions-have-names": { 2748 + "version": "1.2.3", 2749 + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", 2750 + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", 2751 + "dev": true, 2752 + "license": "MIT", 2753 + "funding": { 2754 + "url": "https://github.com/sponsors/ljharb" 2755 + } 2756 + }, 2757 + "node_modules/generator-function": { 2758 + "version": "2.0.1", 2759 + "resolved": "https://registry.npmjs.org/generator-function/-/generator-function-2.0.1.tgz", 2760 + "integrity": "sha512-SFdFmIJi+ybC0vjlHN0ZGVGHc3lgE0DxPAT0djjVg+kjOnSqclqmj0KQ7ykTOLP6YxoqOvuAODGdcHJn+43q3g==", 2761 + "dev": true, 2762 + "license": "MIT", 2763 + "engines": { 2764 + "node": ">= 0.4" 2765 + } 2766 + }, 2767 + "node_modules/get-intrinsic": { 2768 + "version": "1.3.0", 2769 + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", 2770 + "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", 2771 + "dev": true, 2772 + "license": "MIT", 2773 + "dependencies": { 2774 + "call-bind-apply-helpers": "^1.0.2", 2775 + "es-define-property": "^1.0.1", 2776 + "es-errors": "^1.3.0", 2777 + "es-object-atoms": "^1.1.1", 2778 + "function-bind": "^1.1.2", 2779 + "get-proto": "^1.0.1", 2780 + "gopd": "^1.2.0", 2781 + "has-symbols": "^1.1.0", 2782 + "hasown": "^2.0.2", 2783 + "math-intrinsics": "^1.1.0" 2784 + }, 2785 + "engines": { 2786 + "node": ">= 0.4" 2787 + }, 2788 + "funding": { 2789 + "url": "https://github.com/sponsors/ljharb" 2790 + } 2791 + }, 2792 + "node_modules/get-proto": { 2793 + "version": "1.0.1", 2794 + "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", 2795 + "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", 2796 + "dev": true, 2797 + "license": "MIT", 2798 + "dependencies": { 2799 + "dunder-proto": "^1.0.1", 2800 + "es-object-atoms": "^1.0.0" 2801 + }, 2802 + "engines": { 2803 + "node": ">= 0.4" 2804 + } 2805 + }, 2806 + "node_modules/get-symbol-description": { 2807 + "version": "1.1.0", 2808 + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.1.0.tgz", 2809 + "integrity": "sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==", 2810 + "dev": true, 2811 + "license": "MIT", 2812 + "dependencies": { 2813 + "call-bound": "^1.0.3", 2814 + "es-errors": "^1.3.0", 2815 + "get-intrinsic": "^1.2.6" 2816 + }, 2817 + "engines": { 2818 + "node": ">= 0.4" 2819 + }, 2820 + "funding": { 2821 + "url": "https://github.com/sponsors/ljharb" 2822 + } 2823 + }, 2824 + "node_modules/get-tsconfig": { 2825 + "version": "4.13.0", 2826 + "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.13.0.tgz", 2827 + "integrity": "sha512-1VKTZJCwBrvbd+Wn3AOgQP/2Av+TfTCOlE4AcRJE72W1ksZXbAx8PPBR9RzgTeSPzlPMHrbANMH3LbltH73wxQ==", 2828 + "dev": true, 2829 + "license": "MIT", 2830 + "dependencies": { 2831 + "resolve-pkg-maps": "^1.0.0" 2832 + }, 2833 + "funding": { 2834 + "url": "https://github.com/privatenumber/get-tsconfig?sponsor=1" 2835 + } 2836 + }, 2837 + "node_modules/glob-parent": { 2838 + "version": "6.0.2", 2839 + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", 2840 + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", 2841 + "dev": true, 2842 + "license": "ISC", 2843 + "dependencies": { 2844 + "is-glob": "^4.0.3" 2845 + }, 2846 + "engines": { 2847 + "node": ">=10.13.0" 2848 + } 2849 + }, 2850 + "node_modules/globals": { 2851 + "version": "14.0.0", 2852 + "resolved": "https://registry.npmjs.org/globals/-/globals-14.0.0.tgz", 2853 + "integrity": "sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==", 2854 + "dev": true, 2855 + "license": "MIT", 2856 + "engines": { 2857 + "node": ">=18" 2858 + }, 2859 + "funding": { 2860 + "url": "https://github.com/sponsors/sindresorhus" 2861 + } 2862 + }, 2863 + "node_modules/globalthis": { 2864 + "version": "1.0.4", 2865 + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", 2866 + "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", 2867 + "dev": true, 2868 + "license": "MIT", 2869 + "dependencies": { 2870 + "define-properties": "^1.2.1", 2871 + "gopd": "^1.0.1" 2872 + }, 2873 + "engines": { 2874 + "node": ">= 0.4" 2875 + }, 2876 + "funding": { 2877 + "url": "https://github.com/sponsors/ljharb" 2878 + } 2879 + }, 2880 + "node_modules/gopd": { 2881 + "version": "1.2.0", 2882 + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", 2883 + "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", 2884 + "dev": true, 2885 + "license": "MIT", 2886 + "engines": { 2887 + "node": ">= 0.4" 2888 + }, 2889 + "funding": { 2890 + "url": "https://github.com/sponsors/ljharb" 2891 + } 2892 + }, 2893 + "node_modules/graceful-fs": { 2894 + "version": "4.2.11", 2895 + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", 2896 + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", 2897 + "dev": true, 2898 + "license": "ISC" 2899 + }, 2900 + "node_modules/graphemer": { 2901 + "version": "1.4.0", 2902 + "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", 2903 + "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", 2904 + "dev": true, 2905 + "license": "MIT" 2906 + }, 2907 + "node_modules/has-bigints": { 2908 + "version": "1.1.0", 2909 + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.1.0.tgz", 2910 + "integrity": "sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==", 2911 + "dev": true, 2912 + "license": "MIT", 2913 + "engines": { 2914 + "node": ">= 0.4" 2915 + }, 2916 + "funding": { 2917 + "url": "https://github.com/sponsors/ljharb" 2918 + } 2919 + }, 2920 + "node_modules/has-flag": { 2921 + "version": "4.0.0", 2922 + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", 2923 + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", 2924 + "dev": true, 2925 + "license": "MIT", 2926 + "engines": { 2927 + "node": ">=8" 2928 + } 2929 + }, 2930 + "node_modules/has-property-descriptors": { 2931 + "version": "1.0.2", 2932 + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", 2933 + "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", 2934 + "dev": true, 2935 + "license": "MIT", 2936 + "dependencies": { 2937 + "es-define-property": "^1.0.0" 2938 + }, 2939 + "funding": { 2940 + "url": "https://github.com/sponsors/ljharb" 2941 + } 2942 + }, 2943 + "node_modules/has-proto": { 2944 + "version": "1.2.0", 2945 + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.2.0.tgz", 2946 + "integrity": "sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==", 2947 + "dev": true, 2948 + "license": "MIT", 2949 + "dependencies": { 2950 + "dunder-proto": "^1.0.0" 2951 + }, 2952 + "engines": { 2953 + "node": ">= 0.4" 2954 + }, 2955 + "funding": { 2956 + "url": "https://github.com/sponsors/ljharb" 2957 + } 2958 + }, 2959 + "node_modules/has-symbols": { 2960 + "version": "1.1.0", 2961 + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", 2962 + "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", 2963 + "dev": true, 2964 + "license": "MIT", 2965 + "engines": { 2966 + "node": ">= 0.4" 2967 + }, 2968 + "funding": { 2969 + "url": "https://github.com/sponsors/ljharb" 2970 + } 2971 + }, 2972 + "node_modules/has-tostringtag": { 2973 + "version": "1.0.2", 2974 + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", 2975 + "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", 2976 + "dev": true, 2977 + "license": "MIT", 2978 + "dependencies": { 2979 + "has-symbols": "^1.0.3" 2980 + }, 2981 + "engines": { 2982 + "node": ">= 0.4" 2983 + }, 2984 + "funding": { 2985 + "url": "https://github.com/sponsors/ljharb" 2986 + } 2987 + }, 2988 + "node_modules/hasown": { 2989 + "version": "2.0.2", 2990 + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", 2991 + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", 2992 + "dev": true, 2993 + "license": "MIT", 2994 + "dependencies": { 2995 + "function-bind": "^1.1.2" 2996 + }, 2997 + "engines": { 2998 + "node": ">= 0.4" 2999 + } 3000 + }, 3001 + "node_modules/ignore": { 3002 + "version": "5.3.2", 3003 + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", 3004 + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", 3005 + "dev": true, 3006 + "license": "MIT", 3007 + "engines": { 3008 + "node": ">= 4" 3009 + } 3010 + }, 3011 + "node_modules/import-fresh": { 3012 + "version": "3.3.1", 3013 + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz", 3014 + "integrity": "sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==", 3015 + "dev": true, 3016 + "license": "MIT", 3017 + "dependencies": { 3018 + "parent-module": "^1.0.0", 3019 + "resolve-from": "^4.0.0" 3020 + }, 3021 + "engines": { 3022 + "node": ">=6" 3023 + }, 3024 + "funding": { 3025 + "url": "https://github.com/sponsors/sindresorhus" 3026 + } 3027 + }, 3028 + "node_modules/imurmurhash": { 3029 + "version": "0.1.4", 3030 + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", 3031 + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", 3032 + "dev": true, 3033 + "license": "MIT", 3034 + "engines": { 3035 + "node": ">=0.8.19" 3036 + } 3037 + }, 3038 + "node_modules/internal-slot": { 3039 + "version": "1.1.0", 3040 + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.1.0.tgz", 3041 + "integrity": "sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==", 3042 + "dev": true, 3043 + "license": "MIT", 3044 + "dependencies": { 3045 + "es-errors": "^1.3.0", 3046 + "hasown": "^2.0.2", 3047 + "side-channel": "^1.1.0" 3048 + }, 3049 + "engines": { 3050 + "node": ">= 0.4" 3051 + } 3052 + }, 3053 + "node_modules/is-array-buffer": { 3054 + "version": "3.0.5", 3055 + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.5.tgz", 3056 + "integrity": "sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==", 3057 + "dev": true, 3058 + "license": "MIT", 3059 + "dependencies": { 3060 + "call-bind": "^1.0.8", 3061 + "call-bound": "^1.0.3", 3062 + "get-intrinsic": "^1.2.6" 3063 + }, 3064 + "engines": { 3065 + "node": ">= 0.4" 3066 + }, 3067 + "funding": { 3068 + "url": "https://github.com/sponsors/ljharb" 3069 + } 3070 + }, 3071 + "node_modules/is-async-function": { 3072 + "version": "2.1.1", 3073 + "resolved": "https://registry.npmjs.org/is-async-function/-/is-async-function-2.1.1.tgz", 3074 + "integrity": "sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ==", 3075 + "dev": true, 3076 + "license": "MIT", 3077 + "dependencies": { 3078 + "async-function": "^1.0.0", 3079 + "call-bound": "^1.0.3", 3080 + "get-proto": "^1.0.1", 3081 + "has-tostringtag": "^1.0.2", 3082 + "safe-regex-test": "^1.1.0" 3083 + }, 3084 + "engines": { 3085 + "node": ">= 0.4" 3086 + }, 3087 + "funding": { 3088 + "url": "https://github.com/sponsors/ljharb" 3089 + } 3090 + }, 3091 + "node_modules/is-bigint": { 3092 + "version": "1.1.0", 3093 + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.1.0.tgz", 3094 + "integrity": "sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==", 3095 + "dev": true, 3096 + "license": "MIT", 3097 + "dependencies": { 3098 + "has-bigints": "^1.0.2" 3099 + }, 3100 + "engines": { 3101 + "node": ">= 0.4" 3102 + }, 3103 + "funding": { 3104 + "url": "https://github.com/sponsors/ljharb" 3105 + } 3106 + }, 3107 + "node_modules/is-boolean-object": { 3108 + "version": "1.2.2", 3109 + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.2.2.tgz", 3110 + "integrity": "sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A==", 3111 + "dev": true, 3112 + "license": "MIT", 3113 + "dependencies": { 3114 + "call-bound": "^1.0.3", 3115 + "has-tostringtag": "^1.0.2" 3116 + }, 3117 + "engines": { 3118 + "node": ">= 0.4" 3119 + }, 3120 + "funding": { 3121 + "url": "https://github.com/sponsors/ljharb" 3122 + } 3123 + }, 3124 + "node_modules/is-callable": { 3125 + "version": "1.2.7", 3126 + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", 3127 + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", 3128 + "dev": true, 3129 + "license": "MIT", 3130 + "engines": { 3131 + "node": ">= 0.4" 3132 + }, 3133 + "funding": { 3134 + "url": "https://github.com/sponsors/ljharb" 3135 + } 3136 + }, 3137 + "node_modules/is-core-module": { 3138 + "version": "2.16.1", 3139 + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz", 3140 + "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==", 3141 + "dev": true, 3142 + "license": "MIT", 3143 + "dependencies": { 3144 + "hasown": "^2.0.2" 3145 + }, 3146 + "engines": { 3147 + "node": ">= 0.4" 3148 + }, 3149 + "funding": { 3150 + "url": "https://github.com/sponsors/ljharb" 3151 + } 3152 + }, 3153 + "node_modules/is-data-view": { 3154 + "version": "1.0.2", 3155 + "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.2.tgz", 3156 + "integrity": "sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==", 3157 + "dev": true, 3158 + "license": "MIT", 3159 + "dependencies": { 3160 + "call-bound": "^1.0.2", 3161 + "get-intrinsic": "^1.2.6", 3162 + "is-typed-array": "^1.1.13" 3163 + }, 3164 + "engines": { 3165 + "node": ">= 0.4" 3166 + }, 3167 + "funding": { 3168 + "url": "https://github.com/sponsors/ljharb" 3169 + } 3170 + }, 3171 + "node_modules/is-date-object": { 3172 + "version": "1.1.0", 3173 + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.1.0.tgz", 3174 + "integrity": "sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==", 3175 + "dev": true, 3176 + "license": "MIT", 3177 + "dependencies": { 3178 + "call-bound": "^1.0.2", 3179 + "has-tostringtag": "^1.0.2" 3180 + }, 3181 + "engines": { 3182 + "node": ">= 0.4" 3183 + }, 3184 + "funding": { 3185 + "url": "https://github.com/sponsors/ljharb" 3186 + } 3187 + }, 3188 + "node_modules/is-extglob": { 3189 + "version": "2.1.1", 3190 + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", 3191 + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", 3192 + "dev": true, 3193 + "license": "MIT", 3194 + "engines": { 3195 + "node": ">=0.10.0" 3196 + } 3197 + }, 3198 + "node_modules/is-finalizationregistry": { 3199 + "version": "1.1.1", 3200 + "resolved": "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.1.1.tgz", 3201 + "integrity": "sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==", 3202 + "dev": true, 3203 + "license": "MIT", 3204 + "dependencies": { 3205 + "call-bound": "^1.0.3" 3206 + }, 3207 + "engines": { 3208 + "node": ">= 0.4" 3209 + }, 3210 + "funding": { 3211 + "url": "https://github.com/sponsors/ljharb" 3212 + } 3213 + }, 3214 + "node_modules/is-generator-function": { 3215 + "version": "1.1.2", 3216 + "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.1.2.tgz", 3217 + "integrity": "sha512-upqt1SkGkODW9tsGNG5mtXTXtECizwtS2kA161M+gJPc1xdb/Ax629af6YrTwcOeQHbewrPNlE5Dx7kzvXTizA==", 3218 + "dev": true, 3219 + "license": "MIT", 3220 + "dependencies": { 3221 + "call-bound": "^1.0.4", 3222 + "generator-function": "^2.0.0", 3223 + "get-proto": "^1.0.1", 3224 + "has-tostringtag": "^1.0.2", 3225 + "safe-regex-test": "^1.1.0" 3226 + }, 3227 + "engines": { 3228 + "node": ">= 0.4" 3229 + }, 3230 + "funding": { 3231 + "url": "https://github.com/sponsors/ljharb" 3232 + } 3233 + }, 3234 + "node_modules/is-glob": { 3235 + "version": "4.0.3", 3236 + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", 3237 + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", 3238 + "dev": true, 3239 + "license": "MIT", 3240 + "dependencies": { 3241 + "is-extglob": "^2.1.1" 3242 + }, 3243 + "engines": { 3244 + "node": ">=0.10.0" 3245 + } 3246 + }, 3247 + "node_modules/is-map": { 3248 + "version": "2.0.3", 3249 + "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz", 3250 + "integrity": "sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==", 3251 + "dev": true, 3252 + "license": "MIT", 3253 + "engines": { 3254 + "node": ">= 0.4" 3255 + }, 3256 + "funding": { 3257 + "url": "https://github.com/sponsors/ljharb" 3258 + } 3259 + }, 3260 + "node_modules/is-negative-zero": { 3261 + "version": "2.0.3", 3262 + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz", 3263 + "integrity": "sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==", 3264 + "dev": true, 3265 + "license": "MIT", 3266 + "engines": { 3267 + "node": ">= 0.4" 3268 + }, 3269 + "funding": { 3270 + "url": "https://github.com/sponsors/ljharb" 3271 + } 3272 + }, 3273 + "node_modules/is-number": { 3274 + "version": "7.0.0", 3275 + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", 3276 + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", 3277 + "dev": true, 3278 + "license": "MIT", 3279 + "engines": { 3280 + "node": ">=0.12.0" 3281 + } 3282 + }, 3283 + "node_modules/is-number-object": { 3284 + "version": "1.1.1", 3285 + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.1.1.tgz", 3286 + "integrity": "sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==", 3287 + "dev": true, 3288 + "license": "MIT", 3289 + "dependencies": { 3290 + "call-bound": "^1.0.3", 3291 + "has-tostringtag": "^1.0.2" 3292 + }, 3293 + "engines": { 3294 + "node": ">= 0.4" 3295 + }, 3296 + "funding": { 3297 + "url": "https://github.com/sponsors/ljharb" 3298 + } 3299 + }, 3300 + "node_modules/is-regex": { 3301 + "version": "1.2.1", 3302 + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.2.1.tgz", 3303 + "integrity": "sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==", 3304 + "dev": true, 3305 + "license": "MIT", 3306 + "dependencies": { 3307 + "call-bound": "^1.0.2", 3308 + "gopd": "^1.2.0", 3309 + "has-tostringtag": "^1.0.2", 3310 + "hasown": "^2.0.2" 3311 + }, 3312 + "engines": { 3313 + "node": ">= 0.4" 3314 + }, 3315 + "funding": { 3316 + "url": "https://github.com/sponsors/ljharb" 3317 + } 3318 + }, 3319 + "node_modules/is-set": { 3320 + "version": "2.0.3", 3321 + "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz", 3322 + "integrity": "sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==", 3323 + "dev": true, 3324 + "license": "MIT", 3325 + "engines": { 3326 + "node": ">= 0.4" 3327 + }, 3328 + "funding": { 3329 + "url": "https://github.com/sponsors/ljharb" 3330 + } 3331 + }, 3332 + "node_modules/is-shared-array-buffer": { 3333 + "version": "1.0.4", 3334 + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.4.tgz", 3335 + "integrity": "sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==", 3336 + "dev": true, 3337 + "license": "MIT", 3338 + "dependencies": { 3339 + "call-bound": "^1.0.3" 3340 + }, 3341 + "engines": { 3342 + "node": ">= 0.4" 3343 + }, 3344 + "funding": { 3345 + "url": "https://github.com/sponsors/ljharb" 3346 + } 3347 + }, 3348 + "node_modules/is-string": { 3349 + "version": "1.1.1", 3350 + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.1.1.tgz", 3351 + "integrity": "sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==", 3352 + "dev": true, 3353 + "license": "MIT", 3354 + "dependencies": { 3355 + "call-bound": "^1.0.3", 3356 + "has-tostringtag": "^1.0.2" 3357 + }, 3358 + "engines": { 3359 + "node": ">= 0.4" 3360 + }, 3361 + "funding": { 3362 + "url": "https://github.com/sponsors/ljharb" 3363 + } 3364 + }, 3365 + "node_modules/is-symbol": { 3366 + "version": "1.1.1", 3367 + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.1.1.tgz", 3368 + "integrity": "sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==", 3369 + "dev": true, 3370 + "license": "MIT", 3371 + "dependencies": { 3372 + "call-bound": "^1.0.2", 3373 + "has-symbols": "^1.1.0", 3374 + "safe-regex-test": "^1.1.0" 3375 + }, 3376 + "engines": { 3377 + "node": ">= 0.4" 3378 + }, 3379 + "funding": { 3380 + "url": "https://github.com/sponsors/ljharb" 3381 + } 3382 + }, 3383 + "node_modules/is-typed-array": { 3384 + "version": "1.1.15", 3385 + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.15.tgz", 3386 + "integrity": "sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==", 3387 + "dev": true, 3388 + "license": "MIT", 3389 + "dependencies": { 3390 + "which-typed-array": "^1.1.16" 3391 + }, 3392 + "engines": { 3393 + "node": ">= 0.4" 3394 + }, 3395 + "funding": { 3396 + "url": "https://github.com/sponsors/ljharb" 3397 + } 3398 + }, 3399 + "node_modules/is-weakmap": { 3400 + "version": "2.0.2", 3401 + "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz", 3402 + "integrity": "sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==", 3403 + "dev": true, 3404 + "license": "MIT", 3405 + "engines": { 3406 + "node": ">= 0.4" 3407 + }, 3408 + "funding": { 3409 + "url": "https://github.com/sponsors/ljharb" 3410 + } 3411 + }, 3412 + "node_modules/is-weakref": { 3413 + "version": "1.1.1", 3414 + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.1.1.tgz", 3415 + "integrity": "sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew==", 3416 + "dev": true, 3417 + "license": "MIT", 3418 + "dependencies": { 3419 + "call-bound": "^1.0.3" 3420 + }, 3421 + "engines": { 3422 + "node": ">= 0.4" 3423 + }, 3424 + "funding": { 3425 + "url": "https://github.com/sponsors/ljharb" 3426 + } 3427 + }, 3428 + "node_modules/is-weakset": { 3429 + "version": "2.0.4", 3430 + "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.4.tgz", 3431 + "integrity": "sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==", 3432 + "dev": true, 3433 + "license": "MIT", 3434 + "dependencies": { 3435 + "call-bound": "^1.0.3", 3436 + "get-intrinsic": "^1.2.6" 3437 + }, 3438 + "engines": { 3439 + "node": ">= 0.4" 3440 + }, 3441 + "funding": { 3442 + "url": "https://github.com/sponsors/ljharb" 3443 + } 3444 + }, 3445 + "node_modules/isarray": { 3446 + "version": "2.0.5", 3447 + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", 3448 + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", 3449 + "dev": true, 3450 + "license": "MIT" 3451 + }, 3452 + "node_modules/isexe": { 3453 + "version": "2.0.0", 3454 + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", 3455 + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", 3456 + "dev": true, 3457 + "license": "ISC" 3458 + }, 3459 + "node_modules/iterator.prototype": { 3460 + "version": "1.1.5", 3461 + "resolved": "https://registry.npmjs.org/iterator.prototype/-/iterator.prototype-1.1.5.tgz", 3462 + "integrity": "sha512-H0dkQoCa3b2VEeKQBOxFph+JAbcrQdE7KC0UkqwpLmv2EC4P41QXP+rqo9wYodACiG5/WM5s9oDApTU8utwj9g==", 3463 + "dev": true, 3464 + "license": "MIT", 3465 + "dependencies": { 3466 + "define-data-property": "^1.1.4", 3467 + "es-object-atoms": "^1.0.0", 3468 + "get-intrinsic": "^1.2.6", 3469 + "get-proto": "^1.0.0", 3470 + "has-symbols": "^1.1.0", 3471 + "set-function-name": "^2.0.2" 3472 + }, 3473 + "engines": { 3474 + "node": ">= 0.4" 3475 + } 3476 + }, 3477 + "node_modules/jiti": { 3478 + "version": "2.6.1", 3479 + "resolved": "https://registry.npmjs.org/jiti/-/jiti-2.6.1.tgz", 3480 + "integrity": "sha512-ekilCSN1jwRvIbgeg/57YFh8qQDNbwDb9xT/qu2DAHbFFZUicIl4ygVaAvzveMhMVr3LnpSKTNnwt8PoOfmKhQ==", 3481 + "dev": true, 3482 + "license": "MIT", 3483 + "bin": { 3484 + "jiti": "lib/jiti-cli.mjs" 3485 + } 3486 + }, 3487 + "node_modules/js-tokens": { 3488 + "version": "4.0.0", 3489 + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", 3490 + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", 3491 + "dev": true, 3492 + "license": "MIT" 3493 + }, 3494 + "node_modules/js-yaml": { 3495 + "version": "4.1.1", 3496 + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.1.tgz", 3497 + "integrity": "sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==", 3498 + "dev": true, 3499 + "license": "MIT", 3500 + "dependencies": { 3501 + "argparse": "^2.0.1" 3502 + }, 3503 + "bin": { 3504 + "js-yaml": "bin/js-yaml.js" 3505 + } 3506 + }, 3507 + "node_modules/json-buffer": { 3508 + "version": "3.0.1", 3509 + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", 3510 + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", 3511 + "dev": true, 3512 + "license": "MIT" 3513 + }, 3514 + "node_modules/json-schema-migrate": { 3515 + "version": "2.0.0", 3516 + "resolved": "https://registry.npmjs.org/json-schema-migrate/-/json-schema-migrate-2.0.0.tgz", 3517 + "integrity": "sha512-r38SVTtojDRp4eD6WsCqiE0eNDt4v1WalBXb9cyZYw9ai5cGtBwzRNWjHzJl38w6TxFkXAIA7h+fyX3tnrAFhQ==", 3518 + "dev": true, 3519 + "license": "MIT", 3520 + "dependencies": { 3521 + "ajv": "^8.0.0" 3522 + } 3523 + }, 3524 + "node_modules/json-schema-migrate/node_modules/ajv": { 3525 + "version": "8.17.1", 3526 + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz", 3527 + "integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==", 3528 + "dev": true, 3529 + "license": "MIT", 3530 + "dependencies": { 3531 + "fast-deep-equal": "^3.1.3", 3532 + "fast-uri": "^3.0.1", 3533 + "json-schema-traverse": "^1.0.0", 3534 + "require-from-string": "^2.0.2" 3535 + }, 3536 + "funding": { 3537 + "type": "github", 3538 + "url": "https://github.com/sponsors/epoberezkin" 3539 + } 3540 + }, 3541 + "node_modules/json-schema-migrate/node_modules/json-schema-traverse": { 3542 + "version": "1.0.0", 3543 + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", 3544 + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", 3545 + "dev": true, 3546 + "license": "MIT" 3547 + }, 3548 + "node_modules/json-schema-traverse": { 3549 + "version": "0.4.1", 3550 + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", 3551 + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", 3552 + "dev": true, 3553 + "license": "MIT" 3554 + }, 3555 + "node_modules/json-stable-stringify-without-jsonify": { 3556 + "version": "1.0.1", 3557 + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", 3558 + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", 3559 + "dev": true, 3560 + "license": "MIT" 3561 + }, 3562 + "node_modules/json5": { 3563 + "version": "1.0.2", 3564 + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", 3565 + "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", 3566 + "dev": true, 3567 + "license": "MIT", 3568 + "dependencies": { 3569 + "minimist": "^1.2.0" 3570 + }, 3571 + "bin": { 3572 + "json5": "lib/cli.js" 3573 + } 3574 + }, 3575 + "node_modules/jsonc-eslint-parser": { 3576 + "version": "2.4.1", 3577 + "resolved": "https://registry.npmjs.org/jsonc-eslint-parser/-/jsonc-eslint-parser-2.4.1.tgz", 3578 + "integrity": "sha512-uuPNLJkKN8NXAlZlQ6kmUF9qO+T6Kyd7oV4+/7yy8Jz6+MZNyhPq8EdLpdfnPVzUC8qSf1b4j1azKaGnFsjmsw==", 3579 + "dev": true, 3580 + "license": "MIT", 3581 + "dependencies": { 3582 + "acorn": "^8.5.0", 3583 + "eslint-visitor-keys": "^3.0.0", 3584 + "espree": "^9.0.0", 3585 + "semver": "^7.3.5" 3586 + }, 3587 + "engines": { 3588 + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" 3589 + }, 3590 + "funding": { 3591 + "url": "https://github.com/sponsors/ota-meshi" 3592 + } 3593 + }, 3594 + "node_modules/jsonc-eslint-parser/node_modules/eslint-visitor-keys": { 3595 + "version": "3.4.3", 3596 + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", 3597 + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", 3598 + "dev": true, 3599 + "license": "Apache-2.0", 3600 + "engines": { 3601 + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" 3602 + }, 3603 + "funding": { 3604 + "url": "https://opencollective.com/eslint" 3605 + } 3606 + }, 3607 + "node_modules/jsonc-eslint-parser/node_modules/espree": { 3608 + "version": "9.6.1", 3609 + "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", 3610 + "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", 3611 + "dev": true, 3612 + "license": "BSD-2-Clause", 3613 + "dependencies": { 3614 + "acorn": "^8.9.0", 3615 + "acorn-jsx": "^5.3.2", 3616 + "eslint-visitor-keys": "^3.4.1" 3617 + }, 3618 + "engines": { 3619 + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" 3620 + }, 3621 + "funding": { 3622 + "url": "https://opencollective.com/eslint" 3623 + } 3624 + }, 3625 + "node_modules/jsonc-eslint-parser/node_modules/semver": { 3626 + "version": "7.7.3", 3627 + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz", 3628 + "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==", 3629 + "dev": true, 3630 + "license": "ISC", 3631 + "bin": { 3632 + "semver": "bin/semver.js" 3633 + }, 3634 + "engines": { 3635 + "node": ">=10" 3636 + } 3637 + }, 3638 + "node_modules/jsx-ast-utils": { 3639 + "version": "3.3.5", 3640 + "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.5.tgz", 3641 + "integrity": "sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==", 3642 + "dev": true, 3643 + "license": "MIT", 3644 + "dependencies": { 3645 + "array-includes": "^3.1.6", 3646 + "array.prototype.flat": "^1.3.1", 3647 + "object.assign": "^4.1.4", 3648 + "object.values": "^1.1.6" 3649 + }, 3650 + "engines": { 3651 + "node": ">=4.0" 3652 + } 3653 + }, 3654 + "node_modules/keyv": { 3655 + "version": "4.5.4", 3656 + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", 3657 + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", 3658 + "dev": true, 3659 + "license": "MIT", 3660 + "dependencies": { 3661 + "json-buffer": "3.0.1" 3662 + } 3663 + }, 3664 + "node_modules/levn": { 3665 + "version": "0.4.1", 3666 + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", 3667 + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", 3668 + "dev": true, 3669 + "license": "MIT", 3670 + "dependencies": { 3671 + "prelude-ls": "^1.2.1", 3672 + "type-check": "~0.4.0" 3673 + }, 3674 + "engines": { 3675 + "node": ">= 0.8.0" 3676 + } 3677 + }, 3678 + "node_modules/locate-path": { 3679 + "version": "6.0.0", 3680 + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", 3681 + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", 3682 + "dev": true, 3683 + "license": "MIT", 3684 + "dependencies": { 3685 + "p-locate": "^5.0.0" 3686 + }, 3687 + "engines": { 3688 + "node": ">=10" 3689 + }, 3690 + "funding": { 3691 + "url": "https://github.com/sponsors/sindresorhus" 3692 + } 3693 + }, 3694 + "node_modules/lodash.merge": { 3695 + "version": "4.6.2", 3696 + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", 3697 + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", 3698 + "dev": true, 3699 + "license": "MIT" 3700 + }, 3701 + "node_modules/loose-envify": { 3702 + "version": "1.4.0", 3703 + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", 3704 + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", 3705 + "dev": true, 3706 + "license": "MIT", 3707 + "dependencies": { 3708 + "js-tokens": "^3.0.0 || ^4.0.0" 3709 + }, 3710 + "bin": { 3711 + "loose-envify": "cli.js" 3712 + } 3713 + }, 3714 + "node_modules/math-intrinsics": { 3715 + "version": "1.1.0", 3716 + "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", 3717 + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", 3718 + "dev": true, 3719 + "license": "MIT", 3720 + "engines": { 3721 + "node": ">= 0.4" 3722 + } 3723 + }, 3724 + "node_modules/merge2": { 3725 + "version": "1.4.1", 3726 + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", 3727 + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", 3728 + "dev": true, 3729 + "license": "MIT", 3730 + "engines": { 3731 + "node": ">= 8" 3732 + } 3733 + }, 3734 + "node_modules/micromatch": { 3735 + "version": "4.0.8", 3736 + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", 3737 + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", 3738 + "dev": true, 3739 + "license": "MIT", 3740 + "dependencies": { 3741 + "braces": "^3.0.3", 3742 + "picomatch": "^2.3.1" 3743 + }, 3744 + "engines": { 3745 + "node": ">=8.6" 3746 + } 3747 + }, 3748 + "node_modules/minimatch": { 3749 + "version": "3.1.2", 3750 + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", 3751 + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", 3752 + "dev": true, 3753 + "license": "ISC", 3754 + "dependencies": { 3755 + "brace-expansion": "^1.1.7" 3756 + }, 3757 + "engines": { 3758 + "node": "*" 3759 + } 3760 + }, 3761 + "node_modules/minimist": { 3762 + "version": "1.2.8", 3763 + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", 3764 + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", 3765 + "dev": true, 3766 + "license": "MIT", 3767 + "funding": { 3768 + "url": "https://github.com/sponsors/ljharb" 3769 + } 3770 + }, 3771 + "node_modules/module-replacements": { 3772 + "version": "2.10.1", 3773 + "resolved": "https://registry.npmjs.org/module-replacements/-/module-replacements-2.10.1.tgz", 3774 + "integrity": "sha512-qkKuLpMHDqRSM676OPL7HUpCiiP3NSxgf8NNR1ga2h/iJLNKTsOSjMEwrcT85DMSti2vmOqxknOVBGWj6H6etQ==", 3775 + "dev": true, 3776 + "license": "MIT" 3777 + }, 3778 + "node_modules/moment": { 3779 + "version": "2.29.4", 3780 + "resolved": "https://registry.npmjs.org/moment/-/moment-2.29.4.tgz", 3781 + "integrity": "sha512-5LC9SOxjSc2HF6vO2CyuTDNivEdoz2IvyJJGj6X8DJ0eFyfszE0QiEd+iXmBvUP3WHxSjFH/vIsA0EN00cgr8w==", 3782 + "license": "MIT", 3783 + "engines": { 3784 + "node": "*" 3785 + } 3786 + }, 3787 + "node_modules/ms": { 3788 + "version": "2.1.3", 3789 + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", 3790 + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", 3791 + "dev": true, 3792 + "license": "MIT" 3793 + }, 3794 + "node_modules/natural-compare": { 3795 + "version": "1.4.0", 3796 + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", 3797 + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", 3798 + "dev": true, 3799 + "license": "MIT" 3800 + }, 3801 + "node_modules/object-assign": { 3802 + "version": "4.1.1", 3803 + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", 3804 + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", 3805 + "dev": true, 3806 + "license": "MIT", 3807 + "engines": { 3808 + "node": ">=0.10.0" 3809 + } 3810 + }, 3811 + "node_modules/object-inspect": { 3812 + "version": "1.13.4", 3813 + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz", 3814 + "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==", 3815 + "dev": true, 3816 + "license": "MIT", 3817 + "engines": { 3818 + "node": ">= 0.4" 3819 + }, 3820 + "funding": { 3821 + "url": "https://github.com/sponsors/ljharb" 3822 + } 3823 + }, 3824 + "node_modules/object-keys": { 3825 + "version": "1.1.1", 3826 + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", 3827 + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", 3828 + "dev": true, 3829 + "license": "MIT", 3830 + "engines": { 3831 + "node": ">= 0.4" 3832 + } 3833 + }, 3834 + "node_modules/object.assign": { 3835 + "version": "4.1.7", 3836 + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.7.tgz", 3837 + "integrity": "sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==", 3838 + "dev": true, 3839 + "license": "MIT", 3840 + "dependencies": { 3841 + "call-bind": "^1.0.8", 3842 + "call-bound": "^1.0.3", 3843 + "define-properties": "^1.2.1", 3844 + "es-object-atoms": "^1.0.0", 3845 + "has-symbols": "^1.1.0", 3846 + "object-keys": "^1.1.1" 3847 + }, 3848 + "engines": { 3849 + "node": ">= 0.4" 3850 + }, 3851 + "funding": { 3852 + "url": "https://github.com/sponsors/ljharb" 3853 + } 3854 + }, 3855 + "node_modules/object.entries": { 3856 + "version": "1.1.9", 3857 + "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.9.tgz", 3858 + "integrity": "sha512-8u/hfXFRBD1O0hPUjioLhoWFHRmt6tKA4/vZPyckBr18l1KE9uHrFaFaUi8MDRTpi4uak2goyPTSNJLXX2k2Hw==", 3859 + "dev": true, 3860 + "license": "MIT", 3861 + "dependencies": { 3862 + "call-bind": "^1.0.8", 3863 + "call-bound": "^1.0.4", 3864 + "define-properties": "^1.2.1", 3865 + "es-object-atoms": "^1.1.1" 3866 + }, 3867 + "engines": { 3868 + "node": ">= 0.4" 3869 + } 3870 + }, 3871 + "node_modules/object.fromentries": { 3872 + "version": "2.0.8", 3873 + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.8.tgz", 3874 + "integrity": "sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==", 3875 + "dev": true, 3876 + "license": "MIT", 3877 + "dependencies": { 3878 + "call-bind": "^1.0.7", 3879 + "define-properties": "^1.2.1", 3880 + "es-abstract": "^1.23.2", 3881 + "es-object-atoms": "^1.0.0" 3882 + }, 3883 + "engines": { 3884 + "node": ">= 0.4" 3885 + }, 3886 + "funding": { 3887 + "url": "https://github.com/sponsors/ljharb" 3888 + } 3889 + }, 3890 + "node_modules/object.groupby": { 3891 + "version": "1.0.3", 3892 + "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.3.tgz", 3893 + "integrity": "sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==", 3894 + "dev": true, 3895 + "license": "MIT", 3896 + "dependencies": { 3897 + "call-bind": "^1.0.7", 3898 + "define-properties": "^1.2.1", 3899 + "es-abstract": "^1.23.2" 3900 + }, 3901 + "engines": { 3902 + "node": ">= 0.4" 3903 + } 3904 + }, 3905 + "node_modules/object.values": { 3906 + "version": "1.2.1", 3907 + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.2.1.tgz", 3908 + "integrity": "sha512-gXah6aZrcUxjWg2zR2MwouP2eHlCBzdV4pygudehaKXSGW4v2AsRQUK+lwwXhii6KFZcunEnmSUoYp5CXibxtA==", 3909 + "dev": true, 3910 + "license": "MIT", 3911 + "dependencies": { 3912 + "call-bind": "^1.0.8", 3913 + "call-bound": "^1.0.3", 3914 + "define-properties": "^1.2.1", 3915 + "es-object-atoms": "^1.0.0" 3916 + }, 3917 + "engines": { 3918 + "node": ">= 0.4" 3919 + }, 3920 + "funding": { 3921 + "url": "https://github.com/sponsors/ljharb" 3922 + } 3923 + }, 3924 + "node_modules/obsidian": { 3925 + "version": "1.10.3", 3926 + "resolved": "https://registry.npmjs.org/obsidian/-/obsidian-1.10.3.tgz", 3927 + "integrity": "sha512-VP+ZSxNMG7y6Z+sU9WqLvJAskCfkFrTz2kFHWmmzis+C+4+ELjk/sazwcTHrHXNZlgCeo8YOlM6SOrAFCynNew==", 3928 + "license": "MIT", 3929 + "dependencies": { 3930 + "@types/codemirror": "5.60.8", 3931 + "moment": "2.29.4" 3932 + }, 3933 + "peerDependencies": { 3934 + "@codemirror/state": "6.5.0", 3935 + "@codemirror/view": "6.38.6" 3936 + } 3937 + }, 3938 + "node_modules/optionator": { 3939 + "version": "0.9.4", 3940 + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", 3941 + "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==", 3942 + "dev": true, 3943 + "license": "MIT", 3944 + "dependencies": { 3945 + "deep-is": "^0.1.3", 3946 + "fast-levenshtein": "^2.0.6", 3947 + "levn": "^0.4.1", 3948 + "prelude-ls": "^1.2.1", 3949 + "type-check": "^0.4.0", 3950 + "word-wrap": "^1.2.5" 3951 + }, 3952 + "engines": { 3953 + "node": ">= 0.8.0" 3954 + } 3955 + }, 3956 + "node_modules/own-keys": { 3957 + "version": "1.0.1", 3958 + "resolved": "https://registry.npmjs.org/own-keys/-/own-keys-1.0.1.tgz", 3959 + "integrity": "sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg==", 3960 + "dev": true, 3961 + "license": "MIT", 3962 + "dependencies": { 3963 + "get-intrinsic": "^1.2.6", 3964 + "object-keys": "^1.1.1", 3965 + "safe-push-apply": "^1.0.0" 3966 + }, 3967 + "engines": { 3968 + "node": ">= 0.4" 3969 + }, 3970 + "funding": { 3971 + "url": "https://github.com/sponsors/ljharb" 3972 + } 3973 + }, 3974 + "node_modules/p-limit": { 3975 + "version": "3.1.0", 3976 + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", 3977 + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", 3978 + "dev": true, 3979 + "license": "MIT", 3980 + "dependencies": { 3981 + "yocto-queue": "^0.1.0" 3982 + }, 3983 + "engines": { 3984 + "node": ">=10" 3985 + }, 3986 + "funding": { 3987 + "url": "https://github.com/sponsors/sindresorhus" 3988 + } 3989 + }, 3990 + "node_modules/p-locate": { 3991 + "version": "5.0.0", 3992 + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", 3993 + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", 3994 + "dev": true, 3995 + "license": "MIT", 3996 + "dependencies": { 3997 + "p-limit": "^3.0.2" 3998 + }, 3999 + "engines": { 4000 + "node": ">=10" 4001 + }, 4002 + "funding": { 4003 + "url": "https://github.com/sponsors/sindresorhus" 4004 + } 4005 + }, 4006 + "node_modules/parent-module": { 4007 + "version": "1.0.1", 4008 + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", 4009 + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", 4010 + "dev": true, 4011 + "license": "MIT", 4012 + "dependencies": { 4013 + "callsites": "^3.0.0" 4014 + }, 4015 + "engines": { 4016 + "node": ">=6" 4017 + } 4018 + }, 4019 + "node_modules/path-exists": { 4020 + "version": "4.0.0", 4021 + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", 4022 + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", 4023 + "dev": true, 4024 + "license": "MIT", 4025 + "engines": { 4026 + "node": ">=8" 4027 + } 4028 + }, 4029 + "node_modules/path-key": { 4030 + "version": "3.1.1", 4031 + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", 4032 + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", 4033 + "dev": true, 4034 + "license": "MIT", 4035 + "engines": { 4036 + "node": ">=8" 4037 + } 4038 + }, 4039 + "node_modules/path-parse": { 4040 + "version": "1.0.7", 4041 + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", 4042 + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", 4043 + "dev": true, 4044 + "license": "MIT" 4045 + }, 4046 + "node_modules/picomatch": { 4047 + "version": "2.3.1", 4048 + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", 4049 + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", 4050 + "dev": true, 4051 + "license": "MIT", 4052 + "engines": { 4053 + "node": ">=8.6" 4054 + }, 4055 + "funding": { 4056 + "url": "https://github.com/sponsors/jonschlinkert" 4057 + } 4058 + }, 4059 + "node_modules/possible-typed-array-names": { 4060 + "version": "1.1.0", 4061 + "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz", 4062 + "integrity": "sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==", 4063 + "dev": true, 4064 + "license": "MIT", 4065 + "engines": { 4066 + "node": ">= 0.4" 4067 + } 4068 + }, 4069 + "node_modules/prelude-ls": { 4070 + "version": "1.2.1", 4071 + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", 4072 + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", 4073 + "dev": true, 4074 + "license": "MIT", 4075 + "engines": { 4076 + "node": ">= 0.8.0" 4077 + } 4078 + }, 4079 + "node_modules/prop-types": { 4080 + "version": "15.8.1", 4081 + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", 4082 + "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", 4083 + "dev": true, 4084 + "license": "MIT", 4085 + "dependencies": { 4086 + "loose-envify": "^1.4.0", 4087 + "object-assign": "^4.1.1", 4088 + "react-is": "^16.13.1" 4089 + } 4090 + }, 4091 + "node_modules/punycode": { 4092 + "version": "2.3.1", 4093 + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", 4094 + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", 4095 + "dev": true, 4096 + "license": "MIT", 4097 + "engines": { 4098 + "node": ">=6" 4099 + } 4100 + }, 4101 + "node_modules/queue-microtask": { 4102 + "version": "1.2.3", 4103 + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", 4104 + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", 4105 + "dev": true, 4106 + "funding": [ 4107 + { 4108 + "type": "github", 4109 + "url": "https://github.com/sponsors/feross" 4110 + }, 4111 + { 4112 + "type": "patreon", 4113 + "url": "https://www.patreon.com/feross" 4114 + }, 4115 + { 4116 + "type": "consulting", 4117 + "url": "https://feross.org/support" 4118 + } 4119 + ], 4120 + "license": "MIT" 4121 + }, 4122 + "node_modules/react-is": { 4123 + "version": "16.13.1", 4124 + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", 4125 + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", 4126 + "dev": true, 4127 + "license": "MIT" 4128 + }, 4129 + "node_modules/reflect.getprototypeof": { 4130 + "version": "1.0.10", 4131 + "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.10.tgz", 4132 + "integrity": "sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==", 4133 + "dev": true, 4134 + "license": "MIT", 4135 + "dependencies": { 4136 + "call-bind": "^1.0.8", 4137 + "define-properties": "^1.2.1", 4138 + "es-abstract": "^1.23.9", 4139 + "es-errors": "^1.3.0", 4140 + "es-object-atoms": "^1.0.0", 4141 + "get-intrinsic": "^1.2.7", 4142 + "get-proto": "^1.0.1", 4143 + "which-builtin-type": "^1.2.1" 4144 + }, 4145 + "engines": { 4146 + "node": ">= 0.4" 4147 + }, 4148 + "funding": { 4149 + "url": "https://github.com/sponsors/ljharb" 4150 + } 4151 + }, 4152 + "node_modules/regexp-tree": { 4153 + "version": "0.1.27", 4154 + "resolved": "https://registry.npmjs.org/regexp-tree/-/regexp-tree-0.1.27.tgz", 4155 + "integrity": "sha512-iETxpjK6YoRWJG5o6hXLwvjYAoW+FEZn9os0PD/b6AP6xQwsa/Y7lCVgIixBbUPMfhu+i2LtdeAqVTgGlQarfA==", 4156 + "dev": true, 4157 + "license": "MIT", 4158 + "bin": { 4159 + "regexp-tree": "bin/regexp-tree" 4160 + } 4161 + }, 4162 + "node_modules/regexp.prototype.flags": { 4163 + "version": "1.5.4", 4164 + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.4.tgz", 4165 + "integrity": "sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==", 4166 + "dev": true, 4167 + "license": "MIT", 4168 + "dependencies": { 4169 + "call-bind": "^1.0.8", 4170 + "define-properties": "^1.2.1", 4171 + "es-errors": "^1.3.0", 4172 + "get-proto": "^1.0.1", 4173 + "gopd": "^1.2.0", 4174 + "set-function-name": "^2.0.2" 4175 + }, 4176 + "engines": { 4177 + "node": ">= 0.4" 4178 + }, 4179 + "funding": { 4180 + "url": "https://github.com/sponsors/ljharb" 4181 + } 4182 + }, 4183 + "node_modules/require-from-string": { 4184 + "version": "2.0.2", 4185 + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", 4186 + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", 4187 + "dev": true, 4188 + "license": "MIT", 4189 + "engines": { 4190 + "node": ">=0.10.0" 4191 + } 4192 + }, 4193 + "node_modules/resolve": { 4194 + "version": "1.22.11", 4195 + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.11.tgz", 4196 + "integrity": "sha512-RfqAvLnMl313r7c9oclB1HhUEAezcpLjz95wFH4LVuhk9JF/r22qmVP9AMmOU4vMX7Q8pN8jwNg/CSpdFnMjTQ==", 4197 + "dev": true, 4198 + "license": "MIT", 4199 + "dependencies": { 4200 + "is-core-module": "^2.16.1", 4201 + "path-parse": "^1.0.7", 4202 + "supports-preserve-symlinks-flag": "^1.0.0" 4203 + }, 4204 + "bin": { 4205 + "resolve": "bin/resolve" 4206 + }, 4207 + "engines": { 4208 + "node": ">= 0.4" 4209 + }, 4210 + "funding": { 4211 + "url": "https://github.com/sponsors/ljharb" 4212 + } 4213 + }, 4214 + "node_modules/resolve-from": { 4215 + "version": "4.0.0", 4216 + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", 4217 + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", 4218 + "dev": true, 4219 + "license": "MIT", 4220 + "engines": { 4221 + "node": ">=4" 4222 + } 4223 + }, 4224 + "node_modules/resolve-pkg-maps": { 4225 + "version": "1.0.0", 4226 + "resolved": "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz", 4227 + "integrity": "sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==", 4228 + "dev": true, 4229 + "license": "MIT", 4230 + "funding": { 4231 + "url": "https://github.com/privatenumber/resolve-pkg-maps?sponsor=1" 4232 + } 4233 + }, 4234 + "node_modules/ret": { 4235 + "version": "0.1.15", 4236 + "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", 4237 + "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", 4238 + "dev": true, 4239 + "license": "MIT", 4240 + "engines": { 4241 + "node": ">=0.12" 4242 + } 4243 + }, 4244 + "node_modules/reusify": { 4245 + "version": "1.1.0", 4246 + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz", 4247 + "integrity": "sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==", 4248 + "dev": true, 4249 + "license": "MIT", 4250 + "engines": { 4251 + "iojs": ">=1.0.0", 4252 + "node": ">=0.10.0" 4253 + } 4254 + }, 4255 + "node_modules/run-parallel": { 4256 + "version": "1.2.0", 4257 + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", 4258 + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", 4259 + "dev": true, 4260 + "funding": [ 4261 + { 4262 + "type": "github", 4263 + "url": "https://github.com/sponsors/feross" 4264 + }, 4265 + { 4266 + "type": "patreon", 4267 + "url": "https://www.patreon.com/feross" 4268 + }, 4269 + { 4270 + "type": "consulting", 4271 + "url": "https://feross.org/support" 4272 + } 4273 + ], 4274 + "license": "MIT", 4275 + "dependencies": { 4276 + "queue-microtask": "^1.2.2" 4277 + } 4278 + }, 4279 + "node_modules/safe-array-concat": { 4280 + "version": "1.1.3", 4281 + "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.3.tgz", 4282 + "integrity": "sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q==", 4283 + "dev": true, 4284 + "license": "MIT", 4285 + "dependencies": { 4286 + "call-bind": "^1.0.8", 4287 + "call-bound": "^1.0.2", 4288 + "get-intrinsic": "^1.2.6", 4289 + "has-symbols": "^1.1.0", 4290 + "isarray": "^2.0.5" 4291 + }, 4292 + "engines": { 4293 + "node": ">=0.4" 4294 + }, 4295 + "funding": { 4296 + "url": "https://github.com/sponsors/ljharb" 4297 + } 4298 + }, 4299 + "node_modules/safe-buffer": { 4300 + "version": "5.2.1", 4301 + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", 4302 + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", 4303 + "dev": true, 4304 + "funding": [ 4305 + { 4306 + "type": "github", 4307 + "url": "https://github.com/sponsors/feross" 4308 + }, 4309 + { 4310 + "type": "patreon", 4311 + "url": "https://www.patreon.com/feross" 4312 + }, 4313 + { 4314 + "type": "consulting", 4315 + "url": "https://feross.org/support" 4316 + } 4317 + ], 4318 + "license": "MIT" 4319 + }, 4320 + "node_modules/safe-push-apply": { 4321 + "version": "1.0.0", 4322 + "resolved": "https://registry.npmjs.org/safe-push-apply/-/safe-push-apply-1.0.0.tgz", 4323 + "integrity": "sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==", 4324 + "dev": true, 4325 + "license": "MIT", 4326 + "dependencies": { 4327 + "es-errors": "^1.3.0", 4328 + "isarray": "^2.0.5" 4329 + }, 4330 + "engines": { 4331 + "node": ">= 0.4" 4332 + }, 4333 + "funding": { 4334 + "url": "https://github.com/sponsors/ljharb" 4335 + } 4336 + }, 4337 + "node_modules/safe-regex": { 4338 + "version": "2.1.1", 4339 + "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-2.1.1.tgz", 4340 + "integrity": "sha512-rx+x8AMzKb5Q5lQ95Zoi6ZbJqwCLkqi3XuJXp5P3rT8OEc6sZCJG5AE5dU3lsgRr/F4Bs31jSlVN+j5KrsGu9A==", 4341 + "dev": true, 4342 + "license": "MIT", 4343 + "dependencies": { 4344 + "regexp-tree": "~0.1.1" 4345 + } 4346 + }, 4347 + "node_modules/safe-regex-test": { 4348 + "version": "1.1.0", 4349 + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.1.0.tgz", 4350 + "integrity": "sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==", 4351 + "dev": true, 4352 + "license": "MIT", 4353 + "dependencies": { 4354 + "call-bound": "^1.0.2", 4355 + "es-errors": "^1.3.0", 4356 + "is-regex": "^1.2.1" 4357 + }, 4358 + "engines": { 4359 + "node": ">= 0.4" 4360 + }, 4361 + "funding": { 4362 + "url": "https://github.com/sponsors/ljharb" 4363 + } 4364 + }, 4365 + "node_modules/semver": { 4366 + "version": "6.3.1", 4367 + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", 4368 + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", 4369 + "dev": true, 4370 + "license": "ISC", 4371 + "bin": { 4372 + "semver": "bin/semver.js" 4373 + } 4374 + }, 4375 + "node_modules/set-function-length": { 4376 + "version": "1.2.2", 4377 + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", 4378 + "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", 4379 + "dev": true, 4380 + "license": "MIT", 4381 + "dependencies": { 4382 + "define-data-property": "^1.1.4", 4383 + "es-errors": "^1.3.0", 4384 + "function-bind": "^1.1.2", 4385 + "get-intrinsic": "^1.2.4", 4386 + "gopd": "^1.0.1", 4387 + "has-property-descriptors": "^1.0.2" 4388 + }, 4389 + "engines": { 4390 + "node": ">= 0.4" 4391 + } 4392 + }, 4393 + "node_modules/set-function-name": { 4394 + "version": "2.0.2", 4395 + "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", 4396 + "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", 4397 + "dev": true, 4398 + "license": "MIT", 4399 + "dependencies": { 4400 + "define-data-property": "^1.1.4", 4401 + "es-errors": "^1.3.0", 4402 + "functions-have-names": "^1.2.3", 4403 + "has-property-descriptors": "^1.0.2" 4404 + }, 4405 + "engines": { 4406 + "node": ">= 0.4" 4407 + } 4408 + }, 4409 + "node_modules/set-proto": { 4410 + "version": "1.0.0", 4411 + "resolved": "https://registry.npmjs.org/set-proto/-/set-proto-1.0.0.tgz", 4412 + "integrity": "sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==", 4413 + "dev": true, 4414 + "license": "MIT", 4415 + "dependencies": { 4416 + "dunder-proto": "^1.0.1", 4417 + "es-errors": "^1.3.0", 4418 + "es-object-atoms": "^1.0.0" 4419 + }, 4420 + "engines": { 4421 + "node": ">= 0.4" 4422 + } 4423 + }, 4424 + "node_modules/shebang-command": { 4425 + "version": "2.0.0", 4426 + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", 4427 + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", 4428 + "dev": true, 4429 + "license": "MIT", 4430 + "dependencies": { 4431 + "shebang-regex": "^3.0.0" 4432 + }, 4433 + "engines": { 4434 + "node": ">=8" 4435 + } 4436 + }, 4437 + "node_modules/shebang-regex": { 4438 + "version": "3.0.0", 4439 + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", 4440 + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", 4441 + "dev": true, 4442 + "license": "MIT", 4443 + "engines": { 4444 + "node": ">=8" 4445 + } 4446 + }, 4447 + "node_modules/side-channel": { 4448 + "version": "1.1.0", 4449 + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz", 4450 + "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==", 4451 + "dev": true, 4452 + "license": "MIT", 4453 + "dependencies": { 4454 + "es-errors": "^1.3.0", 4455 + "object-inspect": "^1.13.3", 4456 + "side-channel-list": "^1.0.0", 4457 + "side-channel-map": "^1.0.1", 4458 + "side-channel-weakmap": "^1.0.2" 4459 + }, 4460 + "engines": { 4461 + "node": ">= 0.4" 4462 + }, 4463 + "funding": { 4464 + "url": "https://github.com/sponsors/ljharb" 4465 + } 4466 + }, 4467 + "node_modules/side-channel-list": { 4468 + "version": "1.0.0", 4469 + "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz", 4470 + "integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==", 4471 + "dev": true, 4472 + "license": "MIT", 4473 + "dependencies": { 4474 + "es-errors": "^1.3.0", 4475 + "object-inspect": "^1.13.3" 4476 + }, 4477 + "engines": { 4478 + "node": ">= 0.4" 4479 + }, 4480 + "funding": { 4481 + "url": "https://github.com/sponsors/ljharb" 4482 + } 4483 + }, 4484 + "node_modules/side-channel-map": { 4485 + "version": "1.0.1", 4486 + "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz", 4487 + "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", 4488 + "dev": true, 4489 + "license": "MIT", 4490 + "dependencies": { 4491 + "call-bound": "^1.0.2", 4492 + "es-errors": "^1.3.0", 4493 + "get-intrinsic": "^1.2.5", 4494 + "object-inspect": "^1.13.3" 4495 + }, 4496 + "engines": { 4497 + "node": ">= 0.4" 4498 + }, 4499 + "funding": { 4500 + "url": "https://github.com/sponsors/ljharb" 4501 + } 4502 + }, 4503 + "node_modules/side-channel-weakmap": { 4504 + "version": "1.0.2", 4505 + "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", 4506 + "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", 4507 + "dev": true, 4508 + "license": "MIT", 4509 + "dependencies": { 4510 + "call-bound": "^1.0.2", 4511 + "es-errors": "^1.3.0", 4512 + "get-intrinsic": "^1.2.5", 4513 + "object-inspect": "^1.13.3", 4514 + "side-channel-map": "^1.0.1" 4515 + }, 4516 + "engines": { 4517 + "node": ">= 0.4" 4518 + }, 4519 + "funding": { 4520 + "url": "https://github.com/sponsors/ljharb" 4521 + } 4522 + }, 4523 + "node_modules/stop-iteration-iterator": { 4524 + "version": "1.1.0", 4525 + "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.1.0.tgz", 4526 + "integrity": "sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==", 4527 + "dev": true, 4528 + "license": "MIT", 4529 + "dependencies": { 4530 + "es-errors": "^1.3.0", 4531 + "internal-slot": "^1.1.0" 4532 + }, 4533 + "engines": { 4534 + "node": ">= 0.4" 4535 + } 4536 + }, 4537 + "node_modules/string.prototype.matchall": { 4538 + "version": "4.0.12", 4539 + "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.12.tgz", 4540 + "integrity": "sha512-6CC9uyBL+/48dYizRf7H7VAYCMCNTBeM78x/VTUe9bFEaxBepPJDa1Ow99LqI/1yF7kuy7Q3cQsYMrcjGUcskA==", 4541 + "dev": true, 4542 + "license": "MIT", 4543 + "dependencies": { 4544 + "call-bind": "^1.0.8", 4545 + "call-bound": "^1.0.3", 4546 + "define-properties": "^1.2.1", 4547 + "es-abstract": "^1.23.6", 4548 + "es-errors": "^1.3.0", 4549 + "es-object-atoms": "^1.0.0", 4550 + "get-intrinsic": "^1.2.6", 4551 + "gopd": "^1.2.0", 4552 + "has-symbols": "^1.1.0", 4553 + "internal-slot": "^1.1.0", 4554 + "regexp.prototype.flags": "^1.5.3", 4555 + "set-function-name": "^2.0.2", 4556 + "side-channel": "^1.1.0" 4557 + }, 4558 + "engines": { 4559 + "node": ">= 0.4" 4560 + }, 4561 + "funding": { 4562 + "url": "https://github.com/sponsors/ljharb" 4563 + } 4564 + }, 4565 + "node_modules/string.prototype.repeat": { 4566 + "version": "1.0.0", 4567 + "resolved": "https://registry.npmjs.org/string.prototype.repeat/-/string.prototype.repeat-1.0.0.tgz", 4568 + "integrity": "sha512-0u/TldDbKD8bFCQ/4f5+mNRrXwZ8hg2w7ZR8wa16e8z9XpePWl3eGEcUD0OXpEH/VJH/2G3gjUtR3ZOiBe2S/w==", 4569 + "dev": true, 4570 + "license": "MIT", 4571 + "dependencies": { 4572 + "define-properties": "^1.1.3", 4573 + "es-abstract": "^1.17.5" 4574 + } 4575 + }, 4576 + "node_modules/string.prototype.trim": { 4577 + "version": "1.2.10", 4578 + "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.10.tgz", 4579 + "integrity": "sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==", 4580 + "dev": true, 4581 + "license": "MIT", 4582 + "dependencies": { 4583 + "call-bind": "^1.0.8", 4584 + "call-bound": "^1.0.2", 4585 + "define-data-property": "^1.1.4", 4586 + "define-properties": "^1.2.1", 4587 + "es-abstract": "^1.23.5", 4588 + "es-object-atoms": "^1.0.0", 4589 + "has-property-descriptors": "^1.0.2" 4590 + }, 4591 + "engines": { 4592 + "node": ">= 0.4" 4593 + }, 4594 + "funding": { 4595 + "url": "https://github.com/sponsors/ljharb" 4596 + } 4597 + }, 4598 + "node_modules/string.prototype.trimend": { 4599 + "version": "1.0.9", 4600 + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.9.tgz", 4601 + "integrity": "sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ==", 4602 + "dev": true, 4603 + "license": "MIT", 4604 + "dependencies": { 4605 + "call-bind": "^1.0.8", 4606 + "call-bound": "^1.0.2", 4607 + "define-properties": "^1.2.1", 4608 + "es-object-atoms": "^1.0.0" 4609 + }, 4610 + "engines": { 4611 + "node": ">= 0.4" 4612 + }, 4613 + "funding": { 4614 + "url": "https://github.com/sponsors/ljharb" 4615 + } 4616 + }, 4617 + "node_modules/string.prototype.trimstart": { 4618 + "version": "1.0.8", 4619 + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz", 4620 + "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==", 4621 + "dev": true, 4622 + "license": "MIT", 4623 + "dependencies": { 4624 + "call-bind": "^1.0.7", 4625 + "define-properties": "^1.2.1", 4626 + "es-object-atoms": "^1.0.0" 4627 + }, 4628 + "engines": { 4629 + "node": ">= 0.4" 4630 + }, 4631 + "funding": { 4632 + "url": "https://github.com/sponsors/ljharb" 4633 + } 4634 + }, 4635 + "node_modules/strip-bom": { 4636 + "version": "3.0.0", 4637 + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", 4638 + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", 4639 + "dev": true, 4640 + "license": "MIT", 4641 + "engines": { 4642 + "node": ">=4" 4643 + } 4644 + }, 4645 + "node_modules/strip-json-comments": { 4646 + "version": "3.1.1", 4647 + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", 4648 + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", 4649 + "dev": true, 4650 + "license": "MIT", 4651 + "engines": { 4652 + "node": ">=8" 4653 + }, 4654 + "funding": { 4655 + "url": "https://github.com/sponsors/sindresorhus" 4656 + } 4657 + }, 4658 + "node_modules/style-mod": { 4659 + "version": "4.1.3", 4660 + "resolved": "https://registry.npmjs.org/style-mod/-/style-mod-4.1.3.tgz", 4661 + "integrity": "sha512-i/n8VsZydrugj3Iuzll8+x/00GH2vnYsk1eomD8QiRrSAeW6ItbCQDtfXCeJHd0iwiNagqjQkvpvREEPtW3IoQ==", 4662 + "license": "MIT", 4663 + "peer": true 4664 + }, 4665 + "node_modules/supports-color": { 4666 + "version": "7.2.0", 4667 + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", 4668 + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", 4669 + "dev": true, 4670 + "license": "MIT", 4671 + "dependencies": { 4672 + "has-flag": "^4.0.0" 4673 + }, 4674 + "engines": { 4675 + "node": ">=8" 4676 + } 4677 + }, 4678 + "node_modules/supports-preserve-symlinks-flag": { 4679 + "version": "1.0.0", 4680 + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", 4681 + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", 4682 + "dev": true, 4683 + "license": "MIT", 4684 + "engines": { 4685 + "node": ">= 0.4" 4686 + }, 4687 + "funding": { 4688 + "url": "https://github.com/sponsors/ljharb" 4689 + } 4690 + }, 4691 + "node_modules/synckit": { 4692 + "version": "0.9.3", 4693 + "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.9.3.tgz", 4694 + "integrity": "sha512-JJoOEKTfL1urb1mDoEblhD9NhEbWmq9jHEMEnxoC4ujUaZ4itA8vKgwkFAyNClgxplLi9tsUKX+EduK0p/l7sg==", 4695 + "dev": true, 4696 + "license": "MIT", 4697 + "dependencies": { 4698 + "@pkgr/core": "^0.1.0", 4699 + "tslib": "^2.6.2" 4700 + }, 4701 + "engines": { 4702 + "node": "^14.18.0 || >=16.0.0" 4703 + }, 4704 + "funding": { 4705 + "url": "https://opencollective.com/unts" 4706 + } 4707 + }, 4708 + "node_modules/synckit/node_modules/tslib": { 4709 + "version": "2.8.1", 4710 + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", 4711 + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", 4712 + "dev": true, 4713 + "license": "0BSD" 4714 + }, 4715 + "node_modules/tapable": { 4716 + "version": "2.3.0", 4717 + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.3.0.tgz", 4718 + "integrity": "sha512-g9ljZiwki/LfxmQADO3dEY1CbpmXT5Hm2fJ+QaGKwSXUylMybePR7/67YW7jOrrvjEgL1Fmz5kzyAjWVWLlucg==", 4719 + "dev": true, 4720 + "license": "MIT", 4721 + "engines": { 4722 + "node": ">=6" 4723 + }, 4724 + "funding": { 4725 + "type": "opencollective", 4726 + "url": "https://opencollective.com/webpack" 4727 + } 4728 + }, 4729 + "node_modules/to-regex-range": { 4730 + "version": "5.0.1", 4731 + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", 4732 + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", 4733 + "dev": true, 4734 + "license": "MIT", 4735 + "dependencies": { 4736 + "is-number": "^7.0.0" 4737 + }, 4738 + "engines": { 4739 + "node": ">=8.0" 4740 + } 4741 + }, 4742 + "node_modules/toml-eslint-parser": { 4743 + "version": "0.9.3", 4744 + "resolved": "https://registry.npmjs.org/toml-eslint-parser/-/toml-eslint-parser-0.9.3.tgz", 4745 + "integrity": "sha512-moYoCvkNUAPCxSW9jmHmRElhm4tVJpHL8ItC/+uYD0EpPSFXbck7yREz9tNdJVTSpHVod8+HoipcpbQ0oE6gsw==", 4746 + "dev": true, 4747 + "license": "MIT", 4748 + "dependencies": { 4749 + "eslint-visitor-keys": "^3.0.0" 4750 + }, 4751 + "engines": { 4752 + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" 4753 + }, 4754 + "funding": { 4755 + "url": "https://github.com/sponsors/ota-meshi" 4756 + } 4757 + }, 4758 + "node_modules/toml-eslint-parser/node_modules/eslint-visitor-keys": { 4759 + "version": "3.4.3", 4760 + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", 4761 + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", 4762 + "dev": true, 4763 + "license": "Apache-2.0", 4764 + "engines": { 4765 + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" 4766 + }, 4767 + "funding": { 4768 + "url": "https://opencollective.com/eslint" 4769 + } 4770 + }, 4771 + "node_modules/ts-api-utils": { 4772 + "version": "2.1.0", 4773 + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz", 4774 + "integrity": "sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==", 4775 + "dev": true, 4776 + "license": "MIT", 4777 + "engines": { 4778 + "node": ">=18.12" 4779 + }, 4780 + "peerDependencies": { 4781 + "typescript": ">=4.8.4" 4782 + } 4783 + }, 4784 + "node_modules/tsconfig-paths": { 4785 + "version": "3.15.0", 4786 + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz", 4787 + "integrity": "sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==", 4788 + "dev": true, 4789 + "license": "MIT", 4790 + "dependencies": { 4791 + "@types/json5": "^0.0.29", 4792 + "json5": "^1.0.2", 4793 + "minimist": "^1.2.6", 4794 + "strip-bom": "^3.0.0" 4795 + } 4796 + }, 4797 + "node_modules/tslib": { 4798 + "version": "2.4.0", 4799 + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", 4800 + "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==", 4801 + "dev": true, 4802 + "license": "0BSD" 4803 + }, 4804 + "node_modules/tunnel-agent": { 4805 + "version": "0.6.0", 4806 + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", 4807 + "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==", 4808 + "dev": true, 4809 + "license": "Apache-2.0", 4810 + "dependencies": { 4811 + "safe-buffer": "^5.0.1" 4812 + }, 4813 + "engines": { 4814 + "node": "*" 4815 + } 4816 + }, 4817 + "node_modules/type-check": { 4818 + "version": "0.4.0", 4819 + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", 4820 + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", 4821 + "dev": true, 4822 + "license": "MIT", 4823 + "dependencies": { 4824 + "prelude-ls": "^1.2.1" 4825 + }, 4826 + "engines": { 4827 + "node": ">= 0.8.0" 4828 + } 4829 + }, 4830 + "node_modules/typed-array-buffer": { 4831 + "version": "1.0.3", 4832 + "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.3.tgz", 4833 + "integrity": "sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==", 4834 + "dev": true, 4835 + "license": "MIT", 4836 + "dependencies": { 4837 + "call-bound": "^1.0.3", 4838 + "es-errors": "^1.3.0", 4839 + "is-typed-array": "^1.1.14" 4840 + }, 4841 + "engines": { 4842 + "node": ">= 0.4" 4843 + } 4844 + }, 4845 + "node_modules/typed-array-byte-length": { 4846 + "version": "1.0.3", 4847 + "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.3.tgz", 4848 + "integrity": "sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==", 4849 + "dev": true, 4850 + "license": "MIT", 4851 + "dependencies": { 4852 + "call-bind": "^1.0.8", 4853 + "for-each": "^0.3.3", 4854 + "gopd": "^1.2.0", 4855 + "has-proto": "^1.2.0", 4856 + "is-typed-array": "^1.1.14" 4857 + }, 4858 + "engines": { 4859 + "node": ">= 0.4" 4860 + }, 4861 + "funding": { 4862 + "url": "https://github.com/sponsors/ljharb" 4863 + } 4864 + }, 4865 + "node_modules/typed-array-byte-offset": { 4866 + "version": "1.0.4", 4867 + "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.4.tgz", 4868 + "integrity": "sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ==", 4869 + "dev": true, 4870 + "license": "MIT", 4871 + "dependencies": { 4872 + "available-typed-arrays": "^1.0.7", 4873 + "call-bind": "^1.0.8", 4874 + "for-each": "^0.3.3", 4875 + "gopd": "^1.2.0", 4876 + "has-proto": "^1.2.0", 4877 + "is-typed-array": "^1.1.15", 4878 + "reflect.getprototypeof": "^1.0.9" 4879 + }, 4880 + "engines": { 4881 + "node": ">= 0.4" 4882 + }, 4883 + "funding": { 4884 + "url": "https://github.com/sponsors/ljharb" 4885 + } 4886 + }, 4887 + "node_modules/typed-array-length": { 4888 + "version": "1.0.7", 4889 + "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.7.tgz", 4890 + "integrity": "sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==", 4891 + "dev": true, 4892 + "license": "MIT", 4893 + "dependencies": { 4894 + "call-bind": "^1.0.7", 4895 + "for-each": "^0.3.3", 4896 + "gopd": "^1.0.1", 4897 + "is-typed-array": "^1.1.13", 4898 + "possible-typed-array-names": "^1.0.0", 4899 + "reflect.getprototypeof": "^1.0.6" 4900 + }, 4901 + "engines": { 4902 + "node": ">= 0.4" 4903 + }, 4904 + "funding": { 4905 + "url": "https://github.com/sponsors/ljharb" 4906 + } 4907 + }, 4908 + "node_modules/typescript": { 4909 + "version": "5.8.3", 4910 + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.8.3.tgz", 4911 + "integrity": "sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==", 4912 + "dev": true, 4913 + "license": "Apache-2.0", 4914 + "bin": { 4915 + "tsc": "bin/tsc", 4916 + "tsserver": "bin/tsserver" 4917 + }, 4918 + "engines": { 4919 + "node": ">=14.17" 4920 + } 4921 + }, 4922 + "node_modules/typescript-eslint": { 4923 + "version": "8.35.1", 4924 + "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.35.1.tgz", 4925 + "integrity": "sha512-xslJjFzhOmHYQzSB/QTeASAHbjmxOGEP6Coh93TXmUBFQoJ1VU35UHIDmG06Jd6taf3wqqC1ntBnCMeymy5Ovw==", 4926 + "dev": true, 4927 + "license": "MIT", 4928 + "dependencies": { 4929 + "@typescript-eslint/eslint-plugin": "8.35.1", 4930 + "@typescript-eslint/parser": "8.35.1", 4931 + "@typescript-eslint/utils": "8.35.1" 4932 + }, 4933 + "engines": { 4934 + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 4935 + }, 4936 + "funding": { 4937 + "type": "opencollective", 4938 + "url": "https://opencollective.com/typescript-eslint" 4939 + }, 4940 + "peerDependencies": { 4941 + "eslint": "^8.57.0 || ^9.0.0", 4942 + "typescript": ">=4.8.4 <5.9.0" 4943 + } 4944 + }, 4945 + "node_modules/unbox-primitive": { 4946 + "version": "1.1.0", 4947 + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.1.0.tgz", 4948 + "integrity": "sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==", 4949 + "dev": true, 4950 + "license": "MIT", 4951 + "dependencies": { 4952 + "call-bound": "^1.0.3", 4953 + "has-bigints": "^1.0.2", 4954 + "has-symbols": "^1.1.0", 4955 + "which-boxed-primitive": "^1.1.1" 4956 + }, 4957 + "engines": { 4958 + "node": ">= 0.4" 4959 + }, 4960 + "funding": { 4961 + "url": "https://github.com/sponsors/ljharb" 4962 + } 4963 + }, 4964 + "node_modules/undici-types": { 4965 + "version": "5.26.5", 4966 + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", 4967 + "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==", 4968 + "dev": true, 4969 + "license": "MIT" 4970 + }, 4971 + "node_modules/uri-js": { 4972 + "version": "4.4.1", 4973 + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", 4974 + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", 4975 + "dev": true, 4976 + "license": "BSD-2-Clause", 4977 + "dependencies": { 4978 + "punycode": "^2.1.0" 4979 + } 4980 + }, 4981 + "node_modules/w3c-keyname": { 4982 + "version": "2.2.8", 4983 + "resolved": "https://registry.npmjs.org/w3c-keyname/-/w3c-keyname-2.2.8.tgz", 4984 + "integrity": "sha512-dpojBhNsCNN7T82Tm7k26A6G9ML3NkhDsnw9n/eoxSRlVBB4CEtIQ/KTCLI2Fwf3ataSXRhYFkQi3SlnFwPvPQ==", 4985 + "license": "MIT", 4986 + "peer": true 4987 + }, 4988 + "node_modules/which": { 4989 + "version": "2.0.2", 4990 + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", 4991 + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", 4992 + "dev": true, 4993 + "license": "ISC", 4994 + "dependencies": { 4995 + "isexe": "^2.0.0" 4996 + }, 4997 + "bin": { 4998 + "node-which": "bin/node-which" 4999 + }, 5000 + "engines": { 5001 + "node": ">= 8" 5002 + } 5003 + }, 5004 + "node_modules/which-boxed-primitive": { 5005 + "version": "1.1.1", 5006 + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.1.1.tgz", 5007 + "integrity": "sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==", 5008 + "dev": true, 5009 + "license": "MIT", 5010 + "dependencies": { 5011 + "is-bigint": "^1.1.0", 5012 + "is-boolean-object": "^1.2.1", 5013 + "is-number-object": "^1.1.1", 5014 + "is-string": "^1.1.1", 5015 + "is-symbol": "^1.1.1" 5016 + }, 5017 + "engines": { 5018 + "node": ">= 0.4" 5019 + }, 5020 + "funding": { 5021 + "url": "https://github.com/sponsors/ljharb" 5022 + } 5023 + }, 5024 + "node_modules/which-builtin-type": { 5025 + "version": "1.2.1", 5026 + "resolved": "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.2.1.tgz", 5027 + "integrity": "sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==", 5028 + "dev": true, 5029 + "license": "MIT", 5030 + "dependencies": { 5031 + "call-bound": "^1.0.2", 5032 + "function.prototype.name": "^1.1.6", 5033 + "has-tostringtag": "^1.0.2", 5034 + "is-async-function": "^2.0.0", 5035 + "is-date-object": "^1.1.0", 5036 + "is-finalizationregistry": "^1.1.0", 5037 + "is-generator-function": "^1.0.10", 5038 + "is-regex": "^1.2.1", 5039 + "is-weakref": "^1.0.2", 5040 + "isarray": "^2.0.5", 5041 + "which-boxed-primitive": "^1.1.0", 5042 + "which-collection": "^1.0.2", 5043 + "which-typed-array": "^1.1.16" 5044 + }, 5045 + "engines": { 5046 + "node": ">= 0.4" 5047 + }, 5048 + "funding": { 5049 + "url": "https://github.com/sponsors/ljharb" 5050 + } 5051 + }, 5052 + "node_modules/which-collection": { 5053 + "version": "1.0.2", 5054 + "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.2.tgz", 5055 + "integrity": "sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==", 5056 + "dev": true, 5057 + "license": "MIT", 5058 + "dependencies": { 5059 + "is-map": "^2.0.3", 5060 + "is-set": "^2.0.3", 5061 + "is-weakmap": "^2.0.2", 5062 + "is-weakset": "^2.0.3" 5063 + }, 5064 + "engines": { 5065 + "node": ">= 0.4" 5066 + }, 5067 + "funding": { 5068 + "url": "https://github.com/sponsors/ljharb" 5069 + } 5070 + }, 5071 + "node_modules/which-typed-array": { 5072 + "version": "1.1.19", 5073 + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.19.tgz", 5074 + "integrity": "sha512-rEvr90Bck4WZt9HHFC4DJMsjvu7x+r6bImz0/BrbWb7A2djJ8hnZMrWnHo9F8ssv0OMErasDhftrfROTyqSDrw==", 5075 + "dev": true, 5076 + "license": "MIT", 5077 + "dependencies": { 5078 + "available-typed-arrays": "^1.0.7", 5079 + "call-bind": "^1.0.8", 5080 + "call-bound": "^1.0.4", 5081 + "for-each": "^0.3.5", 5082 + "get-proto": "^1.0.1", 5083 + "gopd": "^1.2.0", 5084 + "has-tostringtag": "^1.0.2" 5085 + }, 5086 + "engines": { 5087 + "node": ">= 0.4" 5088 + }, 5089 + "funding": { 5090 + "url": "https://github.com/sponsors/ljharb" 5091 + } 5092 + }, 5093 + "node_modules/word-wrap": { 5094 + "version": "1.2.5", 5095 + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", 5096 + "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", 5097 + "dev": true, 5098 + "license": "MIT", 5099 + "engines": { 5100 + "node": ">=0.10.0" 5101 + } 5102 + }, 5103 + "node_modules/yaml": { 5104 + "version": "2.8.1", 5105 + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.8.1.tgz", 5106 + "integrity": "sha512-lcYcMxX2PO9XMGvAJkJ3OsNMw+/7FKes7/hgerGUYWIoWu5j/+YQqcZr5JnPZWzOsEBgMbSbiSTn/dv/69Mkpw==", 5107 + "dev": true, 5108 + "license": "ISC", 5109 + "bin": { 5110 + "yaml": "bin.mjs" 5111 + }, 5112 + "engines": { 5113 + "node": ">= 14.6" 5114 + } 5115 + }, 5116 + "node_modules/yaml-eslint-parser": { 5117 + "version": "1.3.0", 5118 + "resolved": "https://registry.npmjs.org/yaml-eslint-parser/-/yaml-eslint-parser-1.3.0.tgz", 5119 + "integrity": "sha512-E/+VitOorXSLiAqtTd7Yqax0/pAS3xaYMP+AUUJGOK1OZG3rhcj9fcJOM5HJ2VrP1FrStVCWr1muTfQCdj4tAA==", 5120 + "dev": true, 5121 + "license": "MIT", 5122 + "dependencies": { 5123 + "eslint-visitor-keys": "^3.0.0", 5124 + "yaml": "^2.0.0" 5125 + }, 5126 + "engines": { 5127 + "node": "^14.17.0 || >=16.0.0" 5128 + }, 5129 + "funding": { 5130 + "url": "https://github.com/sponsors/ota-meshi" 5131 + } 5132 + }, 5133 + "node_modules/yaml-eslint-parser/node_modules/eslint-visitor-keys": { 5134 + "version": "3.4.3", 5135 + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", 5136 + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", 5137 + "dev": true, 5138 + "license": "Apache-2.0", 5139 + "engines": { 5140 + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" 5141 + }, 5142 + "funding": { 5143 + "url": "https://opencollective.com/eslint" 5144 + } 5145 + }, 5146 + "node_modules/yocto-queue": { 5147 + "version": "0.1.0", 5148 + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", 5149 + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", 5150 + "dev": true, 5151 + "license": "MIT", 5152 + "engines": { 5153 + "node": ">=10" 5154 + }, 5155 + "funding": { 5156 + "url": "https://github.com/sponsors/sindresorhus" 5157 + } 5158 + } 5159 + } 5160 + }
+29
package.json
··· 1 + { 2 + "name": "obsidian-sample-plugin", 3 + "version": "1.0.0", 4 + "description": "This is a sample plugin for Obsidian (https://obsidian.md)", 5 + "main": "main.js", 6 + "type": "module", 7 + "scripts": { 8 + "dev": "node esbuild.config.mjs", 9 + "build": "tsc -noEmit -skipLibCheck && node esbuild.config.mjs production", 10 + "version": "node version-bump.mjs && git add manifest.json versions.json", 11 + "lint": "eslint ." 12 + }, 13 + "keywords": [], 14 + "license": "0-BSD", 15 + "devDependencies": { 16 + "@types/node": "^16.11.6", 17 + "esbuild": "0.25.5", 18 + "eslint-plugin-obsidianmd": "0.1.9", 19 + "globals": "14.0.0", 20 + "tslib": "2.4.0", 21 + "typescript": "^5.8.3", 22 + "typescript-eslint": "8.35.1", 23 + "@eslint/js": "9.30.1", 24 + "jiti": "2.6.1" 25 + }, 26 + "dependencies": { 27 + "obsidian": "latest" 28 + } 29 + }
+99
src/main.ts
··· 1 + import {App, Editor, MarkdownView, Modal, Notice, Plugin} from 'obsidian'; 2 + import {DEFAULT_SETTINGS, MyPluginSettings, SampleSettingTab} from "./settings"; 3 + 4 + // Remember to rename these classes and interfaces! 5 + 6 + export default class MyPlugin extends Plugin { 7 + settings: MyPluginSettings; 8 + 9 + async onload() { 10 + await this.loadSettings(); 11 + 12 + // This creates an icon in the left ribbon. 13 + this.addRibbonIcon('dice', 'Sample', (evt: MouseEvent) => { 14 + // Called when the user clicks the icon. 15 + new Notice('This is a notice!'); 16 + }); 17 + 18 + // This adds a status bar item to the bottom of the app. Does not work on mobile apps. 19 + const statusBarItemEl = this.addStatusBarItem(); 20 + statusBarItemEl.setText('Status bar text'); 21 + 22 + // This adds a simple command that can be triggered anywhere 23 + this.addCommand({ 24 + id: 'open-modal-simple', 25 + name: 'Open modal (simple)', 26 + callback: () => { 27 + new SampleModal(this.app).open(); 28 + } 29 + }); 30 + // This adds an editor command that can perform some operation on the current editor instance 31 + this.addCommand({ 32 + id: 'replace-selected', 33 + name: 'Replace selected content', 34 + editorCallback: (editor: Editor, view: MarkdownView) => { 35 + editor.replaceSelection('Sample editor command'); 36 + } 37 + }); 38 + // This adds a complex command that can check whether the current state of the app allows execution of the command 39 + this.addCommand({ 40 + id: 'open-modal-complex', 41 + name: 'Open modal (complex)', 42 + checkCallback: (checking: boolean) => { 43 + // Conditions to check 44 + const markdownView = this.app.workspace.getActiveViewOfType(MarkdownView); 45 + if (markdownView) { 46 + // If checking is true, we're simply "checking" if the command can be run. 47 + // If checking is false, then we want to actually perform the operation. 48 + if (!checking) { 49 + new SampleModal(this.app).open(); 50 + } 51 + 52 + // This command will only show up in Command Palette when the check function returns true 53 + return true; 54 + } 55 + return false; 56 + } 57 + }); 58 + 59 + // This adds a settings tab so the user can configure various aspects of the plugin 60 + this.addSettingTab(new SampleSettingTab(this.app, this)); 61 + 62 + // If the plugin hooks up any global DOM events (on parts of the app that doesn't belong to this plugin) 63 + // Using this function will automatically remove the event listener when this plugin is disabled. 64 + this.registerDomEvent(document, 'click', (evt: MouseEvent) => { 65 + new Notice("Click"); 66 + }); 67 + 68 + // When registering intervals, this function will automatically clear the interval when the plugin is disabled. 69 + this.registerInterval(window.setInterval(() => console.log('setInterval'), 5 * 60 * 1000)); 70 + 71 + } 72 + 73 + onunload() { 74 + } 75 + 76 + async loadSettings() { 77 + this.settings = Object.assign({}, DEFAULT_SETTINGS, await this.loadData() as Partial<MyPluginSettings>); 78 + } 79 + 80 + async saveSettings() { 81 + await this.saveData(this.settings); 82 + } 83 + } 84 + 85 + class SampleModal extends Modal { 86 + constructor(app: App) { 87 + super(app); 88 + } 89 + 90 + onOpen() { 91 + let {contentEl} = this; 92 + contentEl.setText('Woah!'); 93 + } 94 + 95 + onClose() { 96 + const {contentEl} = this; 97 + contentEl.empty(); 98 + } 99 + }
+36
src/settings.ts
··· 1 + import {App, PluginSettingTab, Setting} from "obsidian"; 2 + import MyPlugin from "./main"; 3 + 4 + export interface MyPluginSettings { 5 + mySetting: string; 6 + } 7 + 8 + export const DEFAULT_SETTINGS: MyPluginSettings = { 9 + mySetting: 'default' 10 + } 11 + 12 + export class SampleSettingTab extends PluginSettingTab { 13 + plugin: MyPlugin; 14 + 15 + constructor(app: App, plugin: MyPlugin) { 16 + super(app, plugin); 17 + this.plugin = plugin; 18 + } 19 + 20 + display(): void { 21 + const {containerEl} = this; 22 + 23 + containerEl.empty(); 24 + 25 + new Setting(containerEl) 26 + .setName('Settings #1') 27 + .setDesc('It\'s a secret') 28 + .addText(text => text 29 + .setPlaceholder('Enter your secret') 30 + .setValue(this.plugin.settings.mySetting) 31 + .onChange(async (value) => { 32 + this.plugin.settings.mySetting = value; 33 + await this.plugin.saveSettings(); 34 + })); 35 + } 36 + }
+8
styles.css
··· 1 + /* 2 + 3 + This CSS file will be included with your plugin, and 4 + available in the app when your plugin is enabled. 5 + 6 + If your plugin does not need CSS, delete this file. 7 + 8 + */
+30
tsconfig.json
··· 1 + { 2 + "compilerOptions": { 3 + "baseUrl": "src", 4 + "inlineSourceMap": true, 5 + "inlineSources": true, 6 + "module": "ESNext", 7 + "target": "ES6", 8 + "allowJs": true, 9 + "noImplicitAny": true, 10 + "noImplicitThis": true, 11 + "noImplicitReturns": true, 12 + "moduleResolution": "node", 13 + "importHelpers": true, 14 + "noUncheckedIndexedAccess": true, 15 + "isolatedModules": true, 16 + "strictNullChecks": true, 17 + "strictBindCallApply": true, 18 + "allowSyntheticDefaultImports": true, 19 + "useUnknownInCatchVariables": true, 20 + "lib": [ 21 + "DOM", 22 + "ES5", 23 + "ES6", 24 + "ES7" 25 + ] 26 + }, 27 + "include": [ 28 + "src/**/*.ts" 29 + ] 30 + }
+17
version-bump.mjs
··· 1 + import { readFileSync, writeFileSync } from "fs"; 2 + 3 + const targetVersion = process.env.npm_package_version; 4 + 5 + // read minAppVersion from manifest.json and bump version to target version 6 + const manifest = JSON.parse(readFileSync("manifest.json", "utf8")); 7 + const { minAppVersion } = manifest; 8 + manifest.version = targetVersion; 9 + writeFileSync("manifest.json", JSON.stringify(manifest, null, "\t")); 10 + 11 + // update versions.json with target version and minAppVersion from manifest.json 12 + // but only if the target version is not already in versions.json 13 + const versions = JSON.parse(readFileSync('versions.json', 'utf8')); 14 + if (!Object.values(versions).includes(minAppVersion)) { 15 + versions[targetVersion] = minAppVersion; 16 + writeFileSync('versions.json', JSON.stringify(versions, null, '\t')); 17 + }
+3
versions.json
··· 1 + { 2 + "1.0.0": "0.15.0" 3 + }