├── .editorconfig
├── .eslintignore
├── .eslintrc
├── .github
└── workflows
│ └── release.yml
├── .gitignore
├── .npmrc
├── LICENSE.md
├── README.md
├── bin
└── release.sh
├── esbuild.config.mjs
├── main.ts
├── manifest.json
├── package.json
├── pnpm-lock.yaml
├── readme-assets
├── blockquote-levels-128.png
├── blockquote-levels-256.png
├── blockquote-levels-64.png
└── showcase.gif
├── tsconfig.json
├── types.d.ts
└── versions.json
/.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 = spaces
9 | indent_size = 2
10 | tab_width = 2
11 |
--------------------------------------------------------------------------------
/.eslintignore:
--------------------------------------------------------------------------------
1 | npm node_modules
2 | build
--------------------------------------------------------------------------------
/.eslintrc:
--------------------------------------------------------------------------------
1 | {
2 | "root": true,
3 | "parser": "@typescript-eslint/parser",
4 | "env": { "node": true },
5 | "plugins": [
6 | "@typescript-eslint"
7 | ],
8 | "extends": [
9 | "eslint:recommended",
10 | "plugin:@typescript-eslint/eslint-recommended",
11 | "plugin:@typescript-eslint/recommended"
12 | ],
13 | "parserOptions": {
14 | "sourceType": "module"
15 | },
16 | "rules": {
17 | "no-unused-vars": "off",
18 | "@typescript-eslint/no-unused-vars": ["error", { "args": "none" }],
19 | "@typescript-eslint/ban-ts-comment": "off",
20 | "no-prototype-builtins": "off",
21 | "@typescript-eslint/no-empty-function": "off"
22 | }
23 | }
--------------------------------------------------------------------------------
/.github/workflows/release.yml:
--------------------------------------------------------------------------------
1 | name: Release Obsidian Plugin
2 | on:
3 | push:
4 | # Sequence of patterns matched against refs/tags
5 | tags:
6 | - "*" # Push events to matching any tag format, i.e. 1.0, 20.15.10
7 | permissions:
8 | contents: write
9 | jobs:
10 | build:
11 | runs-on: ubuntu-latest
12 | steps:
13 | - uses: actions/checkout@v3
14 | with:
15 | fetch-depth: 0 # otherwise, you will failed to push refs to dest repo
16 | - uses: actions/setup-node@v3
17 | with:
18 | node-version: "16.x" # You might need to adjust this value to your own version
19 |
20 | # Build the plugin
21 | - name: Build
22 | run: |
23 | yarn
24 | yarn run build
25 |
26 | # Get the version number and put it in a variable
27 | - name: Get version info
28 | id: version
29 | run: |
30 | echo "name=$(git describe --abbrev=0 --tags)" >> $GITHUB_OUTPUT
31 |
32 | # Package the required files into a zip
33 | - name: Package plugin archive
34 | run: |
35 | mkdir ${{ github.event.repository.name }}
36 | cp main.js manifest.json README.md ${{ github.event.repository.name }}
37 | zip -r ${{ github.event.repository.name }}-${{ steps.version.outputs.name }}.zip ${{ github.event.repository.name }}
38 |
39 | # Create the release on github
40 | - name: Create release
41 | uses: softprops/action-gh-release@v1
42 | if: startsWith(github.ref, 'refs/tags/')
43 | with:
44 | draft: true
45 | files: |
46 | ${{ github.event.repository.name }}-${{ steps.version.outputs.name }}.zip
47 | main.js
48 | manifest.json
49 | name: ${{ steps.version.outputs.name }}
50 | prerelease: false
51 | tag_name: ${{ github.ref }}
52 | token: ${{ secrets.GITHUB_TOKEN }}
53 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # vscode
2 | .vscode
3 |
4 | # npm
5 | node_modules
6 |
7 | # Don't include the compiled main.js file in the repo.
8 | # They should be uploaded to GitHub releases instead.
9 | main.js
10 |
11 | # Exclude sourcemaps
12 | *.map
13 |
14 | # obsidian
15 | data.json
16 |
17 | # Exclude macOS Finder (System Explorer) View States
18 | .DS_Store
19 |
--------------------------------------------------------------------------------
/.npmrc:
--------------------------------------------------------------------------------
1 | auto-install-peers=true
2 | tag-version-prefix=""
3 |
--------------------------------------------------------------------------------
/LICENSE.md:
--------------------------------------------------------------------------------
1 | # MIT License
2 |
3 | Copyright (c) 2021-present Carlo Zottmann, https://zottmann.org/
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 |
2 |
3 | # Blockquote Levels
4 |
5 | This plugin for [Obsidian](https://obsidian.md) adds commands for increasing/decreasing the blockquote level of the current line or selection(s).
6 |
7 |
8 | ## Usage
9 |
10 | The plugin introduces two new commands, "Blockquote Levels: Increase" and "Blockquote Levels: Decrease".
11 |
12 | "Increase" adds a Markdown blockquote prefix (`>`) to the current line, the current selection or selections. Subsequent calls will add subsequent prefixes, thus increasing the quote levels.
13 |
14 | "Decrease" removes the first Markdown blockquote prefix (`>`) from the current line, the current selection or selections. Mix'n'match is fine as each line is processed individually; when the selected lines sport different quote levels, only one prefix (`>`) is removed from each line (where present).
15 |
16 | Out of the box the plugin doesn't set hotkeys, set them yourself as you see fit, or trigger the commands using the command palette. The World is your oyster!
17 |
18 |
19 | ## Showcase
20 |
21 | 
22 |
23 |
24 | ## Bug Reports & Discussions
25 |
26 | For bug reports please use this repo's Issues section — thank you!
27 |
28 | I've moved all plugin **discussions** to the ActionsDotWork Forum which is a hub for both my Obsidian plugins and the macOS/iOS productivity apps I'm building: [Carlo's Obsidian Plugins - ActionsDotWork Forum](https://forum.actions.work/c/obsidian-plugins/8).
29 |
30 | The forum supports single-sign-on via GitHub, Apple and Google, meaning you can log in with your GitHub account.
31 |
32 |
33 | ## Installation
34 |
35 | 1. Search for "Blockquote Levels" in Obsidian's community plugins browser. ([This link should bring it up.](https://obsidian.md/plugins?id=zottmann))
36 | 2. Install it.
37 | 3. Enable the plugin in your Obsidian settings under "Community plugins".
38 |
39 | That's it.
40 |
41 |
42 | ## Installation via BRAT (for pre-releases or betas)
43 |
44 | 1. Install [BRAT](https://github.com/TfTHacker/obsidian42-brat).
45 | 2. Add "Blockquote Levels" to BRAT:
46 | 1. Open "Obsidian42 - BRAT" via Settings → Community Plugins
47 | 2. Click "Add Beta plugin"
48 | 3. Use the repository address `czottmann/obsidian-blockquote-levels`
49 | 3. Enable "Blockquote Levels" under Settings → Options → Community Plugins
50 |
51 |
52 | ## Development
53 |
54 | Clone the repository, run `pnpm install` OR `npm install` to install the dependencies. Afterwards, run `pnpm dev` OR `npm run dev` to compile and have it watch for file changes.
55 |
56 |
57 | ## Thanks to …
58 |
59 | - the [obsidian-tasks](https://github.com/obsidian-tasks-group/obsidian-tasks) crew for the "starter templates" for the GitHub Action workflow and the handy `release.sh` script
60 |
61 |
62 | ## Author
63 |
64 | Carlo Zottmann, , https://zottmann.org/
65 |
66 |
67 | ## License
68 |
69 | MIT, see [LICENSE.md](https://github.com/czottmann/obsidian-blockquote-levels/blob/main/LICENSE.md).
70 |
--------------------------------------------------------------------------------
/bin/release.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | # Thanks to https://github.com/obsidian-tasks-group/obsidian-tasks for this
4 | # script!
5 |
6 | set -euo pipefail
7 |
8 | if [ "$#" -ne 2 ]; then
9 | echo "Must provide exactly two arguments."
10 | echo "First one must be the new version number."
11 | echo "Second one must be the minimum obsidian version for this release."
12 | echo ""
13 | echo "Example usage:"
14 | echo "./release.sh 0.3.0 0.11.13"
15 | echo "Exiting."
16 |
17 | exit 1
18 | fi
19 |
20 | if [[ $(git status --porcelain) ]]; then
21 | echo "Changes in the git repo."
22 | echo "Exiting."
23 |
24 | exit 1
25 | fi
26 |
27 | NEW_VERSION=$1
28 | MINIMUM_OBSIDIAN_VERSION=$2
29 |
30 | echo "Updating to version ${NEW_VERSION} with minimum Obsidian version ${MINIMUM_OBSIDIAN_VERSION}"
31 |
32 | read -p "Continue? [y/N] " -n 1 -r
33 | echo
34 | if [[ $REPLY =~ ^[Yy]$ ]]
35 | then
36 | echo "Updating package.json"
37 | TEMP_FILE=$(mktemp)
38 | jq ".version |= \"${NEW_VERSION}\"" package.json > "$TEMP_FILE" || exit 1
39 | mv "$TEMP_FILE" package.json
40 |
41 | echo "Updating manifest.json"
42 | TEMP_FILE=$(mktemp)
43 | jq ".version |= \"${NEW_VERSION}\" | .minAppVersion |= \"${MINIMUM_OBSIDIAN_VERSION}\"" manifest.json > "$TEMP_FILE" || exit 1
44 | mv "$TEMP_FILE" manifest.json
45 |
46 | echo "Updating versions.json"
47 | TEMP_FILE=$(mktemp)
48 | jq ". += {\"${NEW_VERSION}\": \"${MINIMUM_OBSIDIAN_VERSION}\"}" versions.json > "$TEMP_FILE" || exit 1
49 | mv "$TEMP_FILE" versions.json
50 |
51 | read -p "Create git commit, tag, and push? [y/N] " -n 1 -r
52 | echo
53 | if [[ $REPLY =~ ^[Yy]$ ]]
54 | then
55 | git add -A .
56 | git commit -m"[REL] Releases version ${NEW_VERSION}"
57 | git tag "${NEW_VERSION}"
58 | git push
59 | LEFTHOOK=0 git push --tags
60 | fi
61 |
62 | else
63 | echo "Exiting."
64 | exit 1
65 | fi
66 |
--------------------------------------------------------------------------------
/esbuild.config.mjs:
--------------------------------------------------------------------------------
1 | import esbuild from "esbuild";
2 | import process from "process";
3 | import builtins from "builtin-modules";
4 | import { exec } from "child_process";
5 |
6 | const banner = `/*
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 isProduction = process.argv[2] === "production";
13 | const rsyncPlugin = {
14 | name: "rsyncPlugin",
15 | setup(build) {
16 | build.onEnd((result) => {
17 | if (process.env.USER !== "czottmann" || isProduction) {
18 | return;
19 | }
20 |
21 | exec(
22 | "../bin/sync-current-plugins-to-workbench-vault.fish",
23 | (error, stdout, stderr) => {
24 | if (error) {
25 | console.log(`exec error: ${error}`);
26 | }
27 | if (stderr) {
28 | console.log(stderr);
29 | } else
30 | console.log(
31 | "[watch] sync'd via `../bin/sync-current-plugins-to-workbench-vault.fish`"
32 | );
33 | }
34 | );
35 | });
36 | },
37 | };
38 |
39 | esbuild
40 | .build({
41 | banner: {
42 | js: banner,
43 | },
44 | entryPoints: ["main.ts"],
45 | bundle: true,
46 | external: [
47 | "obsidian",
48 | "electron",
49 | "@codemirror/autocomplete",
50 | "@codemirror/collab",
51 | "@codemirror/commands",
52 | "@codemirror/language",
53 | "@codemirror/lint",
54 | "@codemirror/search",
55 | "@codemirror/state",
56 | "@codemirror/view",
57 | "@lezer/common",
58 | "@lezer/highlight",
59 | "@lezer/lr",
60 | ...builtins,
61 | ],
62 | format: "cjs",
63 | watch: !isProduction,
64 | target: "es2018",
65 | logLevel: "info",
66 | sourcemap: isProduction ? false : "inline",
67 | treeShaking: true,
68 | outfile: "main.js",
69 | plugins: [rsyncPlugin],
70 | })
71 | .catch(() => process.exit(1));
72 |
--------------------------------------------------------------------------------
/main.ts:
--------------------------------------------------------------------------------
1 | import {
2 | App,
3 | Editor,
4 | EditorSelection,
5 | EditorSelectionOrCaret,
6 | MarkdownView,
7 | Plugin,
8 | PluginSettingTab,
9 | Setting,
10 | } from "obsidian";
11 | import {
12 | LineProcessor,
13 | SelectionLineNumbers,
14 | SelectionProcessor,
15 | } from "./types";
16 |
17 | interface BlockquoteLevelsSettings {
18 | spaceBetweenPrefixes: boolean;
19 | }
20 |
21 | const DEFAULT_SETTINGS: BlockquoteLevelsSettings = {
22 | spaceBetweenPrefixes: false,
23 | };
24 |
25 | export default class BlockquoteLevels extends Plugin {
26 | settings: BlockquoteLevelsSettings;
27 |
28 | async onload() {
29 | await this.loadSettings();
30 | this.addSettingTab(new BlockquoteLevelsSettingTab(this.app, this));
31 |
32 | this.addCommand({
33 | id: "blockquote-levels-increase",
34 | name: "Increase",
35 | editorCallback: (editor: Editor, view: MarkdownView) => {
36 | if (editor.somethingSelected()) {
37 | this.increaseLevelForSelections(editor);
38 | } else {
39 | this.increaseLevelForLine(editor);
40 | }
41 | },
42 | });
43 |
44 | this.addCommand({
45 | id: "blockquote-levels-decrease",
46 | name: "Decrease",
47 | editorCallback: (editor: Editor, view: MarkdownView) => {
48 | if (editor.somethingSelected()) {
49 | this.decreaseLevelForSelections(editor);
50 | } else {
51 | this.decreaseLevelForLine(editor);
52 | }
53 | },
54 | });
55 | }
56 |
57 | onunload() {}
58 |
59 | async loadSettings() {
60 | this.settings = Object.assign({}, DEFAULT_SETTINGS, await this.loadData());
61 | }
62 |
63 | async saveSettings() {
64 | await this.saveData(this.settings);
65 | }
66 |
67 | private increaseLevelForSelections(editor: Editor) {
68 | const prefix = this.settings.spaceBetweenPrefixes ? "> " : ">";
69 | this.processSelections(
70 | editor,
71 | (line: string) => /^>/.test(line) ? `${prefix}${line}` : `> ${line}`,
72 | );
73 | }
74 |
75 | private decreaseLevelForSelections(editor: Editor) {
76 | this.processSelections(
77 | editor,
78 | (line: string) => line.replace(/^>\s*/, ""),
79 | );
80 | }
81 |
82 | private processSelections(editor: Editor, lineProcessor: LineProcessor) {
83 | this.expandAndSortSelections(editor);
84 |
85 | // Replace text
86 | for (const selection of editor.listSelections()) {
87 | const text = editor.getRange(selection.anchor, selection.head)
88 | .split(/\n/)
89 | .map(lineProcessor)
90 | .join("\n");
91 |
92 | editor.replaceRange(text, selection.anchor, selection.head);
93 | }
94 | }
95 |
96 | private expandAndSortSelections(editor: Editor) {
97 | const preparedSelections = editor.listSelections()
98 | // Sort selections by line numbers, descending, so we're working from the
99 | // bottom up, seems safer
100 | .sort((s1, s2) =>
101 | this.getLineNumbersOfSelection(s2).lastLine -
102 | this.getLineNumbersOfSelection(s1).lastLine
103 | )
104 | // Expand selections to full lines
105 | .map((selection): EditorSelectionOrCaret => {
106 | const { firstLine, lastLine } = this.getLineNumbersOfSelection(
107 | selection,
108 | );
109 | return {
110 | anchor: { line: firstLine, ch: 0 },
111 | head: { line: lastLine, ch: editor.getLine(lastLine).length },
112 | };
113 | });
114 |
115 | editor.setSelections(preparedSelections);
116 | }
117 |
118 | getLineNumbersOfSelection(selection: EditorSelection): SelectionLineNumbers {
119 | const nos = [selection.anchor.line, selection.head.line]
120 | .sort((a, b) => a - b);
121 |
122 | return {
123 | firstLine: nos[0],
124 | lastLine: nos[1],
125 | };
126 | }
127 |
128 | private increaseLevelForLine(editor: Editor) {
129 | this.processLine(
130 | editor,
131 | () => this.increaseLevelForSelections(editor),
132 | );
133 | }
134 |
135 | private decreaseLevelForLine(editor: Editor) {
136 | this.processLine(
137 | editor,
138 | () => this.decreaseLevelForSelections(editor),
139 | );
140 | }
141 |
142 | private processLine(editor: Editor, selectionProcessor: SelectionProcessor) {
143 | const { line, ch } = editor.getCursor("head");
144 | const origLineLength = editor.getLine(line).length;
145 |
146 | // Create selection containing the line the cursor is in
147 | editor.setSelection(
148 | { line, ch: 0 },
149 | { line, ch: origLineLength },
150 | );
151 | selectionProcessor(editor);
152 |
153 | // Set correct new cursor position, which also clears the selection
154 | const cursorOffset = editor.getLine(line).length - origLineLength;
155 | editor.setCursor({ line, ch: ch + cursorOffset });
156 | }
157 | }
158 |
159 | class BlockquoteLevelsSettingTab extends PluginSettingTab {
160 | plugin: BlockquoteLevels;
161 |
162 | constructor(app: App, plugin: BlockquoteLevels) {
163 | super(app, plugin);
164 | this.plugin = plugin;
165 | }
166 |
167 | display(): void {
168 | const { containerEl } = this;
169 |
170 | containerEl.empty();
171 | containerEl.createEl("h2", { text: "Blockquote Levels Settings" });
172 |
173 | new Setting(containerEl)
174 | .setName("Use a space between subsequent blockquote prefixes")
175 | .setDesc('Disabled: ">>> quote", Enabled: "> > > quote"')
176 | .addToggle((toggle) =>
177 | toggle
178 | .setValue(this.plugin.settings.spaceBetweenPrefixes)
179 | .onChange(async (value) => {
180 | console.log(
181 | "[Blockquote Levels] " +
182 | "Use spaces between subsequent blockquote prefixes: " +
183 | value,
184 | );
185 | this.plugin.settings.spaceBetweenPrefixes = value;
186 | await this.plugin.saveSettings();
187 | })
188 | );
189 | }
190 | }
191 |
--------------------------------------------------------------------------------
/manifest.json:
--------------------------------------------------------------------------------
1 | {
2 | "id": "blockquote-levels",
3 | "name": "Blockquote Levels",
4 | "version": "1.1.0",
5 | "minAppVersion": "0.15.0",
6 | "description": "Adds commands for increasing/decreasing the blockquote level of the current line or selection.",
7 | "author": "Carlo Zottmann",
8 | "authorUrl": "https://github.com/czottmann",
9 | "isDesktopOnly": false
10 | }
11 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "obsidian-blockquote-levels",
3 | "version": "1.1.0",
4 | "description": "This plugin for Obsidian (https://obsidian.md) adds commands for increasing/decreasing the blockquote level of the current line or selection.",
5 | "main": "main.js",
6 | "scripts": {
7 | "dev": "node esbuild.config.mjs",
8 | "build": "tsc -noEmit -skipLibCheck && node esbuild.config.mjs production",
9 | "version": "node version-bump.mjs && git add manifest.json versions.json"
10 | },
11 | "keywords": [],
12 | "author": "Carlo Zottmann, https://github.com/czottmann/",
13 | "license": "MIT",
14 | "devDependencies": {
15 | "@types/node": "^16.11.58",
16 | "@typescript-eslint/eslint-plugin": "5.36.2",
17 | "@typescript-eslint/parser": "5.36.2",
18 | "builtin-modules": "3.3.0",
19 | "esbuild": "0.15.7",
20 | "obsidian": "latest",
21 | "tslib": "2.4.0",
22 | "typescript": "4.8.3"
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/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/node':
12 | specifier: ^16.11.58
13 | version: 16.18.108
14 | '@typescript-eslint/eslint-plugin':
15 | specifier: 5.36.2
16 | version: 5.36.2(@typescript-eslint/parser@5.36.2(eslint@8.57.1)(typescript@4.8.3))(eslint@8.57.1)(typescript@4.8.3)
17 | '@typescript-eslint/parser':
18 | specifier: 5.36.2
19 | version: 5.36.2(eslint@8.57.1)(typescript@4.8.3)
20 | builtin-modules:
21 | specifier: 3.3.0
22 | version: 3.3.0
23 | esbuild:
24 | specifier: 0.15.7
25 | version: 0.15.7
26 | obsidian:
27 | specifier: latest
28 | version: 1.6.6(@codemirror/state@6.4.1)(@codemirror/view@6.33.0)
29 | tslib:
30 | specifier: 2.4.0
31 | version: 2.4.0
32 | typescript:
33 | specifier: 4.8.3
34 | version: 4.8.3
35 |
36 | packages:
37 |
38 | '@codemirror/state@6.4.1':
39 | resolution: {integrity: sha512-QkEyUiLhsJoZkbumGZlswmAhA7CBU02Wrz7zvH4SrcifbsqwlXShVXg65f3v/ts57W3dqyamEriMhij1Z3Zz4A==}
40 |
41 | '@codemirror/view@6.33.0':
42 | resolution: {integrity: sha512-AroaR3BvnjRW8fiZBalAaK+ZzB5usGgI014YKElYZvQdNH5ZIidHlO+cyf/2rWzyBFRkvG6VhiXeAEbC53P2YQ==}
43 |
44 | '@esbuild/linux-loong64@0.15.7':
45 | resolution: {integrity: sha512-IKznSJOsVUuyt7cDzzSZyqBEcZe+7WlBqTVXiF1OXP/4Nm387ToaXZ0fyLwI1iBlI/bzpxVq411QE2/Bt2XWWw==}
46 | engines: {node: '>=12'}
47 | cpu: [loong64]
48 | os: [linux]
49 |
50 | '@eslint-community/eslint-utils@4.4.0':
51 | resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==}
52 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
53 | peerDependencies:
54 | eslint: ^6.0.0 || ^7.0.0 || >=8.0.0
55 |
56 | '@eslint-community/regexpp@4.11.1':
57 | resolution: {integrity: sha512-m4DVN9ZqskZoLU5GlWZadwDnYo3vAEydiUayB9widCl9ffWx2IvPnp6n3on5rJmziJSw9Bv+Z3ChDVdMwXCY8Q==}
58 | engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0}
59 |
60 | '@eslint/eslintrc@2.1.4':
61 | resolution: {integrity: sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==}
62 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
63 |
64 | '@eslint/js@8.57.1':
65 | resolution: {integrity: sha512-d9zaMRSTIKDLhctzH12MtXvJKSSUhaHcjV+2Z+GK+EEY7XKpP5yR4x+N3TAcHTcu963nIr+TMcCb4DBCYX1z6Q==}
66 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
67 |
68 | '@humanwhocodes/config-array@0.13.0':
69 | resolution: {integrity: sha512-DZLEEqFWQFiyK6h5YIeynKx7JlvCYWL0cImfSRXZ9l4Sg2efkFGTuFf6vzXjK1cq6IYkU+Eg/JizXw+TD2vRNw==}
70 | engines: {node: '>=10.10.0'}
71 | deprecated: Use @eslint/config-array instead
72 |
73 | '@humanwhocodes/module-importer@1.0.1':
74 | resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==}
75 | engines: {node: '>=12.22'}
76 |
77 | '@humanwhocodes/object-schema@2.0.3':
78 | resolution: {integrity: sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==}
79 | deprecated: Use @eslint/object-schema instead
80 |
81 | '@nodelib/fs.scandir@2.1.5':
82 | resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==}
83 | engines: {node: '>= 8'}
84 |
85 | '@nodelib/fs.stat@2.0.5':
86 | resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==}
87 | engines: {node: '>= 8'}
88 |
89 | '@nodelib/fs.walk@1.2.8':
90 | resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==}
91 | engines: {node: '>= 8'}
92 |
93 | '@types/codemirror@5.60.8':
94 | resolution: {integrity: sha512-VjFgDF/eB+Aklcy15TtOTLQeMjTo07k7KAjql8OK5Dirr7a6sJY4T1uVBDuTVG9VEmn1uUsohOpYnVfgC6/jyw==}
95 |
96 | '@types/estree@1.0.5':
97 | resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==}
98 |
99 | '@types/json-schema@7.0.15':
100 | resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==}
101 |
102 | '@types/node@16.18.108':
103 | resolution: {integrity: sha512-fj42LD82fSv6yN9C6Q4dzS+hujHj+pTv0IpRR3kI20fnYeS0ytBpjFO9OjmDowSPPt4lNKN46JLaKbCyP+BW2A==}
104 |
105 | '@types/tern@0.23.9':
106 | resolution: {integrity: sha512-ypzHFE/wBzh+BlH6rrBgS5I/Z7RD21pGhZ2rltb/+ZrVM1awdZwjx7hE5XfuYgHWk9uvV5HLZN3SloevCAp3Bw==}
107 |
108 | '@typescript-eslint/eslint-plugin@5.36.2':
109 | resolution: {integrity: sha512-OwwR8LRwSnI98tdc2z7mJYgY60gf7I9ZfGjN5EjCwwns9bdTuQfAXcsjSB2wSQ/TVNYSGKf4kzVXbNGaZvwiXw==}
110 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
111 | peerDependencies:
112 | '@typescript-eslint/parser': ^5.0.0
113 | eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
114 | typescript: '*'
115 | peerDependenciesMeta:
116 | typescript:
117 | optional: true
118 |
119 | '@typescript-eslint/parser@5.36.2':
120 | resolution: {integrity: sha512-qS/Kb0yzy8sR0idFspI9Z6+t7mqk/oRjnAYfewG+VN73opAUvmYL3oPIMmgOX6CnQS6gmVIXGshlb5RY/R22pA==}
121 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
122 | peerDependencies:
123 | eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
124 | typescript: '*'
125 | peerDependenciesMeta:
126 | typescript:
127 | optional: true
128 |
129 | '@typescript-eslint/scope-manager@5.36.2':
130 | resolution: {integrity: sha512-cNNP51L8SkIFSfce8B1NSUBTJTu2Ts4nWeWbFrdaqjmn9yKrAaJUBHkyTZc0cL06OFHpb+JZq5AUHROS398Orw==}
131 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
132 |
133 | '@typescript-eslint/type-utils@5.36.2':
134 | resolution: {integrity: sha512-rPQtS5rfijUWLouhy6UmyNquKDPhQjKsaKH0WnY6hl/07lasj8gPaH2UD8xWkePn6SC+jW2i9c2DZVDnL+Dokw==}
135 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
136 | peerDependencies:
137 | eslint: '*'
138 | typescript: '*'
139 | peerDependenciesMeta:
140 | typescript:
141 | optional: true
142 |
143 | '@typescript-eslint/types@5.36.2':
144 | resolution: {integrity: sha512-9OJSvvwuF1L5eS2EQgFUbECb99F0mwq501w0H0EkYULkhFa19Qq7WFbycdw1PexAc929asupbZcgjVIe6OK/XQ==}
145 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
146 |
147 | '@typescript-eslint/typescript-estree@5.36.2':
148 | resolution: {integrity: sha512-8fyH+RfbKc0mTspfuEjlfqA4YywcwQK2Amcf6TDOwaRLg7Vwdu4bZzyvBZp4bjt1RRjQ5MDnOZahxMrt2l5v9w==}
149 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
150 | peerDependencies:
151 | typescript: '*'
152 | peerDependenciesMeta:
153 | typescript:
154 | optional: true
155 |
156 | '@typescript-eslint/utils@5.36.2':
157 | resolution: {integrity: sha512-uNcopWonEITX96v9pefk9DC1bWMdkweeSsewJ6GeC7L6j2t0SJywisgkr9wUTtXk90fi2Eljj90HSHm3OGdGRg==}
158 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
159 | peerDependencies:
160 | eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
161 |
162 | '@typescript-eslint/visitor-keys@5.36.2':
163 | resolution: {integrity: sha512-BtRvSR6dEdrNt7Net2/XDjbYKU5Ml6GqJgVfXT0CxTCJlnIqK7rAGreuWKMT2t8cFUT2Msv5oxw0GMRD7T5J7A==}
164 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
165 |
166 | '@ungap/structured-clone@1.2.0':
167 | resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==}
168 |
169 | acorn-jsx@5.3.2:
170 | resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==}
171 | peerDependencies:
172 | acorn: ^6.0.0 || ^7.0.0 || ^8.0.0
173 |
174 | acorn@8.12.1:
175 | resolution: {integrity: sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg==}
176 | engines: {node: '>=0.4.0'}
177 | hasBin: true
178 |
179 | ajv@6.12.6:
180 | resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==}
181 |
182 | ansi-regex@5.0.1:
183 | resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==}
184 | engines: {node: '>=8'}
185 |
186 | ansi-styles@4.3.0:
187 | resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==}
188 | engines: {node: '>=8'}
189 |
190 | argparse@2.0.1:
191 | resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==}
192 |
193 | array-union@2.1.0:
194 | resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==}
195 | engines: {node: '>=8'}
196 |
197 | balanced-match@1.0.2:
198 | resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
199 |
200 | brace-expansion@1.1.11:
201 | resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==}
202 |
203 | braces@3.0.3:
204 | resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==}
205 | engines: {node: '>=8'}
206 |
207 | builtin-modules@3.3.0:
208 | resolution: {integrity: sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==}
209 | engines: {node: '>=6'}
210 |
211 | callsites@3.1.0:
212 | resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==}
213 | engines: {node: '>=6'}
214 |
215 | chalk@4.1.2:
216 | resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==}
217 | engines: {node: '>=10'}
218 |
219 | color-convert@2.0.1:
220 | resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==}
221 | engines: {node: '>=7.0.0'}
222 |
223 | color-name@1.1.4:
224 | resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==}
225 |
226 | concat-map@0.0.1:
227 | resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==}
228 |
229 | cross-spawn@7.0.3:
230 | resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==}
231 | engines: {node: '>= 8'}
232 |
233 | debug@4.3.7:
234 | resolution: {integrity: sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==}
235 | engines: {node: '>=6.0'}
236 | peerDependencies:
237 | supports-color: '*'
238 | peerDependenciesMeta:
239 | supports-color:
240 | optional: true
241 |
242 | deep-is@0.1.4:
243 | resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==}
244 |
245 | dir-glob@3.0.1:
246 | resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==}
247 | engines: {node: '>=8'}
248 |
249 | doctrine@3.0.0:
250 | resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==}
251 | engines: {node: '>=6.0.0'}
252 |
253 | esbuild-android-64@0.15.7:
254 | resolution: {integrity: sha512-p7rCvdsldhxQr3YHxptf1Jcd86dlhvc3EQmQJaZzzuAxefO9PvcI0GLOa5nCWem1AJ8iMRu9w0r5TG8pHmbi9w==}
255 | engines: {node: '>=12'}
256 | cpu: [x64]
257 | os: [android]
258 |
259 | esbuild-android-arm64@0.15.7:
260 | resolution: {integrity: sha512-L775l9ynJT7rVqRM5vo+9w5g2ysbOCfsdLV4CWanTZ1k/9Jb3IYlQ06VCI1edhcosTYJRECQFJa3eAvkx72eyQ==}
261 | engines: {node: '>=12'}
262 | cpu: [arm64]
263 | os: [android]
264 |
265 | esbuild-darwin-64@0.15.7:
266 | resolution: {integrity: sha512-KGPt3r1c9ww009t2xLB6Vk0YyNOXh7hbjZ3EecHoVDxgtbUlYstMPDaReimKe6eOEfyY4hBEEeTvKwPsiH5WZg==}
267 | engines: {node: '>=12'}
268 | cpu: [x64]
269 | os: [darwin]
270 |
271 | esbuild-darwin-arm64@0.15.7:
272 | resolution: {integrity: sha512-kBIHvtVqbSGajN88lYMnR3aIleH3ABZLLFLxwL2stiuIGAjGlQW741NxVTpUHQXUmPzxi6POqc9npkXa8AcSZQ==}
273 | engines: {node: '>=12'}
274 | cpu: [arm64]
275 | os: [darwin]
276 |
277 | esbuild-freebsd-64@0.15.7:
278 | resolution: {integrity: sha512-hESZB91qDLV5MEwNxzMxPfbjAhOmtfsr9Wnuci7pY6TtEh4UDuevmGmkUIjX/b+e/k4tcNBMf7SRQ2mdNuK/HQ==}
279 | engines: {node: '>=12'}
280 | cpu: [x64]
281 | os: [freebsd]
282 |
283 | esbuild-freebsd-arm64@0.15.7:
284 | resolution: {integrity: sha512-dLFR0ChH5t+b3J8w0fVKGvtwSLWCv7GYT2Y2jFGulF1L5HftQLzVGN+6pi1SivuiVSmTh28FwUhi9PwQicXI6Q==}
285 | engines: {node: '>=12'}
286 | cpu: [arm64]
287 | os: [freebsd]
288 |
289 | esbuild-linux-32@0.15.7:
290 | resolution: {integrity: sha512-v3gT/LsONGUZcjbt2swrMjwxo32NJzk+7sAgtxhGx1+ZmOFaTRXBAi1PPfgpeo/J//Un2jIKm/I+qqeo4caJvg==}
291 | engines: {node: '>=12'}
292 | cpu: [ia32]
293 | os: [linux]
294 |
295 | esbuild-linux-64@0.15.7:
296 | resolution: {integrity: sha512-LxXEfLAKwOVmm1yecpMmWERBshl+Kv5YJ/1KnyAr6HRHFW8cxOEsEfisD3sVl/RvHyW//lhYUVSuy9jGEfIRAQ==}
297 | engines: {node: '>=12'}
298 | cpu: [x64]
299 | os: [linux]
300 |
301 | esbuild-linux-arm64@0.15.7:
302 | resolution: {integrity: sha512-P3cfhudpzWDkglutWgXcT2S7Ft7o2e3YDMrP1n0z2dlbUZghUkKCyaWw0zhp4KxEEzt/E7lmrtRu/pGWnwb9vw==}
303 | engines: {node: '>=12'}
304 | cpu: [arm64]
305 | os: [linux]
306 |
307 | esbuild-linux-arm@0.15.7:
308 | resolution: {integrity: sha512-JKgAHtMR5f75wJTeuNQbyznZZa+pjiUHV7sRZp42UNdyXC6TiUYMW/8z8yIBAr2Fpad8hM1royZKQisqPABPvQ==}
309 | engines: {node: '>=12'}
310 | cpu: [arm]
311 | os: [linux]
312 |
313 | esbuild-linux-mips64le@0.15.7:
314 | resolution: {integrity: sha512-T7XKuxl0VpeFLCJXub6U+iybiqh0kM/bWOTb4qcPyDDwNVhLUiPcGdG2/0S7F93czUZOKP57YiLV8YQewgLHKw==}
315 | engines: {node: '>=12'}
316 | cpu: [mips64el]
317 | os: [linux]
318 |
319 | esbuild-linux-ppc64le@0.15.7:
320 | resolution: {integrity: sha512-6mGuC19WpFN7NYbecMIJjeQgvDb5aMuvyk0PDYBJrqAEMkTwg3Z98kEKuCm6THHRnrgsdr7bp4SruSAxEM4eJw==}
321 | engines: {node: '>=12'}
322 | cpu: [ppc64]
323 | os: [linux]
324 |
325 | esbuild-linux-riscv64@0.15.7:
326 | resolution: {integrity: sha512-uUJsezbswAYo/X7OU/P+PuL/EI9WzxsEQXDekfwpQ23uGiooxqoLFAPmXPcRAt941vjlY9jtITEEikWMBr+F/g==}
327 | engines: {node: '>=12'}
328 | cpu: [riscv64]
329 | os: [linux]
330 |
331 | esbuild-linux-s390x@0.15.7:
332 | resolution: {integrity: sha512-+tO+xOyTNMc34rXlSxK7aCwJgvQyffqEM5MMdNDEeMU3ss0S6wKvbBOQfgd5jRPblfwJ6b+bKiz0g5nABpY0QQ==}
333 | engines: {node: '>=12'}
334 | cpu: [s390x]
335 | os: [linux]
336 |
337 | esbuild-netbsd-64@0.15.7:
338 | resolution: {integrity: sha512-yVc4Wz+Pu3cP5hzm5kIygNPrjar/v5WCSoRmIjCPWfBVJkZNb5brEGKUlf+0Y759D48BCWa0WHrWXaNy0DULTQ==}
339 | engines: {node: '>=12'}
340 | cpu: [x64]
341 | os: [netbsd]
342 |
343 | esbuild-openbsd-64@0.15.7:
344 | resolution: {integrity: sha512-GsimbwC4FSR4lN3wf8XmTQ+r8/0YSQo21rWDL0XFFhLHKlzEA4SsT1Tl8bPYu00IU6UWSJ+b3fG/8SB69rcuEQ==}
345 | engines: {node: '>=12'}
346 | cpu: [x64]
347 | os: [openbsd]
348 |
349 | esbuild-sunos-64@0.15.7:
350 | resolution: {integrity: sha512-8CDI1aL/ts0mDGbWzjEOGKXnU7p3rDzggHSBtVryQzkSOsjCHRVe0iFYUuhczlxU1R3LN/E7HgUO4NXzGGP/Ag==}
351 | engines: {node: '>=12'}
352 | cpu: [x64]
353 | os: [sunos]
354 |
355 | esbuild-windows-32@0.15.7:
356 | resolution: {integrity: sha512-cOnKXUEPS8EGCzRSFa1x6NQjGhGsFlVgjhqGEbLTPsA7x4RRYiy2RKoArNUU4iR2vHmzqS5Gr84MEumO/wxYKA==}
357 | engines: {node: '>=12'}
358 | cpu: [ia32]
359 | os: [win32]
360 |
361 | esbuild-windows-64@0.15.7:
362 | resolution: {integrity: sha512-7MI08Ec2sTIDv+zH6StNBKO+2hGUYIT42GmFyW6MBBWWtJhTcQLinKS6ldIN1d52MXIbiJ6nXyCJ+LpL4jBm3Q==}
363 | engines: {node: '>=12'}
364 | cpu: [x64]
365 | os: [win32]
366 |
367 | esbuild-windows-arm64@0.15.7:
368 | resolution: {integrity: sha512-R06nmqBlWjKHddhRJYlqDd3Fabx9LFdKcjoOy08YLimwmsswlFBJV4rXzZCxz/b7ZJXvrZgj8DDv1ewE9+StMw==}
369 | engines: {node: '>=12'}
370 | cpu: [arm64]
371 | os: [win32]
372 |
373 | esbuild@0.15.7:
374 | resolution: {integrity: sha512-7V8tzllIbAQV1M4QoE52ImKu8hT/NLGlGXkiDsbEU5PS6K8Mn09ZnYoS+dcmHxOS9CRsV4IRAMdT3I67IyUNXw==}
375 | engines: {node: '>=12'}
376 | hasBin: true
377 |
378 | escape-string-regexp@4.0.0:
379 | resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==}
380 | engines: {node: '>=10'}
381 |
382 | eslint-scope@5.1.1:
383 | resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==}
384 | engines: {node: '>=8.0.0'}
385 |
386 | eslint-scope@7.2.2:
387 | resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==}
388 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
389 |
390 | eslint-utils@3.0.0:
391 | resolution: {integrity: sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==}
392 | engines: {node: ^10.0.0 || ^12.0.0 || >= 14.0.0}
393 | peerDependencies:
394 | eslint: '>=5'
395 |
396 | eslint-visitor-keys@2.1.0:
397 | resolution: {integrity: sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==}
398 | engines: {node: '>=10'}
399 |
400 | eslint-visitor-keys@3.4.3:
401 | resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==}
402 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
403 |
404 | eslint@8.57.1:
405 | resolution: {integrity: sha512-ypowyDxpVSYpkXr9WPv2PAZCtNip1Mv5KTW0SCurXv/9iOpcrH9PaqUElksqEB6pChqHGDRCFTyrZlGhnLNGiA==}
406 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
407 | hasBin: true
408 |
409 | espree@9.6.1:
410 | resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==}
411 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
412 |
413 | esquery@1.6.0:
414 | resolution: {integrity: sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==}
415 | engines: {node: '>=0.10'}
416 |
417 | esrecurse@4.3.0:
418 | resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==}
419 | engines: {node: '>=4.0'}
420 |
421 | estraverse@4.3.0:
422 | resolution: {integrity: sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==}
423 | engines: {node: '>=4.0'}
424 |
425 | estraverse@5.3.0:
426 | resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==}
427 | engines: {node: '>=4.0'}
428 |
429 | esutils@2.0.3:
430 | resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==}
431 | engines: {node: '>=0.10.0'}
432 |
433 | fast-deep-equal@3.1.3:
434 | resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==}
435 |
436 | fast-glob@3.3.2:
437 | resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==}
438 | engines: {node: '>=8.6.0'}
439 |
440 | fast-json-stable-stringify@2.1.0:
441 | resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==}
442 |
443 | fast-levenshtein@2.0.6:
444 | resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==}
445 |
446 | fastq@1.17.1:
447 | resolution: {integrity: sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==}
448 |
449 | file-entry-cache@6.0.1:
450 | resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==}
451 | engines: {node: ^10.12.0 || >=12.0.0}
452 |
453 | fill-range@7.1.1:
454 | resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==}
455 | engines: {node: '>=8'}
456 |
457 | find-up@5.0.0:
458 | resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==}
459 | engines: {node: '>=10'}
460 |
461 | flat-cache@3.2.0:
462 | resolution: {integrity: sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==}
463 | engines: {node: ^10.12.0 || >=12.0.0}
464 |
465 | flatted@3.3.1:
466 | resolution: {integrity: sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==}
467 |
468 | fs.realpath@1.0.0:
469 | resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==}
470 |
471 | functional-red-black-tree@1.0.1:
472 | resolution: {integrity: sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g==}
473 |
474 | glob-parent@5.1.2:
475 | resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==}
476 | engines: {node: '>= 6'}
477 |
478 | glob-parent@6.0.2:
479 | resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==}
480 | engines: {node: '>=10.13.0'}
481 |
482 | glob@7.2.3:
483 | resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==}
484 | deprecated: Glob versions prior to v9 are no longer supported
485 |
486 | globals@13.24.0:
487 | resolution: {integrity: sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==}
488 | engines: {node: '>=8'}
489 |
490 | globby@11.1.0:
491 | resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==}
492 | engines: {node: '>=10'}
493 |
494 | graphemer@1.4.0:
495 | resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==}
496 |
497 | has-flag@4.0.0:
498 | resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==}
499 | engines: {node: '>=8'}
500 |
501 | ignore@5.3.2:
502 | resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==}
503 | engines: {node: '>= 4'}
504 |
505 | import-fresh@3.3.0:
506 | resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==}
507 | engines: {node: '>=6'}
508 |
509 | imurmurhash@0.1.4:
510 | resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==}
511 | engines: {node: '>=0.8.19'}
512 |
513 | inflight@1.0.6:
514 | resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==}
515 | 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.
516 |
517 | inherits@2.0.4:
518 | resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==}
519 |
520 | is-extglob@2.1.1:
521 | resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==}
522 | engines: {node: '>=0.10.0'}
523 |
524 | is-glob@4.0.3:
525 | resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==}
526 | engines: {node: '>=0.10.0'}
527 |
528 | is-number@7.0.0:
529 | resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==}
530 | engines: {node: '>=0.12.0'}
531 |
532 | is-path-inside@3.0.3:
533 | resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==}
534 | engines: {node: '>=8'}
535 |
536 | isexe@2.0.0:
537 | resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==}
538 |
539 | js-yaml@4.1.0:
540 | resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==}
541 | hasBin: true
542 |
543 | json-buffer@3.0.1:
544 | resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==}
545 |
546 | json-schema-traverse@0.4.1:
547 | resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==}
548 |
549 | json-stable-stringify-without-jsonify@1.0.1:
550 | resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==}
551 |
552 | keyv@4.5.4:
553 | resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==}
554 |
555 | levn@0.4.1:
556 | resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==}
557 | engines: {node: '>= 0.8.0'}
558 |
559 | locate-path@6.0.0:
560 | resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==}
561 | engines: {node: '>=10'}
562 |
563 | lodash.merge@4.6.2:
564 | resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==}
565 |
566 | merge2@1.4.1:
567 | resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==}
568 | engines: {node: '>= 8'}
569 |
570 | micromatch@4.0.8:
571 | resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==}
572 | engines: {node: '>=8.6'}
573 |
574 | minimatch@3.1.2:
575 | resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==}
576 |
577 | moment@2.29.4:
578 | resolution: {integrity: sha512-5LC9SOxjSc2HF6vO2CyuTDNivEdoz2IvyJJGj6X8DJ0eFyfszE0QiEd+iXmBvUP3WHxSjFH/vIsA0EN00cgr8w==}
579 |
580 | ms@2.1.3:
581 | resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==}
582 |
583 | natural-compare@1.4.0:
584 | resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==}
585 |
586 | obsidian@1.6.6:
587 | resolution: {integrity: sha512-GZHzeOiwmw/wBjB5JwrsxAZBLqxGQmqtEKSvJJvT0LtTcqeOFnV8jv0ZK5kO7hBb44WxJc+LdS7mZgLXbb+qXQ==}
588 | peerDependencies:
589 | '@codemirror/state': ^6.0.0
590 | '@codemirror/view': ^6.0.0
591 |
592 | once@1.4.0:
593 | resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==}
594 |
595 | optionator@0.9.4:
596 | resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==}
597 | engines: {node: '>= 0.8.0'}
598 |
599 | p-limit@3.1.0:
600 | resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==}
601 | engines: {node: '>=10'}
602 |
603 | p-locate@5.0.0:
604 | resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==}
605 | engines: {node: '>=10'}
606 |
607 | parent-module@1.0.1:
608 | resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==}
609 | engines: {node: '>=6'}
610 |
611 | path-exists@4.0.0:
612 | resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==}
613 | engines: {node: '>=8'}
614 |
615 | path-is-absolute@1.0.1:
616 | resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==}
617 | engines: {node: '>=0.10.0'}
618 |
619 | path-key@3.1.1:
620 | resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==}
621 | engines: {node: '>=8'}
622 |
623 | path-type@4.0.0:
624 | resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==}
625 | engines: {node: '>=8'}
626 |
627 | picomatch@2.3.1:
628 | resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==}
629 | engines: {node: '>=8.6'}
630 |
631 | prelude-ls@1.2.1:
632 | resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==}
633 | engines: {node: '>= 0.8.0'}
634 |
635 | punycode@2.3.1:
636 | resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==}
637 | engines: {node: '>=6'}
638 |
639 | queue-microtask@1.2.3:
640 | resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==}
641 |
642 | regexpp@3.2.0:
643 | resolution: {integrity: sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==}
644 | engines: {node: '>=8'}
645 |
646 | resolve-from@4.0.0:
647 | resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==}
648 | engines: {node: '>=4'}
649 |
650 | reusify@1.0.4:
651 | resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==}
652 | engines: {iojs: '>=1.0.0', node: '>=0.10.0'}
653 |
654 | rimraf@3.0.2:
655 | resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==}
656 | deprecated: Rimraf versions prior to v4 are no longer supported
657 | hasBin: true
658 |
659 | run-parallel@1.2.0:
660 | resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==}
661 |
662 | semver@7.6.3:
663 | resolution: {integrity: sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==}
664 | engines: {node: '>=10'}
665 | hasBin: true
666 |
667 | shebang-command@2.0.0:
668 | resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==}
669 | engines: {node: '>=8'}
670 |
671 | shebang-regex@3.0.0:
672 | resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==}
673 | engines: {node: '>=8'}
674 |
675 | slash@3.0.0:
676 | resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==}
677 | engines: {node: '>=8'}
678 |
679 | strip-ansi@6.0.1:
680 | resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==}
681 | engines: {node: '>=8'}
682 |
683 | strip-json-comments@3.1.1:
684 | resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==}
685 | engines: {node: '>=8'}
686 |
687 | style-mod@4.1.2:
688 | resolution: {integrity: sha512-wnD1HyVqpJUI2+eKZ+eo1UwghftP6yuFheBqqe+bWCotBjC2K1YnteJILRMs3SM4V/0dLEW1SC27MWP5y+mwmw==}
689 |
690 | supports-color@7.2.0:
691 | resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==}
692 | engines: {node: '>=8'}
693 |
694 | text-table@0.2.0:
695 | resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==}
696 |
697 | to-regex-range@5.0.1:
698 | resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==}
699 | engines: {node: '>=8.0'}
700 |
701 | tslib@1.14.1:
702 | resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==}
703 |
704 | tslib@2.4.0:
705 | resolution: {integrity: sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==}
706 |
707 | tsutils@3.21.0:
708 | resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==}
709 | engines: {node: '>= 6'}
710 | peerDependencies:
711 | 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'
712 |
713 | type-check@0.4.0:
714 | resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==}
715 | engines: {node: '>= 0.8.0'}
716 |
717 | type-fest@0.20.2:
718 | resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==}
719 | engines: {node: '>=10'}
720 |
721 | typescript@4.8.3:
722 | resolution: {integrity: sha512-goMHfm00nWPa8UvR/CPSvykqf6dVV8x/dp0c5mFTMTIu0u0FlGWRioyy7Nn0PGAdHxpJZnuO/ut+PpQ8UiHAig==}
723 | engines: {node: '>=4.2.0'}
724 | hasBin: true
725 |
726 | uri-js@4.4.1:
727 | resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==}
728 |
729 | w3c-keyname@2.2.8:
730 | resolution: {integrity: sha512-dpojBhNsCNN7T82Tm7k26A6G9ML3NkhDsnw9n/eoxSRlVBB4CEtIQ/KTCLI2Fwf3ataSXRhYFkQi3SlnFwPvPQ==}
731 |
732 | which@2.0.2:
733 | resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==}
734 | engines: {node: '>= 8'}
735 | hasBin: true
736 |
737 | word-wrap@1.2.5:
738 | resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==}
739 | engines: {node: '>=0.10.0'}
740 |
741 | wrappy@1.0.2:
742 | resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==}
743 |
744 | yocto-queue@0.1.0:
745 | resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==}
746 | engines: {node: '>=10'}
747 |
748 | snapshots:
749 |
750 | '@codemirror/state@6.4.1': {}
751 |
752 | '@codemirror/view@6.33.0':
753 | dependencies:
754 | '@codemirror/state': 6.4.1
755 | style-mod: 4.1.2
756 | w3c-keyname: 2.2.8
757 |
758 | '@esbuild/linux-loong64@0.15.7':
759 | optional: true
760 |
761 | '@eslint-community/eslint-utils@4.4.0(eslint@8.57.1)':
762 | dependencies:
763 | eslint: 8.57.1
764 | eslint-visitor-keys: 3.4.3
765 |
766 | '@eslint-community/regexpp@4.11.1': {}
767 |
768 | '@eslint/eslintrc@2.1.4':
769 | dependencies:
770 | ajv: 6.12.6
771 | debug: 4.3.7
772 | espree: 9.6.1
773 | globals: 13.24.0
774 | ignore: 5.3.2
775 | import-fresh: 3.3.0
776 | js-yaml: 4.1.0
777 | minimatch: 3.1.2
778 | strip-json-comments: 3.1.1
779 | transitivePeerDependencies:
780 | - supports-color
781 |
782 | '@eslint/js@8.57.1': {}
783 |
784 | '@humanwhocodes/config-array@0.13.0':
785 | dependencies:
786 | '@humanwhocodes/object-schema': 2.0.3
787 | debug: 4.3.7
788 | minimatch: 3.1.2
789 | transitivePeerDependencies:
790 | - supports-color
791 |
792 | '@humanwhocodes/module-importer@1.0.1': {}
793 |
794 | '@humanwhocodes/object-schema@2.0.3': {}
795 |
796 | '@nodelib/fs.scandir@2.1.5':
797 | dependencies:
798 | '@nodelib/fs.stat': 2.0.5
799 | run-parallel: 1.2.0
800 |
801 | '@nodelib/fs.stat@2.0.5': {}
802 |
803 | '@nodelib/fs.walk@1.2.8':
804 | dependencies:
805 | '@nodelib/fs.scandir': 2.1.5
806 | fastq: 1.17.1
807 |
808 | '@types/codemirror@5.60.8':
809 | dependencies:
810 | '@types/tern': 0.23.9
811 |
812 | '@types/estree@1.0.5': {}
813 |
814 | '@types/json-schema@7.0.15': {}
815 |
816 | '@types/node@16.18.108': {}
817 |
818 | '@types/tern@0.23.9':
819 | dependencies:
820 | '@types/estree': 1.0.5
821 |
822 | '@typescript-eslint/eslint-plugin@5.36.2(@typescript-eslint/parser@5.36.2(eslint@8.57.1)(typescript@4.8.3))(eslint@8.57.1)(typescript@4.8.3)':
823 | dependencies:
824 | '@typescript-eslint/parser': 5.36.2(eslint@8.57.1)(typescript@4.8.3)
825 | '@typescript-eslint/scope-manager': 5.36.2
826 | '@typescript-eslint/type-utils': 5.36.2(eslint@8.57.1)(typescript@4.8.3)
827 | '@typescript-eslint/utils': 5.36.2(eslint@8.57.1)(typescript@4.8.3)
828 | debug: 4.3.7
829 | eslint: 8.57.1
830 | functional-red-black-tree: 1.0.1
831 | ignore: 5.3.2
832 | regexpp: 3.2.0
833 | semver: 7.6.3
834 | tsutils: 3.21.0(typescript@4.8.3)
835 | optionalDependencies:
836 | typescript: 4.8.3
837 | transitivePeerDependencies:
838 | - supports-color
839 |
840 | '@typescript-eslint/parser@5.36.2(eslint@8.57.1)(typescript@4.8.3)':
841 | dependencies:
842 | '@typescript-eslint/scope-manager': 5.36.2
843 | '@typescript-eslint/types': 5.36.2
844 | '@typescript-eslint/typescript-estree': 5.36.2(typescript@4.8.3)
845 | debug: 4.3.7
846 | eslint: 8.57.1
847 | optionalDependencies:
848 | typescript: 4.8.3
849 | transitivePeerDependencies:
850 | - supports-color
851 |
852 | '@typescript-eslint/scope-manager@5.36.2':
853 | dependencies:
854 | '@typescript-eslint/types': 5.36.2
855 | '@typescript-eslint/visitor-keys': 5.36.2
856 |
857 | '@typescript-eslint/type-utils@5.36.2(eslint@8.57.1)(typescript@4.8.3)':
858 | dependencies:
859 | '@typescript-eslint/typescript-estree': 5.36.2(typescript@4.8.3)
860 | '@typescript-eslint/utils': 5.36.2(eslint@8.57.1)(typescript@4.8.3)
861 | debug: 4.3.7
862 | eslint: 8.57.1
863 | tsutils: 3.21.0(typescript@4.8.3)
864 | optionalDependencies:
865 | typescript: 4.8.3
866 | transitivePeerDependencies:
867 | - supports-color
868 |
869 | '@typescript-eslint/types@5.36.2': {}
870 |
871 | '@typescript-eslint/typescript-estree@5.36.2(typescript@4.8.3)':
872 | dependencies:
873 | '@typescript-eslint/types': 5.36.2
874 | '@typescript-eslint/visitor-keys': 5.36.2
875 | debug: 4.3.7
876 | globby: 11.1.0
877 | is-glob: 4.0.3
878 | semver: 7.6.3
879 | tsutils: 3.21.0(typescript@4.8.3)
880 | optionalDependencies:
881 | typescript: 4.8.3
882 | transitivePeerDependencies:
883 | - supports-color
884 |
885 | '@typescript-eslint/utils@5.36.2(eslint@8.57.1)(typescript@4.8.3)':
886 | dependencies:
887 | '@types/json-schema': 7.0.15
888 | '@typescript-eslint/scope-manager': 5.36.2
889 | '@typescript-eslint/types': 5.36.2
890 | '@typescript-eslint/typescript-estree': 5.36.2(typescript@4.8.3)
891 | eslint: 8.57.1
892 | eslint-scope: 5.1.1
893 | eslint-utils: 3.0.0(eslint@8.57.1)
894 | transitivePeerDependencies:
895 | - supports-color
896 | - typescript
897 |
898 | '@typescript-eslint/visitor-keys@5.36.2':
899 | dependencies:
900 | '@typescript-eslint/types': 5.36.2
901 | eslint-visitor-keys: 3.4.3
902 |
903 | '@ungap/structured-clone@1.2.0': {}
904 |
905 | acorn-jsx@5.3.2(acorn@8.12.1):
906 | dependencies:
907 | acorn: 8.12.1
908 |
909 | acorn@8.12.1: {}
910 |
911 | ajv@6.12.6:
912 | dependencies:
913 | fast-deep-equal: 3.1.3
914 | fast-json-stable-stringify: 2.1.0
915 | json-schema-traverse: 0.4.1
916 | uri-js: 4.4.1
917 |
918 | ansi-regex@5.0.1: {}
919 |
920 | ansi-styles@4.3.0:
921 | dependencies:
922 | color-convert: 2.0.1
923 |
924 | argparse@2.0.1: {}
925 |
926 | array-union@2.1.0: {}
927 |
928 | balanced-match@1.0.2: {}
929 |
930 | brace-expansion@1.1.11:
931 | dependencies:
932 | balanced-match: 1.0.2
933 | concat-map: 0.0.1
934 |
935 | braces@3.0.3:
936 | dependencies:
937 | fill-range: 7.1.1
938 |
939 | builtin-modules@3.3.0: {}
940 |
941 | callsites@3.1.0: {}
942 |
943 | chalk@4.1.2:
944 | dependencies:
945 | ansi-styles: 4.3.0
946 | supports-color: 7.2.0
947 |
948 | color-convert@2.0.1:
949 | dependencies:
950 | color-name: 1.1.4
951 |
952 | color-name@1.1.4: {}
953 |
954 | concat-map@0.0.1: {}
955 |
956 | cross-spawn@7.0.3:
957 | dependencies:
958 | path-key: 3.1.1
959 | shebang-command: 2.0.0
960 | which: 2.0.2
961 |
962 | debug@4.3.7:
963 | dependencies:
964 | ms: 2.1.3
965 |
966 | deep-is@0.1.4: {}
967 |
968 | dir-glob@3.0.1:
969 | dependencies:
970 | path-type: 4.0.0
971 |
972 | doctrine@3.0.0:
973 | dependencies:
974 | esutils: 2.0.3
975 |
976 | esbuild-android-64@0.15.7:
977 | optional: true
978 |
979 | esbuild-android-arm64@0.15.7:
980 | optional: true
981 |
982 | esbuild-darwin-64@0.15.7:
983 | optional: true
984 |
985 | esbuild-darwin-arm64@0.15.7:
986 | optional: true
987 |
988 | esbuild-freebsd-64@0.15.7:
989 | optional: true
990 |
991 | esbuild-freebsd-arm64@0.15.7:
992 | optional: true
993 |
994 | esbuild-linux-32@0.15.7:
995 | optional: true
996 |
997 | esbuild-linux-64@0.15.7:
998 | optional: true
999 |
1000 | esbuild-linux-arm64@0.15.7:
1001 | optional: true
1002 |
1003 | esbuild-linux-arm@0.15.7:
1004 | optional: true
1005 |
1006 | esbuild-linux-mips64le@0.15.7:
1007 | optional: true
1008 |
1009 | esbuild-linux-ppc64le@0.15.7:
1010 | optional: true
1011 |
1012 | esbuild-linux-riscv64@0.15.7:
1013 | optional: true
1014 |
1015 | esbuild-linux-s390x@0.15.7:
1016 | optional: true
1017 |
1018 | esbuild-netbsd-64@0.15.7:
1019 | optional: true
1020 |
1021 | esbuild-openbsd-64@0.15.7:
1022 | optional: true
1023 |
1024 | esbuild-sunos-64@0.15.7:
1025 | optional: true
1026 |
1027 | esbuild-windows-32@0.15.7:
1028 | optional: true
1029 |
1030 | esbuild-windows-64@0.15.7:
1031 | optional: true
1032 |
1033 | esbuild-windows-arm64@0.15.7:
1034 | optional: true
1035 |
1036 | esbuild@0.15.7:
1037 | optionalDependencies:
1038 | '@esbuild/linux-loong64': 0.15.7
1039 | esbuild-android-64: 0.15.7
1040 | esbuild-android-arm64: 0.15.7
1041 | esbuild-darwin-64: 0.15.7
1042 | esbuild-darwin-arm64: 0.15.7
1043 | esbuild-freebsd-64: 0.15.7
1044 | esbuild-freebsd-arm64: 0.15.7
1045 | esbuild-linux-32: 0.15.7
1046 | esbuild-linux-64: 0.15.7
1047 | esbuild-linux-arm: 0.15.7
1048 | esbuild-linux-arm64: 0.15.7
1049 | esbuild-linux-mips64le: 0.15.7
1050 | esbuild-linux-ppc64le: 0.15.7
1051 | esbuild-linux-riscv64: 0.15.7
1052 | esbuild-linux-s390x: 0.15.7
1053 | esbuild-netbsd-64: 0.15.7
1054 | esbuild-openbsd-64: 0.15.7
1055 | esbuild-sunos-64: 0.15.7
1056 | esbuild-windows-32: 0.15.7
1057 | esbuild-windows-64: 0.15.7
1058 | esbuild-windows-arm64: 0.15.7
1059 |
1060 | escape-string-regexp@4.0.0: {}
1061 |
1062 | eslint-scope@5.1.1:
1063 | dependencies:
1064 | esrecurse: 4.3.0
1065 | estraverse: 4.3.0
1066 |
1067 | eslint-scope@7.2.2:
1068 | dependencies:
1069 | esrecurse: 4.3.0
1070 | estraverse: 5.3.0
1071 |
1072 | eslint-utils@3.0.0(eslint@8.57.1):
1073 | dependencies:
1074 | eslint: 8.57.1
1075 | eslint-visitor-keys: 2.1.0
1076 |
1077 | eslint-visitor-keys@2.1.0: {}
1078 |
1079 | eslint-visitor-keys@3.4.3: {}
1080 |
1081 | eslint@8.57.1:
1082 | dependencies:
1083 | '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.1)
1084 | '@eslint-community/regexpp': 4.11.1
1085 | '@eslint/eslintrc': 2.1.4
1086 | '@eslint/js': 8.57.1
1087 | '@humanwhocodes/config-array': 0.13.0
1088 | '@humanwhocodes/module-importer': 1.0.1
1089 | '@nodelib/fs.walk': 1.2.8
1090 | '@ungap/structured-clone': 1.2.0
1091 | ajv: 6.12.6
1092 | chalk: 4.1.2
1093 | cross-spawn: 7.0.3
1094 | debug: 4.3.7
1095 | doctrine: 3.0.0
1096 | escape-string-regexp: 4.0.0
1097 | eslint-scope: 7.2.2
1098 | eslint-visitor-keys: 3.4.3
1099 | espree: 9.6.1
1100 | esquery: 1.6.0
1101 | esutils: 2.0.3
1102 | fast-deep-equal: 3.1.3
1103 | file-entry-cache: 6.0.1
1104 | find-up: 5.0.0
1105 | glob-parent: 6.0.2
1106 | globals: 13.24.0
1107 | graphemer: 1.4.0
1108 | ignore: 5.3.2
1109 | imurmurhash: 0.1.4
1110 | is-glob: 4.0.3
1111 | is-path-inside: 3.0.3
1112 | js-yaml: 4.1.0
1113 | json-stable-stringify-without-jsonify: 1.0.1
1114 | levn: 0.4.1
1115 | lodash.merge: 4.6.2
1116 | minimatch: 3.1.2
1117 | natural-compare: 1.4.0
1118 | optionator: 0.9.4
1119 | strip-ansi: 6.0.1
1120 | text-table: 0.2.0
1121 | transitivePeerDependencies:
1122 | - supports-color
1123 |
1124 | espree@9.6.1:
1125 | dependencies:
1126 | acorn: 8.12.1
1127 | acorn-jsx: 5.3.2(acorn@8.12.1)
1128 | eslint-visitor-keys: 3.4.3
1129 |
1130 | esquery@1.6.0:
1131 | dependencies:
1132 | estraverse: 5.3.0
1133 |
1134 | esrecurse@4.3.0:
1135 | dependencies:
1136 | estraverse: 5.3.0
1137 |
1138 | estraverse@4.3.0: {}
1139 |
1140 | estraverse@5.3.0: {}
1141 |
1142 | esutils@2.0.3: {}
1143 |
1144 | fast-deep-equal@3.1.3: {}
1145 |
1146 | fast-glob@3.3.2:
1147 | dependencies:
1148 | '@nodelib/fs.stat': 2.0.5
1149 | '@nodelib/fs.walk': 1.2.8
1150 | glob-parent: 5.1.2
1151 | merge2: 1.4.1
1152 | micromatch: 4.0.8
1153 |
1154 | fast-json-stable-stringify@2.1.0: {}
1155 |
1156 | fast-levenshtein@2.0.6: {}
1157 |
1158 | fastq@1.17.1:
1159 | dependencies:
1160 | reusify: 1.0.4
1161 |
1162 | file-entry-cache@6.0.1:
1163 | dependencies:
1164 | flat-cache: 3.2.0
1165 |
1166 | fill-range@7.1.1:
1167 | dependencies:
1168 | to-regex-range: 5.0.1
1169 |
1170 | find-up@5.0.0:
1171 | dependencies:
1172 | locate-path: 6.0.0
1173 | path-exists: 4.0.0
1174 |
1175 | flat-cache@3.2.0:
1176 | dependencies:
1177 | flatted: 3.3.1
1178 | keyv: 4.5.4
1179 | rimraf: 3.0.2
1180 |
1181 | flatted@3.3.1: {}
1182 |
1183 | fs.realpath@1.0.0: {}
1184 |
1185 | functional-red-black-tree@1.0.1: {}
1186 |
1187 | glob-parent@5.1.2:
1188 | dependencies:
1189 | is-glob: 4.0.3
1190 |
1191 | glob-parent@6.0.2:
1192 | dependencies:
1193 | is-glob: 4.0.3
1194 |
1195 | glob@7.2.3:
1196 | dependencies:
1197 | fs.realpath: 1.0.0
1198 | inflight: 1.0.6
1199 | inherits: 2.0.4
1200 | minimatch: 3.1.2
1201 | once: 1.4.0
1202 | path-is-absolute: 1.0.1
1203 |
1204 | globals@13.24.0:
1205 | dependencies:
1206 | type-fest: 0.20.2
1207 |
1208 | globby@11.1.0:
1209 | dependencies:
1210 | array-union: 2.1.0
1211 | dir-glob: 3.0.1
1212 | fast-glob: 3.3.2
1213 | ignore: 5.3.2
1214 | merge2: 1.4.1
1215 | slash: 3.0.0
1216 |
1217 | graphemer@1.4.0: {}
1218 |
1219 | has-flag@4.0.0: {}
1220 |
1221 | ignore@5.3.2: {}
1222 |
1223 | import-fresh@3.3.0:
1224 | dependencies:
1225 | parent-module: 1.0.1
1226 | resolve-from: 4.0.0
1227 |
1228 | imurmurhash@0.1.4: {}
1229 |
1230 | inflight@1.0.6:
1231 | dependencies:
1232 | once: 1.4.0
1233 | wrappy: 1.0.2
1234 |
1235 | inherits@2.0.4: {}
1236 |
1237 | is-extglob@2.1.1: {}
1238 |
1239 | is-glob@4.0.3:
1240 | dependencies:
1241 | is-extglob: 2.1.1
1242 |
1243 | is-number@7.0.0: {}
1244 |
1245 | is-path-inside@3.0.3: {}
1246 |
1247 | isexe@2.0.0: {}
1248 |
1249 | js-yaml@4.1.0:
1250 | dependencies:
1251 | argparse: 2.0.1
1252 |
1253 | json-buffer@3.0.1: {}
1254 |
1255 | json-schema-traverse@0.4.1: {}
1256 |
1257 | json-stable-stringify-without-jsonify@1.0.1: {}
1258 |
1259 | keyv@4.5.4:
1260 | dependencies:
1261 | json-buffer: 3.0.1
1262 |
1263 | levn@0.4.1:
1264 | dependencies:
1265 | prelude-ls: 1.2.1
1266 | type-check: 0.4.0
1267 |
1268 | locate-path@6.0.0:
1269 | dependencies:
1270 | p-locate: 5.0.0
1271 |
1272 | lodash.merge@4.6.2: {}
1273 |
1274 | merge2@1.4.1: {}
1275 |
1276 | micromatch@4.0.8:
1277 | dependencies:
1278 | braces: 3.0.3
1279 | picomatch: 2.3.1
1280 |
1281 | minimatch@3.1.2:
1282 | dependencies:
1283 | brace-expansion: 1.1.11
1284 |
1285 | moment@2.29.4: {}
1286 |
1287 | ms@2.1.3: {}
1288 |
1289 | natural-compare@1.4.0: {}
1290 |
1291 | obsidian@1.6.6(@codemirror/state@6.4.1)(@codemirror/view@6.33.0):
1292 | dependencies:
1293 | '@codemirror/state': 6.4.1
1294 | '@codemirror/view': 6.33.0
1295 | '@types/codemirror': 5.60.8
1296 | moment: 2.29.4
1297 |
1298 | once@1.4.0:
1299 | dependencies:
1300 | wrappy: 1.0.2
1301 |
1302 | optionator@0.9.4:
1303 | dependencies:
1304 | deep-is: 0.1.4
1305 | fast-levenshtein: 2.0.6
1306 | levn: 0.4.1
1307 | prelude-ls: 1.2.1
1308 | type-check: 0.4.0
1309 | word-wrap: 1.2.5
1310 |
1311 | p-limit@3.1.0:
1312 | dependencies:
1313 | yocto-queue: 0.1.0
1314 |
1315 | p-locate@5.0.0:
1316 | dependencies:
1317 | p-limit: 3.1.0
1318 |
1319 | parent-module@1.0.1:
1320 | dependencies:
1321 | callsites: 3.1.0
1322 |
1323 | path-exists@4.0.0: {}
1324 |
1325 | path-is-absolute@1.0.1: {}
1326 |
1327 | path-key@3.1.1: {}
1328 |
1329 | path-type@4.0.0: {}
1330 |
1331 | picomatch@2.3.1: {}
1332 |
1333 | prelude-ls@1.2.1: {}
1334 |
1335 | punycode@2.3.1: {}
1336 |
1337 | queue-microtask@1.2.3: {}
1338 |
1339 | regexpp@3.2.0: {}
1340 |
1341 | resolve-from@4.0.0: {}
1342 |
1343 | reusify@1.0.4: {}
1344 |
1345 | rimraf@3.0.2:
1346 | dependencies:
1347 | glob: 7.2.3
1348 |
1349 | run-parallel@1.2.0:
1350 | dependencies:
1351 | queue-microtask: 1.2.3
1352 |
1353 | semver@7.6.3: {}
1354 |
1355 | shebang-command@2.0.0:
1356 | dependencies:
1357 | shebang-regex: 3.0.0
1358 |
1359 | shebang-regex@3.0.0: {}
1360 |
1361 | slash@3.0.0: {}
1362 |
1363 | strip-ansi@6.0.1:
1364 | dependencies:
1365 | ansi-regex: 5.0.1
1366 |
1367 | strip-json-comments@3.1.1: {}
1368 |
1369 | style-mod@4.1.2: {}
1370 |
1371 | supports-color@7.2.0:
1372 | dependencies:
1373 | has-flag: 4.0.0
1374 |
1375 | text-table@0.2.0: {}
1376 |
1377 | to-regex-range@5.0.1:
1378 | dependencies:
1379 | is-number: 7.0.0
1380 |
1381 | tslib@1.14.1: {}
1382 |
1383 | tslib@2.4.0: {}
1384 |
1385 | tsutils@3.21.0(typescript@4.8.3):
1386 | dependencies:
1387 | tslib: 1.14.1
1388 | typescript: 4.8.3
1389 |
1390 | type-check@0.4.0:
1391 | dependencies:
1392 | prelude-ls: 1.2.1
1393 |
1394 | type-fest@0.20.2: {}
1395 |
1396 | typescript@4.8.3: {}
1397 |
1398 | uri-js@4.4.1:
1399 | dependencies:
1400 | punycode: 2.3.1
1401 |
1402 | w3c-keyname@2.2.8: {}
1403 |
1404 | which@2.0.2:
1405 | dependencies:
1406 | isexe: 2.0.0
1407 |
1408 | word-wrap@1.2.5: {}
1409 |
1410 | wrappy@1.0.2: {}
1411 |
1412 | yocto-queue@0.1.0: {}
1413 |
--------------------------------------------------------------------------------
/readme-assets/blockquote-levels-128.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/czottmann/obsidian-blockquote-levels/30c45d7224a37cb2e5cd396422c36188289b2ef8/readme-assets/blockquote-levels-128.png
--------------------------------------------------------------------------------
/readme-assets/blockquote-levels-256.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/czottmann/obsidian-blockquote-levels/30c45d7224a37cb2e5cd396422c36188289b2ef8/readme-assets/blockquote-levels-256.png
--------------------------------------------------------------------------------
/readme-assets/blockquote-levels-64.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/czottmann/obsidian-blockquote-levels/30c45d7224a37cb2e5cd396422c36188289b2ef8/readme-assets/blockquote-levels-64.png
--------------------------------------------------------------------------------
/readme-assets/showcase.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/czottmann/obsidian-blockquote-levels/30c45d7224a37cb2e5cd396422c36188289b2ef8/readme-assets/showcase.gif
--------------------------------------------------------------------------------
/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 | "strictNullChecks": true,
14 | "lib": [
15 | "DOM",
16 | "ES5",
17 | "ES6",
18 | "ES7"
19 | ]
20 | },
21 | "include": [
22 | "**/*.ts"
23 | ]
24 | }
25 |
--------------------------------------------------------------------------------
/types.d.ts:
--------------------------------------------------------------------------------
1 | import { Editor } from "obsidian";
2 |
3 | export interface LineProcessor {
4 | (line: string): string;
5 | }
6 |
7 | export interface SelectionProcessor {
8 | (editor: Editor): void;
9 | }
10 |
11 | export interface SelectionLineNumbers {
12 | firstLine: number;
13 | lastLine: number;
14 | }
15 |
--------------------------------------------------------------------------------
/versions.json:
--------------------------------------------------------------------------------
1 | {
2 | "1.0.0": "0.15.0",
3 | "1.1.0": "0.15.0"
4 | }
5 |
--------------------------------------------------------------------------------