├── .circleci
└── config.yml
├── .gitignore
├── .prettierrc
├── .snyk
├── LICENSE
├── README.md
├── config
└── dist.js
├── microstat.service.dist
├── package.json
├── src
├── configValidator.ts
├── constants.ts
└── microstat.ts
├── tsconfig.json
└── yarn.lock
/.circleci/config.yml:
--------------------------------------------------------------------------------
1 | # Javascript Node CircleCI 2.0 configuration file
2 | #
3 | # Check https://circleci.com/docs/2.0/language-javascript/ for more details
4 | #
5 | version: 2.1
6 | jobs:
7 | build:
8 | docker:
9 | # specify the version you desire here
10 | - image: cimg/node:16.20.1
11 |
12 | # Specify service dependencies here if necessary
13 | # CircleCI maintains a library of pre-built images
14 | # documented at https://circleci.com/docs/2.0/circleci-images/
15 | # - image: circleci/mongo:3.4.4
16 |
17 | working_directory: ~/repo
18 |
19 | steps:
20 | - checkout
21 |
22 | # Download and cache dependencies
23 | - restore_cache:
24 | keys:
25 | - v1-dependencies-{{ checksum "package.json" }}
26 | # fallback to using the latest cache if no exact match is found
27 | - v1-dependencies-
28 |
29 | - run: npm install
30 |
31 | - save_cache:
32 | paths:
33 | - node_modules
34 | key: v1-dependencies-{{ checksum "package.json" }}
35 |
36 | # run tests!
37 | - run: npm run lint
38 |
39 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | config/local.js
2 | dist
3 | node_modules
4 |
--------------------------------------------------------------------------------
/.prettierrc:
--------------------------------------------------------------------------------
1 | {
2 | "arrowParens": "avoid",
3 | "printWidth": 120,
4 | "singleQuote": true
5 | }
6 |
--------------------------------------------------------------------------------
/.snyk:
--------------------------------------------------------------------------------
1 | # Snyk (https://snyk.io) policy file, patches or ignores known vulnerabilities.
2 | version: v1.14.1
3 | ignore: {}
4 | # patches apply the minimum changes required to fix a vulnerability
5 | patch:
6 | SNYK-JS-LODASH-567746:
7 | - send-webmention > get-webmention-url > cheerio > lodash:
8 | patched: '2020-05-01T02:17:19.353Z'
9 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | The MIT License (MIT)
2 |
3 | Copyright (c) 2019 Joshua Dick
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
13 | all 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
21 | THE SOFTWARE.
22 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # microstat
2 |
3 | A self-hosted Micropub endpoint for statically-generated microblogs. 📝⚡️
4 |
5 | ## What Is This Thing?
6 |
7 | microstat lets you publish [Markdown](https://en.wikipedia.org/wiki/Markdown) posts to a statically-generated [microblog](https://en.wikipedia.org/wiki/Microblogging) via [Micropub](https://indieweb.org/Micropub), with automatically-sent [Webmentions](https://indieweb.org/Webmention) and integration with the [micro.blog service](https://micro.blog).
8 |
9 | This enables you to post to your static microblog entirely using the web (for example, using a web-based Micropub client like [Quill](https://quill.p3k.io)).
10 |
11 | Here's how it works:
12 |
13 | - A running microstat server acts as a [Micropub](https://indieweb.org/Micropub) endpoint
14 | - When it receives a Micropub post, it writes a Markdown file to a location you configure
15 | - Once the Markdown file is written, it runs a command you configure (that would trigger something like [Jekyll](https://jekyllrb.com/) or [Hugo](https://gohugo.io/) to build and publish your microblog)
16 | - Once your microblog is updated, it sends a Webmention if your post is a reply to someone else's post
17 | - Will attempt to automatically discover the Webmention endpoint, or will use [micro.blog](https://micro.blog)'s Webmention endpoint if you're replying to a micro.blog post
18 | - If you use micro.blog, optionally ping micro.blog with your microblog's RSS/Atom/JSON feed so your posts are instantly mirrored there
19 |
20 | ## Get Going
21 |
22 | microstat requires [Node.js](https://nodejs.org) v12 or newer. Once you've installed Node.js:
23 |
24 | ```bash
25 | $ git clone https://github.com/joshdick/microstat.git
26 | $ cd microstat
27 | $ npm install
28 | $ cp config/dist.js config/local.js
29 | # Edit `config/local.js` and change the values to fit your site as described by the comments above each value
30 | $ npm start
31 | ```
32 |
33 | You can manage and start microstat as a [systemd](https://en.wikipedia.org/wiki/Systemd) service or using a tool like [nodemon](https://nodemon.io).
34 |
35 | Note that microstat doesn't need to run on the same port, or even the same server, as your microblog. You could directly advertise your microstat server as your site's Micropub endpoint, or you can advertise a proxy to it.
36 |
37 | Here's how I proxy to microstat on [my microblog](https://joshdick.net/microblog):
38 |
39 | 1. Advertise my site's Micropub endpoint by including the following in its HTML:
40 |
41 | ```html
42 |
43 | ```
44 |
45 | 2. Configure [nginx](https://nginx.org) to proxy requests sent to the advertised Micropub endpoint to a microstat server that's running on an entirely different machine/port (at `https://example.com:3141`):
46 |
47 | ```nginx
48 | location /micropub {
49 | proxy_pass https://example.com:3141;
50 | }
51 | ```
52 |
53 | ## Contributing
54 |
55 | Issues and pull requests are welcome! 🙂
56 |
--------------------------------------------------------------------------------
/config/dist.js:
--------------------------------------------------------------------------------
1 | const moment = require('moment');
2 | const raw = require('config/raw').raw;
3 |
4 | // ***Copy this file to `config/local.js` and change the copy to fit your site and needs.***
5 |
6 | // Override the implementation of this function to fit your needs.
7 | // See `posts.generators.filename` below for more details.
8 | const generatePostFilename = (timestamp, slug) => {
9 | const suffix = slug ? `_${slug}` : '';
10 | const postDate = moment(timestamp).format('YYYY/MM/DD_HH.mm.ss');
11 | return `${postDate}${suffix}.md`;
12 | };
13 |
14 | // Override the implementation of this function to fit your needs.
15 | // See `posts.generators.url` below for more details.
16 | const generatePostUrl = (timestamp, slug) => {
17 | const filename = generatePostFilename(timestamp, slug);
18 | return `https://example.com/microblog/${filename.replace(/\.md$/, '.html')}`;
19 | };
20 |
21 | // Override the implementation of this function to fit your needs.
22 | // see `media.generators.filenamePrefix` below for more details.
23 | const generateMediaFilenamePrefix = (timestamp, slug) => {
24 | return 'static/';
25 | };
26 |
27 | // Override the implementation of this function to fit your needs.
28 | // see `media.generators.filenameSuffix` below for more details.
29 | const generateMediaFilenameSuffix = () => {
30 | return 'microblog_assets/:year/:month/:slug_:filesslug';
31 | };
32 |
33 | module.exports = {
34 | app: {
35 | //Which local TCP port the server should listen on.
36 | listenPort: 8080,
37 |
38 | // URL of an RSS/Atom/JSON feed that will contain Microblog posts after `app.publishCommand` runs.
39 | // If set, will ping [micro.blog](https://micro.blog) with that feed, informing micro.blog to check for new posts.
40 | // If you don't use https://micro.blog, leave this value empty.
41 | microblogPingFeedURL: '',
42 |
43 | // Local path to a script that will consume written Microblog posts
44 | // (Markdown files) and media files written to `app.siteRoot` (below) and publish them to the Internet,
45 | // commit changes to your site to Git, etc.
46 | publishCommand: '/path/to/a/script',
47 | },
48 | site: {
49 | indieauth: {
50 | // Your IndieAuth-enabled website; will be used as the IndieAuth identity.
51 | identity: 'https://example.com',
52 |
53 | // IndieAuth token endpoint.
54 | // If your website includes a `` tag, duplicate its value here.
55 | tokenEndpoint: 'https://tokens.indieauth.com/token',
56 | },
57 |
58 | // Local path to the source of your statically-generated site.
59 | // All local paths configured in the `posts` and `media` sections below will be treated as relative to this path.
60 | root: '/path/to/your/site',
61 | },
62 | posts: {
63 | generators: {
64 | // Function that generates post URLs that correspond to where
65 | // posts will appear on your site after `app.publishCommand` runs.
66 | url: raw(generatePostUrl),
67 |
68 | // Function that generates a unique filename for each post, relative to `site.root`.
69 | // Directories should be separated by forward slashes
70 | // and will be automatically created if they don't exist in the fileystem.
71 | filename: raw(generatePostFilename),
72 | },
73 |
74 | // If nonempty, will include the configured Jekyll-style layout name in each post.
75 | layoutName: '',
76 |
77 | tags: {
78 | // The key that tag values will be assigned to in the generated front matter of each post.
79 | key: 'tags',
80 |
81 | // Controls the format of the tags list in the generated front matter of each post.
82 | // Valid values are `space_delimited` (Jekyll style) or `yaml_list` (Hugo style).
83 | style: 'space_delimited',
84 | },
85 | },
86 | media: {
87 | // Note: Media files will be written to disk at a location which is the
88 | // combination of `media.generators.filenamePrefix` and `media.generators.filenameSuffix`, in that order.
89 | // Directories in generated outputs should be separated by forward slashes,
90 | // and will be automatically created if they don't exist in the fileystem.
91 | generators: {
92 | // Function that generates a path relative to `site.root`,
93 | // which will have `filenameSuffix` appended when media files are written to disk.
94 | // Can return empty string ('') if you want the location of files on disk
95 | // to exactly match the filenames in the front matter of generated posts.
96 | filenamePrefix: raw(generateMediaFilenamePrefix),
97 |
98 | // Function that generates a unique filename for each media file, relative to `media.generators.filenamePrefix`.
99 | // Can contain any tokens used in Jekyll permalinks, even if you don't use Jekyll: https://jekyllrb.com/docs/permalinks/
100 | // Generated output should not contain a file extension, but rather, should always contain the string `:filesslug`.
101 | filenameSuffix: raw(generateMediaFilenameSuffix),
102 | },
103 | },
104 | };
105 |
--------------------------------------------------------------------------------
/microstat.service.dist:
--------------------------------------------------------------------------------
1 | # Sample systemd unit file.
2 |
3 | [Unit]
4 | Description=microstat
5 |
6 | [Service]
7 | ExecStart=npm start
8 | WorkingDirectory=/path/to/microstat
9 | LimitNOFILE=4096
10 | IgnoreSIGPIPE=false
11 | KillMode=control-group
12 | User=johnsmith
13 | Restart=always
14 | RestartSec=3
15 |
16 | [Install]
17 | WantedBy=multi-user.target
18 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "microstat",
3 | "version": "2.0.0",
4 | "description": "A Micropub endpoint for statically-generated microblogs.",
5 | "author": "Josh Dick ",
6 | "license": "MIT",
7 | "keywords": [
8 | "markdown",
9 | "microblog",
10 | "micro.blog",
11 | "micropub",
12 | "static"
13 | ],
14 | "engines": {
15 | "node": ">= 16.0.0"
16 | },
17 | "main": "dist/microstat.js",
18 | "scripts": {
19 | "build": "tsc",
20 | "lint": "eslint 'src/**/*.{j,t}s' && prettier --check 'src/**/*.{js,ts,json,md}' '*.{json,md}'",
21 | "lint:fix": "eslint --fix 'src/**/*.{j,t}s' && prettier --write 'src/**/*.{js,ts,json,md}' '*.{json,md}'",
22 | "start": "yarn build && node dist/microstat.js",
23 | "start:dev": "tsc-watch --onSuccess 'node dist/microstat.js'",
24 | "test": "echo \"Error: no test specified\" && exit 1"
25 | },
26 | "dependencies": {
27 | "axios": "^1.4.0",
28 | "config": "^3.3.9",
29 | "express": "4.18.2",
30 | "format-microformat": "0.11.1",
31 | "micropub-express": "0.9.1",
32 | "minilog": "3.1.0",
33 | "mkdirp": "3.0.1",
34 | "moment": "2.29.4",
35 | "send-webmention": "2.0.0"
36 | },
37 | "devDependencies": {
38 | "@types/minilog": "^2.0.29",
39 | "@types/node": "^16",
40 | "@typescript-eslint/eslint-plugin": "^6.1.0",
41 | "@typescript-eslint/parser": "^6.1.0",
42 | "eslint": "^8.45.0",
43 | "husky": "^8.0.3",
44 | "lint-staged": "^13.2.3",
45 | "prettier": "^3.0.0",
46 | "tsc-watch": "^6.0.4",
47 | "typescript": "^5.1.6"
48 | },
49 | "repository": {
50 | "type": "git",
51 | "url": "https://github.com/joshdick/microstat.git"
52 | },
53 | "eslintConfig": {
54 | "root": true,
55 | "parser": "@typescript-eslint/parser",
56 | "plugins": [
57 | "@typescript-eslint"
58 | ],
59 | "extends": [
60 | "eslint:recommended",
61 | "plugin:@typescript-eslint/eslint-recommended",
62 | "plugin:@typescript-eslint/recommended"
63 | ],
64 | "ignorePatterns": [
65 | "dist/",
66 | "node_modules/"
67 | ]
68 | },
69 | "husky": {
70 | "hooks": {
71 | "pre-commit": "lint-staged && yarn check --integrity"
72 | }
73 | },
74 | "lint-staged": {
75 | "src/**/*.{js,ts,json,md}": [
76 | "prettier --check"
77 | ],
78 | "./*.{json,md}": [
79 | "prettier --check"
80 | ],
81 | "src/**/*.{j,t}s": [
82 | "eslint"
83 | ]
84 | }
85 | }
86 |
--------------------------------------------------------------------------------
/src/configValidator.ts:
--------------------------------------------------------------------------------
1 | import { dirname as pathDirname, resolve as pathResolve } from 'path';
2 | import { existsSync } from 'fs';
3 | import { URL } from 'url';
4 |
5 | import { POST_TAG_STYLES } from './constants';
6 |
7 | export default class ConfigValidator {
8 | private readonly log: Minilog;
9 | private readonly config;
10 |
11 | constructor(log: Minilog) {
12 | this.log = log;
13 |
14 | // `..` will either be the 'src' or 'dist' folder depending on how microstat is started.
15 | const CONFIG_DIRECTORY_PATH = pathResolve(pathDirname(__filename), '../config');
16 | const LOCAL_CONFIG_PATH = pathResolve(CONFIG_DIRECTORY_PATH, 'local.js');
17 | if (!existsSync(LOCAL_CONFIG_PATH)) {
18 | this.handleFatalError(
19 | `Couldn't read configuration!
20 | Please copy ${CONFIG_DIRECTORY_PATH}/dist.js to ${LOCAL_CONFIG_PATH}
21 | and modify the values as described in the comments.
22 | `,
23 | );
24 | }
25 |
26 | // Load after explicitly validating presence of the config file above,
27 | // so our custom error message above will take precedence over `config`'s
28 | const config = require('config'); // eslint-disable-line @typescript-eslint/no-var-requires
29 | this.config = config;
30 | }
31 |
32 | private handleFatalError(error: string): void {
33 | this.log.error(error);
34 | process.exit(1);
35 | }
36 |
37 | private validateURL(param: string, optional = false): void {
38 | const urlError = `Configured \`${param}\` must be a valid URL!`;
39 | if (this.config.has(param)) {
40 | const url = this.config.get(param);
41 | if (optional && !url) return; // Allow empty string
42 | try {
43 | new URL(url); // use constructor for validation as a side effect
44 | } catch (e) {
45 | this.handleFatalError(urlError);
46 | }
47 | } else {
48 | if (!optional) {
49 | this.handleFatalError(urlError);
50 | }
51 | }
52 | }
53 |
54 | private validatePath(param: string): void {
55 | if (!existsSync(this.config.get(param))) {
56 | this.handleFatalError(`Configured \`${param}\` must exist in the filesystem!`);
57 | }
58 | }
59 |
60 | private validateFunction(param: string): void {
61 | if (typeof this.config.get(param) !== 'function') {
62 | this.handleFatalError(`Configured \`${param}\` must be a function!`);
63 | }
64 | }
65 |
66 | private validateString(param: string): void {
67 | if (typeof this.config.get(param) !== 'string') {
68 | this.handleFatalError(`Configured \`${param}\` must be a string!`);
69 | }
70 | }
71 |
72 | private validateAppConfig(): void {
73 | // app.listenPort
74 | const portError = 'Configured `app.listenPort` must be a number between 1 and 65535!';
75 | const listenPort = this.config.get('app.listenPort');
76 | if (typeof listenPort !== 'number') {
77 | this.handleFatalError(portError);
78 | }
79 | const parsedListenPort = parseInt(listenPort, 10);
80 | if (parsedListenPort < 1 || parsedListenPort > 65535) {
81 | this.handleFatalError(portError);
82 | }
83 |
84 | // app.microblogPingFeedURL
85 | this.validateURL('app.microblogPingFeedURL', true);
86 |
87 | // app.publishCommand
88 | this.validatePath('app.publishCommand');
89 | }
90 |
91 | private validateSiteConfig(): void {
92 | // site.indieauth.identity
93 | this.validateURL('site.indieauth.identity');
94 |
95 | // site.indieauth.tokenEndpoint
96 | this.validateURL('site.indieauth.tokenEndpoint');
97 |
98 | // site.root
99 | this.validatePath('site.root');
100 | }
101 |
102 | private validatePostsConfig(): void {
103 | // posts.generators.url
104 | this.validateFunction('posts.generators.url');
105 |
106 | // posts.generators.filename
107 | this.validateFunction('posts.generators.filename');
108 |
109 | // posts.layoutName
110 | this.validateString('posts.layoutName');
111 |
112 | // posts.tags.key
113 | this.validateString('posts.tags.key');
114 |
115 | // posts.tags.style
116 | const configuredPostTagStyle = this.config.get('posts.tags.style').toLocaleUpperCase();
117 | if (!POST_TAG_STYLES[configuredPostTagStyle]) {
118 | this.handleFatalError(`Configured \`posts.tags.style\` is invalid!
119 |
120 | Please reconfigure \`posts.tags.style\` to be one of the values specified in \`dist.js\`.`);
121 | }
122 | }
123 |
124 | private validateMediaConfig(): void {
125 | // media.generators.filenamePrefix
126 | this.validateFunction('media.generators.filenamePrefix');
127 | try {
128 | const generatePrefix = this.config.get('media.generators.filenamePrefix');
129 | const result = generatePrefix(new Date().getTime(), 'dummy-slug');
130 | if (typeof result !== 'string') {
131 | // Just trigger the `catch` block below;
132 | // it could also be triggered if the generator itself throws an error.
133 | throw new Error('Wrong output type!');
134 | }
135 | } catch (error) {
136 | this.handleFatalError(
137 | `Configured \`media.generators.filenamePrefix\` must be a function that generates a string!`,
138 | );
139 | }
140 |
141 | // media.generators.filenameSuffix
142 | this.validateFunction('media.generators.filenameSuffix');
143 | try {
144 | const generateSuffix = this.config.get('media.generators.filenameSuffix');
145 | const result = generateSuffix();
146 | // The following checks just trigger the `catch` block below;
147 | // it could also be triggered if the generator itself throws an error.
148 | if (typeof result !== 'string') {
149 | throw new Error('Wrong output type!');
150 | } else if (!result.match(/:filesslug/)) {
151 | throw new Error('Did not contain `:filesslug`!');
152 | }
153 | } catch (error) {
154 | this.handleFatalError(
155 | `Configured \`media.generators.filenameSuffix\` must be a function that generates a string that contains the substring \`:filesslug\`!`,
156 | );
157 | }
158 | }
159 |
160 | // Validate configuration.
161 | public validate(): void {
162 | this.validateAppConfig();
163 | this.validateSiteConfig();
164 | this.validatePostsConfig();
165 | this.validateMediaConfig();
166 | }
167 | }
168 |
--------------------------------------------------------------------------------
/src/constants.ts:
--------------------------------------------------------------------------------
1 | export const POST_TAG_STYLES = Object.freeze({
2 | SPACE_DELIMITED: Symbol('tag_style:space_delimited'),
3 | YAML_LIST: Symbol('tag_style:yaml_list'),
4 | });
5 |
--------------------------------------------------------------------------------
/src/microstat.ts:
--------------------------------------------------------------------------------
1 | import { execSync } from 'child_process';
2 | import { unlink, writeFile } from 'fs';
3 | import { resolve as pathResolve, dirname as pathDirname } from 'path';
4 | import * as querystring from 'querystring';
5 | import { promisify } from 'util';
6 |
7 | import axios from 'axios';
8 | import * as express from 'express';
9 | import * as Minilog from 'minilog';
10 | const MicropubFormatter = require('format-microformat'); // eslint-disable-line @typescript-eslint/no-var-requires
11 | const micropub = require('micropub-express'); // eslint-disable-line @typescript-eslint/no-var-requires
12 | import { mkdirp } from 'mkdirp';
13 | const webmention = require('send-webmention'); // eslint-disable-line @typescript-eslint/no-var-requires
14 |
15 | import ConfigValidator from './configValidator';
16 | import { POST_TAG_STYLES } from './constants';
17 |
18 | const unlinkAsync = promisify(unlink);
19 | const writeFileAsync = promisify(writeFile);
20 |
21 | const log = Minilog('microstat');
22 | Minilog.enable();
23 |
24 | // Prevalidate all configuration; this should allow use of 'config.get'
25 | // anywhere else in this file without causing a fatal error
26 | const configValidator = new ConfigValidator(log);
27 | configValidator.validate();
28 |
29 | const config = require('config'); // eslint-disable-line @typescript-eslint/no-var-requires
30 |
31 | // ---
32 |
33 | const app = express();
34 |
35 | const formatter = new MicropubFormatter({
36 | deriveCategory: false, // don't write categories
37 | layoutName: config.get('posts.layoutName') || false,
38 | filesStyle: config.get('media.generators.filenameSuffix'),
39 | noMarkdown: true, // input is already expected to be in Markdown format
40 | });
41 |
42 | // Format tags by parsing and reformatting the already-formatted content.
43 | // TODO: This is not ideal since regex replacements may match actual content unintentionally,
44 | // instead of the intended metadata.
45 | // Format using the underlying Micropub document instead?
46 | const postTagsKey = config.get('posts.tags.key');
47 | const postTagsStyle = POST_TAG_STYLES[config.get('posts.tags.style').toLocaleUpperCase()];
48 | const formatTags: (formattedContents: string) => string = formattedContents => {
49 | const spaceDelimitedTagRegex = new RegExp(/^tags: (.*)$/gim);
50 | const tagMatch = spaceDelimitedTagRegex.exec(formattedContents);
51 | const hasTags = tagMatch && tagMatch.length === 2;
52 | let result = formattedContents;
53 |
54 | // If there are no tags, we don't have to do anything.
55 | if (hasTags) {
56 | // Replace the post tags key first to prevent trailing whitespace
57 | // from occurring later if POST_TAG_STYLES.YAML_LIST is used
58 | result = result.replace(/^tags: ?/gim, `${postTagsKey}: `);
59 |
60 | // Tags are already SPACE_DELIMITED by default from `format-microformat`
61 | if (postTagsStyle === POST_TAG_STYLES.YAML_LIST) {
62 | const spaceDelimitedTags = tagMatch[1];
63 | const tags = spaceDelimitedTags.split(' ');
64 | const yamlTags = tags.map(tag => `- ${tag}`).join('\n');
65 | result = formattedContents.replace(spaceDelimitedTagRegex, `${postTagsKey}:\n${yamlTags}`);
66 | }
67 | }
68 |
69 | return result;
70 | };
71 |
72 | const isMicroblogReply: (properties: { content: string[] }) => boolean = properties => {
73 | const content = properties.content;
74 | return content.some(subContent => subContent.match(/^\[@.*\]\(https?:\/\/micro\.blog\/.*\)/));
75 | };
76 |
77 | const mediaFilenamePrefixGenerator = config.get('media.generators.filenamePrefix');
78 | const microblogPingFeedURL = config.has('app.microblogPingFeedURL') && config.get('app.microblogPingFeedURL');
79 | const postFilenameGenerator = config.get('posts.generators.filename');
80 | const postUrlGenerator = config.get('posts.generators.url');
81 | const publishCommand = config.get('app.publishCommand');
82 | const siteRoot = config.get('site.root');
83 |
84 | app.use(
85 | '/micropub',
86 | micropub({
87 | tokenReference: {
88 | me: config.get('site.indieauth.identity'),
89 | endpoint: config.get('site.indieauth.tokenEndpoint'),
90 | },
91 |
92 | userAgent: 'microstat/1.0.0 (https://github.com/joshdick/microstat)',
93 |
94 | handler: async (micropubDocument /*, req */) => {
95 | // TODO: Inspect all [0] index references in this handler;
96 | // process multiple elements instead of just the first element as appropriate?
97 |
98 | const preFormatted = await formatter.preFormat(micropubDocument);
99 |
100 | if (!preFormatted.preFormatted) throw new Error('Received an invalid Micropub request.');
101 |
102 | const type = preFormatted.type[0];
103 |
104 | if (type !== 'h-entry') throw new Error(`Can't handle micropub document type [${type}].`);
105 |
106 | const { properties, files } = preFormatted;
107 |
108 | const published = properties.published[0];
109 | const slug = properties.slug[0];
110 |
111 | const fileName = postFilenameGenerator(published, slug);
112 | const postUrl = postUrlGenerator(published, slug);
113 |
114 | let contents = await formatter.format(preFormatted);
115 | contents = formatTags(contents);
116 |
117 | // Write post contents to disk
118 | const postAbsolutePath = pathResolve(siteRoot, fileName);
119 | await mkdirp(pathDirname(postAbsolutePath));
120 | await writeFileAsync(postAbsolutePath, contents);
121 |
122 | // Write media files to disk
123 | const mediaAbsolutePaths = []; // Used for cleanup later if a problem happpens
124 | if (files) {
125 | const mediaPathPrefix = pathResolve(siteRoot, mediaFilenamePrefixGenerator(published, slug));
126 | for (const file of files) {
127 | // `file.filename` is the rendered output of `media.generators.filenameSuffix`.
128 | const mediaAbsolutePath = pathResolve(mediaPathPrefix, file.filename);
129 | // This `mkdirp()` is probably redundant after the first iteration through the loop,
130 | // but it may need to happen multiple times if different files have different path suffixes
131 | await mkdirp(pathDirname(mediaAbsolutePath));
132 | await writeFileAsync(mediaAbsolutePath, file.buffer);
133 | mediaAbsolutePaths.push(mediaAbsolutePath);
134 | }
135 | }
136 |
137 | try {
138 | log.log('Publishing post...');
139 | execSync(publishCommand.replace(' ', '\\ '), {
140 | cwd: pathDirname(publishCommand),
141 | });
142 | } catch (publishError) {
143 | log.error('Error publishing post!', publishError);
144 |
145 | try {
146 | // Attempt to clean up the unpublished post to prevent duplicate posts
147 | // from being published if reattempts are made
148 | log.log('Cleaning up unpublished post...');
149 | await unlinkAsync(postAbsolutePath);
150 | log.log('Cleaning up unpublished media...');
151 | for (const mediaAbsolutePath of mediaAbsolutePaths) {
152 | await unlinkAsync(mediaAbsolutePath);
153 | }
154 | log.log('Done cleaning up.');
155 | } catch (cleanupError) {
156 | log.error("Couldn't clean up unpublished post!", cleanupError);
157 | }
158 |
159 | // Rethrow fatally
160 | throw publishError;
161 | }
162 |
163 | const replyUrls = properties['in-reply-to'];
164 | if (replyUrls) {
165 | for (const replyUrl of replyUrls) {
166 | log.log(`Post is a reply to [${replyUrl}]; will attempt to send Webmention.`);
167 | try {
168 | if (isMicroblogReply(properties)) {
169 | log.log('Reply is targeted at a micro.blog user, using micro.blog Webmention endpoint.');
170 | await axios.post(
171 | 'https://micro.blog/webmention',
172 | // `source` is our post; `target` is the URL being replied to
173 | querystring.stringify({
174 | source: postUrl,
175 | target: replyUrl,
176 | }),
177 | {
178 | headers: {
179 | 'content-type': 'application/x-www-form-urlencoded',
180 | },
181 | },
182 | );
183 | } else {
184 | log.log('Reply is not targeted at a micro.blog user, auto-discovering Webmention endpoint.');
185 | await new Promise((resolve, reject) => {
186 | webmention(
187 | {
188 | source: postUrl,
189 | target: replyUrl,
190 | },
191 | (err, obj) => {
192 | if (err) {
193 | reject(err); // should be logged in the `catch` block below
194 | }
195 | if (!obj.success) reject(obj);
196 | resolve(obj);
197 | },
198 | );
199 | });
200 | }
201 | log.log(`Successfully sent Webmention: [${postUrl} -> ${replyUrl}]`);
202 | } catch (webmentionError) {
203 | log.error("Couldn't send Webmention!", webmentionError);
204 | log.error('Continuing nonfatally...');
205 | }
206 | }
207 | }
208 |
209 | if (microblogPingFeedURL && !replyUrls) {
210 | try {
211 | log.log(`Attempting to ping micro.blog with feed URL [${microblogPingFeedURL}]...`);
212 | await axios.post(
213 | 'https://micro.blog/ping',
214 | querystring.stringify({
215 | url: microblogPingFeedURL,
216 | }),
217 | {
218 | headers: {
219 | 'content-type': 'application/x-www-form-urlencoded',
220 | },
221 | },
222 | );
223 | log.log('Successfully pinged micro.blog.');
224 | } catch (pingError) {
225 | log.error("Couldn't ping micro.blog!", pingError);
226 | log.error('Continuing nonfatally...');
227 | }
228 | }
229 |
230 | return { url: postUrl };
231 | },
232 | }),
233 | );
234 |
235 | const listenPort = config.get('app.listenPort');
236 | app.listen(listenPort, () => log.log(`Listening on port ${listenPort}.`));
237 |
--------------------------------------------------------------------------------
/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "module": "commonjs",
4 | "target": "ES2017",
5 | "lib": ["ES2017"],
6 | "moduleResolution": "node",
7 | "sourceMap": true,
8 | "noUnusedLocals": true,
9 | "outDir": "dist"
10 | },
11 | "include": ["src/**/*"]
12 | }
13 |
--------------------------------------------------------------------------------
/yarn.lock:
--------------------------------------------------------------------------------
1 | # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
2 | # yarn lockfile v1
3 |
4 |
5 | "@aashutoshrathi/word-wrap@^1.2.3":
6 | version "1.2.6"
7 | resolved "https://registry.yarnpkg.com/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz#bd9154aec9983f77b3a034ecaa015c2e4201f6cf"
8 | integrity sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==
9 |
10 | "@babel/runtime-corejs3@^7.12.1":
11 | version "7.22.6"
12 | resolved "https://registry.yarnpkg.com/@babel/runtime-corejs3/-/runtime-corejs3-7.22.6.tgz#e8e625eb3db29491e0326b3aeb9929c43b270ae4"
13 | integrity sha512-M+37LLIRBTEVjktoJjbw4KVhupF0U/3PYUCbBwgAd9k17hoKhRu1n935QiG7Tuxv0LJOMrb2vuKEeYUlv0iyiw==
14 | dependencies:
15 | core-js-pure "^3.30.2"
16 | regenerator-runtime "^0.13.11"
17 |
18 | "@eslint-community/eslint-utils@^4.2.0", "@eslint-community/eslint-utils@^4.4.0":
19 | version "4.4.0"
20 | resolved "https://registry.yarnpkg.com/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz#a23514e8fb9af1269d5f7788aa556798d61c6b59"
21 | integrity sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==
22 | dependencies:
23 | eslint-visitor-keys "^3.3.0"
24 |
25 | "@eslint-community/regexpp@^4.4.0", "@eslint-community/regexpp@^4.5.1":
26 | version "4.5.1"
27 | resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.5.1.tgz#cdd35dce4fa1a89a4fd42b1599eb35b3af408884"
28 | integrity sha512-Z5ba73P98O1KUYCCJTUeVpja9RcGoMdncZ6T49FCUl2lN38JtCJ+3WgIDBv0AuY4WChU5PmtJmOCTlN6FZTFKQ==
29 |
30 | "@eslint/eslintrc@^2.1.0":
31 | version "2.1.0"
32 | resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-2.1.0.tgz#82256f164cc9e0b59669efc19d57f8092706841d"
33 | integrity sha512-Lj7DECXqIVCqnqjjHMPna4vn6GJcMgul/wuS0je9OZ9gsL0zzDpKPVtcG1HaDVc+9y+qgXneTeUMbCqXJNpH1A==
34 | dependencies:
35 | ajv "^6.12.4"
36 | debug "^4.3.2"
37 | espree "^9.6.0"
38 | globals "^13.19.0"
39 | ignore "^5.2.0"
40 | import-fresh "^3.2.1"
41 | js-yaml "^4.1.0"
42 | minimatch "^3.1.2"
43 | strip-json-comments "^3.1.1"
44 |
45 | "@eslint/js@8.44.0":
46 | version "8.44.0"
47 | resolved "https://registry.yarnpkg.com/@eslint/js/-/js-8.44.0.tgz#961a5903c74139390478bdc808bcde3fc45ab7af"
48 | integrity sha512-Ag+9YM4ocKQx9AarydN0KY2j0ErMHNIocPDrVo8zAE44xLTjEtz81OdR68/cydGtk6m6jDb5Za3r2useMzYmSw==
49 |
50 | "@humanwhocodes/config-array@^0.11.10":
51 | version "0.11.10"
52 | resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.11.10.tgz#5a3ffe32cc9306365fb3fd572596cd602d5e12d2"
53 | integrity sha512-KVVjQmNUepDVGXNuoRRdmmEjruj0KfiGSbS8LVc12LMsWDQzRXJ0qdhN8L8uUigKpfEHRhlaQFY0ib1tnUbNeQ==
54 | dependencies:
55 | "@humanwhocodes/object-schema" "^1.2.1"
56 | debug "^4.1.1"
57 | minimatch "^3.0.5"
58 |
59 | "@humanwhocodes/module-importer@^1.0.1":
60 | version "1.0.1"
61 | resolved "https://registry.yarnpkg.com/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz#af5b2691a22b44be847b0ca81641c5fb6ad0172c"
62 | integrity sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==
63 |
64 | "@humanwhocodes/object-schema@^1.2.1":
65 | version "1.2.1"
66 | resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz#b520529ec21d8e5945a1851dfd1c32e94e39ff45"
67 | integrity sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==
68 |
69 | "@nodelib/fs.scandir@2.1.5":
70 | version "2.1.5"
71 | resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz#7619c2eb21b25483f6d167548b4cfd5a7488c3d5"
72 | integrity sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==
73 | dependencies:
74 | "@nodelib/fs.stat" "2.0.5"
75 | run-parallel "^1.1.9"
76 |
77 | "@nodelib/fs.stat@2.0.5", "@nodelib/fs.stat@^2.0.2":
78 | version "2.0.5"
79 | resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz#5bd262af94e9d25bd1e71b05deed44876a222e8b"
80 | integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==
81 |
82 | "@nodelib/fs.walk@^1.2.3", "@nodelib/fs.walk@^1.2.8":
83 | version "1.2.8"
84 | resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz#e95737e8bb6746ddedf69c556953494f196fe69a"
85 | integrity sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==
86 | dependencies:
87 | "@nodelib/fs.scandir" "2.1.5"
88 | fastq "^1.6.0"
89 |
90 | "@types/json-schema@^7.0.12":
91 | version "7.0.12"
92 | resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.12.tgz#d70faba7039d5fca54c83c7dbab41051d2b6f6cb"
93 | integrity sha512-Hr5Jfhc9eYOQNPYO5WLDq/n4jqijdHNlDXjuAQkkt+mWdQR+XJToOHrsD4cPaMXpn6KO7y2+wM8AZEs8VpBLVA==
94 |
95 | "@types/minilog@^2.0.29":
96 | version "2.0.29"
97 | resolved "https://registry.yarnpkg.com/@types/minilog/-/minilog-2.0.29.tgz#ab192157e4e19c03ad858481b73eb6224a3209db"
98 | integrity sha512-TVUyrnCq82bya9i4e2JqQKpLFo8LOWkTXarWhqelXa7XWyAR0HyLW5Ova4+rbBKG8XejhxbaayecMkUG4sf8hQ==
99 |
100 | "@types/node@^16":
101 | version "16.18.38"
102 | resolved "https://registry.yarnpkg.com/@types/node/-/node-16.18.38.tgz#1dcdb6c54d02b323f621213745f2e44af30c73e6"
103 | integrity sha512-6sfo1qTulpVbkxECP+AVrHV9OoJqhzCsfTNp5NIG+enM4HyM3HvZCO798WShIXBN0+QtDIcutJCjsVYnQP5rIQ==
104 |
105 | "@types/semver@^7.5.0":
106 | version "7.5.0"
107 | resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.5.0.tgz#591c1ce3a702c45ee15f47a42ade72c2fd78978a"
108 | integrity sha512-G8hZ6XJiHnuhQKR7ZmysCeJWE08o8T0AXtk5darsCaTVsYZhhgUrq53jizaR2FvsoeCwJhlmwTjkXBY5Pn/ZHw==
109 |
110 | "@typescript-eslint/eslint-plugin@^6.1.0":
111 | version "6.1.0"
112 | resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.1.0.tgz#96f3ca6615717659d06c9f7161a1d14ab0c49c66"
113 | integrity sha512-qg7Bm5TyP/I7iilGyp6DRqqkt8na00lI6HbjWZObgk3FFSzH5ypRwAHXJhJkwiRtTcfn+xYQIMOR5kJgpo6upw==
114 | dependencies:
115 | "@eslint-community/regexpp" "^4.5.1"
116 | "@typescript-eslint/scope-manager" "6.1.0"
117 | "@typescript-eslint/type-utils" "6.1.0"
118 | "@typescript-eslint/utils" "6.1.0"
119 | "@typescript-eslint/visitor-keys" "6.1.0"
120 | debug "^4.3.4"
121 | graphemer "^1.4.0"
122 | ignore "^5.2.4"
123 | natural-compare "^1.4.0"
124 | natural-compare-lite "^1.4.0"
125 | semver "^7.5.4"
126 | ts-api-utils "^1.0.1"
127 |
128 | "@typescript-eslint/parser@^6.1.0":
129 | version "6.1.0"
130 | resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-6.1.0.tgz#3135bf65dca5340d8650703eb8cb83113e156ee5"
131 | integrity sha512-hIzCPvX4vDs4qL07SYzyomamcs2/tQYXg5DtdAfj35AyJ5PIUqhsLf4YrEIFzZcND7R2E8tpQIZKayxg8/6Wbw==
132 | dependencies:
133 | "@typescript-eslint/scope-manager" "6.1.0"
134 | "@typescript-eslint/types" "6.1.0"
135 | "@typescript-eslint/typescript-estree" "6.1.0"
136 | "@typescript-eslint/visitor-keys" "6.1.0"
137 | debug "^4.3.4"
138 |
139 | "@typescript-eslint/scope-manager@6.1.0":
140 | version "6.1.0"
141 | resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-6.1.0.tgz#a6cdbe11630614f8c04867858a42dd56590796ed"
142 | integrity sha512-AxjgxDn27hgPpe2rQe19k0tXw84YCOsjDJ2r61cIebq1t+AIxbgiXKvD4999Wk49GVaAcdJ/d49FYel+Pp3jjw==
143 | dependencies:
144 | "@typescript-eslint/types" "6.1.0"
145 | "@typescript-eslint/visitor-keys" "6.1.0"
146 |
147 | "@typescript-eslint/type-utils@6.1.0":
148 | version "6.1.0"
149 | resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-6.1.0.tgz#21cc6c3bc1980b03f9eb4e64580d0c5be6f08215"
150 | integrity sha512-kFXBx6QWS1ZZ5Ni89TyT1X9Ag6RXVIVhqDs0vZE/jUeWlBv/ixq2diua6G7ece6+fXw3TvNRxP77/5mOMusx2w==
151 | dependencies:
152 | "@typescript-eslint/typescript-estree" "6.1.0"
153 | "@typescript-eslint/utils" "6.1.0"
154 | debug "^4.3.4"
155 | ts-api-utils "^1.0.1"
156 |
157 | "@typescript-eslint/types@6.1.0":
158 | version "6.1.0"
159 | resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-6.1.0.tgz#2d607c62827bb416ada5c96ebfa2ef84e45a8dfa"
160 | integrity sha512-+Gfd5NHCpDoHDOaU/yIF3WWRI2PcBRKKpP91ZcVbL0t5tQpqYWBs3z/GGhvU+EV1D0262g9XCnyqQh19prU0JQ==
161 |
162 | "@typescript-eslint/typescript-estree@6.1.0":
163 | version "6.1.0"
164 | resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-6.1.0.tgz#ea382f6482ba698d7e993a88ce5391ea7a66c33d"
165 | integrity sha512-nUKAPWOaP/tQjU1IQw9sOPCDavs/iU5iYLiY/6u7gxS7oKQoi4aUxXS1nrrVGTyBBaGesjkcwwHkbkiD5eBvcg==
166 | dependencies:
167 | "@typescript-eslint/types" "6.1.0"
168 | "@typescript-eslint/visitor-keys" "6.1.0"
169 | debug "^4.3.4"
170 | globby "^11.1.0"
171 | is-glob "^4.0.3"
172 | semver "^7.5.4"
173 | ts-api-utils "^1.0.1"
174 |
175 | "@typescript-eslint/utils@6.1.0":
176 | version "6.1.0"
177 | resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-6.1.0.tgz#1641843792b4e3451cc692e2c73055df8b26f453"
178 | integrity sha512-wp652EogZlKmQoMS5hAvWqRKplXvkuOnNzZSE0PVvsKjpexd/XznRVHAtrfHFYmqaJz0DFkjlDsGYC9OXw+OhQ==
179 | dependencies:
180 | "@eslint-community/eslint-utils" "^4.4.0"
181 | "@types/json-schema" "^7.0.12"
182 | "@types/semver" "^7.5.0"
183 | "@typescript-eslint/scope-manager" "6.1.0"
184 | "@typescript-eslint/types" "6.1.0"
185 | "@typescript-eslint/typescript-estree" "6.1.0"
186 | semver "^7.5.4"
187 |
188 | "@typescript-eslint/visitor-keys@6.1.0":
189 | version "6.1.0"
190 | resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-6.1.0.tgz#d2b84dff6b58944d3257ea03687e269a788c73be"
191 | integrity sha512-yQeh+EXhquh119Eis4k0kYhj9vmFzNpbhM3LftWQVwqVjipCkwHBQOZutcYW+JVkjtTG9k8nrZU1UoNedPDd1A==
192 | dependencies:
193 | "@typescript-eslint/types" "6.1.0"
194 | eslint-visitor-keys "^3.4.1"
195 |
196 | accepts@~1.3.8:
197 | version "1.3.8"
198 | resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.8.tgz#0bf0be125b67014adcb0b0921e62db7bffe16b2e"
199 | integrity sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==
200 | dependencies:
201 | mime-types "~2.1.34"
202 | negotiator "0.6.3"
203 |
204 | acorn-jsx@^5.3.2:
205 | version "5.3.2"
206 | resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937"
207 | integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==
208 |
209 | acorn@^8.9.0:
210 | version "8.10.0"
211 | resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.10.0.tgz#8be5b3907a67221a81ab23c7889c4c5526b62ec5"
212 | integrity sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==
213 |
214 | aggregate-error@^3.0.0:
215 | version "3.1.0"
216 | resolved "https://registry.yarnpkg.com/aggregate-error/-/aggregate-error-3.1.0.tgz#92670ff50f5359bdb7a3e0d40d0ec30c5737687a"
217 | integrity sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==
218 | dependencies:
219 | clean-stack "^2.0.0"
220 | indent-string "^4.0.0"
221 |
222 | ajv@^6.10.0, ajv@^6.12.4:
223 | version "6.12.6"
224 | resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4"
225 | integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==
226 | dependencies:
227 | fast-deep-equal "^3.1.1"
228 | fast-json-stable-stringify "^2.0.0"
229 | json-schema-traverse "^0.4.1"
230 | uri-js "^4.2.2"
231 |
232 | ansi-escapes@^4.3.0:
233 | version "4.3.2"
234 | resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz#6b2291d1db7d98b6521d5f1efa42d0f3a9feb65e"
235 | integrity sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==
236 | dependencies:
237 | type-fest "^0.21.3"
238 |
239 | ansi-regex@^5.0.1:
240 | version "5.0.1"
241 | resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304"
242 | integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==
243 |
244 | ansi-regex@^6.0.1:
245 | version "6.0.1"
246 | resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-6.0.1.tgz#3183e38fae9a65d7cb5e53945cd5897d0260a06a"
247 | integrity sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==
248 |
249 | ansi-styles@^4.0.0, ansi-styles@^4.1.0:
250 | version "4.3.0"
251 | resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937"
252 | integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==
253 | dependencies:
254 | color-convert "^2.0.1"
255 |
256 | ansi-styles@^6.0.0:
257 | version "6.2.1"
258 | resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-6.2.1.tgz#0e62320cf99c21afff3b3012192546aacbfb05c5"
259 | integrity sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==
260 |
261 | append-field@^1.0.0:
262 | version "1.0.0"
263 | resolved "https://registry.yarnpkg.com/append-field/-/append-field-1.0.0.tgz#1e3440e915f0b1203d23748e78edd7b9b5b43e56"
264 | integrity sha512-klpgFSWLW1ZEs8svjfb7g4qWY0YS5imI82dTg+QahUvJ8YqAY0P10Uk8tTyh9ZGuYEZEMaeJYCF5BFuX552hsw==
265 |
266 | argparse@^1.0.7:
267 | version "1.0.10"
268 | resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911"
269 | integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==
270 | dependencies:
271 | sprintf-js "~1.0.2"
272 |
273 | argparse@^2.0.1:
274 | version "2.0.1"
275 | resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38"
276 | integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==
277 |
278 | array-flatten@1.1.1:
279 | version "1.1.1"
280 | resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2"
281 | integrity sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==
282 |
283 | array-union@^2.1.0:
284 | version "2.1.0"
285 | resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d"
286 | integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==
287 |
288 | assert-plus@^1.0.0:
289 | version "1.0.0"
290 | resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525"
291 | integrity sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==
292 |
293 | astral-regex@^2.0.0:
294 | version "2.0.0"
295 | resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-2.0.0.tgz#483143c567aeed4785759c0865786dc77d7d2e31"
296 | integrity sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==
297 |
298 | asynckit@^0.4.0:
299 | version "0.4.0"
300 | resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79"
301 | integrity sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==
302 |
303 | axios@^1.4.0:
304 | version "1.4.0"
305 | resolved "https://registry.yarnpkg.com/axios/-/axios-1.4.0.tgz#38a7bf1224cd308de271146038b551d725f0be1f"
306 | integrity sha512-S4XCWMEmzvo64T9GfvQDOXgYRDJ/wsSZc7Jvdgx5u1sd0JwsuPLqb3SYmusag+edF6ziyMensPVqLTSc1PiSEA==
307 | dependencies:
308 | follow-redirects "^1.15.0"
309 | form-data "^4.0.0"
310 | proxy-from-env "^1.1.0"
311 |
312 | balanced-match@^1.0.0:
313 | version "1.0.2"
314 | resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee"
315 | integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==
316 |
317 | body-parser@1.20.1:
318 | version "1.20.1"
319 | resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.20.1.tgz#b1812a8912c195cd371a3ee5e66faa2338a5c668"
320 | integrity sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==
321 | dependencies:
322 | bytes "3.1.2"
323 | content-type "~1.0.4"
324 | debug "2.6.9"
325 | depd "2.0.0"
326 | destroy "1.2.0"
327 | http-errors "2.0.0"
328 | iconv-lite "0.4.24"
329 | on-finished "2.4.1"
330 | qs "6.11.0"
331 | raw-body "2.5.1"
332 | type-is "~1.6.18"
333 | unpipe "1.0.0"
334 |
335 | body-parser@^1.13.1:
336 | version "1.20.2"
337 | resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.20.2.tgz#6feb0e21c4724d06de7ff38da36dad4f57a747fd"
338 | integrity sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA==
339 | dependencies:
340 | bytes "3.1.2"
341 | content-type "~1.0.5"
342 | debug "2.6.9"
343 | depd "2.0.0"
344 | destroy "1.2.0"
345 | http-errors "2.0.0"
346 | iconv-lite "0.4.24"
347 | on-finished "2.4.1"
348 | qs "6.11.0"
349 | raw-body "2.5.2"
350 | type-is "~1.6.18"
351 | unpipe "1.0.0"
352 |
353 | boolbase@^1.0.0:
354 | version "1.0.0"
355 | resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e"
356 | integrity sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==
357 |
358 | brace-expansion@^1.1.7:
359 | version "1.1.11"
360 | resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd"
361 | integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==
362 | dependencies:
363 | balanced-match "^1.0.0"
364 | concat-map "0.0.1"
365 |
366 | braces@^3.0.2:
367 | version "3.0.2"
368 | resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107"
369 | integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==
370 | dependencies:
371 | fill-range "^7.0.1"
372 |
373 | buffer-from@^1.0.0:
374 | version "1.1.2"
375 | resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5"
376 | integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==
377 |
378 | bunyan-adaptor@^4.0.1:
379 | version "4.0.1"
380 | resolved "https://registry.yarnpkg.com/bunyan-adaptor/-/bunyan-adaptor-4.0.1.tgz#c0c7b377e0d00f7d5ad6ba3382a2c9acbf979623"
381 | integrity sha512-pD7ernr140ZjdPu94u5uCUTVlE1Kpku8WPg5RqH7ycFmM7XmWYbQpL1GGxlDOt/BSAm5TIqG7VrnwvFzIJ3+vQ==
382 |
383 | busboy@^0.2.11:
384 | version "0.2.14"
385 | resolved "https://registry.yarnpkg.com/busboy/-/busboy-0.2.14.tgz#6c2a622efcf47c57bbbe1e2a9c37ad36c7925453"
386 | integrity sha512-InWFDomvlkEj+xWLBfU3AvnbVYqeTWmQopiW0tWWEy5yehYm2YkGEc59sUmw/4ty5Zj/b0WHGs1LgecuBSBGrg==
387 | dependencies:
388 | dicer "0.2.5"
389 | readable-stream "1.1.x"
390 |
391 | bytes@3.1.2:
392 | version "3.1.2"
393 | resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.2.tgz#8b0beeb98605adf1b128fa4386403c009e0221a5"
394 | integrity sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==
395 |
396 | call-bind@^1.0.0:
397 | version "1.0.2"
398 | resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.2.tgz#b1d4e89e688119c3c9a903ad30abb2f6a919be3c"
399 | integrity sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==
400 | dependencies:
401 | function-bind "^1.1.1"
402 | get-intrinsic "^1.0.2"
403 |
404 | callsites@^3.0.0:
405 | version "3.1.0"
406 | resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73"
407 | integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==
408 |
409 | chalk@5.2.0:
410 | version "5.2.0"
411 | resolved "https://registry.yarnpkg.com/chalk/-/chalk-5.2.0.tgz#249623b7d66869c673699fb66d65723e54dfcfb3"
412 | integrity sha512-ree3Gqw/nazQAPuJJEy+avdl7QfZMcUvmHIKgEZkGL+xOBzRvup5Hxo6LHuMceSxOabuJLJm5Yp/92R9eMmMvA==
413 |
414 | chalk@^4.0.0:
415 | version "4.1.2"
416 | resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01"
417 | integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==
418 | dependencies:
419 | ansi-styles "^4.1.0"
420 | supports-color "^7.1.0"
421 |
422 | cheerio-select@^2.1.0:
423 | version "2.1.0"
424 | resolved "https://registry.yarnpkg.com/cheerio-select/-/cheerio-select-2.1.0.tgz#4d8673286b8126ca2a8e42740d5e3c4884ae21b4"
425 | integrity sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g==
426 | dependencies:
427 | boolbase "^1.0.0"
428 | css-select "^5.1.0"
429 | css-what "^6.1.0"
430 | domelementtype "^2.3.0"
431 | domhandler "^5.0.3"
432 | domutils "^3.0.1"
433 |
434 | cheerio@^1.0.0-rc.2:
435 | version "1.0.0-rc.12"
436 | resolved "https://registry.yarnpkg.com/cheerio/-/cheerio-1.0.0-rc.12.tgz#788bf7466506b1c6bf5fae51d24a2c4d62e47683"
437 | integrity sha512-VqR8m68vM46BNnuZ5NtnGBKIE/DfN0cRIzg9n40EIq9NOv90ayxLBXA8fXC5gquFRGJSTRqBq25Jt2ECLR431Q==
438 | dependencies:
439 | cheerio-select "^2.1.0"
440 | dom-serializer "^2.0.0"
441 | domhandler "^5.0.3"
442 | domutils "^3.0.1"
443 | htmlparser2 "^8.0.1"
444 | parse5 "^7.0.0"
445 | parse5-htmlparser2-tree-adapter "^7.0.0"
446 |
447 | clean-stack@^2.0.0:
448 | version "2.2.0"
449 | resolved "https://registry.yarnpkg.com/clean-stack/-/clean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b"
450 | integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==
451 |
452 | cli-cursor@^3.1.0:
453 | version "3.1.0"
454 | resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-3.1.0.tgz#264305a7ae490d1d03bf0c9ba7c925d1753af307"
455 | integrity sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==
456 | dependencies:
457 | restore-cursor "^3.1.0"
458 |
459 | cli-truncate@^2.1.0:
460 | version "2.1.0"
461 | resolved "https://registry.yarnpkg.com/cli-truncate/-/cli-truncate-2.1.0.tgz#c39e28bf05edcde5be3b98992a22deed5a2b93c7"
462 | integrity sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==
463 | dependencies:
464 | slice-ansi "^3.0.0"
465 | string-width "^4.2.0"
466 |
467 | cli-truncate@^3.1.0:
468 | version "3.1.0"
469 | resolved "https://registry.yarnpkg.com/cli-truncate/-/cli-truncate-3.1.0.tgz#3f23ab12535e3d73e839bb43e73c9de487db1389"
470 | integrity sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA==
471 | dependencies:
472 | slice-ansi "^5.0.0"
473 | string-width "^5.0.0"
474 |
475 | color-convert@^2.0.1:
476 | version "2.0.1"
477 | resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3"
478 | integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==
479 | dependencies:
480 | color-name "~1.1.4"
481 |
482 | color-name@~1.1.4:
483 | version "1.1.4"
484 | resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2"
485 | integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==
486 |
487 | colorette@^2.0.19:
488 | version "2.0.20"
489 | resolved "https://registry.yarnpkg.com/colorette/-/colorette-2.0.20.tgz#9eb793e6833067f7235902fcd3b09917a000a95a"
490 | integrity sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==
491 |
492 | combined-stream@^1.0.8:
493 | version "1.0.8"
494 | resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f"
495 | integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==
496 | dependencies:
497 | delayed-stream "~1.0.0"
498 |
499 | commander@^10.0.0:
500 | version "10.0.1"
501 | resolved "https://registry.yarnpkg.com/commander/-/commander-10.0.1.tgz#881ee46b4f77d1c1dccc5823433aa39b022cbe06"
502 | integrity sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==
503 |
504 | concat-map@0.0.1:
505 | version "0.0.1"
506 | resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"
507 | integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==
508 |
509 | concat-stream@^1.5.2, concat-stream@^1.6.0:
510 | version "1.6.2"
511 | resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.2.tgz#904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34"
512 | integrity sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==
513 | dependencies:
514 | buffer-from "^1.0.0"
515 | inherits "^2.0.3"
516 | readable-stream "^2.2.2"
517 | typedarray "^0.0.6"
518 |
519 | config@^3.3.9:
520 | version "3.3.9"
521 | resolved "https://registry.yarnpkg.com/config/-/config-3.3.9.tgz#27fae95b43e0e1d5723e54143c090954d8e49572"
522 | integrity sha512-G17nfe+cY7kR0wVpc49NCYvNtelm/pPy8czHoFkAgtV1lkmcp7DHtWCdDu+C9Z7gb2WVqa9Tm3uF9aKaPbCfhg==
523 | dependencies:
524 | json5 "^2.2.3"
525 |
526 | content-disposition@0.5.4:
527 | version "0.5.4"
528 | resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.4.tgz#8b82b4efac82512a02bb0b1dcec9d2c5e8eb5bfe"
529 | integrity sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==
530 | dependencies:
531 | safe-buffer "5.2.1"
532 |
533 | content-type@~1.0.4, content-type@~1.0.5:
534 | version "1.0.5"
535 | resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.5.tgz#8b773162656d1d1086784c8f23a54ce6d73d7918"
536 | integrity sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==
537 |
538 | cookie-signature@1.0.6:
539 | version "1.0.6"
540 | resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c"
541 | integrity sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==
542 |
543 | cookie@0.5.0:
544 | version "0.5.0"
545 | resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.5.0.tgz#d1f5d71adec6558c58f389987c366aa47e994f8b"
546 | integrity sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==
547 |
548 | core-js-pure@^3.30.2:
549 | version "3.31.1"
550 | resolved "https://registry.yarnpkg.com/core-js-pure/-/core-js-pure-3.31.1.tgz#73d154958881873bc19381df80bddb20c8d0cdb5"
551 | integrity sha512-w+C62kvWti0EPs4KPMCMVv9DriHSXfQOCQ94bGGBiEW5rrbtt/Rz8n5Krhfw9cpFyzXBjf3DB3QnPdEzGDY4Fw==
552 |
553 | core-util-is@1.0.2:
554 | version "1.0.2"
555 | resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7"
556 | integrity sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==
557 |
558 | core-util-is@~1.0.0:
559 | version "1.0.3"
560 | resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.3.tgz#a6042d3634c2b27e9328f837b965fac83808db85"
561 | integrity sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==
562 |
563 | cross-spawn@^7.0.2, cross-spawn@^7.0.3:
564 | version "7.0.3"
565 | resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6"
566 | integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==
567 | dependencies:
568 | path-key "^3.1.0"
569 | shebang-command "^2.0.0"
570 | which "^2.0.1"
571 |
572 | css-select@^5.1.0:
573 | version "5.1.0"
574 | resolved "https://registry.yarnpkg.com/css-select/-/css-select-5.1.0.tgz#b8ebd6554c3637ccc76688804ad3f6a6fdaea8a6"
575 | integrity sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==
576 | dependencies:
577 | boolbase "^1.0.0"
578 | css-what "^6.1.0"
579 | domhandler "^5.0.2"
580 | domutils "^3.0.1"
581 | nth-check "^2.0.1"
582 |
583 | css-what@^6.1.0:
584 | version "6.1.0"
585 | resolved "https://registry.yarnpkg.com/css-what/-/css-what-6.1.0.tgz#fb5effcf76f1ddea2c81bdfaa4de44e79bac70f4"
586 | integrity sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==
587 |
588 | datamap-interface@^0.3.0:
589 | version "0.3.1"
590 | resolved "https://registry.yarnpkg.com/datamap-interface/-/datamap-interface-0.3.1.tgz#adddf2de75abaa19065d92166329fb69c055f523"
591 | integrity sha512-WsUm9xMqSPGOCrMow7wsYtFFF8MrLnmpj71CruB2amJsliOQCJ8OwqDDpVWfFVddONXDg+XA5XbhqcctBna2Vg==
592 |
593 | debug@2.6.9:
594 | version "2.6.9"
595 | resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f"
596 | integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==
597 | dependencies:
598 | ms "2.0.0"
599 |
600 | debug@^4.1.1, debug@^4.3.2, debug@^4.3.4:
601 | version "4.3.4"
602 | resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865"
603 | integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==
604 | dependencies:
605 | ms "2.1.2"
606 |
607 | deep-is@^0.1.3:
608 | version "0.1.4"
609 | resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831"
610 | integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==
611 |
612 | delayed-stream@~1.0.0:
613 | version "1.0.0"
614 | resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619"
615 | integrity sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==
616 |
617 | depd@2.0.0:
618 | version "2.0.0"
619 | resolved "https://registry.yarnpkg.com/depd/-/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df"
620 | integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==
621 |
622 | destroy@1.2.0:
623 | version "1.2.0"
624 | resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.2.0.tgz#4803735509ad8be552934c67df614f94e66fa015"
625 | integrity sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==
626 |
627 | dicer@0.2.5:
628 | version "0.2.5"
629 | resolved "https://registry.yarnpkg.com/dicer/-/dicer-0.2.5.tgz#5996c086bb33218c812c090bddc09cd12facb70f"
630 | integrity sha512-FDvbtnq7dzlPz0wyYlOExifDEZcu8h+rErEXgfxqmLfRfC/kJidEFh4+effJRO3P0xmfqyPbSMG0LveNRfTKVg==
631 | dependencies:
632 | readable-stream "1.1.x"
633 | streamsearch "0.1.2"
634 |
635 | dir-glob@^3.0.1:
636 | version "3.0.1"
637 | resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f"
638 | integrity sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==
639 | dependencies:
640 | path-type "^4.0.0"
641 |
642 | doctrine@^3.0.0:
643 | version "3.0.0"
644 | resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961"
645 | integrity sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==
646 | dependencies:
647 | esutils "^2.0.2"
648 |
649 | dom-serializer@0:
650 | version "0.2.2"
651 | resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.2.2.tgz#1afb81f533717175d478655debc5e332d9f9bb51"
652 | integrity sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==
653 | dependencies:
654 | domelementtype "^2.0.1"
655 | entities "^2.0.0"
656 |
657 | dom-serializer@^2.0.0:
658 | version "2.0.0"
659 | resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-2.0.0.tgz#e41b802e1eedf9f6cae183ce5e622d789d7d8e53"
660 | integrity sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==
661 | dependencies:
662 | domelementtype "^2.3.0"
663 | domhandler "^5.0.2"
664 | entities "^4.2.0"
665 |
666 | domelementtype@1, domelementtype@^1.3.1:
667 | version "1.3.1"
668 | resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.3.1.tgz#d048c44b37b0d10a7f2a3d5fee3f4333d790481f"
669 | integrity sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==
670 |
671 | domelementtype@^2.0.1, domelementtype@^2.3.0:
672 | version "2.3.0"
673 | resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.3.0.tgz#5c45e8e869952626331d7aab326d01daf65d589d"
674 | integrity sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==
675 |
676 | domhandler@^2.3.0:
677 | version "2.4.2"
678 | resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-2.4.2.tgz#8805097e933d65e85546f726d60f5eb88b44f803"
679 | integrity sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==
680 | dependencies:
681 | domelementtype "1"
682 |
683 | domhandler@^5.0.2, domhandler@^5.0.3:
684 | version "5.0.3"
685 | resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-5.0.3.tgz#cc385f7f751f1d1fc650c21374804254538c7d31"
686 | integrity sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==
687 | dependencies:
688 | domelementtype "^2.3.0"
689 |
690 | domutils@^1.5.1:
691 | version "1.7.0"
692 | resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.7.0.tgz#56ea341e834e06e6748af7a1cb25da67ea9f8c2a"
693 | integrity sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg==
694 | dependencies:
695 | dom-serializer "0"
696 | domelementtype "1"
697 |
698 | domutils@^3.0.1:
699 | version "3.1.0"
700 | resolved "https://registry.yarnpkg.com/domutils/-/domutils-3.1.0.tgz#c47f551278d3dc4b0b1ab8cbb42d751a6f0d824e"
701 | integrity sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==
702 | dependencies:
703 | dom-serializer "^2.0.0"
704 | domelementtype "^2.3.0"
705 | domhandler "^5.0.3"
706 |
707 | duplexer@~0.1.1:
708 | version "0.1.2"
709 | resolved "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.2.tgz#3abe43aef3835f8ae077d136ddce0f276b0400e6"
710 | integrity sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==
711 |
712 | eastasianwidth@^0.2.0:
713 | version "0.2.0"
714 | resolved "https://registry.yarnpkg.com/eastasianwidth/-/eastasianwidth-0.2.0.tgz#696ce2ec0aa0e6ea93a397ffcf24aa7840c827cb"
715 | integrity sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==
716 |
717 | ee-first@1.1.1:
718 | version "1.1.1"
719 | resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d"
720 | integrity sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==
721 |
722 | emoji-regex@^8.0.0:
723 | version "8.0.0"
724 | resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37"
725 | integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==
726 |
727 | emoji-regex@^9.2.2:
728 | version "9.2.2"
729 | resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-9.2.2.tgz#840c8803b0d8047f4ff0cf963176b32d4ef3ed72"
730 | integrity sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==
731 |
732 | encodeurl@~1.0.2:
733 | version "1.0.2"
734 | resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59"
735 | integrity sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==
736 |
737 | encoding@^0.1.11:
738 | version "0.1.13"
739 | resolved "https://registry.yarnpkg.com/encoding/-/encoding-0.1.13.tgz#56574afdd791f54a8e9b2785c0582a2d26210fa9"
740 | integrity sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==
741 | dependencies:
742 | iconv-lite "^0.6.2"
743 |
744 | ent@^2.2.0:
745 | version "2.2.0"
746 | resolved "https://registry.yarnpkg.com/ent/-/ent-2.2.0.tgz#e964219325a21d05f44466a2f686ed6ce5f5dd1d"
747 | integrity sha512-GHrMyVZQWvTIdDtpiEXdHZnFQKzeO09apj8Cbl4pKWy4i0Oprcq17usfDt5aO63swf0JOeMWjWQE/LzgSRuWpA==
748 |
749 | entities@^1.1.1:
750 | version "1.1.2"
751 | resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.2.tgz#bdfa735299664dfafd34529ed4f8522a275fea56"
752 | integrity sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==
753 |
754 | entities@^2.0.0:
755 | version "2.2.0"
756 | resolved "https://registry.yarnpkg.com/entities/-/entities-2.2.0.tgz#098dc90ebb83d8dffa089d55256b351d34c4da55"
757 | integrity sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==
758 |
759 | entities@^4.2.0, entities@^4.4.0:
760 | version "4.5.0"
761 | resolved "https://registry.yarnpkg.com/entities/-/entities-4.5.0.tgz#5d268ea5e7113ec74c4d033b79ea5a35a488fb48"
762 | integrity sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==
763 |
764 | es7-array.prototype.includes@^2.0.0:
765 | version "2.0.0"
766 | resolved "https://registry.yarnpkg.com/es7-array.prototype.includes/-/es7-array.prototype.includes-2.0.0.tgz#0e23aa5238bbe2e7b23255492ef92f45b8aaa46a"
767 | integrity sha512-hvbywu1ogBb1jcT1BgKZ000FHvvONFpUIPiw3g5DFg8joHXU2pyeoKU1i1wbZ4C771fwiqREHPa2GeZtCZ1Uww==
768 |
769 | escape-html@^1.0.3, escape-html@~1.0.3:
770 | version "1.0.3"
771 | resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988"
772 | integrity sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==
773 |
774 | escape-string-regexp@^4.0.0:
775 | version "4.0.0"
776 | resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34"
777 | integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==
778 |
779 | eslint-scope@^7.2.0:
780 | version "7.2.1"
781 | resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-7.2.1.tgz#936821d3462675f25a18ac5fd88a67cc15b393bd"
782 | integrity sha512-CvefSOsDdaYYvxChovdrPo/ZGt8d5lrJWleAc1diXRKhHGiTYEI26cvo8Kle/wGnsizoCJjK73FMg1/IkIwiNA==
783 | dependencies:
784 | esrecurse "^4.3.0"
785 | estraverse "^5.2.0"
786 |
787 | eslint-visitor-keys@^3.3.0, eslint-visitor-keys@^3.4.1:
788 | version "3.4.1"
789 | resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.4.1.tgz#c22c48f48942d08ca824cc526211ae400478a994"
790 | integrity sha512-pZnmmLwYzf+kWaM/Qgrvpen51upAktaaiI01nsJD/Yr3lMOdNtq0cxkrrg16w64VtisN6okbs7Q8AfGqj4c9fA==
791 |
792 | eslint@^8.45.0:
793 | version "8.45.0"
794 | resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.45.0.tgz#bab660f90d18e1364352c0a6b7c6db8edb458b78"
795 | integrity sha512-pd8KSxiQpdYRfYa9Wufvdoct3ZPQQuVuU5O6scNgMuOMYuxvH0IGaYK0wUFjo4UYYQQCUndlXiMbnxopwvvTiw==
796 | dependencies:
797 | "@eslint-community/eslint-utils" "^4.2.0"
798 | "@eslint-community/regexpp" "^4.4.0"
799 | "@eslint/eslintrc" "^2.1.0"
800 | "@eslint/js" "8.44.0"
801 | "@humanwhocodes/config-array" "^0.11.10"
802 | "@humanwhocodes/module-importer" "^1.0.1"
803 | "@nodelib/fs.walk" "^1.2.8"
804 | ajv "^6.10.0"
805 | chalk "^4.0.0"
806 | cross-spawn "^7.0.2"
807 | debug "^4.3.2"
808 | doctrine "^3.0.0"
809 | escape-string-regexp "^4.0.0"
810 | eslint-scope "^7.2.0"
811 | eslint-visitor-keys "^3.4.1"
812 | espree "^9.6.0"
813 | esquery "^1.4.2"
814 | esutils "^2.0.2"
815 | fast-deep-equal "^3.1.3"
816 | file-entry-cache "^6.0.1"
817 | find-up "^5.0.0"
818 | glob-parent "^6.0.2"
819 | globals "^13.19.0"
820 | graphemer "^1.4.0"
821 | ignore "^5.2.0"
822 | imurmurhash "^0.1.4"
823 | is-glob "^4.0.0"
824 | is-path-inside "^3.0.3"
825 | js-yaml "^4.1.0"
826 | json-stable-stringify-without-jsonify "^1.0.1"
827 | levn "^0.4.1"
828 | lodash.merge "^4.6.2"
829 | minimatch "^3.1.2"
830 | natural-compare "^1.4.0"
831 | optionator "^0.9.3"
832 | strip-ansi "^6.0.1"
833 | text-table "^0.2.0"
834 |
835 | espree@^9.6.0:
836 | version "9.6.1"
837 | resolved "https://registry.yarnpkg.com/espree/-/espree-9.6.1.tgz#a2a17b8e434690a5432f2f8018ce71d331a48c6f"
838 | integrity sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==
839 | dependencies:
840 | acorn "^8.9.0"
841 | acorn-jsx "^5.3.2"
842 | eslint-visitor-keys "^3.4.1"
843 |
844 | esprima@^4.0.0:
845 | version "4.0.1"
846 | resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71"
847 | integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==
848 |
849 | esquery@^1.4.2:
850 | version "1.5.0"
851 | resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.5.0.tgz#6ce17738de8577694edd7361c57182ac8cb0db0b"
852 | integrity sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==
853 | dependencies:
854 | estraverse "^5.1.0"
855 |
856 | esrecurse@^4.3.0:
857 | version "4.3.0"
858 | resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921"
859 | integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==
860 | dependencies:
861 | estraverse "^5.2.0"
862 |
863 | estraverse@^5.1.0, estraverse@^5.2.0:
864 | version "5.3.0"
865 | resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123"
866 | integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==
867 |
868 | esutils@^2.0.2:
869 | version "2.0.3"
870 | resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64"
871 | integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==
872 |
873 | etag@~1.8.1:
874 | version "1.8.1"
875 | resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887"
876 | integrity sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==
877 |
878 | event-stream@=3.3.4:
879 | version "3.3.4"
880 | resolved "https://registry.yarnpkg.com/event-stream/-/event-stream-3.3.4.tgz#4ab4c9a0f5a54db9338b4c34d86bfce8f4b35571"
881 | integrity sha512-QHpkERcGsR0T7Qm3HNJSyXKEEj8AHNxkY3PK8TS2KJvQ7NiSHe3DDpwVKKtoYprL/AreyzFBeIkBIWChAqn60g==
882 | dependencies:
883 | duplexer "~0.1.1"
884 | from "~0"
885 | map-stream "~0.1.0"
886 | pause-stream "0.0.11"
887 | split "0.3"
888 | stream-combiner "~0.0.4"
889 | through "~2.3.1"
890 |
891 | execa@^7.0.0:
892 | version "7.1.1"
893 | resolved "https://registry.yarnpkg.com/execa/-/execa-7.1.1.tgz#3eb3c83d239488e7b409d48e8813b76bb55c9c43"
894 | integrity sha512-wH0eMf/UXckdUYnO21+HDztteVv05rq2GXksxT4fCGeHkBhw1DROXh40wcjMcRqDOWE7iPJ4n3M7e2+YFP+76Q==
895 | dependencies:
896 | cross-spawn "^7.0.3"
897 | get-stream "^6.0.1"
898 | human-signals "^4.3.0"
899 | is-stream "^3.0.0"
900 | merge-stream "^2.0.0"
901 | npm-run-path "^5.1.0"
902 | onetime "^6.0.0"
903 | signal-exit "^3.0.7"
904 | strip-final-newline "^3.0.0"
905 |
906 | express@4.18.2, express@^4.13.0:
907 | version "4.18.2"
908 | resolved "https://registry.yarnpkg.com/express/-/express-4.18.2.tgz#3fabe08296e930c796c19e3c516979386ba9fd59"
909 | integrity sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==
910 | dependencies:
911 | accepts "~1.3.8"
912 | array-flatten "1.1.1"
913 | body-parser "1.20.1"
914 | content-disposition "0.5.4"
915 | content-type "~1.0.4"
916 | cookie "0.5.0"
917 | cookie-signature "1.0.6"
918 | debug "2.6.9"
919 | depd "2.0.0"
920 | encodeurl "~1.0.2"
921 | escape-html "~1.0.3"
922 | etag "~1.8.1"
923 | finalhandler "1.2.0"
924 | fresh "0.5.2"
925 | http-errors "2.0.0"
926 | merge-descriptors "1.0.1"
927 | methods "~1.1.2"
928 | on-finished "2.4.1"
929 | parseurl "~1.3.3"
930 | path-to-regexp "0.1.7"
931 | proxy-addr "~2.0.7"
932 | qs "6.11.0"
933 | range-parser "~1.2.1"
934 | safe-buffer "5.2.1"
935 | send "0.18.0"
936 | serve-static "1.15.0"
937 | setprototypeof "1.2.0"
938 | statuses "2.0.1"
939 | type-is "~1.6.18"
940 | utils-merge "1.0.1"
941 | vary "~1.1.2"
942 |
943 | extsprintf@^1.2.0:
944 | version "1.4.1"
945 | resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.1.tgz#8d172c064867f235c0c84a596806d279bf4bcc07"
946 | integrity sha512-Wrk35e8ydCKDj/ArClo1VrPVmN8zph5V4AtHwIuHhvMXsKf73UT3BOD+azBIW+3wOJ4FhEH7zyaJCFvChjYvMA==
947 |
948 | fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3:
949 | version "3.1.3"
950 | resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525"
951 | integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==
952 |
953 | fast-glob@^3.2.9:
954 | version "3.3.0"
955 | resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.0.tgz#7c40cb491e1e2ed5664749e87bfb516dbe8727c0"
956 | integrity sha512-ChDuvbOypPuNjO8yIDf36x7BlZX1smcUMTTcyoIjycexOxd6DFsKsg21qVBzEmr3G7fUKIRy2/psii+CIUt7FA==
957 | dependencies:
958 | "@nodelib/fs.stat" "^2.0.2"
959 | "@nodelib/fs.walk" "^1.2.3"
960 | glob-parent "^5.1.2"
961 | merge2 "^1.3.0"
962 | micromatch "^4.0.4"
963 |
964 | fast-json-stable-stringify@^2.0.0:
965 | version "2.1.0"
966 | resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633"
967 | integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==
968 |
969 | fast-levenshtein@^2.0.6:
970 | version "2.0.6"
971 | resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917"
972 | integrity sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==
973 |
974 | fastq@^1.6.0:
975 | version "1.15.0"
976 | resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.15.0.tgz#d04d07c6a2a68fe4599fea8d2e103a937fae6b3a"
977 | integrity sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==
978 | dependencies:
979 | reusify "^1.0.4"
980 |
981 | file-entry-cache@^6.0.1:
982 | version "6.0.1"
983 | resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz#211b2dd9659cb0394b073e7323ac3c933d522027"
984 | integrity sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==
985 | dependencies:
986 | flat-cache "^3.0.4"
987 |
988 | fill-range@^7.0.1:
989 | version "7.0.1"
990 | resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40"
991 | integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==
992 | dependencies:
993 | to-regex-range "^5.0.1"
994 |
995 | finalhandler@1.2.0:
996 | version "1.2.0"
997 | resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.2.0.tgz#7d23fe5731b207b4640e4fcd00aec1f9207a7b32"
998 | integrity sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==
999 | dependencies:
1000 | debug "2.6.9"
1001 | encodeurl "~1.0.2"
1002 | escape-html "~1.0.3"
1003 | on-finished "2.4.1"
1004 | parseurl "~1.3.3"
1005 | statuses "2.0.1"
1006 | unpipe "~1.0.0"
1007 |
1008 | find-up@^5.0.0:
1009 | version "5.0.0"
1010 | resolved "https://registry.yarnpkg.com/find-up/-/find-up-5.0.0.tgz#4c92819ecb7083561e4f4a240a86be5198f536fc"
1011 | integrity sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==
1012 | dependencies:
1013 | locate-path "^6.0.0"
1014 | path-exists "^4.0.0"
1015 |
1016 | flat-cache@^3.0.4:
1017 | version "3.0.4"
1018 | resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.0.4.tgz#61b0338302b2fe9f957dcc32fc2a87f1c3048b11"
1019 | integrity sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==
1020 | dependencies:
1021 | flatted "^3.1.0"
1022 | rimraf "^3.0.2"
1023 |
1024 | flatted@^3.1.0:
1025 | version "3.2.7"
1026 | resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.2.7.tgz#609f39207cb614b89d0765b477cb2d437fbf9787"
1027 | integrity sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==
1028 |
1029 | follow-redirects@^1.15.0, follow-redirects@^1.2.5:
1030 | version "1.15.2"
1031 | resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.2.tgz#b460864144ba63f2681096f274c4e57026da2c13"
1032 | integrity sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==
1033 |
1034 | form-data@^4.0.0:
1035 | version "4.0.0"
1036 | resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.0.tgz#93919daeaf361ee529584b9b31664dc12c9fa452"
1037 | integrity sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==
1038 | dependencies:
1039 | asynckit "^0.4.0"
1040 | combined-stream "^1.0.8"
1041 | mime-types "^2.1.12"
1042 |
1043 | form-urlencoded@^3.0.0:
1044 | version "3.0.2"
1045 | resolved "https://registry.yarnpkg.com/form-urlencoded/-/form-urlencoded-3.0.2.tgz#28181fabc31b263662d6fc9c2e9700af35b2a860"
1046 | integrity sha512-FurPsZ7yfmbX+Vl9ibn/PK5EkeScj/inKtCqx9vc9EOlzh6p6VhanfeIjtDk/kCGrWVbCVW8M3GA7zX3udmgHw==
1047 |
1048 | format-microformat@0.11.1:
1049 | version "0.11.1"
1050 | resolved "https://registry.yarnpkg.com/format-microformat/-/format-microformat-0.11.1.tgz#affbdd898a55bbab851e451c2729a0a50aa2b4fa"
1051 | integrity sha512-+XDLLga0lctzVTjI7OoL6zCJLtqlS5hWOEkuxsMLlj+ie6z+zR8Q2RS0In5XcaMcbY7XNjsf4eRwvJGP/29BOA==
1052 | dependencies:
1053 | ent "^2.2.0"
1054 | escape-html "^1.0.3"
1055 | franc "^1.1.1"
1056 | iso-639-3 "^0.2.0"
1057 | jekyll-utils "^0.1.1"
1058 | js-yaml "^3.3.1"
1059 | lodash.clonedeepwith "^4.5.0"
1060 | lodash.deburr "^4.1.0"
1061 | lodash.defaultsdeep "^4.6.0"
1062 | upndown "^2.0.2"
1063 |
1064 | forwarded@0.2.0:
1065 | version "0.2.0"
1066 | resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.2.0.tgz#2269936428aad4c15c7ebe9779a84bf0b2a81811"
1067 | integrity sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==
1068 |
1069 | franc@^1.1.1:
1070 | version "1.1.3"
1071 | resolved "https://registry.yarnpkg.com/franc/-/franc-1.1.3.tgz#cbc16f013fb077b3c216cadc9c312e02712dc711"
1072 | integrity sha512-P63X2qb8NshIEZrwfaU6t9rPFFKbw2ZDnD7aMmHyUeagGXberSaVpT/PrjcUC035mUB9NO7DTehuyCRQks73jw==
1073 | dependencies:
1074 | trigram-utils "^0.1.0"
1075 |
1076 | fresh@0.5.2:
1077 | version "0.5.2"
1078 | resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7"
1079 | integrity sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==
1080 |
1081 | from@~0:
1082 | version "0.1.7"
1083 | resolved "https://registry.yarnpkg.com/from/-/from-0.1.7.tgz#83c60afc58b9c56997007ed1a768b3ab303a44fe"
1084 | integrity sha512-twe20eF1OxVxp/ML/kq2p1uc6KvFK/+vs8WjEbeKmV2He22MKm7YF2ANIt+EOqhJ5L3K/SuuPhk0hWQDjOM23g==
1085 |
1086 | fs.realpath@^1.0.0:
1087 | version "1.0.0"
1088 | resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f"
1089 | integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==
1090 |
1091 | function-bind@^1.1.1:
1092 | version "1.1.1"
1093 | resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d"
1094 | integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==
1095 |
1096 | get-intrinsic@^1.0.2:
1097 | version "1.2.1"
1098 | resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.2.1.tgz#d295644fed4505fc9cde952c37ee12b477a83d82"
1099 | integrity sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==
1100 | dependencies:
1101 | function-bind "^1.1.1"
1102 | has "^1.0.3"
1103 | has-proto "^1.0.1"
1104 | has-symbols "^1.0.3"
1105 |
1106 | get-stream@^6.0.1:
1107 | version "6.0.1"
1108 | resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7"
1109 | integrity sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==
1110 |
1111 | get-webmention-url@^2.0.0:
1112 | version "2.0.0"
1113 | resolved "https://registry.yarnpkg.com/get-webmention-url/-/get-webmention-url-2.0.0.tgz#d5167350b53cfe53aa0b2f3168ccc217b01d990c"
1114 | integrity sha512-OUszlsTv+NfaY/q2VBDcJ8SjBgU07q13oP594swWJ5whnmShhFB21hSQANLdtxSG61w2NKrw86RHlBiHzfu8FQ==
1115 | dependencies:
1116 | cheerio "^1.0.0-rc.2"
1117 | concat-stream "^1.6.0"
1118 | es7-array.prototype.includes "^2.0.0"
1119 | follow-redirects "^1.2.5"
1120 | li "^1.2.1"
1121 | lodash.compact "^3.0.1"
1122 |
1123 | glob-parent@^5.1.2:
1124 | version "5.1.2"
1125 | resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4"
1126 | integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==
1127 | dependencies:
1128 | is-glob "^4.0.1"
1129 |
1130 | glob-parent@^6.0.2:
1131 | version "6.0.2"
1132 | resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-6.0.2.tgz#6d237d99083950c79290f24c7642a3de9a28f9e3"
1133 | integrity sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==
1134 | dependencies:
1135 | is-glob "^4.0.3"
1136 |
1137 | glob@^7.1.3:
1138 | version "7.2.3"
1139 | resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b"
1140 | integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==
1141 | dependencies:
1142 | fs.realpath "^1.0.0"
1143 | inflight "^1.0.4"
1144 | inherits "2"
1145 | minimatch "^3.1.1"
1146 | once "^1.3.0"
1147 | path-is-absolute "^1.0.0"
1148 |
1149 | globals@^13.19.0:
1150 | version "13.20.0"
1151 | resolved "https://registry.yarnpkg.com/globals/-/globals-13.20.0.tgz#ea276a1e508ffd4f1612888f9d1bad1e2717bf82"
1152 | integrity sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==
1153 | dependencies:
1154 | type-fest "^0.20.2"
1155 |
1156 | globby@^11.1.0:
1157 | version "11.1.0"
1158 | resolved "https://registry.yarnpkg.com/globby/-/globby-11.1.0.tgz#bd4be98bb042f83d796f7e3811991fbe82a0d34b"
1159 | integrity sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==
1160 | dependencies:
1161 | array-union "^2.1.0"
1162 | dir-glob "^3.0.1"
1163 | fast-glob "^3.2.9"
1164 | ignore "^5.2.0"
1165 | merge2 "^1.4.1"
1166 | slash "^3.0.0"
1167 |
1168 | graphemer@^1.4.0:
1169 | version "1.4.0"
1170 | resolved "https://registry.yarnpkg.com/graphemer/-/graphemer-1.4.0.tgz#fb2f1d55e0e3a1849aeffc90c4fa0dd53a0e66c6"
1171 | integrity sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==
1172 |
1173 | has-flag@^4.0.0:
1174 | version "4.0.0"
1175 | resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b"
1176 | integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==
1177 |
1178 | has-proto@^1.0.1:
1179 | version "1.0.1"
1180 | resolved "https://registry.yarnpkg.com/has-proto/-/has-proto-1.0.1.tgz#1885c1305538958aff469fef37937c22795408e0"
1181 | integrity sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==
1182 |
1183 | has-symbols@^1.0.3:
1184 | version "1.0.3"
1185 | resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.3.tgz#bb7b2c4349251dce87b125f7bdf874aa7c8b39f8"
1186 | integrity sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==
1187 |
1188 | has@^1.0.3:
1189 | version "1.0.3"
1190 | resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796"
1191 | integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==
1192 | dependencies:
1193 | function-bind "^1.1.1"
1194 |
1195 | htmlparser2@^3.8.3:
1196 | version "3.10.1"
1197 | resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-3.10.1.tgz#bd679dc3f59897b6a34bb10749c855bb53a9392f"
1198 | integrity sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==
1199 | dependencies:
1200 | domelementtype "^1.3.1"
1201 | domhandler "^2.3.0"
1202 | domutils "^1.5.1"
1203 | entities "^1.1.1"
1204 | inherits "^2.0.1"
1205 | readable-stream "^3.1.1"
1206 |
1207 | htmlparser2@^8.0.1:
1208 | version "8.0.2"
1209 | resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-8.0.2.tgz#f002151705b383e62433b5cf466f5b716edaec21"
1210 | integrity sha512-GYdjWKDkbRLkZ5geuHs5NY1puJ+PXwP7+fHPRz06Eirsb9ugf6d8kkXav6ADhcODhFFPMIXyxkxSuMf3D6NCFA==
1211 | dependencies:
1212 | domelementtype "^2.3.0"
1213 | domhandler "^5.0.3"
1214 | domutils "^3.0.1"
1215 | entities "^4.4.0"
1216 |
1217 | http-errors@2.0.0:
1218 | version "2.0.0"
1219 | resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-2.0.0.tgz#b7774a1486ef73cf7667ac9ae0858c012c57b9d3"
1220 | integrity sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==
1221 | dependencies:
1222 | depd "2.0.0"
1223 | inherits "2.0.4"
1224 | setprototypeof "1.2.0"
1225 | statuses "2.0.1"
1226 | toidentifier "1.0.1"
1227 |
1228 | human-signals@^4.3.0:
1229 | version "4.3.1"
1230 | resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-4.3.1.tgz#ab7f811e851fca97ffbd2c1fe9a958964de321b2"
1231 | integrity sha512-nZXjEF2nbo7lIw3mgYjItAfgQXog3OjJogSbKa2CQIIvSGWcKgeJnQlNXip6NglNzYH45nSRiEVimMvYL8DDqQ==
1232 |
1233 | husky@^8.0.3:
1234 | version "8.0.3"
1235 | resolved "https://registry.yarnpkg.com/husky/-/husky-8.0.3.tgz#4936d7212e46d1dea28fef29bb3a108872cd9184"
1236 | integrity sha512-+dQSyqPh4x1hlO1swXBiNb2HzTDN1I2IGLQx1GrBuiqFJfoMrnZWwVmatvSiO+Iz8fBUnf+lekwNo4c2LlXItg==
1237 |
1238 | iconv-lite@0.4.24:
1239 | version "0.4.24"
1240 | resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b"
1241 | integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==
1242 | dependencies:
1243 | safer-buffer ">= 2.1.2 < 3"
1244 |
1245 | iconv-lite@^0.6.2:
1246 | version "0.6.3"
1247 | resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.6.3.tgz#a52f80bf38da1952eb5c681790719871a1a72501"
1248 | integrity sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==
1249 | dependencies:
1250 | safer-buffer ">= 2.1.2 < 3.0.0"
1251 |
1252 | ignore@^5.2.0, ignore@^5.2.4:
1253 | version "5.2.4"
1254 | resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.2.4.tgz#a291c0c6178ff1b960befe47fcdec301674a6324"
1255 | integrity sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==
1256 |
1257 | import-fresh@^3.2.1:
1258 | version "3.3.0"
1259 | resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b"
1260 | integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==
1261 | dependencies:
1262 | parent-module "^1.0.0"
1263 | resolve-from "^4.0.0"
1264 |
1265 | imurmurhash@^0.1.4:
1266 | version "0.1.4"
1267 | resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea"
1268 | integrity sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==
1269 |
1270 | indent-string@^4.0.0:
1271 | version "4.0.0"
1272 | resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251"
1273 | integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==
1274 |
1275 | inflight@^1.0.4:
1276 | version "1.0.6"
1277 | resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9"
1278 | integrity sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==
1279 | dependencies:
1280 | once "^1.3.0"
1281 | wrappy "1"
1282 |
1283 | inherits@2, inherits@2.0.4, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.1, inherits@~2.0.3:
1284 | version "2.0.4"
1285 | resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c"
1286 | integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==
1287 |
1288 | ipaddr.js@1.9.1:
1289 | version "1.9.1"
1290 | resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.1.tgz#bff38543eeb8984825079ff3a2a8e6cbd46781b3"
1291 | integrity sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==
1292 |
1293 | is-extglob@^2.1.1:
1294 | version "2.1.1"
1295 | resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2"
1296 | integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==
1297 |
1298 | is-fullwidth-code-point@^3.0.0:
1299 | version "3.0.0"
1300 | resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d"
1301 | integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==
1302 |
1303 | is-fullwidth-code-point@^4.0.0:
1304 | version "4.0.0"
1305 | resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-4.0.0.tgz#fae3167c729e7463f8461ce512b080a49268aa88"
1306 | integrity sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==
1307 |
1308 | is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3:
1309 | version "4.0.3"
1310 | resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084"
1311 | integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==
1312 | dependencies:
1313 | is-extglob "^2.1.1"
1314 |
1315 | is-number@^7.0.0:
1316 | version "7.0.0"
1317 | resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b"
1318 | integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==
1319 |
1320 | is-path-inside@^3.0.3:
1321 | version "3.0.3"
1322 | resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-3.0.3.tgz#d231362e53a07ff2b0e0ea7fed049161ffd16283"
1323 | integrity sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==
1324 |
1325 | is-stream@^1.0.1:
1326 | version "1.1.0"
1327 | resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44"
1328 | integrity sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==
1329 |
1330 | is-stream@^3.0.0:
1331 | version "3.0.0"
1332 | resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-3.0.0.tgz#e6bfd7aa6bef69f4f472ce9bb681e3e57b4319ac"
1333 | integrity sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==
1334 |
1335 | isarray@0.0.1:
1336 | version "0.0.1"
1337 | resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf"
1338 | integrity sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==
1339 |
1340 | isarray@~1.0.0:
1341 | version "1.0.0"
1342 | resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11"
1343 | integrity sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==
1344 |
1345 | isexe@^2.0.0:
1346 | version "2.0.0"
1347 | resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10"
1348 | integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==
1349 |
1350 | iso-639-3@^0.2.0:
1351 | version "0.2.0"
1352 | resolved "https://registry.yarnpkg.com/iso-639-3/-/iso-639-3-0.2.0.tgz#475d3ff0dd137719bfe93a20150673c5f1a4b344"
1353 | integrity sha512-pzW565PVzmMjo/XHiS0EF3EJxGKX2I68Eo7LroBsu29Q7k0/25Z0aoNzuYhApXEaDbEdBzLPrr9yfzEhMyN2Ew==
1354 | dependencies:
1355 | datamap-interface "^0.3.0"
1356 |
1357 | jekyll-utils@^0.1.1:
1358 | version "0.1.4"
1359 | resolved "https://registry.yarnpkg.com/jekyll-utils/-/jekyll-utils-0.1.4.tgz#94f2acda00dc941787236e5ef2aabb533dedfaf2"
1360 | integrity sha512-X5mxt9N92FL7VugEx//2B/+89crX3887WS1kJO86wTeu+h/41wEfEChmD9ZfBs4svHXlZAd8vYxpNdRyd0Ddvg==
1361 | dependencies:
1362 | strftime "^0.10.0"
1363 | xregexp "^4.0.0"
1364 |
1365 | js-yaml@^3.3.1:
1366 | version "3.14.1"
1367 | resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.1.tgz#dae812fdb3825fa306609a8717383c50c36a0537"
1368 | integrity sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==
1369 | dependencies:
1370 | argparse "^1.0.7"
1371 | esprima "^4.0.0"
1372 |
1373 | js-yaml@^4.1.0:
1374 | version "4.1.0"
1375 | resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602"
1376 | integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==
1377 | dependencies:
1378 | argparse "^2.0.1"
1379 |
1380 | json-schema-traverse@^0.4.1:
1381 | version "0.4.1"
1382 | resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660"
1383 | integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==
1384 |
1385 | json-stable-stringify-without-jsonify@^1.0.1:
1386 | version "1.0.1"
1387 | resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651"
1388 | integrity sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==
1389 |
1390 | json5@^2.2.3:
1391 | version "2.2.3"
1392 | resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283"
1393 | integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==
1394 |
1395 | levn@^0.4.1:
1396 | version "0.4.1"
1397 | resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade"
1398 | integrity sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==
1399 | dependencies:
1400 | prelude-ls "^1.2.1"
1401 | type-check "~0.4.0"
1402 |
1403 | li@^1.2.1:
1404 | version "1.3.0"
1405 | resolved "https://registry.yarnpkg.com/li/-/li-1.3.0.tgz#22c59bcaefaa9a8ef359cf759784e4bf106aea1b"
1406 | integrity sha512-z34TU6GlMram52Tss5mt1m//ifRIpKH5Dqm7yUVOdHI+BQCs9qGPHFaCUTIzsWX7edN30aa2WrPwR7IO10FHaw==
1407 |
1408 | lilconfig@2.1.0:
1409 | version "2.1.0"
1410 | resolved "https://registry.yarnpkg.com/lilconfig/-/lilconfig-2.1.0.tgz#78e23ac89ebb7e1bfbf25b18043de756548e7f52"
1411 | integrity sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==
1412 |
1413 | lint-staged@^13.2.3:
1414 | version "13.2.3"
1415 | resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-13.2.3.tgz#f899aad6c093473467e9c9e316e3c2d8a28f87a7"
1416 | integrity sha512-zVVEXLuQIhr1Y7R7YAWx4TZLdvuzk7DnmrsTNL0fax6Z3jrpFcas+vKbzxhhvp6TA55m1SQuWkpzI1qbfDZbAg==
1417 | dependencies:
1418 | chalk "5.2.0"
1419 | cli-truncate "^3.1.0"
1420 | commander "^10.0.0"
1421 | debug "^4.3.4"
1422 | execa "^7.0.0"
1423 | lilconfig "2.1.0"
1424 | listr2 "^5.0.7"
1425 | micromatch "^4.0.5"
1426 | normalize-path "^3.0.0"
1427 | object-inspect "^1.12.3"
1428 | pidtree "^0.6.0"
1429 | string-argv "^0.3.1"
1430 | yaml "^2.2.2"
1431 |
1432 | listr2@^5.0.7:
1433 | version "5.0.8"
1434 | resolved "https://registry.yarnpkg.com/listr2/-/listr2-5.0.8.tgz#a9379ffeb4bd83a68931a65fb223a11510d6ba23"
1435 | integrity sha512-mC73LitKHj9w6v30nLNGPetZIlfpUniNSsxxrbaPcWOjDb92SHPzJPi/t+v1YC/lxKz/AJ9egOjww0qUuFxBpA==
1436 | dependencies:
1437 | cli-truncate "^2.1.0"
1438 | colorette "^2.0.19"
1439 | log-update "^4.0.0"
1440 | p-map "^4.0.0"
1441 | rfdc "^1.3.0"
1442 | rxjs "^7.8.0"
1443 | through "^2.3.8"
1444 | wrap-ansi "^7.0.0"
1445 |
1446 | locate-path@^6.0.0:
1447 | version "6.0.0"
1448 | resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-6.0.0.tgz#55321eb309febbc59c4801d931a72452a681d286"
1449 | integrity sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==
1450 | dependencies:
1451 | p-locate "^5.0.0"
1452 |
1453 | lodash.clonedeepwith@^4.5.0:
1454 | version "4.5.0"
1455 | resolved "https://registry.yarnpkg.com/lodash.clonedeepwith/-/lodash.clonedeepwith-4.5.0.tgz#6ee30573a03a1a60d670a62ef33c10cf1afdbdd4"
1456 | integrity sha512-QRBRSxhbtsX1nc0baxSkkK5WlVTTm/s48DSukcGcWZwIyI8Zz+lB+kFiELJXtzfH4Aj6kMWQ1VWW4U5uUDgZMA==
1457 |
1458 | lodash.compact@^3.0.1:
1459 | version "3.0.1"
1460 | resolved "https://registry.yarnpkg.com/lodash.compact/-/lodash.compact-3.0.1.tgz#540ce3837745975807471e16b4a2ba21e7256ca5"
1461 | integrity sha512-2ozeiPi+5eBXW1CLtzjk8XQFhQOEMwwfxblqeq6EGyTxZJ1bPATqilY0e6g2SLQpP4KuMeuioBhEnWz5Pr7ICQ==
1462 |
1463 | lodash.deburr@^4.1.0:
1464 | version "4.1.0"
1465 | resolved "https://registry.yarnpkg.com/lodash.deburr/-/lodash.deburr-4.1.0.tgz#ddb1bbb3ef07458c0177ba07de14422cb033ff9b"
1466 | integrity sha512-m/M1U1f3ddMCs6Hq2tAsYThTBDaAKFDX3dwDo97GEYzamXi9SqUpjWi/Rrj/gf3X2n8ktwgZrlP1z6E3v/IExQ==
1467 |
1468 | lodash.defaultsdeep@^4.6.0:
1469 | version "4.6.1"
1470 | resolved "https://registry.yarnpkg.com/lodash.defaultsdeep/-/lodash.defaultsdeep-4.6.1.tgz#512e9bd721d272d94e3d3a63653fa17516741ca6"
1471 | integrity sha512-3j8wdDzYuWO3lM3Reg03MuQR957t287Rpcxp1njpEa8oDrikb+FwGdW3n+FELh/A6qib6yPit0j/pv9G/yeAqA==
1472 |
1473 | lodash.merge@^4.6.2:
1474 | version "4.6.2"
1475 | resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a"
1476 | integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==
1477 |
1478 | log-update@^4.0.0:
1479 | version "4.0.0"
1480 | resolved "https://registry.yarnpkg.com/log-update/-/log-update-4.0.0.tgz#589ecd352471f2a1c0c570287543a64dfd20e0a1"
1481 | integrity sha512-9fkkDevMefjg0mmzWFBW8YkFP91OrizzkW3diF7CpG+S2EYdy4+TVfGwz1zeF8x7hCx1ovSPTOE9Ngib74qqUg==
1482 | dependencies:
1483 | ansi-escapes "^4.3.0"
1484 | cli-cursor "^3.1.0"
1485 | slice-ansi "^4.0.0"
1486 | wrap-ansi "^6.2.0"
1487 |
1488 | lru-cache@^6.0.0:
1489 | version "6.0.0"
1490 | resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94"
1491 | integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==
1492 | dependencies:
1493 | yallist "^4.0.0"
1494 |
1495 | map-stream@~0.1.0:
1496 | version "0.1.0"
1497 | resolved "https://registry.yarnpkg.com/map-stream/-/map-stream-0.1.0.tgz#e56aa94c4c8055a16404a0674b78f215f7c8e194"
1498 | integrity sha512-CkYQrPYZfWnu/DAmVCpTSX/xHpKZ80eKh2lAkyA6AJTef6bW+6JpbQZN5rofum7da+SyN1bi5ctTm+lTfcCW3g==
1499 |
1500 | media-typer@0.3.0:
1501 | version "0.3.0"
1502 | resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748"
1503 | integrity sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==
1504 |
1505 | merge-descriptors@1.0.1:
1506 | version "1.0.1"
1507 | resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61"
1508 | integrity sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==
1509 |
1510 | merge-stream@^2.0.0:
1511 | version "2.0.0"
1512 | resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60"
1513 | integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==
1514 |
1515 | merge2@^1.3.0, merge2@^1.4.1:
1516 | version "1.4.1"
1517 | resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae"
1518 | integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==
1519 |
1520 | methods@~1.1.2:
1521 | version "1.1.2"
1522 | resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee"
1523 | integrity sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==
1524 |
1525 | microee@0.0.6:
1526 | version "0.0.6"
1527 | resolved "https://registry.yarnpkg.com/microee/-/microee-0.0.6.tgz#a12bdb0103681e8b126a9b071eba4c467c78fffe"
1528 | integrity sha512-/LdL3jiBWDJ3oQIRLgRhfeCZNE3patM1LiwCC124+/HHn10sI/G2OAyiMfTNzH5oYWoZBk0tRZADAUOv+0Wt0A==
1529 |
1530 | micromatch@^4.0.4, micromatch@^4.0.5:
1531 | version "4.0.5"
1532 | resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.5.tgz#bc8999a7cbbf77cdc89f132f6e467051b49090c6"
1533 | integrity sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==
1534 | dependencies:
1535 | braces "^3.0.2"
1536 | picomatch "^2.3.1"
1537 |
1538 | micropub-express@0.9.1:
1539 | version "0.9.1"
1540 | resolved "https://registry.yarnpkg.com/micropub-express/-/micropub-express-0.9.1.tgz#da0e36cf90849070efa51269e9134109eec6a24c"
1541 | integrity sha512-RuDsq1wISB+iovQhzbGFlBVdz3syho/lytmTxSQ5wHrYOrz5THjjJzM4sOh4fh2tuMHPT0lkj2WFYDFmbx7THg==
1542 | dependencies:
1543 | body-parser "^1.13.1"
1544 | bunyan-adaptor "^4.0.1"
1545 | express "^4.13.0"
1546 | multer "^1.0.1"
1547 | node-fetch "^1.3.0"
1548 | verror "^1.8.1"
1549 |
1550 | mime-db@1.52.0:
1551 | version "1.52.0"
1552 | resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70"
1553 | integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==
1554 |
1555 | mime-types@^2.1.12, mime-types@~2.1.24, mime-types@~2.1.34:
1556 | version "2.1.35"
1557 | resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a"
1558 | integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==
1559 | dependencies:
1560 | mime-db "1.52.0"
1561 |
1562 | mime@1.6.0:
1563 | version "1.6.0"
1564 | resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1"
1565 | integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==
1566 |
1567 | mimic-fn@^2.1.0:
1568 | version "2.1.0"
1569 | resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b"
1570 | integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==
1571 |
1572 | mimic-fn@^4.0.0:
1573 | version "4.0.0"
1574 | resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-4.0.0.tgz#60a90550d5cb0b239cca65d893b1a53b29871ecc"
1575 | integrity sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==
1576 |
1577 | minilog@3.1.0:
1578 | version "3.1.0"
1579 | resolved "https://registry.yarnpkg.com/minilog/-/minilog-3.1.0.tgz#d2d0f1887ca363d1acf0ea86d5c4df293b3fb675"
1580 | integrity sha512-Xfm4jWjWzSAduvEWtuZX/8TMkxfJlCfH7XvikCZe3ptojYTBq1eoEs3rh9/3LNLOckUP86m+8l8+Iw5NU/pBww==
1581 | dependencies:
1582 | microee "0.0.6"
1583 |
1584 | minimatch@^3.0.5, minimatch@^3.1.1, minimatch@^3.1.2:
1585 | version "3.1.2"
1586 | resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b"
1587 | integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==
1588 | dependencies:
1589 | brace-expansion "^1.1.7"
1590 |
1591 | minimist@^1.2.6:
1592 | version "1.2.8"
1593 | resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c"
1594 | integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==
1595 |
1596 | mkdirp@3.0.1:
1597 | version "3.0.1"
1598 | resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-3.0.1.tgz#e44e4c5607fb279c168241713cc6e0fea9adcb50"
1599 | integrity sha512-+NsyUUAZDmo6YVHzL/stxSu3t9YS1iljliy3BSDrXJ/dkn1KYdmtZODGGjLcc9XLgVVpH4KshHB8XmZgMhaBXg==
1600 |
1601 | mkdirp@^0.5.4:
1602 | version "0.5.6"
1603 | resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.6.tgz#7def03d2432dcae4ba1d611445c48396062255f6"
1604 | integrity sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==
1605 | dependencies:
1606 | minimist "^1.2.6"
1607 |
1608 | moment@2.29.4:
1609 | version "2.29.4"
1610 | resolved "https://registry.yarnpkg.com/moment/-/moment-2.29.4.tgz#3dbe052889fe7c1b2ed966fcb3a77328964ef108"
1611 | integrity sha512-5LC9SOxjSc2HF6vO2CyuTDNivEdoz2IvyJJGj6X8DJ0eFyfszE0QiEd+iXmBvUP3WHxSjFH/vIsA0EN00cgr8w==
1612 |
1613 | ms@2.0.0:
1614 | version "2.0.0"
1615 | resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8"
1616 | integrity sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==
1617 |
1618 | ms@2.1.2:
1619 | version "2.1.2"
1620 | resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009"
1621 | integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==
1622 |
1623 | ms@2.1.3:
1624 | version "2.1.3"
1625 | resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2"
1626 | integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==
1627 |
1628 | multer@^1.0.1:
1629 | version "1.4.4"
1630 | resolved "https://registry.yarnpkg.com/multer/-/multer-1.4.4.tgz#e2bc6cac0df57a8832b858d7418ccaa8ebaf7d8c"
1631 | integrity sha512-2wY2+xD4udX612aMqMcB8Ws2Voq6NIUPEtD1be6m411T4uDH/VtL9i//xvcyFlTVfRdaBsk7hV5tgrGQqhuBiw==
1632 | dependencies:
1633 | append-field "^1.0.0"
1634 | busboy "^0.2.11"
1635 | concat-stream "^1.5.2"
1636 | mkdirp "^0.5.4"
1637 | object-assign "^4.1.1"
1638 | on-finished "^2.3.0"
1639 | type-is "^1.6.4"
1640 | xtend "^4.0.0"
1641 |
1642 | n-gram@^0.1.0:
1643 | version "0.1.2"
1644 | resolved "https://registry.yarnpkg.com/n-gram/-/n-gram-0.1.2.tgz#9acecb0f797fbfd22a0ad8a28d987880a63002ab"
1645 | integrity sha512-7wuibLo3ebm/o4bIFKsBhAZM/GA7/jwwg3LKUjN/bllNGLLfS4rhJuLsWPPB0ncPUcofAgndaS0MR2CDgkWeFQ==
1646 |
1647 | natural-compare-lite@^1.4.0:
1648 | version "1.4.0"
1649 | resolved "https://registry.yarnpkg.com/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz#17b09581988979fddafe0201e931ba933c96cbb4"
1650 | integrity sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==
1651 |
1652 | natural-compare@^1.4.0:
1653 | version "1.4.0"
1654 | resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7"
1655 | integrity sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==
1656 |
1657 | negotiator@0.6.3:
1658 | version "0.6.3"
1659 | resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.3.tgz#58e323a72fedc0d6f9cd4d31fe49f51479590ccd"
1660 | integrity sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==
1661 |
1662 | node-cleanup@^2.1.2:
1663 | version "2.1.2"
1664 | resolved "https://registry.yarnpkg.com/node-cleanup/-/node-cleanup-2.1.2.tgz#7ac19abd297e09a7f72a71545d951b517e4dde2c"
1665 | integrity sha512-qN8v/s2PAJwGUtr1/hYTpNKlD6Y9rc4p8KSmJXyGdYGZsDGKXrGThikLFP9OCHFeLeEpQzPwiAtdIvBLqm//Hw==
1666 |
1667 | node-fetch@^1.3.0:
1668 | version "1.7.3"
1669 | resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-1.7.3.tgz#980f6f72d85211a5347c6b2bc18c5b84c3eb47ef"
1670 | integrity sha512-NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ==
1671 | dependencies:
1672 | encoding "^0.1.11"
1673 | is-stream "^1.0.1"
1674 |
1675 | normalize-path@^3.0.0:
1676 | version "3.0.0"
1677 | resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65"
1678 | integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==
1679 |
1680 | npm-run-path@^5.1.0:
1681 | version "5.1.0"
1682 | resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-5.1.0.tgz#bc62f7f3f6952d9894bd08944ba011a6ee7b7e00"
1683 | integrity sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==
1684 | dependencies:
1685 | path-key "^4.0.0"
1686 |
1687 | nth-check@^2.0.1:
1688 | version "2.1.1"
1689 | resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-2.1.1.tgz#c9eab428effce36cd6b92c924bdb000ef1f1ed1d"
1690 | integrity sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==
1691 | dependencies:
1692 | boolbase "^1.0.0"
1693 |
1694 | object-assign@^4.1.1:
1695 | version "4.1.1"
1696 | resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863"
1697 | integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==
1698 |
1699 | object-inspect@^1.12.3, object-inspect@^1.9.0:
1700 | version "1.12.3"
1701 | resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.12.3.tgz#ba62dffd67ee256c8c086dfae69e016cd1f198b9"
1702 | integrity sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==
1703 |
1704 | on-finished@2.4.1, on-finished@^2.3.0:
1705 | version "2.4.1"
1706 | resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.4.1.tgz#58c8c44116e54845ad57f14ab10b03533184ac3f"
1707 | integrity sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==
1708 | dependencies:
1709 | ee-first "1.1.1"
1710 |
1711 | once@^1.3.0:
1712 | version "1.4.0"
1713 | resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1"
1714 | integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==
1715 | dependencies:
1716 | wrappy "1"
1717 |
1718 | onetime@^5.1.0:
1719 | version "5.1.2"
1720 | resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e"
1721 | integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==
1722 | dependencies:
1723 | mimic-fn "^2.1.0"
1724 |
1725 | onetime@^6.0.0:
1726 | version "6.0.0"
1727 | resolved "https://registry.yarnpkg.com/onetime/-/onetime-6.0.0.tgz#7c24c18ed1fd2e9bca4bd26806a33613c77d34b4"
1728 | integrity sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==
1729 | dependencies:
1730 | mimic-fn "^4.0.0"
1731 |
1732 | optionator@^0.9.3:
1733 | version "0.9.3"
1734 | resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.3.tgz#007397d44ed1872fdc6ed31360190f81814e2c64"
1735 | integrity sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==
1736 | dependencies:
1737 | "@aashutoshrathi/word-wrap" "^1.2.3"
1738 | deep-is "^0.1.3"
1739 | fast-levenshtein "^2.0.6"
1740 | levn "^0.4.1"
1741 | prelude-ls "^1.2.1"
1742 | type-check "^0.4.0"
1743 |
1744 | p-limit@^3.0.2:
1745 | version "3.1.0"
1746 | resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.1.0.tgz#e1daccbe78d0d1388ca18c64fea38e3e57e3706b"
1747 | integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==
1748 | dependencies:
1749 | yocto-queue "^0.1.0"
1750 |
1751 | p-locate@^5.0.0:
1752 | version "5.0.0"
1753 | resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-5.0.0.tgz#83c8315c6785005e3bd021839411c9e110e6d834"
1754 | integrity sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==
1755 | dependencies:
1756 | p-limit "^3.0.2"
1757 |
1758 | p-map@^4.0.0:
1759 | version "4.0.0"
1760 | resolved "https://registry.yarnpkg.com/p-map/-/p-map-4.0.0.tgz#bb2f95a5eda2ec168ec9274e06a747c3e2904d2b"
1761 | integrity sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==
1762 | dependencies:
1763 | aggregate-error "^3.0.0"
1764 |
1765 | parent-module@^1.0.0:
1766 | version "1.0.1"
1767 | resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2"
1768 | integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==
1769 | dependencies:
1770 | callsites "^3.0.0"
1771 |
1772 | parse5-htmlparser2-tree-adapter@^7.0.0:
1773 | version "7.0.0"
1774 | resolved "https://registry.yarnpkg.com/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-7.0.0.tgz#23c2cc233bcf09bb7beba8b8a69d46b08c62c2f1"
1775 | integrity sha512-B77tOZrqqfUfnVcOrUvfdLbz4pu4RopLD/4vmu3HUPswwTA8OH0EMW9BlWR2B0RCoiZRAHEUu7IxeP1Pd1UU+g==
1776 | dependencies:
1777 | domhandler "^5.0.2"
1778 | parse5 "^7.0.0"
1779 |
1780 | parse5@^7.0.0:
1781 | version "7.1.2"
1782 | resolved "https://registry.yarnpkg.com/parse5/-/parse5-7.1.2.tgz#0736bebbfd77793823240a23b7fc5e010b7f8e32"
1783 | integrity sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==
1784 | dependencies:
1785 | entities "^4.4.0"
1786 |
1787 | parseurl@~1.3.3:
1788 | version "1.3.3"
1789 | resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4"
1790 | integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==
1791 |
1792 | path-exists@^4.0.0:
1793 | version "4.0.0"
1794 | resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3"
1795 | integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==
1796 |
1797 | path-is-absolute@^1.0.0:
1798 | version "1.0.1"
1799 | resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f"
1800 | integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==
1801 |
1802 | path-key@^3.1.0:
1803 | version "3.1.1"
1804 | resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375"
1805 | integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==
1806 |
1807 | path-key@^4.0.0:
1808 | version "4.0.0"
1809 | resolved "https://registry.yarnpkg.com/path-key/-/path-key-4.0.0.tgz#295588dc3aee64154f877adb9d780b81c554bf18"
1810 | integrity sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==
1811 |
1812 | path-to-regexp@0.1.7:
1813 | version "0.1.7"
1814 | resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c"
1815 | integrity sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==
1816 |
1817 | path-type@^4.0.0:
1818 | version "4.0.0"
1819 | resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b"
1820 | integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==
1821 |
1822 | pause-stream@0.0.11:
1823 | version "0.0.11"
1824 | resolved "https://registry.yarnpkg.com/pause-stream/-/pause-stream-0.0.11.tgz#fe5a34b0cbce12b5aa6a2b403ee2e73b602f1445"
1825 | integrity sha512-e3FBlXLmN/D1S+zHzanP4E/4Z60oFAa3O051qt1pxa7DEJWKAyil6upYVXCWadEnuoqa4Pkc9oUx9zsxYeRv8A==
1826 | dependencies:
1827 | through "~2.3"
1828 |
1829 | picomatch@^2.3.1:
1830 | version "2.3.1"
1831 | resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42"
1832 | integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==
1833 |
1834 | pidtree@^0.6.0:
1835 | version "0.6.0"
1836 | resolved "https://registry.yarnpkg.com/pidtree/-/pidtree-0.6.0.tgz#90ad7b6d42d5841e69e0a2419ef38f8883aa057c"
1837 | integrity sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g==
1838 |
1839 | prelude-ls@^1.2.1:
1840 | version "1.2.1"
1841 | resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396"
1842 | integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==
1843 |
1844 | prettier@^3.0.0:
1845 | version "3.0.0"
1846 | resolved "https://registry.yarnpkg.com/prettier/-/prettier-3.0.0.tgz#e7b19f691245a21d618c68bc54dc06122f6105ae"
1847 | integrity sha512-zBf5eHpwHOGPC47h0zrPyNn+eAEIdEzfywMoYn2XPi0P44Zp0tSq64rq0xAREh4auw2cJZHo9QUob+NqCQky4g==
1848 |
1849 | process-nextick-args@~2.0.0:
1850 | version "2.0.1"
1851 | resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2"
1852 | integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==
1853 |
1854 | proxy-addr@~2.0.7:
1855 | version "2.0.7"
1856 | resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.7.tgz#f19fe69ceab311eeb94b42e70e8c2070f9ba1025"
1857 | integrity sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==
1858 | dependencies:
1859 | forwarded "0.2.0"
1860 | ipaddr.js "1.9.1"
1861 |
1862 | proxy-from-env@^1.1.0:
1863 | version "1.1.0"
1864 | resolved "https://registry.yarnpkg.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz#e102f16ca355424865755d2c9e8ea4f24d58c3e2"
1865 | integrity sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==
1866 |
1867 | ps-tree@^1.2.0:
1868 | version "1.2.0"
1869 | resolved "https://registry.yarnpkg.com/ps-tree/-/ps-tree-1.2.0.tgz#5e7425b89508736cdd4f2224d028f7bb3f722ebd"
1870 | integrity sha512-0VnamPPYHl4uaU/nSFeZZpR21QAWRz+sRv4iW9+v/GS/J5U5iZB5BNN6J0RMoOvdx2gWM2+ZFMIm58q24e4UYA==
1871 | dependencies:
1872 | event-stream "=3.3.4"
1873 |
1874 | punycode@^2.1.0:
1875 | version "2.3.0"
1876 | resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.0.tgz#f67fa67c94da8f4d0cfff981aee4118064199b8f"
1877 | integrity sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==
1878 |
1879 | qs@6.11.0:
1880 | version "6.11.0"
1881 | resolved "https://registry.yarnpkg.com/qs/-/qs-6.11.0.tgz#fd0d963446f7a65e1367e01abd85429453f0c37a"
1882 | integrity sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==
1883 | dependencies:
1884 | side-channel "^1.0.4"
1885 |
1886 | queue-microtask@^1.2.2:
1887 | version "1.2.3"
1888 | resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243"
1889 | integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==
1890 |
1891 | range-parser@~1.2.1:
1892 | version "1.2.1"
1893 | resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031"
1894 | integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==
1895 |
1896 | raw-body@2.5.1:
1897 | version "2.5.1"
1898 | resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.5.1.tgz#fe1b1628b181b700215e5fd42389f98b71392857"
1899 | integrity sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==
1900 | dependencies:
1901 | bytes "3.1.2"
1902 | http-errors "2.0.0"
1903 | iconv-lite "0.4.24"
1904 | unpipe "1.0.0"
1905 |
1906 | raw-body@2.5.2:
1907 | version "2.5.2"
1908 | resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.5.2.tgz#99febd83b90e08975087e8f1f9419a149366b68a"
1909 | integrity sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==
1910 | dependencies:
1911 | bytes "3.1.2"
1912 | http-errors "2.0.0"
1913 | iconv-lite "0.4.24"
1914 | unpipe "1.0.0"
1915 |
1916 | readable-stream@1.1.x:
1917 | version "1.1.14"
1918 | resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.1.14.tgz#7cf4c54ef648e3813084c636dd2079e166c081d9"
1919 | integrity sha512-+MeVjFf4L44XUkhM1eYbD8fyEsxcV81pqMSR5gblfcLCHfZvbrqy4/qYHE+/R5HoBUT11WV5O08Cr1n3YXkWVQ==
1920 | dependencies:
1921 | core-util-is "~1.0.0"
1922 | inherits "~2.0.1"
1923 | isarray "0.0.1"
1924 | string_decoder "~0.10.x"
1925 |
1926 | readable-stream@^2.2.2:
1927 | version "2.3.8"
1928 | resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.8.tgz#91125e8042bba1b9887f49345f6277027ce8be9b"
1929 | integrity sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==
1930 | dependencies:
1931 | core-util-is "~1.0.0"
1932 | inherits "~2.0.3"
1933 | isarray "~1.0.0"
1934 | process-nextick-args "~2.0.0"
1935 | safe-buffer "~5.1.1"
1936 | string_decoder "~1.1.1"
1937 | util-deprecate "~1.0.1"
1938 |
1939 | readable-stream@^3.1.1:
1940 | version "3.6.2"
1941 | resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.2.tgz#56a9b36ea965c00c5a93ef31eb111a0f11056967"
1942 | integrity sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==
1943 | dependencies:
1944 | inherits "^2.0.3"
1945 | string_decoder "^1.1.1"
1946 | util-deprecate "^1.0.1"
1947 |
1948 | regenerator-runtime@^0.13.11:
1949 | version "0.13.11"
1950 | resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz#f6dca3e7ceec20590d07ada785636a90cdca17f9"
1951 | integrity sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==
1952 |
1953 | resolve-from@^4.0.0:
1954 | version "4.0.0"
1955 | resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6"
1956 | integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==
1957 |
1958 | restore-cursor@^3.1.0:
1959 | version "3.1.0"
1960 | resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-3.1.0.tgz#39f67c54b3a7a58cea5236d95cf0034239631f7e"
1961 | integrity sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==
1962 | dependencies:
1963 | onetime "^5.1.0"
1964 | signal-exit "^3.0.2"
1965 |
1966 | reusify@^1.0.4:
1967 | version "1.0.4"
1968 | resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76"
1969 | integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==
1970 |
1971 | rfdc@^1.3.0:
1972 | version "1.3.0"
1973 | resolved "https://registry.yarnpkg.com/rfdc/-/rfdc-1.3.0.tgz#d0b7c441ab2720d05dc4cf26e01c89631d9da08b"
1974 | integrity sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==
1975 |
1976 | rimraf@^3.0.2:
1977 | version "3.0.2"
1978 | resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a"
1979 | integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==
1980 | dependencies:
1981 | glob "^7.1.3"
1982 |
1983 | run-parallel@^1.1.9:
1984 | version "1.2.0"
1985 | resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee"
1986 | integrity sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==
1987 | dependencies:
1988 | queue-microtask "^1.2.2"
1989 |
1990 | rxjs@^7.8.0:
1991 | version "7.8.1"
1992 | resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-7.8.1.tgz#6f6f3d99ea8044291efd92e7c7fcf562c4057543"
1993 | integrity sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==
1994 | dependencies:
1995 | tslib "^2.1.0"
1996 |
1997 | safe-buffer@5.2.1, safe-buffer@~5.2.0:
1998 | version "5.2.1"
1999 | resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6"
2000 | integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==
2001 |
2002 | safe-buffer@~5.1.0, safe-buffer@~5.1.1:
2003 | version "5.1.2"
2004 | resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d"
2005 | integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==
2006 |
2007 | "safer-buffer@>= 2.1.2 < 3", "safer-buffer@>= 2.1.2 < 3.0.0":
2008 | version "2.1.2"
2009 | resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a"
2010 | integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==
2011 |
2012 | semver@^7.5.4:
2013 | version "7.5.4"
2014 | resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.4.tgz#483986ec4ed38e1c6c48c34894a9182dbff68a6e"
2015 | integrity sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==
2016 | dependencies:
2017 | lru-cache "^6.0.0"
2018 |
2019 | send-webmention@2.0.0:
2020 | version "2.0.0"
2021 | resolved "https://registry.yarnpkg.com/send-webmention/-/send-webmention-2.0.0.tgz#6f38ecb31ce76e8ff072d253c542ff8eb50c4f7a"
2022 | integrity sha512-qKfkyLnVuv9MYWLMvhPRk+cDZkzLk0mYqn5jFK7miKcIF8QUGXJaIrDXYqou8epkSnQ2QiWCMo1FRB/b9ZZaEA==
2023 | dependencies:
2024 | form-urlencoded "^3.0.0"
2025 | get-webmention-url "^2.0.0"
2026 |
2027 | send@0.18.0:
2028 | version "0.18.0"
2029 | resolved "https://registry.yarnpkg.com/send/-/send-0.18.0.tgz#670167cc654b05f5aa4a767f9113bb371bc706be"
2030 | integrity sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==
2031 | dependencies:
2032 | debug "2.6.9"
2033 | depd "2.0.0"
2034 | destroy "1.2.0"
2035 | encodeurl "~1.0.2"
2036 | escape-html "~1.0.3"
2037 | etag "~1.8.1"
2038 | fresh "0.5.2"
2039 | http-errors "2.0.0"
2040 | mime "1.6.0"
2041 | ms "2.1.3"
2042 | on-finished "2.4.1"
2043 | range-parser "~1.2.1"
2044 | statuses "2.0.1"
2045 |
2046 | serve-static@1.15.0:
2047 | version "1.15.0"
2048 | resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.15.0.tgz#faaef08cffe0a1a62f60cad0c4e513cff0ac9540"
2049 | integrity sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==
2050 | dependencies:
2051 | encodeurl "~1.0.2"
2052 | escape-html "~1.0.3"
2053 | parseurl "~1.3.3"
2054 | send "0.18.0"
2055 |
2056 | setprototypeof@1.2.0:
2057 | version "1.2.0"
2058 | resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.2.0.tgz#66c9a24a73f9fc28cbe66b09fed3d33dcaf1b424"
2059 | integrity sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==
2060 |
2061 | shebang-command@^2.0.0:
2062 | version "2.0.0"
2063 | resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea"
2064 | integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==
2065 | dependencies:
2066 | shebang-regex "^3.0.0"
2067 |
2068 | shebang-regex@^3.0.0:
2069 | version "3.0.0"
2070 | resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172"
2071 | integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==
2072 |
2073 | side-channel@^1.0.4:
2074 | version "1.0.4"
2075 | resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.0.4.tgz#efce5c8fdc104ee751b25c58d4290011fa5ea2cf"
2076 | integrity sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==
2077 | dependencies:
2078 | call-bind "^1.0.0"
2079 | get-intrinsic "^1.0.2"
2080 | object-inspect "^1.9.0"
2081 |
2082 | signal-exit@^3.0.2, signal-exit@^3.0.7:
2083 | version "3.0.7"
2084 | resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9"
2085 | integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==
2086 |
2087 | slash@^3.0.0:
2088 | version "3.0.0"
2089 | resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634"
2090 | integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==
2091 |
2092 | slice-ansi@^3.0.0:
2093 | version "3.0.0"
2094 | resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-3.0.0.tgz#31ddc10930a1b7e0b67b08c96c2f49b77a789787"
2095 | integrity sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==
2096 | dependencies:
2097 | ansi-styles "^4.0.0"
2098 | astral-regex "^2.0.0"
2099 | is-fullwidth-code-point "^3.0.0"
2100 |
2101 | slice-ansi@^4.0.0:
2102 | version "4.0.0"
2103 | resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-4.0.0.tgz#500e8dd0fd55b05815086255b3195adf2a45fe6b"
2104 | integrity sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==
2105 | dependencies:
2106 | ansi-styles "^4.0.0"
2107 | astral-regex "^2.0.0"
2108 | is-fullwidth-code-point "^3.0.0"
2109 |
2110 | slice-ansi@^5.0.0:
2111 | version "5.0.0"
2112 | resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-5.0.0.tgz#b73063c57aa96f9cd881654b15294d95d285c42a"
2113 | integrity sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==
2114 | dependencies:
2115 | ansi-styles "^6.0.0"
2116 | is-fullwidth-code-point "^4.0.0"
2117 |
2118 | split@0.3:
2119 | version "0.3.3"
2120 | resolved "https://registry.yarnpkg.com/split/-/split-0.3.3.tgz#cd0eea5e63a211dfff7eb0f091c4133e2d0dd28f"
2121 | integrity sha512-wD2AeVmxXRBoX44wAycgjVpMhvbwdI2aZjCkvfNcH1YqHQvJVa1duWc73OyVGJUc05fhFaTZeQ/PYsrmyH0JVA==
2122 | dependencies:
2123 | through "2"
2124 |
2125 | sprintf-js@~1.0.2:
2126 | version "1.0.3"
2127 | resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c"
2128 | integrity sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==
2129 |
2130 | statuses@2.0.1:
2131 | version "2.0.1"
2132 | resolved "https://registry.yarnpkg.com/statuses/-/statuses-2.0.1.tgz#55cb000ccf1d48728bd23c685a063998cf1a1b63"
2133 | integrity sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==
2134 |
2135 | stream-combiner@~0.0.4:
2136 | version "0.0.4"
2137 | resolved "https://registry.yarnpkg.com/stream-combiner/-/stream-combiner-0.0.4.tgz#4d5e433c185261dde623ca3f44c586bcf5c4ad14"
2138 | integrity sha512-rT00SPnTVyRsaSz5zgSPma/aHSOic5U1prhYdRy5HS2kTZviFpmDgzilbtsJsxiroqACmayynDN/9VzIbX5DOw==
2139 | dependencies:
2140 | duplexer "~0.1.1"
2141 |
2142 | streamsearch@0.1.2:
2143 | version "0.1.2"
2144 | resolved "https://registry.yarnpkg.com/streamsearch/-/streamsearch-0.1.2.tgz#808b9d0e56fc273d809ba57338e929919a1a9f1a"
2145 | integrity sha512-jos8u++JKm0ARcSUTAZXOVC0mSox7Bhn6sBgty73P1f3JGf7yG2clTbBNHUdde/kdvP2FESam+vM6l8jBrNxHA==
2146 |
2147 | strftime@^0.10.0:
2148 | version "0.10.2"
2149 | resolved "https://registry.yarnpkg.com/strftime/-/strftime-0.10.2.tgz#9cc5a63a6170455730ddf617e8b506ab06dde985"
2150 | integrity sha512-Y6IZaTVM80chcMe7j65Gl/0nmlNdtt+KWPle5YeCAjmsBfw+id2qdaJ5MDrxUq+OmHKab+jHe7mUjU/aNMSZZg==
2151 |
2152 | string-argv@^0.3.1:
2153 | version "0.3.2"
2154 | resolved "https://registry.yarnpkg.com/string-argv/-/string-argv-0.3.2.tgz#2b6d0ef24b656274d957d54e0a4bbf6153dc02b6"
2155 | integrity sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q==
2156 |
2157 | string-width@^4.1.0, string-width@^4.2.0:
2158 | version "4.2.3"
2159 | resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010"
2160 | integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==
2161 | dependencies:
2162 | emoji-regex "^8.0.0"
2163 | is-fullwidth-code-point "^3.0.0"
2164 | strip-ansi "^6.0.1"
2165 |
2166 | string-width@^5.0.0:
2167 | version "5.1.2"
2168 | resolved "https://registry.yarnpkg.com/string-width/-/string-width-5.1.2.tgz#14f8daec6d81e7221d2a357e668cab73bdbca794"
2169 | integrity sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==
2170 | dependencies:
2171 | eastasianwidth "^0.2.0"
2172 | emoji-regex "^9.2.2"
2173 | strip-ansi "^7.0.1"
2174 |
2175 | string_decoder@^1.1.1:
2176 | version "1.3.0"
2177 | resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e"
2178 | integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==
2179 | dependencies:
2180 | safe-buffer "~5.2.0"
2181 |
2182 | string_decoder@~0.10.x:
2183 | version "0.10.31"
2184 | resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94"
2185 | integrity sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==
2186 |
2187 | string_decoder@~1.1.1:
2188 | version "1.1.1"
2189 | resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8"
2190 | integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==
2191 | dependencies:
2192 | safe-buffer "~5.1.0"
2193 |
2194 | strip-ansi@^6.0.0, strip-ansi@^6.0.1:
2195 | version "6.0.1"
2196 | resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9"
2197 | integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==
2198 | dependencies:
2199 | ansi-regex "^5.0.1"
2200 |
2201 | strip-ansi@^7.0.1:
2202 | version "7.1.0"
2203 | resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-7.1.0.tgz#d5b6568ca689d8561370b0707685d22434faff45"
2204 | integrity sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==
2205 | dependencies:
2206 | ansi-regex "^6.0.1"
2207 |
2208 | strip-final-newline@^3.0.0:
2209 | version "3.0.0"
2210 | resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-3.0.0.tgz#52894c313fbff318835280aed60ff71ebf12b8fd"
2211 | integrity sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==
2212 |
2213 | strip-json-comments@^3.1.1:
2214 | version "3.1.1"
2215 | resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006"
2216 | integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==
2217 |
2218 | supports-color@^7.1.0:
2219 | version "7.2.0"
2220 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da"
2221 | integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==
2222 | dependencies:
2223 | has-flag "^4.0.0"
2224 |
2225 | text-table@^0.2.0:
2226 | version "0.2.0"
2227 | resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4"
2228 | integrity sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==
2229 |
2230 | through@2, through@^2.3.8, through@~2.3, through@~2.3.1:
2231 | version "2.3.8"
2232 | resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5"
2233 | integrity sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==
2234 |
2235 | to-regex-range@^5.0.1:
2236 | version "5.0.1"
2237 | resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4"
2238 | integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==
2239 | dependencies:
2240 | is-number "^7.0.0"
2241 |
2242 | toidentifier@1.0.1:
2243 | version "1.0.1"
2244 | resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.1.tgz#3be34321a88a820ed1bd80dfaa33e479fbb8dd35"
2245 | integrity sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==
2246 |
2247 | trigram-utils@^0.1.0:
2248 | version "0.1.1"
2249 | resolved "https://registry.yarnpkg.com/trigram-utils/-/trigram-utils-0.1.1.tgz#7df8a092c9897fc2e09dac22f423e283231762e7"
2250 | integrity sha512-7ZPwE/Rr2Pvi/5HDVFtm6R3E7xYG8cSbr8xTdNORX1XzTzmvxI4TB44WDQOJOH6KhOkKc7kLAa55XtkirBwLQg==
2251 | dependencies:
2252 | n-gram "^0.1.0"
2253 |
2254 | ts-api-utils@^1.0.1:
2255 | version "1.0.1"
2256 | resolved "https://registry.yarnpkg.com/ts-api-utils/-/ts-api-utils-1.0.1.tgz#8144e811d44c749cd65b2da305a032510774452d"
2257 | integrity sha512-lC/RGlPmwdrIBFTX59wwNzqh7aR2otPNPR/5brHZm/XKFYKsfqxihXUe9pU3JI+3vGkl+vyCoNNnPhJn3aLK1A==
2258 |
2259 | tsc-watch@^6.0.4:
2260 | version "6.0.4"
2261 | resolved "https://registry.yarnpkg.com/tsc-watch/-/tsc-watch-6.0.4.tgz#af15229f03cd53086771a97b10653db063bc6c59"
2262 | integrity sha512-cHvbvhjO86w2aGlaHgSCeQRl+Aqw6X6XN4sQMPZKF88GoP30O+oTuh5lRIJr5pgFWrRpF1AgXnJJ2DoFEIPHyg==
2263 | dependencies:
2264 | cross-spawn "^7.0.3"
2265 | node-cleanup "^2.1.2"
2266 | ps-tree "^1.2.0"
2267 | string-argv "^0.3.1"
2268 |
2269 | tslib@^2.1.0:
2270 | version "2.6.0"
2271 | resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.6.0.tgz#b295854684dbda164e181d259a22cd779dcd7bc3"
2272 | integrity sha512-7At1WUettjcSRHXCyYtTselblcHl9PJFFVKiCAy/bY97+BPZXSQ2wbq0P9s8tK2G7dFQfNnlJnPAiArVBVBsfA==
2273 |
2274 | type-check@^0.4.0, type-check@~0.4.0:
2275 | version "0.4.0"
2276 | resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1"
2277 | integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==
2278 | dependencies:
2279 | prelude-ls "^1.2.1"
2280 |
2281 | type-fest@^0.20.2:
2282 | version "0.20.2"
2283 | resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.20.2.tgz#1bf207f4b28f91583666cb5fbd327887301cd5f4"
2284 | integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==
2285 |
2286 | type-fest@^0.21.3:
2287 | version "0.21.3"
2288 | resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.21.3.tgz#d260a24b0198436e133fa26a524a6d65fa3b2e37"
2289 | integrity sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==
2290 |
2291 | type-is@^1.6.4, type-is@~1.6.18:
2292 | version "1.6.18"
2293 | resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.18.tgz#4e552cd05df09467dcbc4ef739de89f2cf37c131"
2294 | integrity sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==
2295 | dependencies:
2296 | media-typer "0.3.0"
2297 | mime-types "~2.1.24"
2298 |
2299 | typedarray@^0.0.6:
2300 | version "0.0.6"
2301 | resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777"
2302 | integrity sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==
2303 |
2304 | typescript@^5.1.6:
2305 | version "5.1.6"
2306 | resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.1.6.tgz#02f8ac202b6dad2c0dd5e0913745b47a37998274"
2307 | integrity sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA==
2308 |
2309 | unpipe@1.0.0, unpipe@~1.0.0:
2310 | version "1.0.0"
2311 | resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec"
2312 | integrity sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==
2313 |
2314 | upndown@^2.0.2:
2315 | version "2.1.0"
2316 | resolved "https://registry.yarnpkg.com/upndown/-/upndown-2.1.0.tgz#e08684cd2b0c3a0b1d622aebdba1d2106bf0e4a8"
2317 | integrity sha512-35A8goPE0chjDrAWYWZqDOAGVVMVYIGBUhH4/8WJpPCh3Fn4NV7wTJbBlSEnDec3+MBreDGHAroyFITnsGhZEw==
2318 | dependencies:
2319 | htmlparser2 "^3.8.3"
2320 |
2321 | uri-js@^4.2.2:
2322 | version "4.4.1"
2323 | resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e"
2324 | integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==
2325 | dependencies:
2326 | punycode "^2.1.0"
2327 |
2328 | util-deprecate@^1.0.1, util-deprecate@~1.0.1:
2329 | version "1.0.2"
2330 | resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
2331 | integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==
2332 |
2333 | utils-merge@1.0.1:
2334 | version "1.0.1"
2335 | resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713"
2336 | integrity sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==
2337 |
2338 | vary@~1.1.2:
2339 | version "1.1.2"
2340 | resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc"
2341 | integrity sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==
2342 |
2343 | verror@^1.8.1:
2344 | version "1.10.1"
2345 | resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.1.tgz#4bf09eeccf4563b109ed4b3d458380c972b0cdeb"
2346 | integrity sha512-veufcmxri4e3XSrT0xwfUR7kguIkaxBeosDg00yDWhk49wdwkSUrvvsm7nc75e1PUyvIeZj6nS8VQRYz2/S4Xg==
2347 | dependencies:
2348 | assert-plus "^1.0.0"
2349 | core-util-is "1.0.2"
2350 | extsprintf "^1.2.0"
2351 |
2352 | which@^2.0.1:
2353 | version "2.0.2"
2354 | resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1"
2355 | integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==
2356 | dependencies:
2357 | isexe "^2.0.0"
2358 |
2359 | wrap-ansi@^6.2.0:
2360 | version "6.2.0"
2361 | resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-6.2.0.tgz#e9393ba07102e6c91a3b221478f0257cd2856e53"
2362 | integrity sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==
2363 | dependencies:
2364 | ansi-styles "^4.0.0"
2365 | string-width "^4.1.0"
2366 | strip-ansi "^6.0.0"
2367 |
2368 | wrap-ansi@^7.0.0:
2369 | version "7.0.0"
2370 | resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43"
2371 | integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==
2372 | dependencies:
2373 | ansi-styles "^4.0.0"
2374 | string-width "^4.1.0"
2375 | strip-ansi "^6.0.0"
2376 |
2377 | wrappy@1:
2378 | version "1.0.2"
2379 | resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
2380 | integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==
2381 |
2382 | xregexp@^4.0.0:
2383 | version "4.4.1"
2384 | resolved "https://registry.yarnpkg.com/xregexp/-/xregexp-4.4.1.tgz#c84a88fa79e9ab18ca543959712094492185fe65"
2385 | integrity sha512-2u9HwfadaJaY9zHtRRnH6BY6CQVNQKkYm3oLtC9gJXXzfsbACg5X5e4EZZGVAH+YIfa+QA9lsFQTTe3HURF3ag==
2386 | dependencies:
2387 | "@babel/runtime-corejs3" "^7.12.1"
2388 |
2389 | xtend@^4.0.0:
2390 | version "4.0.2"
2391 | resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54"
2392 | integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==
2393 |
2394 | yallist@^4.0.0:
2395 | version "4.0.0"
2396 | resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72"
2397 | integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==
2398 |
2399 | yaml@^2.2.2:
2400 | version "2.3.1"
2401 | resolved "https://registry.yarnpkg.com/yaml/-/yaml-2.3.1.tgz#02fe0975d23cd441242aa7204e09fc28ac2ac33b"
2402 | integrity sha512-2eHWfjaoXgTBC2jNM1LRef62VQa0umtvRiDSk6HSzW7RvS5YtkabJrwYLLEKWBc8a5U2PTSCs+dJjUTJdlHsWQ==
2403 |
2404 | yocto-queue@^0.1.0:
2405 | version "0.1.0"
2406 | resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b"
2407 | integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==
2408 |
--------------------------------------------------------------------------------