├── styles.css ├── .npmrc ├── .eslintignore ├── versions.json ├── .editorconfig ├── manifest.json ├── .gitignore ├── tsconfig.json ├── src ├── types │ └── index.ts ├── main.ts ├── settingTab │ └── index.ts └── methods │ └── publishPost.ts ├── .eslintrc ├── version-bump.mjs ├── .github └── workflows │ └── release.yml ├── package.json ├── LICENSE ├── esbuild.config.mjs ├── README.md └── pnpm-lock.yaml /styles.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.npmrc: -------------------------------------------------------------------------------- 1 | tag-version-prefix="" -------------------------------------------------------------------------------- /.eslintignore: -------------------------------------------------------------------------------- 1 | npm node_modules 2 | build -------------------------------------------------------------------------------- /versions.json: -------------------------------------------------------------------------------- 1 | { 2 | "1.0.0": "0.9.7", 3 | "1.0.1": "0.12.0", 4 | "1.2.0": "0.12.0", 5 | "1.3.0": "0.12.0" 6 | } 7 | -------------------------------------------------------------------------------- /.editorconfig: -------------------------------------------------------------------------------- 1 | # top-most EditorConfig file 2 | root = true 3 | 4 | [*] 5 | charset = utf-8 6 | insert_final_newline = true 7 | indent_style = tab 8 | indent_size = 4 9 | tab_width = 4 10 | -------------------------------------------------------------------------------- /manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "send-to-ghost", 3 | "name": "Send to Ghost", 4 | "version": "1.0.5", 5 | "minAppVersion": "0.12.0", 6 | "description": "Send and publish notes to your Ghost blog with a single click", 7 | "author": "Southpaw1496", 8 | "authorUrl": "https://southpaw1496.me", 9 | "isDesktopOnly": true 10 | } 11 | -------------------------------------------------------------------------------- /.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 23 | -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "baseUrl": ".", 4 | "inlineSourceMap": true, 5 | "inlineSources": true, 6 | "module": "ESNext", 7 | "target": "ES6", 8 | "allowJs": true, 9 | "noImplicitAny": true, 10 | "moduleResolution": "node", 11 | "importHelpers": true, 12 | "isolatedModules": true, 13 | "lib": ["DOM", "ES5", "ES6", "ES7"], 14 | "types": ["node"] 15 | }, 16 | "include": ["**/*.ts"] 17 | } 18 | -------------------------------------------------------------------------------- /src/types/index.ts: -------------------------------------------------------------------------------- 1 | export interface SettingsProp { 2 | url: string; 3 | adminToken: string; 4 | debug: boolean 5 | } 6 | 7 | export const DEFAULT_SETTINGS: SettingsProp = { 8 | url: "", 9 | adminToken: "", 10 | debug: false 11 | }; 12 | 13 | export interface ContentProp { 14 | title: string; 15 | tags?: string[]; 16 | featured?: boolean; 17 | status: string; 18 | excerpt?: string | undefined; 19 | feature_image?: string; 20 | } 21 | 22 | export interface DataProp { 23 | content: string; 24 | } 25 | -------------------------------------------------------------------------------- /.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "root": true, 3 | "parser": "@typescript-eslint/parser", 4 | "env": { "node": true }, 5 | "plugins": ["@typescript-eslint"], 6 | "extends": [ 7 | "eslint:recommended", 8 | "plugin:@typescript-eslint/eslint-recommended", 9 | "plugin:@typescript-eslint/recommended" 10 | ], 11 | "parserOptions": { 12 | "sourceType": "module" 13 | }, 14 | "rules": { 15 | "no-unused-vars": "off", 16 | "@typescript-eslint/no-unused-vars": ["error", { "args": "none" }], 17 | "@typescript-eslint/ban-ts-comment": "off", 18 | "no-prototype-builtins": "off", 19 | "@typescript-eslint/no-empty-function": "off" 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /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 | let 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 | let versions = JSON.parse(readFileSync("versions.json", "utf8")); 13 | versions[targetVersion] = minAppVersion; 14 | writeFileSync("versions.json", JSON.stringify(versions, null, "\t")); 15 | -------------------------------------------------------------------------------- /.github/workflows/release.yml: -------------------------------------------------------------------------------- 1 | name: Release Obsidian plugin 2 | 3 | on: 4 | push: 5 | tags: 6 | - "*" 7 | 8 | jobs: 9 | build: 10 | runs-on: ubuntu-latest 11 | 12 | steps: 13 | - uses: actions/checkout@v3 14 | 15 | - name: Use Node.js 16 | uses: actions/setup-node@v3 17 | with: 18 | node-version: "18.x" 19 | - name: Install PNPM 20 | uses: pnpm/action-setup@v2 21 | with: 22 | version: "8.x" 23 | 24 | - name: Build plugin 25 | run: | 26 | pnpm install 27 | pnpm run build 28 | 29 | - name: Create release 30 | env: 31 | GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} 32 | run: | 33 | tag="${GITHUB_REF#refs/tags/}" 34 | 35 | gh release create "$tag" \ 36 | --title="$tag" \ 37 | --draft \ 38 | main.js manifest.json -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "obsidian-ghost-publish", 3 | "version": "1.0.5", 4 | "description": "Obsidian plugin for easy publish to ghost with a single click.", 5 | "main": "src/main.ts", 6 | "scripts": { 7 | "preinstall": "npx only-allow pnpm", 8 | "dev": "./build.sh dev", 9 | "build": "./build.sh", 10 | "version": "node version-bump.mjs && git add manifest.json versions.json" 11 | }, 12 | "keywords": [], 13 | "author": { 14 | "name": "Southpaw1496", 15 | "email": "paw@southpaw1496.me", 16 | "url": "https://github.com/southpaw1496/obsidian-send-to-ghost" 17 | }, 18 | "license": "MIT", 19 | "devDependencies": { 20 | "@types/jsonwebtoken": "^9.0.2", 21 | "@types/markdown-it": "^12.2.3", 22 | "@types/node": "^17.0.45", 23 | "@typescript-eslint/eslint-plugin": "^5.62.0", 24 | "@typescript-eslint/parser": "^5.62.0", 25 | "builtin-modules": "^3.3.0", 26 | "esbuild": "0.14.43", 27 | "gray-matter": "^4.0.3", 28 | "jsonwebtoken": "^9.0.1", 29 | "markdown-it": "^13.0.1", 30 | "obsidian": "^1.4.4", 31 | "tslib": "2.4.0", 32 | "typescript": "4.7.3" 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | This software is licensed under the MIT license. A substantial portion of the software is from Jay Nguyen's obsidian-ghost-publish, which is also licensed under the MIT license. 2 | 3 | MIT License 4 | 5 | Copyright (c) 2022 Jay Nguyen 6 | Copyright (c) 2023 Southpaw1496 7 | 8 | Permission is hereby granted, free of charge, to any person obtaining a copy 9 | of this software and associated documentation files (the "Software"), to deal 10 | in the Software without restriction, including without limitation the rights 11 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 12 | copies of the Software, and to permit persons to whom the Software is 13 | furnished to do so, subject to the following conditions: 14 | 15 | The above copyright notice and this permission notice shall be included in all 16 | copies or substantial portions of the Software. 17 | 18 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 19 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 20 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 21 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 22 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 23 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 24 | SOFTWARE. 25 | -------------------------------------------------------------------------------- /esbuild.config.mjs: -------------------------------------------------------------------------------- 1 | import esbuild from "esbuild"; 2 | import process from "process"; 3 | import builtins from "builtin-modules"; 4 | 5 | const banner = `/* 6 | THIS IS A GENERATED/BUNDLED FILE BY ESBUILD 7 | if you want to view the source, please visit the github repository of this plugin 8 | */ 9 | `; 10 | 11 | const prod = process.argv[2] === "production"; 12 | 13 | esbuild 14 | .build({ 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/closebrackets", 25 | "@codemirror/collab", 26 | "@codemirror/commands", 27 | "@codemirror/comment", 28 | "@codemirror/fold", 29 | "@codemirror/gutter", 30 | "@codemirror/highlight", 31 | "@codemirror/history", 32 | "@codemirror/language", 33 | "@codemirror/lint", 34 | "@codemirror/matchbrackets", 35 | "@codemirror/panel", 36 | "@codemirror/rangeset", 37 | "@codemirror/rectangular-selection", 38 | "@codemirror/search", 39 | "@codemirror/state", 40 | "@codemirror/stream-parser", 41 | "@codemirror/text", 42 | "@codemirror/tooltip", 43 | "@codemirror/view", 44 | ...builtins, 45 | ], 46 | format: "cjs", 47 | watch: !prod, 48 | target: "es2016", 49 | logLevel: "info", 50 | sourcemap: prod ? false : "inline", 51 | treeShaking: true, 52 | outfile: "main.js", 53 | }) 54 | .catch(() => process.exit(1)); 55 | -------------------------------------------------------------------------------- /src/main.ts: -------------------------------------------------------------------------------- 1 | import { MarkdownFileInfo, MarkdownView, Notice, Plugin } from "obsidian"; 2 | 3 | import { DEFAULT_SETTINGS, SettingsProp } from "./types/index"; 4 | import { SettingTab } from "./settingTab"; 5 | import { publishPost } from "./methods/publishPost"; 6 | export default class GhostPublish extends Plugin { 7 | settings: SettingsProp; 8 | 9 | async onload() { 10 | // load the settings first 11 | await this.loadSettings(); 12 | 13 | // 2 ways to publish: 14 | // 1. Click on the ghost icon on the left 15 | this.addRibbonIcon("ghost", "Publish Ghost", () => { 16 | const view = this.app.workspace.getActiveViewOfType(MarkdownView); 17 | if (!view) { 18 | new Notice( 19 | "You must open the note that you want to send to Ghost." 20 | ); 21 | return; 22 | } 23 | 24 | publishPost(view, this.settings); 25 | }); 26 | 27 | // 2. Run the by command + P 28 | this.addCommand({ 29 | id: "publish", 30 | name: "Send to Ghost", 31 | editorCallback: (_, view: MarkdownView | MarkdownFileInfo) => { 32 | if (!(view instanceof MarkdownView)) { 33 | new Notice( 34 | "You must open the note that you want to send to Ghostt" 35 | ); 36 | return; 37 | } 38 | publishPost(view, this.settings); 39 | }, 40 | 41 | }, 42 | ); 43 | 44 | // This adds a settings tab so the user can configure various aspects of the plugin 45 | this.addSettingTab(new SettingTab(this.app, this)); 46 | } 47 | 48 | onunload() {} 49 | async loadSettings() { 50 | this.settings = Object.assign( 51 | {}, 52 | DEFAULT_SETTINGS, 53 | await this.loadData() 54 | ); 55 | } 56 | async saveSettings() { 57 | await this.saveData(this.settings); 58 | } 59 | } 60 | -------------------------------------------------------------------------------- /src/settingTab/index.ts: -------------------------------------------------------------------------------- 1 | import { App, PluginSettingTab, Setting } from "obsidian"; 2 | import GhostPublish from "src/main"; 3 | 4 | export class SettingTab extends PluginSettingTab { 5 | plugin: GhostPublish; 6 | 7 | constructor(app: App, plugin: GhostPublish) { 8 | super(app, plugin); 9 | this.plugin = plugin; 10 | } 11 | 12 | display(): void { 13 | const { containerEl } = this; 14 | 15 | containerEl.empty(); 16 | const document = containerEl.createEl("p", { 17 | text: `If you get stuck, please refer to `, 18 | }); 19 | 20 | document.createEl("a", { 21 | attr: { 22 | href: "https://github.com/Southpaw1496/obsidian-send-to-ghost#usage", 23 | }, 24 | text: "the documentation", 25 | }); 26 | 27 | new Setting(containerEl) 28 | .setName("Site URL") 29 | .setDesc( 30 | "The URL of your Ghost site. Make sure to include https:// at the beginning" 31 | ) 32 | .addText((text) => 33 | text 34 | .setPlaceholder("https://ghost.org") 35 | .setValue(this.plugin.settings.url) 36 | .onChange(async (value) => { 37 | this.plugin.settings.url = value; 38 | await this.plugin.saveSettings(); 39 | }) 40 | ); 41 | 42 | new Setting(containerEl) 43 | .setName("Access Token") 44 | .setDesc("Your Staff Access Token or Admin API Key") 45 | .addText((text) => 46 | text 47 | .setPlaceholder("6251555c94ca6") 48 | .setValue(this.plugin.settings.adminToken) 49 | .onChange(async (value) => { 50 | this.plugin.settings.adminToken = value; 51 | await this.plugin.saveSettings(); 52 | }) 53 | ); 54 | new Setting(containerEl) 55 | .setName("Debug Mode") 56 | .setDesc("Print additional information to the console about the requests the plugin sends and receives. Useful for finding the cause of bugs.") 57 | .addToggle((toggle) => { 58 | toggle 59 | .setValue(this.plugin.settings.debug) 60 | .onChange(async (value) => { 61 | this.plugin.settings.debug = value 62 | await this.plugin.saveSettings() 63 | }) 64 | }) 65 | 66 | } 67 | } 68 | -------------------------------------------------------------------------------- /src/methods/publishPost.ts: -------------------------------------------------------------------------------- 1 | /* eslint-disable @typescript-eslint/no-var-requires */ 2 | import { SettingsProp, ContentProp, DataProp } from "./../types/index"; 3 | import { MarkdownView, Notice, requestUrl } from "obsidian"; 4 | import { sign } from "jsonwebtoken"; 5 | 6 | const matter = require("gray-matter"); 7 | const MarkdownIt = require("markdown-it"); 8 | 9 | const md = new MarkdownIt(); 10 | const version = "v4"; 11 | 12 | const contentPost = (frontmatter: ContentProp, data: DataProp) => ({ 13 | posts: [ 14 | { 15 | ...frontmatter, 16 | html: md.render(data.content), 17 | }, 18 | ], 19 | }); 20 | 21 | export const publishPost = async ( 22 | view: MarkdownView, 23 | settings: SettingsProp 24 | ) => { 25 | // Ghost Url and Admin API key 26 | const key = settings.adminToken; 27 | if (key.includes(":")) { 28 | const [id, secret] = key.split(":"); 29 | 30 | // Create the token (including decoding secret) 31 | const token = sign({}, Buffer.from(secret, "hex"), { 32 | keyid: id, 33 | algorithm: "HS256", 34 | expiresIn: "5m", 35 | audience: `/${version}/admin/`, 36 | }); 37 | 38 | // get frontmatter 39 | const noteFile = view.app.workspace.getActiveFile(); 40 | // @ts-ignore 41 | const metaMatter = app.metadataCache.getFileCache(noteFile).frontmatter; 42 | const data = matter(view.getViewData()); 43 | 44 | const frontmatter = { 45 | title: metaMatter?.title || view.file.basename, 46 | tags: metaMatter?.tags || [], 47 | featured: metaMatter?.featured || false, 48 | status: metaMatter?.published ? "published" : "draft", 49 | excerpt: metaMatter?.excerpt || undefined, 50 | feature_image: metaMatter?.feature_image || undefined, 51 | }; 52 | try{ 53 | const post = JSON.stringify(contentPost(frontmatter, data)) 54 | if (settings.debug == true) { 55 | console.log("Request: " + post) 56 | } 57 | const result = await requestUrl({ 58 | url: `${settings.url}/ghost/api/${version}/admin/posts/?source=html`, 59 | method: "POST", 60 | contentType: "application/json", 61 | headers: { 62 | "Access-Control-Allow-Methods": "POST", 63 | "Content-Type": "application/json;charset=utf-8", 64 | Authorization: `Ghost ${token}`, 65 | }, 66 | body: post 67 | }) 68 | 69 | const json = result.json; 70 | 71 | if (settings.debug == true) { 72 | console.log(JSON.stringify(json)) 73 | } 74 | 75 | if (json?.posts) { 76 | new Notice( 77 | `"${json?.posts?.[0]?.title}" has been ${json?.posts?.[0]?.status} successful!` 78 | ); 79 | } else { 80 | new Notice(`${json.errors[0].context || json.errors[0].message}`); 81 | new Notice( 82 | `${json.errors[0]?.details[0].message} - ${json.errors[0]?.details[0].params.allowedValues}` 83 | ); 84 | } 85 | 86 | return json; 87 | } catch (error: any) { 88 | new Notice(`Couldn't connect to the Ghost API. Is the API URL and Admin API Key correct? 89 | 90 | ${error.name}: ${error.message}`) 91 | }} 92 | else { 93 | new Notice("Error: Ghost API Key is invalid.") 94 | }}; 95 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Send to Ghost 2 | 3 | A maintained fork of Jay Nguyen's [obsidian-ghost-publish](https://github.com/jaynguyens/obsidian-ghost-publish). It allows you to send Obsidian notes to the [Ghost](https://ghost.org) blogging software, either as published or draft posts. 4 | 5 | ## Usage 6 | 7 | ### Authentication 8 | Send to Ghost can use either a **Staff Access Token** or an **[Admin API Key](https://ghost.org/integrations/custom-integrations/)**. Each staff member has their own Staff Access Token which gives Send to Ghost permission to do all the things that they can do, while an Admin API Key must be created manually and gives all permissions. Because Obsidian plugins [can't store sensitive information securely](https://forum.obsidian.md/t/a-place-for-plugins-sensitive-data/18308), you should use a Staff Access Token, since its access is more limited. You could also consider creating a seperate staff user with barebones permissions for uploading posts if you are concerned about the security of your site. 9 | 10 | Note that the Staff Access Tokens of users who have Administrator or Owner permissions have the same access as Admin API Keys. They are still preferred, since their access to your site is tied to the access of the staff member who they belong to. They are also usable with Starter sites on Ghost Pro. 11 | 12 | #### Finding your Access Token 13 | To get your Staff Access Token, go to the admin dashboard and click the avatar in the bottom-right corner, then click "Your Profile". Scroll down to find the token, hover over it and click the "copy" button to copy it to the clipboard. 14 | 15 | ### Using the plugin 16 | After installing the plugin in Obsidian, go to its settings and fill in the fields. Put the URL of your Ghost site in the "Site URL" field (or the `ghost.io` URL if you're using Ghost Pro), and your Staff Access Token/Admin API Key in the "Access Token" field. You can now click the ghost icon in the ribbon menu on the left or use the "Send to Ghost" command in the command palette to send the currently open note to Ghost. 17 | 18 | **If your note isn't being published correctly and you're using the Ghost Pro starter plan, please see [this comment](https://github.com/Southpaw1496/obsidian-send-to-ghost/issues/6#issuecomment-3079441691). If you're not using the Ghost Pro starter plan, please leave a comment on [Issue #6](https://github.com/Southpaw1496/obsidian-send-to-ghost/issues/6)**. 19 | 20 | ### Front Matter format 21 | 22 | Send to Ghost uses front matter to set Ghost-specific settings such as the title, tags, and the featured image. You can add front matter by enclosing it in `---` at the beginning of a note. 23 | 24 | The following options are supported: 25 | 26 | ```md 27 | --- 28 | title: String (default: filename) 29 | tags: (default: none) 30 | - tag1 31 | - tag2 32 | featured: Boolean (default: false) 33 | published: Boolean (default: false) 34 | excerpt: String (default: blank) 35 | feature_image: String (default: blank) 36 | --- 37 | ``` 38 | 39 | ## Development 40 | 41 | This plugin uses PNPM for dependency management. 42 | 43 | - Clone the repository. 44 | - Run `pnpm i` to install the necessary dependencies 45 | - Run `pnpm dev` to automaticlly recompile as the project files change. 46 | 47 | ## Manual installation 48 | 49 | - Run `pnpm build` 50 | - Copy `main.js` and `manifest.json` to `VaultFolder/.obsidian/plugins/send-to-ghost/` where `Vaultfolder` is the location of your Obsidian vault. 51 | 52 | ## Issues & Support 53 | 54 | If you find a bug, please submit an [issue](https://github.com/Southpaw1496/obsidian-send-to-ghost). Otherwise, please contact me via [my website](https://southpaw1496.me). 55 | -------------------------------------------------------------------------------- /pnpm-lock.yaml: -------------------------------------------------------------------------------- 1 | lockfileVersion: '9.0' 2 | 3 | settings: 4 | autoInstallPeers: true 5 | excludeLinksFromLockfile: false 6 | 7 | importers: 8 | 9 | .: 10 | devDependencies: 11 | '@types/jsonwebtoken': 12 | specifier: ^9.0.2 13 | version: 9.0.10 14 | '@types/markdown-it': 15 | specifier: ^12.2.3 16 | version: 12.2.3 17 | '@types/node': 18 | specifier: ^17.0.45 19 | version: 17.0.45 20 | '@typescript-eslint/eslint-plugin': 21 | specifier: ^5.62.0 22 | version: 5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.57.1)(typescript@4.7.3))(eslint@8.57.1)(typescript@4.7.3) 23 | '@typescript-eslint/parser': 24 | specifier: ^5.62.0 25 | version: 5.62.0(eslint@8.57.1)(typescript@4.7.3) 26 | builtin-modules: 27 | specifier: ^3.3.0 28 | version: 3.3.0 29 | esbuild: 30 | specifier: 0.14.43 31 | version: 0.14.43 32 | gray-matter: 33 | specifier: ^4.0.3 34 | version: 4.0.3 35 | jsonwebtoken: 36 | specifier: ^9.0.1 37 | version: 9.0.2 38 | markdown-it: 39 | specifier: ^13.0.1 40 | version: 13.0.2 41 | obsidian: 42 | specifier: ^1.4.4 43 | version: 1.8.7(@codemirror/state@6.5.2)(@codemirror/view@6.38.0) 44 | tslib: 45 | specifier: 2.4.0 46 | version: 2.4.0 47 | typescript: 48 | specifier: 4.7.3 49 | version: 4.7.3 50 | 51 | packages: 52 | 53 | '@codemirror/state@6.5.2': 54 | resolution: {integrity: sha512-FVqsPqtPWKVVL3dPSxy8wEF/ymIEuVzF1PK3VbUgrxXpJUSHQWWZz4JMToquRxnkw+36LTamCZG2iua2Ptq0fA==} 55 | 56 | '@codemirror/view@6.38.0': 57 | resolution: {integrity: sha512-yvSchUwHOdupXkd7xJ0ob36jdsSR/I+/C+VbY0ffBiL5NiSTEBDfB1ZGWbbIlDd5xgdUkody+lukAdOxYrOBeg==} 58 | 59 | '@eslint-community/eslint-utils@4.7.0': 60 | resolution: {integrity: sha512-dyybb3AcajC7uha6CvhdVRJqaKyn7w2YKqKyAN37NKYgZT36w+iRb0Dymmc5qEJ549c/S31cMMSFd75bteCpCw==} 61 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 62 | peerDependencies: 63 | eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 64 | 65 | '@eslint-community/regexpp@4.12.1': 66 | resolution: {integrity: sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==} 67 | engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} 68 | 69 | '@eslint/eslintrc@2.1.4': 70 | resolution: {integrity: sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==} 71 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 72 | 73 | '@eslint/js@8.57.1': 74 | resolution: {integrity: sha512-d9zaMRSTIKDLhctzH12MtXvJKSSUhaHcjV+2Z+GK+EEY7XKpP5yR4x+N3TAcHTcu963nIr+TMcCb4DBCYX1z6Q==} 75 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 76 | 77 | '@humanwhocodes/config-array@0.13.0': 78 | resolution: {integrity: sha512-DZLEEqFWQFiyK6h5YIeynKx7JlvCYWL0cImfSRXZ9l4Sg2efkFGTuFf6vzXjK1cq6IYkU+Eg/JizXw+TD2vRNw==} 79 | engines: {node: '>=10.10.0'} 80 | deprecated: Use @eslint/config-array instead 81 | 82 | '@humanwhocodes/module-importer@1.0.1': 83 | resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} 84 | engines: {node: '>=12.22'} 85 | 86 | '@humanwhocodes/object-schema@2.0.3': 87 | resolution: {integrity: sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==} 88 | deprecated: Use @eslint/object-schema instead 89 | 90 | '@marijn/find-cluster-break@1.0.2': 91 | resolution: {integrity: sha512-l0h88YhZFyKdXIFNfSWpyjStDjGHwZ/U7iobcK1cQQD8sejsONdQtTVU+1wVN1PBw40PiiHB1vA5S7VTfQiP9g==} 92 | 93 | '@nodelib/fs.scandir@2.1.5': 94 | resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} 95 | engines: {node: '>= 8'} 96 | 97 | '@nodelib/fs.stat@2.0.5': 98 | resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} 99 | engines: {node: '>= 8'} 100 | 101 | '@nodelib/fs.walk@1.2.8': 102 | resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} 103 | engines: {node: '>= 8'} 104 | 105 | '@types/codemirror@5.60.8': 106 | resolution: {integrity: sha512-VjFgDF/eB+Aklcy15TtOTLQeMjTo07k7KAjql8OK5Dirr7a6sJY4T1uVBDuTVG9VEmn1uUsohOpYnVfgC6/jyw==} 107 | 108 | '@types/estree@1.0.8': 109 | resolution: {integrity: sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==} 110 | 111 | '@types/json-schema@7.0.15': 112 | resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} 113 | 114 | '@types/jsonwebtoken@9.0.10': 115 | resolution: {integrity: sha512-asx5hIG9Qmf/1oStypjanR7iKTv0gXQ1Ov/jfrX6kS/EO0OFni8orbmGCn0672NHR3kXHwpAwR+B368ZGN/2rA==} 116 | 117 | '@types/linkify-it@5.0.0': 118 | resolution: {integrity: sha512-sVDA58zAw4eWAffKOaQH5/5j3XeayukzDk+ewSsnv3p4yJEZHCCzMDiZM8e0OUrRvmpGZ85jf4yDHkHsgBNr9Q==} 119 | 120 | '@types/markdown-it@12.2.3': 121 | resolution: {integrity: sha512-GKMHFfv3458yYy+v/N8gjufHO6MSZKCOXpZc5GXIWWy8uldwfmPn98vp81gZ5f9SVw8YYBctgfJ22a2d7AOMeQ==} 122 | 123 | '@types/mdurl@2.0.0': 124 | resolution: {integrity: sha512-RGdgjQUZba5p6QEFAVx2OGb8rQDL/cPRG7GiedRzMcJ1tYnUANBncjbSB1NRGwbvjcPeikRABz2nshyPk1bhWg==} 125 | 126 | '@types/ms@2.1.0': 127 | resolution: {integrity: sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA==} 128 | 129 | '@types/node@17.0.45': 130 | resolution: {integrity: sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw==} 131 | 132 | '@types/semver@7.7.0': 133 | resolution: {integrity: sha512-k107IF4+Xr7UHjwDc7Cfd6PRQfbdkiRabXGRjo07b4WyPahFBZCZ1sE+BNxYIJPPg73UkfOsVOLwqVc/6ETrIA==} 134 | 135 | '@types/tern@0.23.9': 136 | resolution: {integrity: sha512-ypzHFE/wBzh+BlH6rrBgS5I/Z7RD21pGhZ2rltb/+ZrVM1awdZwjx7hE5XfuYgHWk9uvV5HLZN3SloevCAp3Bw==} 137 | 138 | '@typescript-eslint/eslint-plugin@5.62.0': 139 | resolution: {integrity: sha512-TiZzBSJja/LbhNPvk6yc0JrX9XqhQ0hdh6M2svYfsHGejaKFIAGd9MQ+ERIMzLGlN/kZoYIgdxFV0PuljTKXag==} 140 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 141 | peerDependencies: 142 | '@typescript-eslint/parser': ^5.0.0 143 | eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 144 | typescript: '*' 145 | peerDependenciesMeta: 146 | typescript: 147 | optional: true 148 | 149 | '@typescript-eslint/parser@5.62.0': 150 | resolution: {integrity: sha512-VlJEV0fOQ7BExOsHYAGrgbEiZoi8D+Bl2+f6V2RrXerRSylnp+ZBHmPvaIa8cz0Ajx7WO7Z5RqfgYg7ED1nRhA==} 151 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 152 | peerDependencies: 153 | eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 154 | typescript: '*' 155 | peerDependenciesMeta: 156 | typescript: 157 | optional: true 158 | 159 | '@typescript-eslint/scope-manager@5.62.0': 160 | resolution: {integrity: sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==} 161 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 162 | 163 | '@typescript-eslint/type-utils@5.62.0': 164 | resolution: {integrity: sha512-xsSQreu+VnfbqQpW5vnCJdq1Z3Q0U31qiWmRhr98ONQmcp/yhiPJFPq8MXiJVLiksmOKSjIldZzkebzHuCGzew==} 165 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 166 | peerDependencies: 167 | eslint: '*' 168 | typescript: '*' 169 | peerDependenciesMeta: 170 | typescript: 171 | optional: true 172 | 173 | '@typescript-eslint/types@5.62.0': 174 | resolution: {integrity: sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==} 175 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 176 | 177 | '@typescript-eslint/typescript-estree@5.62.0': 178 | resolution: {integrity: sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==} 179 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 180 | peerDependencies: 181 | typescript: '*' 182 | peerDependenciesMeta: 183 | typescript: 184 | optional: true 185 | 186 | '@typescript-eslint/utils@5.62.0': 187 | resolution: {integrity: sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==} 188 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 189 | peerDependencies: 190 | eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 191 | 192 | '@typescript-eslint/visitor-keys@5.62.0': 193 | resolution: {integrity: sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==} 194 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 195 | 196 | '@ungap/structured-clone@1.3.0': 197 | resolution: {integrity: sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==} 198 | 199 | acorn-jsx@5.3.2: 200 | resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} 201 | peerDependencies: 202 | acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 203 | 204 | acorn@8.15.0: 205 | resolution: {integrity: sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==} 206 | engines: {node: '>=0.4.0'} 207 | hasBin: true 208 | 209 | ajv@6.12.6: 210 | resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} 211 | 212 | ansi-regex@5.0.1: 213 | resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} 214 | engines: {node: '>=8'} 215 | 216 | ansi-styles@4.3.0: 217 | resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} 218 | engines: {node: '>=8'} 219 | 220 | argparse@1.0.10: 221 | resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==} 222 | 223 | argparse@2.0.1: 224 | resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} 225 | 226 | array-union@2.1.0: 227 | resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} 228 | engines: {node: '>=8'} 229 | 230 | balanced-match@1.0.2: 231 | resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} 232 | 233 | brace-expansion@1.1.12: 234 | resolution: {integrity: sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==} 235 | 236 | braces@3.0.3: 237 | resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} 238 | engines: {node: '>=8'} 239 | 240 | buffer-equal-constant-time@1.0.1: 241 | resolution: {integrity: sha512-zRpUiDwd/xk6ADqPMATG8vc9VPrkck7T07OIx0gnjmJAnHnTVXNQG3vfvWNuiZIkwu9KrKdA1iJKfsfTVxE6NA==} 242 | 243 | builtin-modules@3.3.0: 244 | resolution: {integrity: sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==} 245 | engines: {node: '>=6'} 246 | 247 | callsites@3.1.0: 248 | resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} 249 | engines: {node: '>=6'} 250 | 251 | chalk@4.1.2: 252 | resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} 253 | engines: {node: '>=10'} 254 | 255 | color-convert@2.0.1: 256 | resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} 257 | engines: {node: '>=7.0.0'} 258 | 259 | color-name@1.1.4: 260 | resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} 261 | 262 | concat-map@0.0.1: 263 | resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} 264 | 265 | crelt@1.0.6: 266 | resolution: {integrity: sha512-VQ2MBenTq1fWZUH9DJNGti7kKv6EeAuYr3cLwxUWhIu1baTaXh4Ib5W2CqHVqib4/MqbYGJqiL3Zb8GJZr3l4g==} 267 | 268 | cross-spawn@7.0.6: 269 | resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==} 270 | engines: {node: '>= 8'} 271 | 272 | debug@4.4.1: 273 | resolution: {integrity: sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==} 274 | engines: {node: '>=6.0'} 275 | peerDependencies: 276 | supports-color: '*' 277 | peerDependenciesMeta: 278 | supports-color: 279 | optional: true 280 | 281 | deep-is@0.1.4: 282 | resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} 283 | 284 | dir-glob@3.0.1: 285 | resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} 286 | engines: {node: '>=8'} 287 | 288 | doctrine@3.0.0: 289 | resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==} 290 | engines: {node: '>=6.0.0'} 291 | 292 | ecdsa-sig-formatter@1.0.11: 293 | resolution: {integrity: sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ==} 294 | 295 | entities@3.0.1: 296 | resolution: {integrity: sha512-WiyBqoomrwMdFG1e0kqvASYfnlb0lp8M5o5Fw2OFq1hNZxxcNk8Ik0Xm7LxzBhuidnZB/UtBqVCgUz3kBOP51Q==} 297 | engines: {node: '>=0.12'} 298 | 299 | esbuild-android-64@0.14.43: 300 | resolution: {integrity: sha512-kqFXAS72K6cNrB6RiM7YJ5lNvmWRDSlpi7ZuRZ1hu1S3w0zlwcoCxWAyM23LQUyZSs1PbjHgdbbfYAN8IGh6xg==} 301 | engines: {node: '>=12'} 302 | cpu: [x64] 303 | os: [android] 304 | 305 | esbuild-android-arm64@0.14.43: 306 | resolution: {integrity: sha512-bKS2BBFh+7XZY9rpjiHGRNA7LvWYbZWP87pLehggTG7tTaCDvj8qQGOU/OZSjCSKDYbgY7Q+oDw8RlYQ2Jt2BA==} 307 | engines: {node: '>=12'} 308 | cpu: [arm64] 309 | os: [android] 310 | 311 | esbuild-darwin-64@0.14.43: 312 | resolution: {integrity: sha512-/3PSilx011ttoieRGkSZ0XV8zjBf2C9enV4ScMMbCT4dpx0mFhMOpFnCHkOK0pWGB8LklykFyHrWk2z6DENVUg==} 313 | engines: {node: '>=12'} 314 | cpu: [x64] 315 | os: [darwin] 316 | 317 | esbuild-darwin-arm64@0.14.43: 318 | resolution: {integrity: sha512-1HyFUKs8DMCBOvw1Qxpr5Vv/ThNcVIFb5xgXWK3pyT40WPvgYIiRTwJCvNs4l8i5qWF8/CK5bQxJVDjQvtv0Yw==} 319 | engines: {node: '>=12'} 320 | cpu: [arm64] 321 | os: [darwin] 322 | 323 | esbuild-freebsd-64@0.14.43: 324 | resolution: {integrity: sha512-FNWc05TPHYgaXjbPZO5/rJKSBslfG6BeMSs8GhwnqAKP56eEhvmzwnIz1QcC9cRVyO+IKqWNfmHFkCa1WJTULA==} 325 | engines: {node: '>=12'} 326 | cpu: [x64] 327 | os: [freebsd] 328 | 329 | esbuild-freebsd-arm64@0.14.43: 330 | resolution: {integrity: sha512-amrYopclz3VohqisOPR6hA3GOWA3LZC1WDLnp21RhNmoERmJ/vLnOpnrG2P/Zao+/erKTCUqmrCIPVtj58DRoA==} 331 | engines: {node: '>=12'} 332 | cpu: [arm64] 333 | os: [freebsd] 334 | 335 | esbuild-linux-32@0.14.43: 336 | resolution: {integrity: sha512-KoxoEra+9O3AKVvgDFvDkiuddCds6q71owSQEYwjtqRV7RwbPzKxJa6+uyzUulHcyGVq0g15K0oKG5CFBcvYDw==} 337 | engines: {node: '>=12'} 338 | cpu: [ia32] 339 | os: [linux] 340 | 341 | esbuild-linux-64@0.14.43: 342 | resolution: {integrity: sha512-EwINwGMyiJMgBby5/SbMqKcUhS5AYAZ2CpEBzSowsJPNBJEdhkCTtEjk757TN/wxgbu3QklqDM6KghY660QCUw==} 343 | engines: {node: '>=12'} 344 | cpu: [x64] 345 | os: [linux] 346 | 347 | esbuild-linux-arm64@0.14.43: 348 | resolution: {integrity: sha512-UlSpjMWllAc70zYbHxWuDS3FJytyuR/gHJYBr8BICcTNb/TSOYVBg6U7b3jZ3mILTrgzwJUHwhEwK18FZDouUQ==} 349 | engines: {node: '>=12'} 350 | cpu: [arm64] 351 | os: [linux] 352 | 353 | esbuild-linux-arm@0.14.43: 354 | resolution: {integrity: sha512-e6YzQUoDxxtyamuF12eVzzRC7bbEFSZohJ6igQB9tBqnNmIQY3fI6Cns3z2wxtbZ3f2o6idkD2fQnlvs2902Dg==} 355 | engines: {node: '>=12'} 356 | cpu: [arm] 357 | os: [linux] 358 | 359 | esbuild-linux-mips64le@0.14.43: 360 | resolution: {integrity: sha512-f+v8cInPEL1/SDP//CfSYzcDNgE4CY3xgDV81DWm3KAPWzhvxARrKxB1Pstf5mB56yAslJDxu7ryBUPX207EZA==} 361 | engines: {node: '>=12'} 362 | cpu: [mips64el] 363 | os: [linux] 364 | 365 | esbuild-linux-ppc64le@0.14.43: 366 | resolution: {integrity: sha512-5wZYMDGAL/K2pqkdIsW+I4IR41kyfHr/QshJcNpUfK3RjB3VQcPWOaZmc+74rm4ZjVirYrtz+jWw0SgxtxRanA==} 367 | engines: {node: '>=12'} 368 | cpu: [ppc64] 369 | os: [linux] 370 | 371 | esbuild-linux-riscv64@0.14.43: 372 | resolution: {integrity: sha512-lYcAOUxp85hC7lSjycJUVSmj4/9oEfSyXjb/ua9bNl8afonaduuqtw7hvKMoKuYnVwOCDw4RSfKpcnIRDWq+Bw==} 373 | engines: {node: '>=12'} 374 | cpu: [riscv64] 375 | os: [linux] 376 | 377 | esbuild-linux-s390x@0.14.43: 378 | resolution: {integrity: sha512-27e43ZhHvhFE4nM7HqtUbMRu37I/4eNSUbb8FGZWszV+uLzMIsHDwLoBiJmw7G9N+hrehNPeQ4F5Ujad0DrUKQ==} 379 | engines: {node: '>=12'} 380 | cpu: [s390x] 381 | os: [linux] 382 | 383 | esbuild-netbsd-64@0.14.43: 384 | resolution: {integrity: sha512-2mH4QF6hHBn5zzAfxEI/2eBC0mspVsZ6UVo821LpAJKMvLJPBk3XJO5xwg7paDqSqpl7p6IRrAenW999AEfJhQ==} 385 | engines: {node: '>=12'} 386 | cpu: [x64] 387 | os: [netbsd] 388 | 389 | esbuild-openbsd-64@0.14.43: 390 | resolution: {integrity: sha512-ZhQpiZjvqCqO8jKdGp9+8k9E/EHSA+zIWOg+grwZasI9RoblqJ1QiZqqi7jfd6ZrrG1UFBNGe4m0NFxCFbMVbg==} 391 | engines: {node: '>=12'} 392 | cpu: [x64] 393 | os: [openbsd] 394 | 395 | esbuild-sunos-64@0.14.43: 396 | resolution: {integrity: sha512-DgxSi9DaHReL9gYuul2rrQCAapgnCJkh3LSHPKsY26zytYppG0HgkgVF80zjIlvEsUbGBP/GHQzBtrezj/Zq1Q==} 397 | engines: {node: '>=12'} 398 | cpu: [x64] 399 | os: [sunos] 400 | 401 | esbuild-windows-32@0.14.43: 402 | resolution: {integrity: sha512-Ih3+2O5oExiqm0mY6YYE5dR0o8+AspccQ3vIAtRodwFvhuyGLjb0Hbmzun/F3Lw19nuhPMu3sW2fqIJ5xBxByw==} 403 | engines: {node: '>=12'} 404 | cpu: [ia32] 405 | os: [win32] 406 | 407 | esbuild-windows-64@0.14.43: 408 | resolution: {integrity: sha512-8NsuNfI8xwFuJbrCuI+aBqNTYkrWErejFO5aYM+yHqyHuL8mmepLS9EPzAzk8rvfaJrhN0+RvKWAcymViHOKEw==} 409 | engines: {node: '>=12'} 410 | cpu: [x64] 411 | os: [win32] 412 | 413 | esbuild-windows-arm64@0.14.43: 414 | resolution: {integrity: sha512-7ZlD7bo++kVRblJEoG+cepljkfP8bfuTPz5fIXzptwnPaFwGS6ahvfoYzY7WCf5v/1nX2X02HDraVItTgbHnKw==} 415 | engines: {node: '>=12'} 416 | cpu: [arm64] 417 | os: [win32] 418 | 419 | esbuild@0.14.43: 420 | resolution: {integrity: sha512-Uf94+kQmy/5jsFwKWiQB4hfo/RkM9Dh7b79p8yqd1tshULdr25G2szLz631NoH3s2ujnKEKVD16RmOxvCNKRFA==} 421 | engines: {node: '>=12'} 422 | hasBin: true 423 | 424 | escape-string-regexp@4.0.0: 425 | resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} 426 | engines: {node: '>=10'} 427 | 428 | eslint-scope@5.1.1: 429 | resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==} 430 | engines: {node: '>=8.0.0'} 431 | 432 | eslint-scope@7.2.2: 433 | resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==} 434 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 435 | 436 | eslint-visitor-keys@3.4.3: 437 | resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} 438 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 439 | 440 | eslint@8.57.1: 441 | resolution: {integrity: sha512-ypowyDxpVSYpkXr9WPv2PAZCtNip1Mv5KTW0SCurXv/9iOpcrH9PaqUElksqEB6pChqHGDRCFTyrZlGhnLNGiA==} 442 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 443 | deprecated: This version is no longer supported. Please see https://eslint.org/version-support for other options. 444 | hasBin: true 445 | 446 | espree@9.6.1: 447 | resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==} 448 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 449 | 450 | esprima@4.0.1: 451 | resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==} 452 | engines: {node: '>=4'} 453 | hasBin: true 454 | 455 | esquery@1.6.0: 456 | resolution: {integrity: sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==} 457 | engines: {node: '>=0.10'} 458 | 459 | esrecurse@4.3.0: 460 | resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} 461 | engines: {node: '>=4.0'} 462 | 463 | estraverse@4.3.0: 464 | resolution: {integrity: sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==} 465 | engines: {node: '>=4.0'} 466 | 467 | estraverse@5.3.0: 468 | resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} 469 | engines: {node: '>=4.0'} 470 | 471 | esutils@2.0.3: 472 | resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} 473 | engines: {node: '>=0.10.0'} 474 | 475 | extend-shallow@2.0.1: 476 | resolution: {integrity: sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==} 477 | engines: {node: '>=0.10.0'} 478 | 479 | fast-deep-equal@3.1.3: 480 | resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} 481 | 482 | fast-glob@3.3.3: 483 | resolution: {integrity: sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==} 484 | engines: {node: '>=8.6.0'} 485 | 486 | fast-json-stable-stringify@2.1.0: 487 | resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} 488 | 489 | fast-levenshtein@2.0.6: 490 | resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} 491 | 492 | fastq@1.19.1: 493 | resolution: {integrity: sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==} 494 | 495 | file-entry-cache@6.0.1: 496 | resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} 497 | engines: {node: ^10.12.0 || >=12.0.0} 498 | 499 | fill-range@7.1.1: 500 | resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} 501 | engines: {node: '>=8'} 502 | 503 | find-up@5.0.0: 504 | resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} 505 | engines: {node: '>=10'} 506 | 507 | flat-cache@3.2.0: 508 | resolution: {integrity: sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==} 509 | engines: {node: ^10.12.0 || >=12.0.0} 510 | 511 | flatted@3.3.3: 512 | resolution: {integrity: sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==} 513 | 514 | fs.realpath@1.0.0: 515 | resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} 516 | 517 | glob-parent@5.1.2: 518 | resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} 519 | engines: {node: '>= 6'} 520 | 521 | glob-parent@6.0.2: 522 | resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} 523 | engines: {node: '>=10.13.0'} 524 | 525 | glob@7.2.3: 526 | resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} 527 | deprecated: Glob versions prior to v9 are no longer supported 528 | 529 | globals@13.24.0: 530 | resolution: {integrity: sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==} 531 | engines: {node: '>=8'} 532 | 533 | globby@11.1.0: 534 | resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} 535 | engines: {node: '>=10'} 536 | 537 | graphemer@1.4.0: 538 | resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} 539 | 540 | gray-matter@4.0.3: 541 | resolution: {integrity: sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q==} 542 | engines: {node: '>=6.0'} 543 | 544 | has-flag@4.0.0: 545 | resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} 546 | engines: {node: '>=8'} 547 | 548 | ignore@5.3.2: 549 | resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==} 550 | engines: {node: '>= 4'} 551 | 552 | import-fresh@3.3.1: 553 | resolution: {integrity: sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==} 554 | engines: {node: '>=6'} 555 | 556 | imurmurhash@0.1.4: 557 | resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} 558 | engines: {node: '>=0.8.19'} 559 | 560 | inflight@1.0.6: 561 | resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} 562 | deprecated: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful. 563 | 564 | inherits@2.0.4: 565 | resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} 566 | 567 | is-extendable@0.1.1: 568 | resolution: {integrity: sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==} 569 | engines: {node: '>=0.10.0'} 570 | 571 | is-extglob@2.1.1: 572 | resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} 573 | engines: {node: '>=0.10.0'} 574 | 575 | is-glob@4.0.3: 576 | resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} 577 | engines: {node: '>=0.10.0'} 578 | 579 | is-number@7.0.0: 580 | resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} 581 | engines: {node: '>=0.12.0'} 582 | 583 | is-path-inside@3.0.3: 584 | resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==} 585 | engines: {node: '>=8'} 586 | 587 | isexe@2.0.0: 588 | resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} 589 | 590 | js-yaml@3.14.1: 591 | resolution: {integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==} 592 | hasBin: true 593 | 594 | js-yaml@4.1.0: 595 | resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} 596 | hasBin: true 597 | 598 | json-buffer@3.0.1: 599 | resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} 600 | 601 | json-schema-traverse@0.4.1: 602 | resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} 603 | 604 | json-stable-stringify-without-jsonify@1.0.1: 605 | resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} 606 | 607 | jsonwebtoken@9.0.2: 608 | resolution: {integrity: sha512-PRp66vJ865SSqOlgqS8hujT5U4AOgMfhrwYIuIhfKaoSCZcirrmASQr8CX7cUg+RMih+hgznrjp99o+W4pJLHQ==} 609 | engines: {node: '>=12', npm: '>=6'} 610 | 611 | jwa@1.4.2: 612 | resolution: {integrity: sha512-eeH5JO+21J78qMvTIDdBXidBd6nG2kZjg5Ohz/1fpa28Z4CcsWUzJ1ZZyFq/3z3N17aZy+ZuBoHljASbL1WfOw==} 613 | 614 | jws@3.2.2: 615 | resolution: {integrity: sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA==} 616 | 617 | keyv@4.5.4: 618 | resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} 619 | 620 | kind-of@6.0.3: 621 | resolution: {integrity: sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==} 622 | engines: {node: '>=0.10.0'} 623 | 624 | levn@0.4.1: 625 | resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} 626 | engines: {node: '>= 0.8.0'} 627 | 628 | linkify-it@4.0.1: 629 | resolution: {integrity: sha512-C7bfi1UZmoj8+PQx22XyeXCuBlokoyWQL5pWSP+EI6nzRylyThouddufc2c1NDIcP9k5agmN9fLpA7VNJfIiqw==} 630 | 631 | locate-path@6.0.0: 632 | resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} 633 | engines: {node: '>=10'} 634 | 635 | lodash.includes@4.3.0: 636 | resolution: {integrity: sha512-W3Bx6mdkRTGtlJISOvVD/lbqjTlPPUDTMnlXZFnVwi9NKJ6tiAk6LVdlhZMm17VZisqhKcgzpO5Wz91PCt5b0w==} 637 | 638 | lodash.isboolean@3.0.3: 639 | resolution: {integrity: sha512-Bz5mupy2SVbPHURB98VAcw+aHh4vRV5IPNhILUCsOzRmsTmSQ17jIuqopAentWoehktxGd9e/hbIXq980/1QJg==} 640 | 641 | lodash.isinteger@4.0.4: 642 | resolution: {integrity: sha512-DBwtEWN2caHQ9/imiNeEA5ys1JoRtRfY3d7V9wkqtbycnAmTvRRmbHKDV4a0EYc678/dia0jrte4tjYwVBaZUA==} 643 | 644 | lodash.isnumber@3.0.3: 645 | resolution: {integrity: sha512-QYqzpfwO3/CWf3XP+Z+tkQsfaLL/EnUlXWVkIk5FUPc4sBdTehEqZONuyRt2P67PXAk+NXmTBcc97zw9t1FQrw==} 646 | 647 | lodash.isplainobject@4.0.6: 648 | resolution: {integrity: sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==} 649 | 650 | lodash.isstring@4.0.1: 651 | resolution: {integrity: sha512-0wJxfxH1wgO3GrbuP+dTTk7op+6L41QCXbGINEmD+ny/G/eCqGzxyCsh7159S+mgDDcoarnBw6PC1PS5+wUGgw==} 652 | 653 | lodash.merge@4.6.2: 654 | resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} 655 | 656 | lodash.once@4.1.1: 657 | resolution: {integrity: sha512-Sb487aTOCr9drQVL8pIxOzVhafOjZN9UU54hiN8PU3uAiSV7lx1yYNpbNmex2PK6dSJoNTSJUUswT651yww3Mg==} 658 | 659 | markdown-it@13.0.2: 660 | resolution: {integrity: sha512-FtwnEuuK+2yVU7goGn/MJ0WBZMM9ZPgU9spqlFs7/A/pDIUNSOQZhUgOqYCficIuR2QaFnrt8LHqBWsbTAoI5w==} 661 | hasBin: true 662 | 663 | mdurl@1.0.1: 664 | resolution: {integrity: sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g==} 665 | 666 | merge2@1.4.1: 667 | resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} 668 | engines: {node: '>= 8'} 669 | 670 | micromatch@4.0.8: 671 | resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} 672 | engines: {node: '>=8.6'} 673 | 674 | minimatch@3.1.2: 675 | resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} 676 | 677 | moment@2.29.4: 678 | resolution: {integrity: sha512-5LC9SOxjSc2HF6vO2CyuTDNivEdoz2IvyJJGj6X8DJ0eFyfszE0QiEd+iXmBvUP3WHxSjFH/vIsA0EN00cgr8w==} 679 | 680 | ms@2.1.3: 681 | resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} 682 | 683 | natural-compare-lite@1.4.0: 684 | resolution: {integrity: sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==} 685 | 686 | natural-compare@1.4.0: 687 | resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} 688 | 689 | obsidian@1.8.7: 690 | resolution: {integrity: sha512-h4bWwNFAGRXlMlMAzdEiIM2ppTGlrh7uGOJS6w4gClrsjc+ei/3YAtU2VdFUlCiPuTHpY4aBpFJJW75S1Tl/JA==} 691 | peerDependencies: 692 | '@codemirror/state': ^6.0.0 693 | '@codemirror/view': ^6.0.0 694 | 695 | once@1.4.0: 696 | resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} 697 | 698 | optionator@0.9.4: 699 | resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==} 700 | engines: {node: '>= 0.8.0'} 701 | 702 | p-limit@3.1.0: 703 | resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} 704 | engines: {node: '>=10'} 705 | 706 | p-locate@5.0.0: 707 | resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} 708 | engines: {node: '>=10'} 709 | 710 | parent-module@1.0.1: 711 | resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} 712 | engines: {node: '>=6'} 713 | 714 | path-exists@4.0.0: 715 | resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} 716 | engines: {node: '>=8'} 717 | 718 | path-is-absolute@1.0.1: 719 | resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} 720 | engines: {node: '>=0.10.0'} 721 | 722 | path-key@3.1.1: 723 | resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} 724 | engines: {node: '>=8'} 725 | 726 | path-type@4.0.0: 727 | resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} 728 | engines: {node: '>=8'} 729 | 730 | picomatch@2.3.1: 731 | resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} 732 | engines: {node: '>=8.6'} 733 | 734 | prelude-ls@1.2.1: 735 | resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} 736 | engines: {node: '>= 0.8.0'} 737 | 738 | punycode@2.3.1: 739 | resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} 740 | engines: {node: '>=6'} 741 | 742 | queue-microtask@1.2.3: 743 | resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} 744 | 745 | resolve-from@4.0.0: 746 | resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} 747 | engines: {node: '>=4'} 748 | 749 | reusify@1.1.0: 750 | resolution: {integrity: sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==} 751 | engines: {iojs: '>=1.0.0', node: '>=0.10.0'} 752 | 753 | rimraf@3.0.2: 754 | resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} 755 | deprecated: Rimraf versions prior to v4 are no longer supported 756 | hasBin: true 757 | 758 | run-parallel@1.2.0: 759 | resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} 760 | 761 | safe-buffer@5.2.1: 762 | resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} 763 | 764 | section-matter@1.0.0: 765 | resolution: {integrity: sha512-vfD3pmTzGpufjScBh50YHKzEu2lxBWhVEHsNGoEXmCmn2hKGfeNLYMzCJpe8cD7gqX7TJluOVpBkAequ6dgMmA==} 766 | engines: {node: '>=4'} 767 | 768 | semver@7.7.2: 769 | resolution: {integrity: sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==} 770 | engines: {node: '>=10'} 771 | hasBin: true 772 | 773 | shebang-command@2.0.0: 774 | resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} 775 | engines: {node: '>=8'} 776 | 777 | shebang-regex@3.0.0: 778 | resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} 779 | engines: {node: '>=8'} 780 | 781 | slash@3.0.0: 782 | resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} 783 | engines: {node: '>=8'} 784 | 785 | sprintf-js@1.0.3: 786 | resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==} 787 | 788 | strip-ansi@6.0.1: 789 | resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} 790 | engines: {node: '>=8'} 791 | 792 | strip-bom-string@1.0.0: 793 | resolution: {integrity: sha512-uCC2VHvQRYu+lMh4My/sFNmF2klFymLX1wHJeXnbEJERpV/ZsVuonzerjfrGpIGF7LBVa1O7i9kjiWvJiFck8g==} 794 | engines: {node: '>=0.10.0'} 795 | 796 | strip-json-comments@3.1.1: 797 | resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} 798 | engines: {node: '>=8'} 799 | 800 | style-mod@4.1.2: 801 | resolution: {integrity: sha512-wnD1HyVqpJUI2+eKZ+eo1UwghftP6yuFheBqqe+bWCotBjC2K1YnteJILRMs3SM4V/0dLEW1SC27MWP5y+mwmw==} 802 | 803 | supports-color@7.2.0: 804 | resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} 805 | engines: {node: '>=8'} 806 | 807 | text-table@0.2.0: 808 | resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} 809 | 810 | to-regex-range@5.0.1: 811 | resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} 812 | engines: {node: '>=8.0'} 813 | 814 | tslib@1.14.1: 815 | resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==} 816 | 817 | tslib@2.4.0: 818 | resolution: {integrity: sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==} 819 | 820 | tsutils@3.21.0: 821 | resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==} 822 | engines: {node: '>= 6'} 823 | peerDependencies: 824 | typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta' 825 | 826 | type-check@0.4.0: 827 | resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} 828 | engines: {node: '>= 0.8.0'} 829 | 830 | type-fest@0.20.2: 831 | resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} 832 | engines: {node: '>=10'} 833 | 834 | typescript@4.7.3: 835 | resolution: {integrity: sha512-WOkT3XYvrpXx4vMMqlD+8R8R37fZkjyLGlxavMc4iB8lrl8L0DeTcHbYgw/v0N/z9wAFsgBhcsF0ruoySS22mA==} 836 | engines: {node: '>=4.2.0'} 837 | hasBin: true 838 | 839 | uc.micro@1.0.6: 840 | resolution: {integrity: sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==} 841 | 842 | uri-js@4.4.1: 843 | resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} 844 | 845 | w3c-keyname@2.2.8: 846 | resolution: {integrity: sha512-dpojBhNsCNN7T82Tm7k26A6G9ML3NkhDsnw9n/eoxSRlVBB4CEtIQ/KTCLI2Fwf3ataSXRhYFkQi3SlnFwPvPQ==} 847 | 848 | which@2.0.2: 849 | resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} 850 | engines: {node: '>= 8'} 851 | hasBin: true 852 | 853 | word-wrap@1.2.5: 854 | resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==} 855 | engines: {node: '>=0.10.0'} 856 | 857 | wrappy@1.0.2: 858 | resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} 859 | 860 | yocto-queue@0.1.0: 861 | resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} 862 | engines: {node: '>=10'} 863 | 864 | snapshots: 865 | 866 | '@codemirror/state@6.5.2': 867 | dependencies: 868 | '@marijn/find-cluster-break': 1.0.2 869 | 870 | '@codemirror/view@6.38.0': 871 | dependencies: 872 | '@codemirror/state': 6.5.2 873 | crelt: 1.0.6 874 | style-mod: 4.1.2 875 | w3c-keyname: 2.2.8 876 | 877 | '@eslint-community/eslint-utils@4.7.0(eslint@8.57.1)': 878 | dependencies: 879 | eslint: 8.57.1 880 | eslint-visitor-keys: 3.4.3 881 | 882 | '@eslint-community/regexpp@4.12.1': {} 883 | 884 | '@eslint/eslintrc@2.1.4': 885 | dependencies: 886 | ajv: 6.12.6 887 | debug: 4.4.1 888 | espree: 9.6.1 889 | globals: 13.24.0 890 | ignore: 5.3.2 891 | import-fresh: 3.3.1 892 | js-yaml: 4.1.0 893 | minimatch: 3.1.2 894 | strip-json-comments: 3.1.1 895 | transitivePeerDependencies: 896 | - supports-color 897 | 898 | '@eslint/js@8.57.1': {} 899 | 900 | '@humanwhocodes/config-array@0.13.0': 901 | dependencies: 902 | '@humanwhocodes/object-schema': 2.0.3 903 | debug: 4.4.1 904 | minimatch: 3.1.2 905 | transitivePeerDependencies: 906 | - supports-color 907 | 908 | '@humanwhocodes/module-importer@1.0.1': {} 909 | 910 | '@humanwhocodes/object-schema@2.0.3': {} 911 | 912 | '@marijn/find-cluster-break@1.0.2': {} 913 | 914 | '@nodelib/fs.scandir@2.1.5': 915 | dependencies: 916 | '@nodelib/fs.stat': 2.0.5 917 | run-parallel: 1.2.0 918 | 919 | '@nodelib/fs.stat@2.0.5': {} 920 | 921 | '@nodelib/fs.walk@1.2.8': 922 | dependencies: 923 | '@nodelib/fs.scandir': 2.1.5 924 | fastq: 1.19.1 925 | 926 | '@types/codemirror@5.60.8': 927 | dependencies: 928 | '@types/tern': 0.23.9 929 | 930 | '@types/estree@1.0.8': {} 931 | 932 | '@types/json-schema@7.0.15': {} 933 | 934 | '@types/jsonwebtoken@9.0.10': 935 | dependencies: 936 | '@types/ms': 2.1.0 937 | '@types/node': 17.0.45 938 | 939 | '@types/linkify-it@5.0.0': {} 940 | 941 | '@types/markdown-it@12.2.3': 942 | dependencies: 943 | '@types/linkify-it': 5.0.0 944 | '@types/mdurl': 2.0.0 945 | 946 | '@types/mdurl@2.0.0': {} 947 | 948 | '@types/ms@2.1.0': {} 949 | 950 | '@types/node@17.0.45': {} 951 | 952 | '@types/semver@7.7.0': {} 953 | 954 | '@types/tern@0.23.9': 955 | dependencies: 956 | '@types/estree': 1.0.8 957 | 958 | '@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.57.1)(typescript@4.7.3))(eslint@8.57.1)(typescript@4.7.3)': 959 | dependencies: 960 | '@eslint-community/regexpp': 4.12.1 961 | '@typescript-eslint/parser': 5.62.0(eslint@8.57.1)(typescript@4.7.3) 962 | '@typescript-eslint/scope-manager': 5.62.0 963 | '@typescript-eslint/type-utils': 5.62.0(eslint@8.57.1)(typescript@4.7.3) 964 | '@typescript-eslint/utils': 5.62.0(eslint@8.57.1)(typescript@4.7.3) 965 | debug: 4.4.1 966 | eslint: 8.57.1 967 | graphemer: 1.4.0 968 | ignore: 5.3.2 969 | natural-compare-lite: 1.4.0 970 | semver: 7.7.2 971 | tsutils: 3.21.0(typescript@4.7.3) 972 | optionalDependencies: 973 | typescript: 4.7.3 974 | transitivePeerDependencies: 975 | - supports-color 976 | 977 | '@typescript-eslint/parser@5.62.0(eslint@8.57.1)(typescript@4.7.3)': 978 | dependencies: 979 | '@typescript-eslint/scope-manager': 5.62.0 980 | '@typescript-eslint/types': 5.62.0 981 | '@typescript-eslint/typescript-estree': 5.62.0(typescript@4.7.3) 982 | debug: 4.4.1 983 | eslint: 8.57.1 984 | optionalDependencies: 985 | typescript: 4.7.3 986 | transitivePeerDependencies: 987 | - supports-color 988 | 989 | '@typescript-eslint/scope-manager@5.62.0': 990 | dependencies: 991 | '@typescript-eslint/types': 5.62.0 992 | '@typescript-eslint/visitor-keys': 5.62.0 993 | 994 | '@typescript-eslint/type-utils@5.62.0(eslint@8.57.1)(typescript@4.7.3)': 995 | dependencies: 996 | '@typescript-eslint/typescript-estree': 5.62.0(typescript@4.7.3) 997 | '@typescript-eslint/utils': 5.62.0(eslint@8.57.1)(typescript@4.7.3) 998 | debug: 4.4.1 999 | eslint: 8.57.1 1000 | tsutils: 3.21.0(typescript@4.7.3) 1001 | optionalDependencies: 1002 | typescript: 4.7.3 1003 | transitivePeerDependencies: 1004 | - supports-color 1005 | 1006 | '@typescript-eslint/types@5.62.0': {} 1007 | 1008 | '@typescript-eslint/typescript-estree@5.62.0(typescript@4.7.3)': 1009 | dependencies: 1010 | '@typescript-eslint/types': 5.62.0 1011 | '@typescript-eslint/visitor-keys': 5.62.0 1012 | debug: 4.4.1 1013 | globby: 11.1.0 1014 | is-glob: 4.0.3 1015 | semver: 7.7.2 1016 | tsutils: 3.21.0(typescript@4.7.3) 1017 | optionalDependencies: 1018 | typescript: 4.7.3 1019 | transitivePeerDependencies: 1020 | - supports-color 1021 | 1022 | '@typescript-eslint/utils@5.62.0(eslint@8.57.1)(typescript@4.7.3)': 1023 | dependencies: 1024 | '@eslint-community/eslint-utils': 4.7.0(eslint@8.57.1) 1025 | '@types/json-schema': 7.0.15 1026 | '@types/semver': 7.7.0 1027 | '@typescript-eslint/scope-manager': 5.62.0 1028 | '@typescript-eslint/types': 5.62.0 1029 | '@typescript-eslint/typescript-estree': 5.62.0(typescript@4.7.3) 1030 | eslint: 8.57.1 1031 | eslint-scope: 5.1.1 1032 | semver: 7.7.2 1033 | transitivePeerDependencies: 1034 | - supports-color 1035 | - typescript 1036 | 1037 | '@typescript-eslint/visitor-keys@5.62.0': 1038 | dependencies: 1039 | '@typescript-eslint/types': 5.62.0 1040 | eslint-visitor-keys: 3.4.3 1041 | 1042 | '@ungap/structured-clone@1.3.0': {} 1043 | 1044 | acorn-jsx@5.3.2(acorn@8.15.0): 1045 | dependencies: 1046 | acorn: 8.15.0 1047 | 1048 | acorn@8.15.0: {} 1049 | 1050 | ajv@6.12.6: 1051 | dependencies: 1052 | fast-deep-equal: 3.1.3 1053 | fast-json-stable-stringify: 2.1.0 1054 | json-schema-traverse: 0.4.1 1055 | uri-js: 4.4.1 1056 | 1057 | ansi-regex@5.0.1: {} 1058 | 1059 | ansi-styles@4.3.0: 1060 | dependencies: 1061 | color-convert: 2.0.1 1062 | 1063 | argparse@1.0.10: 1064 | dependencies: 1065 | sprintf-js: 1.0.3 1066 | 1067 | argparse@2.0.1: {} 1068 | 1069 | array-union@2.1.0: {} 1070 | 1071 | balanced-match@1.0.2: {} 1072 | 1073 | brace-expansion@1.1.12: 1074 | dependencies: 1075 | balanced-match: 1.0.2 1076 | concat-map: 0.0.1 1077 | 1078 | braces@3.0.3: 1079 | dependencies: 1080 | fill-range: 7.1.1 1081 | 1082 | buffer-equal-constant-time@1.0.1: {} 1083 | 1084 | builtin-modules@3.3.0: {} 1085 | 1086 | callsites@3.1.0: {} 1087 | 1088 | chalk@4.1.2: 1089 | dependencies: 1090 | ansi-styles: 4.3.0 1091 | supports-color: 7.2.0 1092 | 1093 | color-convert@2.0.1: 1094 | dependencies: 1095 | color-name: 1.1.4 1096 | 1097 | color-name@1.1.4: {} 1098 | 1099 | concat-map@0.0.1: {} 1100 | 1101 | crelt@1.0.6: {} 1102 | 1103 | cross-spawn@7.0.6: 1104 | dependencies: 1105 | path-key: 3.1.1 1106 | shebang-command: 2.0.0 1107 | which: 2.0.2 1108 | 1109 | debug@4.4.1: 1110 | dependencies: 1111 | ms: 2.1.3 1112 | 1113 | deep-is@0.1.4: {} 1114 | 1115 | dir-glob@3.0.1: 1116 | dependencies: 1117 | path-type: 4.0.0 1118 | 1119 | doctrine@3.0.0: 1120 | dependencies: 1121 | esutils: 2.0.3 1122 | 1123 | ecdsa-sig-formatter@1.0.11: 1124 | dependencies: 1125 | safe-buffer: 5.2.1 1126 | 1127 | entities@3.0.1: {} 1128 | 1129 | esbuild-android-64@0.14.43: 1130 | optional: true 1131 | 1132 | esbuild-android-arm64@0.14.43: 1133 | optional: true 1134 | 1135 | esbuild-darwin-64@0.14.43: 1136 | optional: true 1137 | 1138 | esbuild-darwin-arm64@0.14.43: 1139 | optional: true 1140 | 1141 | esbuild-freebsd-64@0.14.43: 1142 | optional: true 1143 | 1144 | esbuild-freebsd-arm64@0.14.43: 1145 | optional: true 1146 | 1147 | esbuild-linux-32@0.14.43: 1148 | optional: true 1149 | 1150 | esbuild-linux-64@0.14.43: 1151 | optional: true 1152 | 1153 | esbuild-linux-arm64@0.14.43: 1154 | optional: true 1155 | 1156 | esbuild-linux-arm@0.14.43: 1157 | optional: true 1158 | 1159 | esbuild-linux-mips64le@0.14.43: 1160 | optional: true 1161 | 1162 | esbuild-linux-ppc64le@0.14.43: 1163 | optional: true 1164 | 1165 | esbuild-linux-riscv64@0.14.43: 1166 | optional: true 1167 | 1168 | esbuild-linux-s390x@0.14.43: 1169 | optional: true 1170 | 1171 | esbuild-netbsd-64@0.14.43: 1172 | optional: true 1173 | 1174 | esbuild-openbsd-64@0.14.43: 1175 | optional: true 1176 | 1177 | esbuild-sunos-64@0.14.43: 1178 | optional: true 1179 | 1180 | esbuild-windows-32@0.14.43: 1181 | optional: true 1182 | 1183 | esbuild-windows-64@0.14.43: 1184 | optional: true 1185 | 1186 | esbuild-windows-arm64@0.14.43: 1187 | optional: true 1188 | 1189 | esbuild@0.14.43: 1190 | optionalDependencies: 1191 | esbuild-android-64: 0.14.43 1192 | esbuild-android-arm64: 0.14.43 1193 | esbuild-darwin-64: 0.14.43 1194 | esbuild-darwin-arm64: 0.14.43 1195 | esbuild-freebsd-64: 0.14.43 1196 | esbuild-freebsd-arm64: 0.14.43 1197 | esbuild-linux-32: 0.14.43 1198 | esbuild-linux-64: 0.14.43 1199 | esbuild-linux-arm: 0.14.43 1200 | esbuild-linux-arm64: 0.14.43 1201 | esbuild-linux-mips64le: 0.14.43 1202 | esbuild-linux-ppc64le: 0.14.43 1203 | esbuild-linux-riscv64: 0.14.43 1204 | esbuild-linux-s390x: 0.14.43 1205 | esbuild-netbsd-64: 0.14.43 1206 | esbuild-openbsd-64: 0.14.43 1207 | esbuild-sunos-64: 0.14.43 1208 | esbuild-windows-32: 0.14.43 1209 | esbuild-windows-64: 0.14.43 1210 | esbuild-windows-arm64: 0.14.43 1211 | 1212 | escape-string-regexp@4.0.0: {} 1213 | 1214 | eslint-scope@5.1.1: 1215 | dependencies: 1216 | esrecurse: 4.3.0 1217 | estraverse: 4.3.0 1218 | 1219 | eslint-scope@7.2.2: 1220 | dependencies: 1221 | esrecurse: 4.3.0 1222 | estraverse: 5.3.0 1223 | 1224 | eslint-visitor-keys@3.4.3: {} 1225 | 1226 | eslint@8.57.1: 1227 | dependencies: 1228 | '@eslint-community/eslint-utils': 4.7.0(eslint@8.57.1) 1229 | '@eslint-community/regexpp': 4.12.1 1230 | '@eslint/eslintrc': 2.1.4 1231 | '@eslint/js': 8.57.1 1232 | '@humanwhocodes/config-array': 0.13.0 1233 | '@humanwhocodes/module-importer': 1.0.1 1234 | '@nodelib/fs.walk': 1.2.8 1235 | '@ungap/structured-clone': 1.3.0 1236 | ajv: 6.12.6 1237 | chalk: 4.1.2 1238 | cross-spawn: 7.0.6 1239 | debug: 4.4.1 1240 | doctrine: 3.0.0 1241 | escape-string-regexp: 4.0.0 1242 | eslint-scope: 7.2.2 1243 | eslint-visitor-keys: 3.4.3 1244 | espree: 9.6.1 1245 | esquery: 1.6.0 1246 | esutils: 2.0.3 1247 | fast-deep-equal: 3.1.3 1248 | file-entry-cache: 6.0.1 1249 | find-up: 5.0.0 1250 | glob-parent: 6.0.2 1251 | globals: 13.24.0 1252 | graphemer: 1.4.0 1253 | ignore: 5.3.2 1254 | imurmurhash: 0.1.4 1255 | is-glob: 4.0.3 1256 | is-path-inside: 3.0.3 1257 | js-yaml: 4.1.0 1258 | json-stable-stringify-without-jsonify: 1.0.1 1259 | levn: 0.4.1 1260 | lodash.merge: 4.6.2 1261 | minimatch: 3.1.2 1262 | natural-compare: 1.4.0 1263 | optionator: 0.9.4 1264 | strip-ansi: 6.0.1 1265 | text-table: 0.2.0 1266 | transitivePeerDependencies: 1267 | - supports-color 1268 | 1269 | espree@9.6.1: 1270 | dependencies: 1271 | acorn: 8.15.0 1272 | acorn-jsx: 5.3.2(acorn@8.15.0) 1273 | eslint-visitor-keys: 3.4.3 1274 | 1275 | esprima@4.0.1: {} 1276 | 1277 | esquery@1.6.0: 1278 | dependencies: 1279 | estraverse: 5.3.0 1280 | 1281 | esrecurse@4.3.0: 1282 | dependencies: 1283 | estraverse: 5.3.0 1284 | 1285 | estraverse@4.3.0: {} 1286 | 1287 | estraverse@5.3.0: {} 1288 | 1289 | esutils@2.0.3: {} 1290 | 1291 | extend-shallow@2.0.1: 1292 | dependencies: 1293 | is-extendable: 0.1.1 1294 | 1295 | fast-deep-equal@3.1.3: {} 1296 | 1297 | fast-glob@3.3.3: 1298 | dependencies: 1299 | '@nodelib/fs.stat': 2.0.5 1300 | '@nodelib/fs.walk': 1.2.8 1301 | glob-parent: 5.1.2 1302 | merge2: 1.4.1 1303 | micromatch: 4.0.8 1304 | 1305 | fast-json-stable-stringify@2.1.0: {} 1306 | 1307 | fast-levenshtein@2.0.6: {} 1308 | 1309 | fastq@1.19.1: 1310 | dependencies: 1311 | reusify: 1.1.0 1312 | 1313 | file-entry-cache@6.0.1: 1314 | dependencies: 1315 | flat-cache: 3.2.0 1316 | 1317 | fill-range@7.1.1: 1318 | dependencies: 1319 | to-regex-range: 5.0.1 1320 | 1321 | find-up@5.0.0: 1322 | dependencies: 1323 | locate-path: 6.0.0 1324 | path-exists: 4.0.0 1325 | 1326 | flat-cache@3.2.0: 1327 | dependencies: 1328 | flatted: 3.3.3 1329 | keyv: 4.5.4 1330 | rimraf: 3.0.2 1331 | 1332 | flatted@3.3.3: {} 1333 | 1334 | fs.realpath@1.0.0: {} 1335 | 1336 | glob-parent@5.1.2: 1337 | dependencies: 1338 | is-glob: 4.0.3 1339 | 1340 | glob-parent@6.0.2: 1341 | dependencies: 1342 | is-glob: 4.0.3 1343 | 1344 | glob@7.2.3: 1345 | dependencies: 1346 | fs.realpath: 1.0.0 1347 | inflight: 1.0.6 1348 | inherits: 2.0.4 1349 | minimatch: 3.1.2 1350 | once: 1.4.0 1351 | path-is-absolute: 1.0.1 1352 | 1353 | globals@13.24.0: 1354 | dependencies: 1355 | type-fest: 0.20.2 1356 | 1357 | globby@11.1.0: 1358 | dependencies: 1359 | array-union: 2.1.0 1360 | dir-glob: 3.0.1 1361 | fast-glob: 3.3.3 1362 | ignore: 5.3.2 1363 | merge2: 1.4.1 1364 | slash: 3.0.0 1365 | 1366 | graphemer@1.4.0: {} 1367 | 1368 | gray-matter@4.0.3: 1369 | dependencies: 1370 | js-yaml: 3.14.1 1371 | kind-of: 6.0.3 1372 | section-matter: 1.0.0 1373 | strip-bom-string: 1.0.0 1374 | 1375 | has-flag@4.0.0: {} 1376 | 1377 | ignore@5.3.2: {} 1378 | 1379 | import-fresh@3.3.1: 1380 | dependencies: 1381 | parent-module: 1.0.1 1382 | resolve-from: 4.0.0 1383 | 1384 | imurmurhash@0.1.4: {} 1385 | 1386 | inflight@1.0.6: 1387 | dependencies: 1388 | once: 1.4.0 1389 | wrappy: 1.0.2 1390 | 1391 | inherits@2.0.4: {} 1392 | 1393 | is-extendable@0.1.1: {} 1394 | 1395 | is-extglob@2.1.1: {} 1396 | 1397 | is-glob@4.0.3: 1398 | dependencies: 1399 | is-extglob: 2.1.1 1400 | 1401 | is-number@7.0.0: {} 1402 | 1403 | is-path-inside@3.0.3: {} 1404 | 1405 | isexe@2.0.0: {} 1406 | 1407 | js-yaml@3.14.1: 1408 | dependencies: 1409 | argparse: 1.0.10 1410 | esprima: 4.0.1 1411 | 1412 | js-yaml@4.1.0: 1413 | dependencies: 1414 | argparse: 2.0.1 1415 | 1416 | json-buffer@3.0.1: {} 1417 | 1418 | json-schema-traverse@0.4.1: {} 1419 | 1420 | json-stable-stringify-without-jsonify@1.0.1: {} 1421 | 1422 | jsonwebtoken@9.0.2: 1423 | dependencies: 1424 | jws: 3.2.2 1425 | lodash.includes: 4.3.0 1426 | lodash.isboolean: 3.0.3 1427 | lodash.isinteger: 4.0.4 1428 | lodash.isnumber: 3.0.3 1429 | lodash.isplainobject: 4.0.6 1430 | lodash.isstring: 4.0.1 1431 | lodash.once: 4.1.1 1432 | ms: 2.1.3 1433 | semver: 7.7.2 1434 | 1435 | jwa@1.4.2: 1436 | dependencies: 1437 | buffer-equal-constant-time: 1.0.1 1438 | ecdsa-sig-formatter: 1.0.11 1439 | safe-buffer: 5.2.1 1440 | 1441 | jws@3.2.2: 1442 | dependencies: 1443 | jwa: 1.4.2 1444 | safe-buffer: 5.2.1 1445 | 1446 | keyv@4.5.4: 1447 | dependencies: 1448 | json-buffer: 3.0.1 1449 | 1450 | kind-of@6.0.3: {} 1451 | 1452 | levn@0.4.1: 1453 | dependencies: 1454 | prelude-ls: 1.2.1 1455 | type-check: 0.4.0 1456 | 1457 | linkify-it@4.0.1: 1458 | dependencies: 1459 | uc.micro: 1.0.6 1460 | 1461 | locate-path@6.0.0: 1462 | dependencies: 1463 | p-locate: 5.0.0 1464 | 1465 | lodash.includes@4.3.0: {} 1466 | 1467 | lodash.isboolean@3.0.3: {} 1468 | 1469 | lodash.isinteger@4.0.4: {} 1470 | 1471 | lodash.isnumber@3.0.3: {} 1472 | 1473 | lodash.isplainobject@4.0.6: {} 1474 | 1475 | lodash.isstring@4.0.1: {} 1476 | 1477 | lodash.merge@4.6.2: {} 1478 | 1479 | lodash.once@4.1.1: {} 1480 | 1481 | markdown-it@13.0.2: 1482 | dependencies: 1483 | argparse: 2.0.1 1484 | entities: 3.0.1 1485 | linkify-it: 4.0.1 1486 | mdurl: 1.0.1 1487 | uc.micro: 1.0.6 1488 | 1489 | mdurl@1.0.1: {} 1490 | 1491 | merge2@1.4.1: {} 1492 | 1493 | micromatch@4.0.8: 1494 | dependencies: 1495 | braces: 3.0.3 1496 | picomatch: 2.3.1 1497 | 1498 | minimatch@3.1.2: 1499 | dependencies: 1500 | brace-expansion: 1.1.12 1501 | 1502 | moment@2.29.4: {} 1503 | 1504 | ms@2.1.3: {} 1505 | 1506 | natural-compare-lite@1.4.0: {} 1507 | 1508 | natural-compare@1.4.0: {} 1509 | 1510 | obsidian@1.8.7(@codemirror/state@6.5.2)(@codemirror/view@6.38.0): 1511 | dependencies: 1512 | '@codemirror/state': 6.5.2 1513 | '@codemirror/view': 6.38.0 1514 | '@types/codemirror': 5.60.8 1515 | moment: 2.29.4 1516 | 1517 | once@1.4.0: 1518 | dependencies: 1519 | wrappy: 1.0.2 1520 | 1521 | optionator@0.9.4: 1522 | dependencies: 1523 | deep-is: 0.1.4 1524 | fast-levenshtein: 2.0.6 1525 | levn: 0.4.1 1526 | prelude-ls: 1.2.1 1527 | type-check: 0.4.0 1528 | word-wrap: 1.2.5 1529 | 1530 | p-limit@3.1.0: 1531 | dependencies: 1532 | yocto-queue: 0.1.0 1533 | 1534 | p-locate@5.0.0: 1535 | dependencies: 1536 | p-limit: 3.1.0 1537 | 1538 | parent-module@1.0.1: 1539 | dependencies: 1540 | callsites: 3.1.0 1541 | 1542 | path-exists@4.0.0: {} 1543 | 1544 | path-is-absolute@1.0.1: {} 1545 | 1546 | path-key@3.1.1: {} 1547 | 1548 | path-type@4.0.0: {} 1549 | 1550 | picomatch@2.3.1: {} 1551 | 1552 | prelude-ls@1.2.1: {} 1553 | 1554 | punycode@2.3.1: {} 1555 | 1556 | queue-microtask@1.2.3: {} 1557 | 1558 | resolve-from@4.0.0: {} 1559 | 1560 | reusify@1.1.0: {} 1561 | 1562 | rimraf@3.0.2: 1563 | dependencies: 1564 | glob: 7.2.3 1565 | 1566 | run-parallel@1.2.0: 1567 | dependencies: 1568 | queue-microtask: 1.2.3 1569 | 1570 | safe-buffer@5.2.1: {} 1571 | 1572 | section-matter@1.0.0: 1573 | dependencies: 1574 | extend-shallow: 2.0.1 1575 | kind-of: 6.0.3 1576 | 1577 | semver@7.7.2: {} 1578 | 1579 | shebang-command@2.0.0: 1580 | dependencies: 1581 | shebang-regex: 3.0.0 1582 | 1583 | shebang-regex@3.0.0: {} 1584 | 1585 | slash@3.0.0: {} 1586 | 1587 | sprintf-js@1.0.3: {} 1588 | 1589 | strip-ansi@6.0.1: 1590 | dependencies: 1591 | ansi-regex: 5.0.1 1592 | 1593 | strip-bom-string@1.0.0: {} 1594 | 1595 | strip-json-comments@3.1.1: {} 1596 | 1597 | style-mod@4.1.2: {} 1598 | 1599 | supports-color@7.2.0: 1600 | dependencies: 1601 | has-flag: 4.0.0 1602 | 1603 | text-table@0.2.0: {} 1604 | 1605 | to-regex-range@5.0.1: 1606 | dependencies: 1607 | is-number: 7.0.0 1608 | 1609 | tslib@1.14.1: {} 1610 | 1611 | tslib@2.4.0: {} 1612 | 1613 | tsutils@3.21.0(typescript@4.7.3): 1614 | dependencies: 1615 | tslib: 1.14.1 1616 | typescript: 4.7.3 1617 | 1618 | type-check@0.4.0: 1619 | dependencies: 1620 | prelude-ls: 1.2.1 1621 | 1622 | type-fest@0.20.2: {} 1623 | 1624 | typescript@4.7.3: {} 1625 | 1626 | uc.micro@1.0.6: {} 1627 | 1628 | uri-js@4.4.1: 1629 | dependencies: 1630 | punycode: 2.3.1 1631 | 1632 | w3c-keyname@2.2.8: {} 1633 | 1634 | which@2.0.2: 1635 | dependencies: 1636 | isexe: 2.0.0 1637 | 1638 | word-wrap@1.2.5: {} 1639 | 1640 | wrappy@1.0.2: {} 1641 | 1642 | yocto-queue@0.1.0: {} 1643 | --------------------------------------------------------------------------------